Привет всем!👋
Количество постов явно коррелирует с загруженностью на работе. Прошлая неделя была посвящена модельному риску.
Кто не знает что такое модельный риск, дам небольшую вводную.
Модельный риск - событие риска, наступающее при ошибочных решениях на основе неточности/несовершенства использования моделей в бизнес процессах.
Основные проблемы, с которыми сталкивается моделист в рамках модельного риска - падение инфраструктуры (модель не считается n-дней), отсутствие данных (отдельные данные не приходят n-дней), выведена не та версия модели (модель работает не так, как предполагается или не совсем полный функционал).
Так уж случилось, что на той неделе произошло аж 2 инцидента по модельному риску.
- Что в таких случаях делает команда DS и в чем заключается сложность данного процесса?
Любая модель, так или иначе, стоит на мониторинге, в разных системах, которые в случае проблем дают симптомы. Чаще всего перераспределение признаков, либо целевой метки.
- Итак, мы видим на мониторингах странные вещи, в чем проблема их пофиксить?
Главная проблема в том, что симптомы общие для семейства проблем и DS оперативно выявить и локализовать проблему. Например, видим падение источника (фича перестала приходить, везде
- Выявили проблему, что дальше?
Это уже большая победа, ведь каждый день ошибки на модели - миллионы потерь для банка. Составляется план исправления в кратчайшие сроки. Когда понятны причины, заводится риск событие. Риск событие - формализация проблемы с указанием его первоисточника, процессов, затронутой проблемой и планом решения.
Данное событие обрабатывают риск-чемпионы - коллеги, которые принимают решение о критичности, формализуется оценка потери. Буквально коллеги оценивают полноту картины, в каких процессах что упало и где это влияет в денежном эквиваленте. Результатом их работы является поручение на анализ финансового эффекта потерь, подтверждение, что предложенный план исчерпывает проблему и дается правовая оценка события (если дело пахнет жареным и тянет на пару статей УК РФ).
Для нас как для DS данный процесс представляет собой формирование Ad-hoc упражнений, которые потом используются для подсчета потерь (чаще всего это некоторый what-if анализ, который мы проводим в сжатые сроки). Плюс на плечах DS лежит вывод патча + проверка и подтверждение, что после исправления работает все именно так, как и должно.
- Какой результат?
Исправление бага, действия со стороны бизнеса, которые минимизируют эффект (например, оперативный пересчет предложений, блокировка выдачи в конкретный момент), оценка прогнозируемых и фактических потерь (хорошая новость этого события, что потенциальные потери != фактические, нередко клиент может даже не заметить на себе что что-то случилось).
#трудовые_будни
Количество постов явно коррелирует с загруженностью на работе. Прошлая неделя была посвящена модельному риску.
Кто не знает что такое модельный риск, дам небольшую вводную.
Модельный риск - событие риска, наступающее при ошибочных решениях на основе неточности/несовершенства использования моделей в бизнес процессах.
Любая модель в том или ином виде подвержена модельному риску!
Основные проблемы, с которыми сталкивается моделист в рамках модельного риска - падение инфраструктуры (модель не считается n-дней), отсутствие данных (отдельные данные не приходят n-дней), выведена не та версия модели (модель работает не так, как предполагается или не совсем полный функционал).
Так уж случилось, что на той неделе произошло аж 2 инцидента по модельному риску.
- Что в таких случаях делает команда DS и в чем заключается сложность данного процесса?
Любая модель, так или иначе, стоит на мониторинге, в разных системах, которые в случае проблем дают симптомы. Чаще всего перераспределение признаков, либо целевой метки.
- Итак, мы видим на мониторингах странные вещи, в чем проблема их пофиксить?
Главная проблема в том, что симптомы общие для семейства проблем и DS оперативно выявить и локализовать проблему. Например, видим падение источника (фича перестала приходить, везде
NaN
) на источнике данные могут быть, но например, не подгружаться корректно инфрой. Тут уже надо бежать смотреть логи модели, проверяя как и первоисточник данных, так и систему, их выгружающую. В случае моей работы, это постоянное смотрение ручками + коммуникация и координация действий со смежными подразделениями по данным (DE) и инфраструктуре (MLOps).- Выявили проблему, что дальше?
Это уже большая победа, ведь каждый день ошибки на модели - миллионы потерь для банка. Составляется план исправления в кратчайшие сроки. Когда понятны причины, заводится риск событие. Риск событие - формализация проблемы с указанием его первоисточника, процессов, затронутой проблемой и планом решения.
Данное событие обрабатывают риск-чемпионы - коллеги, которые принимают решение о критичности, формализуется оценка потери. Буквально коллеги оценивают полноту картины, в каких процессах что упало и где это влияет в денежном эквиваленте. Результатом их работы является поручение на анализ финансового эффекта потерь, подтверждение, что предложенный план исчерпывает проблему и дается правовая оценка события (если дело пахнет жареным и тянет на пару статей УК РФ).
Для нас как для DS данный процесс представляет собой формирование Ad-hoc упражнений, которые потом используются для подсчета потерь (чаще всего это некоторый what-if анализ, который мы проводим в сжатые сроки). Плюс на плечах DS лежит вывод патча + проверка и подтверждение, что после исправления работает все именно так, как и должно.
- Какой результат?
Исправление бага, действия со стороны бизнеса, которые минимизируют эффект (например, оперативный пересчет предложений, блокировка выдачи в конкретный момент), оценка прогнозируемых и фактических потерь (хорошая новость этого события, что потенциальные потери != фактические, нередко клиент может даже не заметить на себе что что-то случилось).
#трудовые_будни
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍3❤1
Привет всем!👋
Просто посмотрите какая красота - логотип новой версии🐍 .
Вчера официально вышел релиз Python 3.14.
- Какие изменения нас ждут в данном релизе?
1️⃣ 🔤 Прежде всего, важнейшим обновлением является тот факт, что теперь Python официально поддерживается на ОС Android.
2️⃣ 🔤 Уже традиционное улучшение сообщений об ошибке.
3️⃣ 🔤 Куча удаленных и deprecated функций.
4️⃣ 🔤 Интересным нововведением является
Код ниже даст
Напротив, код ниже отработает без сигнализации проблем
5️⃣ 🔤 Выражение
6️⃣ 🔤 В встроенную библиотеку
7️⃣ 🔤 Новые
Такие конструкции удобны для проверки входящих данных, например целых кусков HTML, ведь вводимые данные имеют тип Interpolation.
Например:
Обновление интересное, включает еще в себя кучу оптимизаций, включая freethreding, JIT, дополнительной оптимизацией по памяти, что разрушает стериотип о Python - медленный, но простой.
По традиции, 🔥, если понравилось
#ds_лайфхаки
Просто посмотрите какая красота - логотип новой версии
Вчера официально вышел релиз Python 3.14.
- Какие изменения нас ждут в данном релизе?
whille True:
pass
Traceback (most recent call last):
File "<stdin>", line 1
whille True:
^^^^^^
SyntaxError: invalid syntax. Did you mean 'while'?
SyntaxWarning
при использовании операторов return
, break
, continue
, приводящих к выходу из блока finally
Код ниже даст
SyntaxWarning
def f():
try:
...
finally:
return 42
for x in o:
try:
...
finally:
break # (or continue)
Напротив, код ниже отработает без сигнализации проблем
try:
...
finally:
def f():
return 42
try:
...
finally:
for x in o:
break # (or continue)
except
теперь может вызывать несколько типов ошибок без использования скобок:try:
connect_to_server()
except TimeoutError, ConnectionRefusedError:
print('The network has ceased to be!')
compression
добавлен новый метод сжатия zstd
t-strings
. Т строки (Template Strings), иначе говоря шаблонные, включают в себя статичную и вставочную часть, при этом результат вывода не является строкой. variety = 'Stilton'
template = t'Try some {variety} cheese!'
type(template)
<class 'string.templatelib.Template'>
list(template)
['Try some ', Interpolation('Stilton', 'variety', None, ''), ' cheese!']
Такие конструкции удобны для проверки входящих данных, например целых кусков HTML, ведь вводимые данные имеют тип Interpolation.
Например:
def lower_upper(template):
"""Render static parts lowercase and interpolations uppercase."""
parts = []
for part in template:
if isinstance(part, Interpolation):
parts.append(str(part.value).upper())
else:
parts.append(part.lower())
return ''.join(parts)
name = 'Wenslydale'
template = t'Mister {name}'
assert lower_upper(template) == 'mister WENSLYDALE'
Обновление интересное, включает еще в себя кучу оптимизаций, включая freethreding, JIT, дополнительной оптимизацией по памяти, что разрушает стериотип о Python - медленный, но простой.
По традиции, 🔥, если понравилось
#ds_лайфхаки
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18👍4❤2
Привет всем!
Последние пару недель несколько ребят из чата спрашивали, с чего начать путь в ML, если уже есть немного скилов в Python и интерес к теме, но страшно лезть сразу в прод. Решил поделиться находкой, которая выглядит реально здраво — курс-симулятор «Инженер машинного обучения» от Simulative.
Что мне в нём понравилось — формат максимально приближен к реальной работе: никаких сухих лекций, сразу проекты, код, фидбек и живые кейсы от компаний. По сути, ты не «учишься», а работаешь внутри безопасной песочницы, где можно набить руку и понять, как устроен ML на самом деле.
🟠 математика и Python, но в привязке к задачам, а не абстрактным формулам;
🟠 обучение моделей, нейронки, рекомендательные системы;
🟠 пробные интервью — и технические, и HR, чтобы не словить ступор на реальных собесах.
🟠 предсказание успеха маркетинговой кампании,
🟠 оценка убыточности ресторана,
🟠 поиск похожих товаров по изображениям,
🟠 создание персональных рекомендаций.
Для новичков — это возможность выстроить системное понимание ML;
для разработчиков — шанс перейти в машинное обучение;
для аналитиков — способ прокачать стек и залезть в модели поглубже.
Отдельно отмечу VIP-тариф: тут вас доведут до трудоустройства практически за руку.
Звучит как честный вариант, если цель — не просто поучиться, а реально сменить набить скилы или сменить профессию.
🔗 Новый поток совсем скоро. Записывайтесь и получайте скидку 25% на курс по ссылке: simulative.ru/ml-engineer
А вы как учились ML — больше через проекты или через классические курсы с лекциями?
#обучение #ml #карьера
Последние пару недель несколько ребят из чата спрашивали, с чего начать путь в ML, если уже есть немного скилов в Python и интерес к теме, но страшно лезть сразу в прод. Решил поделиться находкой, которая выглядит реально здраво — курс-симулятор «Инженер машинного обучения» от Simulative.
Что мне в нём понравилось — формат максимально приближен к реальной работе: никаких сухих лекций, сразу проекты, код, фидбек и живые кейсы от компаний. По сути, ты не «учишься», а работаешь внутри безопасной песочницы, где можно набить руку и понять, как устроен ML на самом деле.
Что внутри:
Примеры проектов:
Для новичков — это возможность выстроить системное понимание ML;
для разработчиков — шанс перейти в машинное обучение;
для аналитиков — способ прокачать стек и залезть в модели поглубже.
Отдельно отмечу VIP-тариф: тут вас доведут до трудоустройства практически за руку.
Звучит как честный вариант, если цель — не просто поучиться, а реально сменить набить скилы или сменить профессию.
🔗 Новый поток совсем скоро. Записывайтесь и получайте скидку 25% на курс по ссылке: simulative.ru/ml-engineer
А вы как учились ML — больше через проекты или через классические курсы с лекциями?
#обучение #ml #карьера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👎4🔥3💯2👍1
Привет всем!👋
Давно не упражнялись в задачах DS.
Вопрос следующий:
На картинке представлены ROC-кривые 3х моделей бинарной классификации.
Кажется, что модель 1 и модель 2 ведут себя странно.
Вопрос: что может быть с ними?
#ds_зарядка
Давно не упражнялись в задачах DS.
Вопрос следующий:
На картинке представлены ROC-кривые 3х моделей бинарной классификации.
Кажется, что модель 1 и модель 2 ведут себя странно.
Вопрос: что может быть с ними?
#ds_зарядка
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤1👍1