Обновить
512K+

Python *

Высокоуровневый язык программирования

348,05
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Подборка полезных сервисов с применением нейронных сетей

Время на прочтение4 мин
Охват и читатели17K

Искусственный интеллект и машинное обучение стали неотъемлемой частью нашей жизни, что привело к появлению огромного числа продуктов, основанных на нейронных сетях. Давайте посмотрим на несколько полезных сервисов, в которых используются технологии искусственного интеллекта.

Ознакомиться

Умные субтитры

Время на прочтение6 мин
Охват и читатели6.3K

Сегодня я вам расскажу о своем методе для изучения иностранных языков.

С чего начать изучение нового языка? Чаще всего люди на раннем этапе используют стандартный лексико-грамматический метод с доминированием письменного языка, который показал себя медленным и весьма скучным — вам чаще всего нужна зашкаливающая мотивация, чтобы не бросить где-то посередине.

Я предлагаю начать сразу с видео. Во-первых, видео просто интересно смотреть (особенно если это нормальные мультики/фильмы/сериалы, созданные для носителей языка). Во-вторых, вы сразу начнете запоминать звучание слов, что очень сильно пригодится для развития навыка аудирования в будущем.

Однако, если вы просто возьмете видео на новом для себя языке, то вы ничего не поймете. Первый шаг к решению проблемы - смотреть видео с субтитрами на языке оригинала. Однако, когда вы еще не знаете лексику языка, такие субтитры вам не помогут. Вам нужны двойные субтитры - на языке оригинала + перевод на ваш родной язык. 

При просмотре видео с двойными субтитрами мозг начинает сопоставлять слова из двух предложений на разных языках. Это зачастую нетривиально (особенно если у языков сильно отличается грамматика), на это мозг тратит время и энергию. 

Моя идея состоит в том, чтобы выполнить эту задачу вместо мозга и отображать субтитры как на картинке выше: посередине находятся субтитры на языке оригинала, ниже — их перевод; плюс над иностранными словами подписаны соответствующие им слова из перевода. Таким образом, за время просмотра десятка подобных фильмов/мультиков, каждое слово из базовой лексики будет многократно отображено вместе со своим переводом в текущем контексте, что позволит его запомнить.

Читать далее

Как сделать локальный Django-сайт доступным в Интернете / Туннели ngrok

Время на прочтение5 мин
Охват и читатели38K

Допустим вы пишите какое-то Django-приложение. Как обычно разработка идёт локально на вашем компьютере.  По умолчанию все Django-проекты доступны по адресу http://localhost:8000 или http://127.0.0.1:8000 что одно и тоже. Эта адреса твоего локального компьютера. Соответственно никто другой в Интернете, перейдя по одному из этих адресов, ваш сайт не увидит.

Проект пока рано заливать на какой-то хостинг или выделенный сервер, но показать его другому человеку уже нужно: похвастаться другу, человеку и команды разработки, заказчику и т.д. Даже если этот человек подключится к WI-FI у вас дома и будет находиться с сайтом в одной сети, localhost будет перенаправлять гостя на своё же устройство, а не на ваш сайт.

Что делать, как показать Django-проект, которые запускается на локальном сервере, недоступном в Интернете? Есть несколько вариантов:

Читать далее

OpenCV — быстрый старт: аннотирование изображений

Время на прочтение3 мин
Охват и читатели12K

Увеличение площади полигона за счет второго полигона

Время на прочтение6 мин
Охват и читатели3.2K

Когда мы расставляем мебель в комнате, мы ориентируемся на габаритные размеры мебели и фурнитуры, а не на их занимаемую площадь, и мебель часто квадратной формы. С полигонами на карте дело обстоит немного иначе, они могут быть произвольной формы, но должны иметь определенную площадь, а задача такая же как и с мебелью - уместить всё в комнату (участок). Когда полигоны квадратные, то рассчитать нужное изменение длины ребра для получение желаемой площади, не так и сложно. С полигонами сложной формы всё не так просто, но и это тоже не проблема, ведь можно методом тыка подобрать нужную площадь. Проблема возникает когда количество полигонов возрастает. Пример: на изменение полигона сложной формы уходит 5 минут (грубо говоря), но нам нужно изменить 15 полигонов, считаем и получаем 75 минут. За 75 минут можно сделать гору полезных дел, а всего было отредактировано 15 полигонов. Если полигоны придется менять заново? вдруг нужно их будет разбить на другую площадь? Вот была бы такая программа, которая сама бы изменяла полигон и добавляла бы нужную площадь.

Читать далее

Оптимизируем дерево отрезков, делаем из него куст o_O

Время на прочтение5 мин
Охват и читатели4.4K

Многие знакомы с алгоритмами дерева отрезков и корневой декомпозиции. Однако, не многие задаются вопросом о том, почему они устроены именно так, как они устроены :), и нельзя ли немного изменив их получить выигрыш во времени работы или затрачиваемой памяти. Одно из таких изменений я бы и хотел рассмотреть в этой статье, ведь я сам только недавно задумался об этом, хотя знаком с этими алгоритмами уже более 4 лет.

Математика говорит, что это невозможно, но нам всё равно!

Расширять сознание

10 итераторов, о которых вы могли не знать

Время на прочтение13 мин
Охват и читатели45K

Одним из главных достоинств Python является выразительность кода. Не последнюю роль в этом играет возможность удобной работы с коллекциями и последовательностями различного вида: перебор элементов списка по одному, чтение файла по строкам, обработка всех ключей и значений в словаре. Эти и многие другие подобные задачи в Python помогает решить так называемый протокол итераторов (Iterator protocol). Именно этот протокол обеспечивает работу цикла for, устанавливает по каким объектам можно итерироваться, а по каким нет. Как мы увидим далее, сам язык и стандартная библиотека очень широко используют возможности протокола. В этой статье попробуем отыскать не самые известные, но от этого не менее интересные примеры итераторов и итерируемых объектов, которые предлагает Python.

Читать далее

Руководство по MicroPython MQTT на базе Raspberry Pi

Время на прочтение5 мин
Охват и читатели13K


Сегодня рассказываем как написать простой MQTT-клиент на Raspberry Pi при помощи MicroPython и реализовать функции подключения, отправки сообщений и подписки между клиентом и брокером MQTT-сообщений. Подробности о разработке с использованием протокола интернета вещей MQTT — к старту курса по Fullstack-разработке на Python.

Читать дальше →

Релиз InvokeAI 2.1: теперь с inpainting и Cross Attention

Время на прочтение2 мин
Охват и читатели3.5K

Команда InvokeAI рада поделиться нашим последним релизом с набором новых функций, улучшений графического интерфейса и возможностей командной строки.

Что нового?

Python на максималках: расширения на языках Rust и Cython

Время на прочтение12 мин
Охват и читатели9.7K

Python — лучший выбор для анализа данных и машинного обучения. Его производительность в большинстве случаев более чем достаточна. Но как быть, если объемы ваших данных растут значительно быстрее, чем имеющиеся ресурсы, и требуется повышение производительности? 

В этой статье мы попробуем решить несколько простых задач, используя чистый Python и два языка расширения: Rust и Cython. Чтобы сравнить два этих подхода, мы оценим трудоемкость каждого из них, а также рассмотрим случаи, в которых следует попробовать что-то другое. Начнем с установки и с простых приложений, а затем перейдем к более сложным экспериментам.

Читать далее

Как мы строили самую большую модель кредитного скоринга в сегменте МСБ

Время на прочтение10 мин
Охват и читатели27K


Рано или поздно у любого банка появляется желание выдавать кредиты: максимально быстро, эффективно и с контролируемыми рисками. Для этой задачи нужна развитая система риск-менеджмента и как важная часть системы — модель кредитного скоринга. В статье речь пойдет о том, как это всё устроено в Точке.
Читать дальше →

Самый полный стартовый гайд по ботам Telegram (python)

Время на прочтение5 мин
Охват и читатели475K

QQ Хабр! В этом гайде мы пройдемся по каждому шагу создания ботов в Telegram - от регистрации бота до публикации репозитория на GitHub. Некоторым может показаться, что все разжевано и слишком много элементарной информации, но этот гайд создан для новичков, хотя будет интересен и для тех, кто уже занимался разработкой в Telegram. Сегодня мы будем делать бота, который отвечает на заданные вопросы.

Читать далее

Обзор книги “Начинаем программировать на Python”, лучшая книга для начинающих с нуля

Время на прочтение7 мин
Охват и читатели38K

Всем доброго времени суток!

Так как о Python слышал каждый, кто хотел или хочет связать свою жизнь с IT, предлагаю обзор книги, что поможет вам на первых порах.

Стоит читать? Да! Почему? Опишу в статье.

Python – хороший первый язык программирования, а это лучшая книга для его изучения.

Для кого эта книга?

Книга в первую очередь прекрасно подойдет новичкам, тем , кто только начал свой путь в программирование и на данный момент начинает с нуля, не имеет никакой базы программирования за плечами.

Во вторую очередь я бы посоветовал данную книгу тем, кто уже имеет опыт работы с Python, но хотел бы иметь под рукой полноценный справочник с практическими описаниями основ языка. С примерами, объяснениями – то, что быстро поможет вспомнить простые, но необходимые вещи.

Читать далее

Ближайшие события

Топ-30 онлайн-ресурсов для обучения детей основам программирования на Python

Время на прочтение8 мин
Охват и читатели54K

Владение языком Python станет прекрасным активом будущего программиста. Если ваш ребенок увлекается программированием, то процесс обучения можно разнообразить с помощью полезных видео, обучающих игр, вступления в тематические сообщества и многого другого. В этой статье мы собрали полезные ресурсы по Python и поделили их по категориям.

Читать далее

Небанальные правила чистого Python. Часть 1

Время на прочтение6 мин
Охват и читатели24K

Большинство питонистов не раз слышали о таких правилах как «функции должны быть глаголами» или «не наследуйтесь явно от object в Python 3». В этой статье рассмотрим не такие банальные, но полезные правила чистого кода в Python.

Читать далее

Как компьютерное зрение помогает определить координаты спутниковых снимков

Время на прочтение7 мин
Охват и читатели8.4K

Привет, Хабр!

Меня зовут Андрей, и я data scientist. В этой статье расскажу о том, как я занял второе место в конкурсе «Цифровой прорыв» с решением по автоматизации привязки фотографии к географическому положению. Главный инсайт — базовые решения не всегда хороши и проверены. Спойлер — самодеятельность и использование современных подходов помогают победить :) Расскажу на своем опыте, как не сделать свое решение хуже базового и проанализирую подходы других участников.

Читать далее

Как собирать статистику по pytest-прогонам в Test IT

Время на прочтение6 мин
Охват и читатели6K


Как известно, основной проблемой в тестировании является отчетность по прогонам. Некоторые компании собирают данные в отдельном хранилище. Вместо того, чтобы вручную организовывать хранение, было решено сохранять их в Test IT. Такие данные как: исход, время выполнения и количество автоматизированных кейсов позволяют разделить тесты на выборки и дать оценку покрытия автотестами.

Читать дальше →

Multiple Instance Learning (MIL) для классификации наборов гистологических изображений со светлоклеточным раком почки

Время на прочтение5 мин
Охват и читатели2.1K

С учётом актуальности Multiple Instance Learning (далее: MIL) и, в частности, наличия преимуществ данного метода для анализа гистологических изображений, решил попробовать обучить модели с целью классификации наборов данных, на те, которые содержат только нормальные ткани и те, в которых встречаются изображения со светлоклеточным раком почки.

Читать далее

Гвидо ван Россум. Размышления о классе asyncio.Semaphore

Время на прочтение5 мин
Охват и читатели4.4K


В Кремниевой долине есть один весьма своеобразный ресторанчик быстрого питания. Он работает круглосуточно и принимает по одному гостю за раз, ведь там всего один стол. Зато гамбургеры — просто потрясающие. Приходя, вы ждёте, пока стол не освободится. Затем вас приглашают, и, поскольку это Америка, вам задают бесконечную уйму вопросов о том, как готовить и подавать гамбургер.


Но не будем сегодня толковать о кулинарных изысках. В таких ресторанах нам интереснее система очередей. Если вам повезло прийти в ресторан, когда стол свободен и очереди нет, вас сразу посадят за столик. В противном случае вам вручат зуммер (таких «пищалок» у них великое множество!). С таким зуммером вы сможете спокойно бродить по округе, пока он не подаст сигнал. Тот, кто обслуживает гостей, следит, чтобы это делалось в порядке прибытия. Когда подойдёт ваша очередь, он отправит вам сигнал, вы вернётесь в ресторан, и вам найдут место. Продолжение — к старту нашего курса по Fullstack-разработке на Python.

Читать дальше →

Что делать, если твой временной ряд растёт вширь

Время на прочтение10 мин
Охват и читатели11K

Привет, Хабр! Есть мнение, что прогнозирование временных рядов - сложная задача. Но не будем расстраиваться, ведь есть и плюсы - существует ещё большое количество задач, когда рядов сразу несколько, и такие задачи ещё сложнее! Когда начинаем сравнивать, понимаем, что прогнозировать одномерные временные ряды не так уж и сложно. А вот что делать с ситуацией, когда временной ряд обрастает параллельно идущими с ним последовательностями других параметров (многомерный ряд), какие методы и алгоритмы использовать, и что делать, если задача прогнозировать такие ряды есть, а опыта не очень много (спойлер - используйте AutoML, а пока он работает восполните пробел прочитав пару статей по теме), разбираем под катом.

Что такое временной ряд 

Если начинать совсем издалека, то это последовательность значений, упорядоченная по времени. Во временных рядах есть закономерность: текущие значения ряда связаны с предыдущими. Если такого свойства у ряда нет, то поздравляем (или не поздравляем), вы имеете дело с процессом, который прогнозировать классическими (и не очень) моделями не выйдет, в таком случае стоит смотреть в сторону Марковских процессов.

Простенькая картинка ниже иллюстрирует описанное выше свойство, - этого бэкграунда для продолжения чтения поста достаточно (Рисунок 1).

Ну и что же делать