Reliable ML – Telegram
Reliable ML
6.55K subscribers
109 photos
1 file
224 links
Reliable ML - фреймворк о том, как управлять внедрением и развитием аналитики и data science/machine learning/AI, чтобы результат был применим в бизнес-процессах и приносил компании финансовую пользу.

Admin: @irina_goloshchapova @promsoft
Download Telegram
Опубликован новый пример дизайна ML системы по шаблону Reliable ML
Пишем ML System Design Doc вместе с Reliable ML

Для нас большая гордость добавлять дизайны ML систем, написанные на основе нашего шаблона, в открытый доступ. Огромное спасибо авторам, которые вкладываются в развитие ML System Design своими силами и временем.

Рады рассказать, что сегодня был опубликован новый пример - дизайн рекомендательной системы для сделок по аренде коммерческой недвижимости. Автор: Никита Артемьев, компания Отелит. Бизнес-цель ML-решения – с помощью увеличения релевантности предложения компании для клиента повысить среднюю конверсию из лида в успешную сделку для арендаторов.

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

Успехов компании Отелит в дальнейшем развитии решения!
Мы рады, что немного помогли и готовы помогать и дальше.

Шаблон дизайн-документа ML-систем от Reliable ML - тут.
Лекция о том, как с ним работать - тут.
Как написать док вместе с Reliable ML - тут.

Stay tuned!

Ваш @Reliable ML
23🔥6👍4
Необычные значения в данных
Цикл постов о подготовке данных. Пост 2

Продолжаем серию постов, посвященную подготовке данных. Первый пост тут.

Как анализировать выбросы: и тут causality

При анализе выбросов нужно проверять, нет ли взаимосвязи между выбросами в одной из компонент и другими признаками. По аналогии с пропущенными значениями, где обычно выделяют случаи MCAR, MAR, и MNAR, выбросы можно разделить на:

- Outlier Completely At Random - аномальное значение одного из признаков никак не связано с значениями других признаков. Скорее всего, эту точку данных нужно выкинуть. Пример - при медицинском осмотре сотрудников иногда барахлил автоматический тонометр, ошибка полностью случайна.

- Outlier At Random - аномальное значение одного из признаков можно объяснить другими признаками. Например, мальчиков и девочек на медосмотре смотрели разные врачи - и врач, смотревший мальчиков, был менее внимателен и чаще ошибался. Такие выбросы можно считать пропущенными значениями и, возможно, импутировать, S. Jager(2021).

- Outlier Not At Random - аномальное значение, зависящее от значения признака. Например, люди с большими доходами иногда занижают их в опросах, а с маленькими - завышают. Тогда выявленная аномалия - сама по себе важный признак. А еще это может быть не выброс, а редкий случай,.

Подходы и инструменты для выявления выбросов

Для выявления выбросов используют много подходов.

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

Другой популярный подход базируется на том, что необычные значения легко отделить от остальных. Пример такого подхода - IsolationForest.

Хороший обзор подходов к детекции выбросов есть в лекциях MIT от 2023 г. и статьях А. Дьяконова, кое-что есть в 4й лекции нашего курса по ML System Design, современные подходы собраны в обзоре PapersWithCode по Anomaly Detection.

Есть хорошие библиотеки Luminaire и PyOD. PyOD - удобный конструктор детекторов аномалий. В Luminaire много интересных подходов на основе структурных моделей, в том числе прекрасный подход для работы с временными рядами.

В следующем посте цикла мы подытожим теоретическую часть небольшим фреймворком - руководством по работе с выбросами на основе примеров из практики.

Ваш @Reliable ML
👍28🔥111
Историческое событие!
Два человека, которые уже 4 года вместе делают, чтоб ML был Reliable, догадались встретиться офлайн!
Планов о прекрасном и интересном мильон.
Будем стараться, чтобы они не остались только планами)
👍122🔥6227🥰3😁2🤨2
Трек Reliable ML - Data Fest Online 2023 - Ключевые даты
Подготовка докладов и мероприятий для трека Reliable ML на Data Fest Online 2023

Дорогие участники и спикеры трека Reliable ML на Data Fest Online 2023!

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

- 1 мая - до этой даты можно подать заявку на доклад. Для этого нужно продумать тему вашего доклада: написать название и анонс (о чем готовы рассказать). Ключевые темы мы раскрывали тут. Писать @irina_goloshchapova или @promsoft.

- 10 мая - мягкий дедлайн по докладам. Смотрим/слушаем и вместе дорабатываем драфты.

- 25 мая - готовы финальные доклады, утрясаем расписание.

- 3-4 июня - мы в эфире 🎉. Уже можно бронить дни в календарях 🙂!

Актуальный анонс треков Data Fest Online 2023 можно почитать тут.

Ваш @Reliable ML
👍183🔥2
Reliable ML pinned a photo
Книга Machine Learning System Design With End-to-End Examples
Ранний доступ

Отличное событие для мая: в раннем доступе опубликована книга по дизайну ML-систем от Валерия Бабушкина и Арсения Кравченко.

Вклад Валеры и Арсения в развитие теории и практики по ML System Design сложно переоценить - книга обязана быть топовой по теме.

Сейчас доступны первые 5 глав (в черновиках есть еще 8). Новые главы будут выкладываться каждые 2 недели.

Скидка на книгу до 9 мая: mlbabushkin (MEAP launch code, 45% off).

Ваш @Reliable ML
🔥255👍2🖕2
Лекция ML System Design Doc от Reliable ML в ИТМО

С радостью и гордостью выступили сегодня с Димой с лекцией по итеративному построению ML-систем в рамках онлайн-магистратуры ИТМО по ML-инженерии.

Рассказали про то, как выбирать ML-проекты, что такое ML System Design Doc и как его писать, чтобы предусмотреть основные риски, связанные с разработкой ML-решения и последующим его пилотированием и внедрением.

ИТМО планирует включить работу с нашим шаблоном дизайн дока в программу данной магистратуры как ключевой инструмент планирования ML-проектов.

Знать, что делаем что-то полезное - большая мотивация для того, чтобы мутить что-то новое.

Ваш @Reliable ML
29🔥20👍7
Reliable ML
Лекция ML System Design Doc от Reliable ML в ИТМО С радостью и гордостью выступили сегодня с Димой с лекцией по итеративному построению ML-систем в рамках онлайн-магистратуры ИТМО по ML-инженерии. Рассказали про то, как выбирать ML-проекты, что такое ML…
Лекция ML System Design Doc от Reliable ML в ИТМО

Выложили видео и слайды выступления с лекцией в рамках онлайн-магистратуры ИТМО по ML-инженерии.

Рассказали про то, как выбирать ML-проекты, начиная от поиска идеи, что такое ML System Design Doc и как его писать, чтобы предусмотреть основные риски, связанные с разработкой ML-решения и последующим его пилотированием и внедрением.

На сессии Q&A поговорили о типовых вопросах, связанных с написанием дока (например, об итеративности его составления), разобрали конкретный пример, опубликованный в репозитории, а также порассуждали о современных тенденциях на рынке труда в контексте профессии ML-инженера и немного затронули специфику внутренней и заказной разработки и применимость дизайн дока в этом контексте.

Ваш @Reliable ML
👍11🔥72🥰1
Необычные значения в данных
Цикл постов о подготовке данных. Пост 3

Продолжаем серию постов, посвященную подготовке данных. Первый пост тут, второй - тут.

Главное, что надо понять про выбросы - откуда они берутся. Какова природа, каков механизм генерации выбросов?

Фреймворк работы с выбросами

- Выявляем необычные точки
- Формулируем гипотезы: как был сгенерирован выброс
- Проверяем гипотезы
- Принимаем решение: интересны ли нам эти случаи
- Выкидываем или трансформируем необычные данные

Примеры

Выявляем необычные точки

Например, анализируя данные о прокате велосипедов, мы можем увидеть заметную часть (несколько процентов) очень коротких поездок. Поездка меньше 60 секунд - очевидно, аномалия.

Формулируем гипотезу: как был сгенерирован выброс

Гипотеза 1: ошибки/отказы. Велосипед был сломан, пользователь увидел это и вернул в прокат.

Гипотеза 2: дождь. Все, кто собирался ехать, отменяют поездки.

Проверяем гипотезы

Гипотеза 1. Скорее всего, таких случаев было много в первые несколько дней сезона, затем мало, и к концу сезона количество отказов постоянно росло. Короткие поездки случаются подряд с одними и теми же велосипедами. Эти предположения можно проверить на имеющихся данных.

Гипотеза 2. Если гипотеза верна, короткие поездки будут сгруппированы по времени и локации, но не привязаны к конкретному велосипеду.

Принимаем решение: интересны ли нам эти случаи

Интересна ли нам аналитика по отказам и нужно ли нам учитывать дождь в аналитике? Общаемся с бизнес-заказчиком и принимаем решение, исходя из целей продукта, над которым работаем.

Выкидываем или трансформируем необычные данные

Если данные не несут дополнительного велью для продукта - можно удалить, если несут, то смотрим пост 2.

Мораль

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

Ваш @Reliable ML
👍29🔥21😁1
Захар Понимаш, Виктор Носко - Как интерпретируемый ИИ объясняет генерацию трансформеров
3-4 июня - Секция Reliable ML на Data Fest 2023

Во время Data Fest 2023 на нашей секции Reliable ML Захар Понимаш и Виктор Носко из проекта FractalGPT расскажут о библиотеке ExplainitAll.

Библиотека ExplainitAll предназначена для интерпретации выходов нейросетей трансформер. Основным преимуществом реализуемого в библиотеке подхода является то, что интерпретация будет работать и для сетей-эмбеддеров, и для генеративных задач в сеттинге QA (Вопросно-ответных систем). Результат работы может быть сгруппирован и обобщен на семантические кластеры. Также разработчики и пользователи ExplainitAll смогут использовать готовые метрики надежности ответов трансформеров, а также создавать свои собственные, с визуализацией внимания.

Регистрация на мероприятие тут.
Расписание будет сформировано в конце мая.

Ваш @Reliable ML

#анонс #tech #interpretable_ml #datafest2023
🤔8🔥7🎉43👍2😁1
Артем Ерохин - Бутстрапирование временных рядов
3-4 июня - Секция Reliable ML на Data Fest 2023

Во время Data Fest 2023 на нашей секции Reliable ML с докладом про бутстрапирование временных рядов выступит Артем Ерохин, Lead DS в X5 Tech, автор канала @Artificial Stupid.

В докладе будет рассмотрена проблема применения классического бутстрепа для временных рядов. Артем расскажет про различные методы бутстрепа, учитывающие структуру временного ряда, рассмотрит плюсы и минусы разных подходов.

Регистрация на мероприятие тут.
Расписание будет сформировано в конце мая.

Ваш @Reliable ML

#анонс #tech #causal_inference #datafest2023
👍18🔥15👏21
Павел Филонов - Паттерны инференса ML-моделей
3-4 июня - Секция Reliable ML на Data Fest 2023

Во время Data Fest 2023 на нашей секции Reliable ML состоится доклад "Паттерны инференса ML-моделей" от Павла Филонова, независимого консультанта в области ML, преподавателя MLOps в OTUS и ex-DS Lead в Kaspersky.

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

В докладе обсудим 3 паттерна инференса моделей:
- пакетная обработка;
- потоковый инференс;
- REST интерфейс для модели.

Рассмотрим в каком случае лучше подходит тот или иной паттерн. Как они повлияют на пропускную способность и задержку. И какие подходящие инструменты для их реализации можно использовать.

Регистрация на мероприятие тут.
Расписание будет сформировано в конце мая.

Ваш @Reliable ML

#анонс #tech #mlops #datafest2023
🔥21👍42
Точечные vs коллективные аномалии: возможные задачи и пути их решения
Партнерский пост к циклу Reliable ML про необычные значения в данных от Юрия Кацера, автора тг-канала @DataKatser

Часто термины аномалии и выбросы используют взаимозаменяемо (Aggarwal, 2016). Иногда аномалии используется как собирательный термин, означающий разного рода необычное поведение данных. Наглядно “собирательность” термина показана в этой статье, где аномалии делят по типу обработки и данных, количеству точек, разметкие и др. В данном посте мы сфокусируемся на классификации аномалий по количеству точек.

Типы аномалий
Во временных рядах бывает важно искать не отдельные выбросы, а группы последовательных аномальных точек. По количеству точек аномалии классифицируют на точечные и коллективные (Chandola, 2009):

- Точечная аномалия - отдельная точка, считающейся аномальной по отношению к остальной части данных.
- Коллективная аномалия - последовательность точек во времени, когда между началом и концом аномалии не существует нормальных данных.

В такой формулировке выбросы (outliers) - это именно точечные аномалии, отличающиеся от остальных данных (Aggarwal, 2016).

Если аномальность данных заметна только в контексте соседних точек, говорят о контекстуальных (contextual) аномалиях. Это могут быть и точечные, и коллективные аномалии.

Формулировки задач
В зависимости от типов аномалий можно сформулировать следующие математические задачи:

- Для точечных аномалий мы будем решать задачу бинарной классификации: отнесения каждой точки к нормальному или аномальному классу. Unsupervised-версия - поиск выбросов или кластеризация, или одноклассовая классификация.
- Для коллективных аномалий - задачу обнаружения точки изменения состояния (сhangepoint detection). Подробный разбор есть в этом докладе на pycon'е.

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

Онлайн vs офлайн changepoint detection
- Офлайн - важно детектировать точки изменения состояния оптимальным образом:

⁃ Доступна полная реализация временного ряда
⁃ По-другому называется задачей сегментации
⁃ Находится оптимальное (или близкое к оптимальному) решение

- Онлайн - важно детектировать точки изменения состояния как можно раньше:

⁃ Может быть Batch и Real-time
⁃ Приходит по 1 точке (или 1 batch) в каждый момент времени
⁃ Точка изменения должна быть детектирована с минимальным запаздыванием

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

- Задача поиска выбросов. Библиотека PyOD. Помогает обнаружить в данных точечные аномалии или выбросы с помощью более 30 алгоритмов: от Isolation Forest до недавно представленных в научных статьях SOTA алгоритмов.
- Задача он-лайн поиска точек изменения состояния. Библиотека Prophet, которая прославилась решением задачи time-series прогнозов. В ней появились и инструменты для поиска аномалий..
- Задача офф-лайн поиска точек изменения состояния. Библиотека Ruptures. Реализованы основные методы, описанные в Truong, 2020.

Упоминания достойны еще несколько репозиториев:

⁃ Библиотека Kats
⁃ Библиотека Merlion
⁃ Библиотека Alibi Detect
⁃ Бенчмарк NAB

@Reliable ML & @DataKatser

#tech #data_centric_ai
👍197🔥3
Иллюстрация - Точечные vs коллективные аномалии: возможные задачи и пути их решения

Иллюстрация к партнерскому посту к циклу Reliable ML про необычные значения в данных от Юрия Кацера, автора тг-канала @DataKatser
🔥122👍1
Максим Кочуров - Bayes in the Wild
3-4 июня - Секция Reliable ML на Data Fest 2023

На Data Fest 2023 в секции Reliable ML выступит Максим Кочуров с вводным докладом о байесовских методах - "Bayes in the Wild". Максим является одним из ключевых разработчиков pymc (ex-pymc3), главной и многим знакомой python-библиотеки по байесовским методам, а также работает партнером в PyMC Labs, помогая бизнесу правильно работать с байесовскими методами.

Байесовкие методы это новый, хорошо забытый старый подход к решению прикладных задач. Но каких задач?

Существует качественное разделение на white box и black box подходы. Байесовкие методы это исключительно про интерпретируемые задачи, где важно количественно оценить характеристики процесса.

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

После доклада будет время на обсуждение целесообразности использования байесовского подхода и когда использовать его альтернативы.

Регистрация на мероприятие тут.
Расписание будет сформировано в конце мая.

Ваш @Reliable ML

#анонс #tech #interpretable_ml #datafest2023
🔥1810👍4
Максим Берёзов - Алгоритм маршрутизации без компромисса между качеством и скоростью
3-4 июня - Секция Reliable ML на Data Fest 2023

На Data Fest 2023 в секции Reliable ML Максим Берёзов, специалист по машинному обучению в Samokat.tech, расскажет об опыте разработки и внедрения моделей для маршрутизации курьерской доставки в бизнес-процессы e-grocery сервиса.

Дано: нужно строить маршруты для сотен мест назначения. Задача усложняется, когда мы должны попадать в ограниченный интервал по времени, учитывать грузоподъемность, особенности ландшафта, пробки и многие другие факторы. При этом время на расчёт маршрута должно составлять несколько секунд.

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

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

Регистрация на мероприятие тут.
Расписание будет сформировано в конце мая.

Ваш @Reliable ML

#анонс #tech #ml_system_design #datafest2023
👍16🔥82👏2
Запись на тестовое ML System Design Interview от Павла Филонова
3-4 июня - Секция Reliable ML на Data Fest 2023

На Data Fest 2023 в секции Reliable ML Павел Филонов проведет тестовое ML System Design Interview. Павел является независимым консультантом в области ML, преподавателем MLOps в OTUS и ex-DS Lead в Kaspersky, а также планирует рассказать на нашей секции доклад про паттерны инференса ML-моделей.

Если вы попадете на собеседование в MAANG на должность Software Engineer в области Machine Learning на грейд уровня Senior+, то вам, скорее всего, назначат 6 интервью:

- 2 coding
- 2 behavior
- 2 ML system design

Пример того, как может проходить последнее, мы и рассмотрим в рамках этой активности. Какие можно встретить вопросы, какая структура ответа от вас ожидается, какие материалы можно использовать для подготовки.

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

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

Ждем ваших заявок!

Регистрация на Data Fest 2023 тут.
Расписание будет сформировано в конце мая.

Ваш @Reliable ML

#анонс #tech #ml_system_design #datafest2023
🔥12👍7
Юрий Кацер - Предварительная обработка и поиск аномалий во временных рядах
3-4 июня - Секция Reliable ML на Data Fest 2023

Во время Data Fest 2023 на нашей секции Reliable ML состоится доклад "Предварительная обработка и поиск аномалий во временных рядах" от Юрия Кацера, эксперта в области применения DS, ML в промышленности, сооснователя waico.tech и автора тг канала @DataKatser.

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

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

А пока вы ждете доклад, можно почитать заметку Юрия о точечных и коллективных аномалиях, недавно опубликованную в нашем канале.

Регистрация на мероприятие тут.
Расписание будет сформировано в конце мая.

Ваш @Reliable ML

#анонс #tech #data_centric_ai #datafest2023
👍14🔥4
Григорий Чернов - Корреляция не подразумевает причинно-следственную связь. А что подразумевает?
3-4 июня - Секция Reliable ML на Data Fest 2023

Во время Data Fest 2023 на нашей секции Reliable ML с вводным докладом о причинно-следственном анализе выступит Григорий Чернов, приглашенный исследователь University of Tuebingen, к.э.н., научный сотрудник ВШЭ.

Наше мышление плохо приспособлено для рассуждений о причинно-следственных связях. Это приводит к проблемам в рабочей коммуникации и привносит искажения в процесс моделирования.

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

В своем докладе Григорий Чернов расскажет, почему так трудно думать об условных вероятностях и как с этим быть.

Регистрация на мероприятие тут.
Расписание будет сформировано в конце мая.

Ваш @Reliable ML

#анонс #tech #causal_inference #datafest2023
18👍9🔥6👏3
Кристина Лукьянова - Байесовский подход к АБ-тестам на примере теста конверсии
3-4 июня - Секция Reliable ML на Data Fest 2023

Кристина Лукьянова, бизнес-аналитик в компании Glowbyte, выступит с вводным докладом о байесовском подходе к АБ-тестированию на нашей секции Reliable ML на Data Fest 2023.

Байесовский подход к АБ тестам - альтернатива частотному (фреквентистскому) подходу. Поговорим о том, как заменить p-value на более интерпретируемые метрики, используя байесовские методы. Сравним частотный и байесовский подходы на примере теста конверсии.

Регистрация на мероприятие тут.
Расписание будет сформировано в конце мая.

Ваш @Reliable ML

#анонс #tech #causal_inference #datafest2023
👍2273🔥1😁1
Андрей Денисенко - Как построить real-time ML на криптобирже
3-4 июня - Секция Reliable ML на Data Fest 2023

Во время Data Fest 2023 на нашей секции Reliable ML выступит Андрей Денисенко, Lead ML Product Owner.

В своем докладе Андрей поделится опытом об особенностях построения жизненного цикла real time аналитики с нуля с использованием AWS, Kafka, Airflow. Андрей также расскажет об условиях необходимых для успеха ML-инициатив и продуктовом подходе к data science в hyper-growth среде.

Регистрация на мероприятие тут.
Расписание будет сформировано в конце мая.

Ваш @Reliable ML

#анонс #tech #ml_system_design #mlops #datafest2023
🔥15👍52👎1