понимаем и разговариваем с командой на одном языке
Сложность увеличивает стоимость
продукты с МЛ и АИ значительно дороже, чем без них
Правильные данные- это основа успеха!
сбор данных
разметка данных
проще и дешевле найти и разметить достаточно данных, на которых будет обучаться модель, чтобы не пытаться оптимизировать сложный метод обучения без учителя
очистка данных
Mодель сможет стать лишь настолько хороша, насколько хороши ваши данные
очищенный датасет позволит модели выучить значимые признаки и не переобучиться на нерелевантном шуме
выбор хорошего представления данных
классификация
начинаем с логистической регресии
инспектирование
матрица ошибок
ошибки 1 и 2 рода
переход к более сложным моделям
Готовим данные правильно!
1) начинаем с быстрой и простой модели; 2) объясняем ее предсказания;
3) анализируем типы ошибок;
4) планируем следующий шаг: работа с данными, переход к более сложной модели
вычислительные мощности
аренда серверов
команда поддержки
постоянная валидация идей
успешны одна из 100 идей, но дает драматический прирост
Приоритезация
Score = Impact * Confidence/ Effort
Impact - если нет у фичи потенциала, то фича не окупится
Confidence играет бо(!)льшую роль, чем Impact
Effort гораздо более волатильно, чем при разработке фич
сравниваем решение с Base Linе решением
базовое решение
насколько МЛ решение лучше
минимальное кол-во фич с простыми методами
идем от простого к сложному
оцениваем ROC- AUC
А что еще
Оoooчень долгий цикл разработки
Трудно определить DOD
Решение успешно, но не работает?
Развиваем дальше или нет?
ML- это покер на всех этапах
очень сложно предсказать время
ML и Данные. А что с ними может быть не так?
Данные. Начем с того, что у нас есть
нет идеального набора данных
организуйте работы с данными, которые у вас есть
отвественность за данные
абстрагируйтесть, чтобы не решать задачу именно этих данных
Данные заражены предрассудками
ML amplifies biases
ML усиливает предрассудки!
очень сложно понять действительность
Работаем!
с самым объективным показателем из доступных
взвешиваем данные на ту экспозацию, которую давал элементам тренировочный алгоритм
в каком масштабе можем применять рандомизацию
данные должны быть сбалансированы
Самосбывающиеся пророчества
замкнутый круг
тавтология
Exploit vs Explore
Known Reward or Mystery Price
Ошибка выжившего
кто не представлен в данных
как уменьшить нерепрезентативность выборки
отрезать лишнюю активность, ограничив максимальный объем данных от одного пользователя
ре-семплинг тренировочного датасета, сделав его репрезентативным относительно целевой аудитории
моделирование
рандомизация
ML эволюционирует!
постоянный мониторинг
переубочение + валидация
мониторинг распределения важных фич на тренировочном датасете и в продакшене
перетренировка, если данные меняются
данные, которые модели не известны
мониторинг распределения предсказаний на проде
алгоритм не знает особенности системы и ничего о справедливости
Почему ML - проект может не работать?
Доступность данных на продакшене
Не работают модели на продакшене из-за разницы данных
Проблема cold start
Что делать, если данных нет на продакшене?
Формат и фактические распределения данных на продакшене
Время отклика модели
Ритм обновления модели
Естественное смещение под действием обратной связи
Экстримальные кейсы становятся непредсказуемыми и взрывоопасны
Ансамбль моделей
пользователь всегда прав
Поиск причинно-следственных связей
ML определяет корреляции
меняет действительность
не знает в какую сторону работает связь
корреляция не так важна как причинно-следственная связь
Команда и Культура
Культура
Data-Driven vs Data-Informed
Data-Driven
решения принимают алгоритмы
Data-Informed
принимаем решения, учитывая данные и результаты работы алгоритмов
Множественные, изменяющиеся цели
много чего неясно
Специалисты, и они хороши в одном и том же: Data Science
DS и РО лучшие друзья
часть продуктовой команды
баланс
сложный задач
задач, нужных бизнесу
ОКР- наш выбор
Инфраструктура. Умеем готовить
команда поддержки
BackEnd
Data Engineer
Data Analyst
SRE
Особенности задач
определить целевую переменную с заказчиком
определить возможные проблемы, связанные с ее изменением
уточнить ожидаемый результат и риски
сбор данных, их обработка
анализ данных = моделирование
объяснить полученные результаты понятныя языком
рассказываем просто о Precision и Recal, ROC-кривая, и что такое PR-кривая и confusion matrix
определить cut- off и эффективность внедрения модели
определяем порог- вероятность (predict_proba), выше которой мы говорим, что наша целевая переменная равна 1, а ниже – 0.