IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте авторский блог

     05.11.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Видео

Юрий Кацер. Поиск точек изменения состояния (changepoint detection) на python

Общая задача обнаружения аномалий во временных рядах часто разделяется на две отдельные задачи: обнаружение выбросов или бинарная классификация (для точечных аномалий) и обнаружение точек изменения состояния (changepoint detection, для коллективных аномалий). В докладе подробно рассмотрена задача changepoint detection, методы для обнаружения точек изменения состояния, библиотеки на python, с помощью которых можно решать эту задачу. Также в докладе продемонстрирована реализация на python одного из самых распространенных подходов к решению задачи (генерация невязки сигнала) без применения специализированных библиотек.

     05.11.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Видео

Артем Приходько, Avito. Python vs multiprocessing

Мультипроцессинг в питоне вещь актуальная, особенно если вы занимаетесь ML сервисами. Но если вы попытаетесь использовать его в ваших сервисах — вы непременно наткнетесь на ряд подводных камней, которые почти нигде не обсуждается. В докладе я бы хотел рассказать про наш опыт использования мультипроцессинга, с какими проблемами можно столкнуться, затаскивая его в реальные продакшн сервисы. Из этого доклада можно будет узнать: В каких случаях нужно использовать shared memory и как корректно и эффективно с ней работать. Расскажу про атомарные счетчики ссылок как альтернативу стандартным методам контроля над шареной памятью в питоне. Скрытые баги в стандартных питоновских очередях. Мультипроцессорные очереди в питоне ведут себя контринтуитивно (например, говорить, что очередь пуста, когда в ней на самом деле лежит куча тасков), плюс они не совсем кроссплатформенные. Эти вещи мало где обсуждаются, а проблемы, связанные с ними, напрямую аффектят сервисы. При этом сходу не понятно, что произошло не так и как можно это исправить.

     05.11.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Видео

Денис Усачёв, Сбердевайсы. Как мы один pet-project масштабировали

Во время работы над сложными проектами, например, такими как виртуальные ассистенты, возникают нетиповые задачи, для решения которых нет подходящего инструмента или фреймворка. Иногда такие задачи кажутся маленькими и незначительными, поэтому один разработчик-энтузиаст за два дня пишет на коленке маленький Python сервис и делится им с коллегами. Но как быть, если маленький наколенный проект с 2 RPS, предназначенный для использования несколькими людьми, выстреливает, и его накрывает волна фича реквестов и пользователей из десятков команд? В своём докладе я расскажу, как развивался наш внутренний инструмент UnionPortal, предназначенный для поддержки NLP задач, про его эволюцию, начиная с маленького наколенного проекта и заканчивая большим отказоустойчивым сервисом со всеми правилами хорошего тона enterprise сервиса. Мы затронем такие интересные вопросы как масштабирование, бесшовный вывод из и ввод в эксплуатацию, сокращение стоимости разработки и внедрение единого архитектурного стандарта.

     05.11.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Статьи

Всё, что вам нужно знать о звёздочках в Python

Большинство разработчиков знают символ звёздочки как оператор умножения в Python: product = 4 * 2 # 8 Однако, звёздочка имеет особое значение для сложных структур данных, например списка или словаря.

     05.11.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Статьи

Руководство по subplots в matplotlib

Если вы полезли в аналитику, то, вероятно, обнаружили, что там много, ну ОЧЕНЬ МНОГО графиков. Иногда хватает одного, и тогда всё отлично. А если нужно два? А если пять? И рядом. Тут поможет matplotlib.

     05.11.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Статьи

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

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

     04.11.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Статьи

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

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

     03.11.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Статьи

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

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

     02.11.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Статьи

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

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

     01.11.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Видео
     31.10.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Статьи

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

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

     31.10.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Статьи

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

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

     31.10.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Статьи

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

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

     31.10.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Статьи

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

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

     31.10.2022       Выпуск 463 (31.10.2022 - 06.11.2022)       Статьи

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

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

     30.10.2022       Выпуск 462 (24.10.2022 - 30.10.2022)       Статьи

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

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

     29.10.2022       Выпуск 462 (24.10.2022 - 30.10.2022)       Статьи

Ищем значение числа Пи используя генератор случайных значений

Представьте, что у вас есть функция random(), которая генерируют случайным образом значения в промежутке от 0 до 1. Вычислите значение числа Пи.
Это задачка с реального собеседования, будем разбираться! Читать далее

     28.10.2022       Выпуск 462 (24.10.2022 - 30.10.2022)       Статьи

Создание 3D-сетки из изображения с помощью Python

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

     28.10.2022       Выпуск 462 (24.10.2022 - 30.10.2022)       Статьи

Как мы “побеждали” в хакатоне по машинному обучению Data Product Hack

В статье я поделюсь опытом, как нам удалось всего за 5 дней собрать команду, придумать идею проекта, создать с нуля работающий прототип продукта, который решает реальную проблему на данных, и параллельно с этим посетить 12 встреч с ML-экспертами из ведущих AI компаний. Надеюсь, мой опыт поможет тебе подготовиться к твоему первому хакатону!

     27.10.2022       Выпуск 462 (24.10.2022 - 30.10.2022)       Статьи

От джуна до тимлида. Должен ли тимлид писать хороший код, чем хорош planning poker и другие интересности

Когда-то Юрий Орлов решил перейти из врачей в программисты. В 2018 году он устроился в Genix джуном, а сейчас он — тимлид VK Group. Начало истории вы можете послушать здесь, а в статье мы обсудим перипетии тимлидства — как опыт работы врачом помогает находить общий язык с людьми, должен ли тимлид писать код лучше членов команды, как работает Planning poker и что самое сложное в задачах тимлида.