Всем привет! Запускаем новый канал для всех, кто интересуется Data Science, машинным и глубоким обучением 🤖
Здесь будем писать мы, менторы и практикующие инженеры и дата-сайентисты. Мы каждый день имеем дело с продом: данными, пайплайнами, метриками, мониторингом, факапами и решениями, которые стоят реальных денег.
Что вы здесь найдёте:
➖ Кейсы из реальной работы — что сработало, что сломалось и почему;
➖ Факапы и анти-паттерны — то, о чём обычно не пишут в резюме;
➖ Карьерные маршруты — как перейти из аналитики в Data Science и расти дальше.
Если вы хотите понимать, как устроены настоящие ML/DL‑системы и какие навыки ценятся на рынке — вы на месте!
Подписывайтесь, задавайте вопросы, предлагайте темы — часть контента здесь будет появляться именно из ваших запросов.
Остаёмся на связи!
Здесь будем писать мы, менторы и практикующие инженеры и дата-сайентисты. Мы каждый день имеем дело с продом: данными, пайплайнами, метриками, мониторингом, факапами и решениями, которые стоят реальных денег.
Что вы здесь найдёте:
Мы будем опираться на те же принципы, по которым строим обучение на курсах «ML-инженер» и «DL-инженер»: много практики, живые кейсы, обратная связь и честный взгляд на профессию.
Если вы хотите понимать, как устроены настоящие ML/DL‑системы и какие навыки ценятся на рынке — вы на месте!
Подписывайтесь, задавайте вопросы, предлагайте темы — часть контента здесь будет появляться именно из ваших запросов.
Остаёмся на связи!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9🔥4👍2
4 ключевых навыка ML-инженера
Привет! Ментор курса «ML-инженер» Кристина Желтова на связи 👋🏻
Уже много лет машинное обучение развивается и приносит пользу компаниям, и наметились очевидные тренды — нейросети становятся больше и умнее, а инструментов для работы становится столько, что и за всю жизнь не изучишь. При этом работодатели всё чаще ждут от кандидатов не только знания ML-алгоритмов, но и умения внедрять модели в реальный бизнес.
Какие навыки сегодня делают ML-инженера по-настоящему востребованным:
🟠 Техническая база
Фундаментальные знания — наше всё, без них точно далеко не уедешь. Сюда входит понимание основной математики ML — линейная алгебра, методы оптимизации, статистика и теория вероятностей.
Технический стек может быть разнообразным и сильно зависит от выбранной специализации — в каждой области есть свои часто используемые технологии и фреймворки, но самое основное пригодится почти всегда: Python, SQL, scikit-learn.
🟠 Работа с данными
Не зря говорят, что 80% работы приходится именно на данные — это залог успеха всего проекта. Поэтому умение строить дата-пайплайны и грамотно трансформировать сырые данные в чистые выборки для обучения просто необходимо, иначе есть риск получить очень слабую и глупую модель.
🟠 Продакшн и MLOps
Жизнь модели не заканчивается после обучения. Дальше её ждёт внедрение, мониторинг и, возможно, регулярные запуски переобучения. Далеко не все ML-специалисты собственноручно занимаются внедрением — часто это отводится специалистам в роли MLOps, однако стоит понимать, какие у модели есть «особенности поведения» в проде. Например, насколько она «тяжелая» — как много времени ей требуется на подготовку прогноза, и как это соотносится с техническими требованиями — есть ли в процессе столько времени, чтобы ждать, пока модель «подумает»?
🟠 Soft skills
Неожиданно, но факт! Один из самых важных навыков — умение работать на стыке и говорить на одном языке как с дата-сайентистами, так и с продактами, менеджерами, заказчиками.
Навык объяснять сложное простыми словами даже неспециалисту недооценен и может очень сильно ускорить продвижение по карьерной лестнице, особенно по вертикальному треку.
Получается, ML-инженер — своеобразный мост между исследованием и бизнесом. Он понимает, как превратить идею в работающий сервис, встраивает модели в реальные продукты и отвечает за то, чтобы они приносили ценность.
Какие навыки добавили бы к этому списку?
Привет! Ментор курса «ML-инженер» Кристина Желтова на связи 👋🏻
Уже много лет машинное обучение развивается и приносит пользу компаниям, и наметились очевидные тренды — нейросети становятся больше и умнее, а инструментов для работы становится столько, что и за всю жизнь не изучишь. При этом работодатели всё чаще ждут от кандидатов не только знания ML-алгоритмов, но и умения внедрять модели в реальный бизнес.
Какие навыки сегодня делают ML-инженера по-настоящему востребованным:
Фундаментальные знания — наше всё, без них точно далеко не уедешь. Сюда входит понимание основной математики ML — линейная алгебра, методы оптимизации, статистика и теория вероятностей.
Технический стек может быть разнообразным и сильно зависит от выбранной специализации — в каждой области есть свои часто используемые технологии и фреймворки, но самое основное пригодится почти всегда: Python, SQL, scikit-learn.
Не зря говорят, что 80% работы приходится именно на данные — это залог успеха всего проекта. Поэтому умение строить дата-пайплайны и грамотно трансформировать сырые данные в чистые выборки для обучения просто необходимо, иначе есть риск получить очень слабую и глупую модель.
Жизнь модели не заканчивается после обучения. Дальше её ждёт внедрение, мониторинг и, возможно, регулярные запуски переобучения. Далеко не все ML-специалисты собственноручно занимаются внедрением — часто это отводится специалистам в роли MLOps, однако стоит понимать, какие у модели есть «особенности поведения» в проде. Например, насколько она «тяжелая» — как много времени ей требуется на подготовку прогноза, и как это соотносится с техническими требованиями — есть ли в процессе столько времени, чтобы ждать, пока модель «подумает»?
Неожиданно, но факт! Один из самых важных навыков — умение работать на стыке и говорить на одном языке как с дата-сайентистами, так и с продактами, менеджерами, заказчиками.
Навык объяснять сложное простыми словами даже неспециалисту недооценен и может очень сильно ускорить продвижение по карьерной лестнице, особенно по вертикальному треку.
Получается, ML-инженер — своеобразный мост между исследованием и бизнесом. Он понимает, как превратить идею в работающий сервис, встраивает модели в реальные продукты и отвечает за то, чтобы они приносили ценность.
Какие навыки добавили бы к этому списку?
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍2🔥2
Media is too big
VIEW IN TELEGRAM
Привет! На связи Мария Жарова, ML-инженер в команде рекомендаций Wildberries 👋🏻
Замечали, что рекомендации как будто читают ваши мысли? В этом ролике рассказала о рекомендательных системах и как мы их неосознанно учим 👆🏻
Замечали, что рекомендации как будто читают ваши мысли? В этом ролике рассказала о рекомендательных системах и как мы их неосознанно учим 👆🏻
❤8🔥5👍4
Станьте востребованным дата-сайентистом
Мы запустили новый курс по Data Science от Симулейтив и объединили опыт практикующих экспертов, чтобы за 8 месяцев вы:
➖ Освоили полный стек инструментов аналитики и инженерии данных: от SQL, Python и Pandas до Docker, Airflow и ETL-пайплайнов;
➖ Погрузились в мир ML и DL: от регрессии, кластеризации и рекомендательных систем до архитектур нейронных сетей, обработки текста (NLP) и компьютерного зрения (в продвинутом тарифе);
➖ Решили реальные бизнес-кейсы: только практика от действующих аналитиков, которая ляжет в ваше портфолио.
После курса вы сможете не просто обрабатывать данные, а прогнозировать будущее и находить скрытые возможности. Получите диплом государственного образца и уверенно ворвётесь на рынок труда с полным набором навыков!
🧡 Записаться на поток со скидкой 30%: simulative.ru/data-scientist
Мы запустили новый курс по Data Science от Симулейтив и объединили опыт практикующих экспертов, чтобы за 8 месяцев вы:
После курса вы сможете не просто обрабатывать данные, а прогнозировать будущее и находить скрытые возможности. Получите диплом государственного образца и уверенно ворвётесь на рынок труда с полным набором навыков!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍3🔥2
Как собрать простой RAG-пайплайн
Привет! На связи Кристина Желтова, директор по разработке моделей в Газпромбанке 👋🏻
Сегодня многие слышали про RAG, но часто кажется, что это что-то очень сложное, многокомпонентное и вообще только для больших компаний. На практике базовый RAG — это довольно понятный пайплайн: мы берём свои тексты, превращаем их в векторы, ищем релевантные куски и только потом просим модель ответить по найденному контексту.
Минимальный пайплайн состоит всего из нескольких шагов:
1️⃣ Берём приглянувшийся датасет с текстами;
2️⃣ Считаем для них эмбеддинги;
3️⃣ Складываем в векторную базу данных;
4️⃣ По запросу пользователя ищем top-k ближайших фрагментов;
5️⃣ Подкладываем найденный контекст в промпт LLM и просим ответить с использованием этой информации.
Такой пайплайн можно собрать даже на маленькой русской базе знаний: FAQ, конспектах, памятках или учебных материалах.
➡️ По ссылке доступна минималистичная реализация базового пайплайна с моделями
Привет! На связи Кристина Желтова, директор по разработке моделей в Газпромбанке 👋🏻
Сегодня многие слышали про RAG, но часто кажется, что это что-то очень сложное, многокомпонентное и вообще только для больших компаний. На практике базовый RAG — это довольно понятный пайплайн: мы берём свои тексты, превращаем их в векторы, ищем релевантные куски и только потом просим модель ответить по найденному контексту.
Если совсем просто, то RAG — это LLM с внешней памятью, только в этой памяти документы лежат как векторы, а сами тексты хранятся в их метаданных.
Минимальный пайплайн состоит всего из нескольких шагов:
Такой пайплайн можно собрать даже на маленькой русской базе знаний: FAQ, конспектах, памятках или учебных материалах.
intfloat/multilingual-e5-small и Qwen/Qwen3-0.6B.Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤4👍4
Переобучение: почему ваша модель врёт и что с этим делать
Привет! На связи Мария Жарова, ML-инженер в команде рекомендаций в Wildberries 👋🏻
Представьте ситуацию: вы обучили модель, на трейне — почти идеальная точность, а на новых данных всё разваливается… Значит, вы столкнулись с переобучением 🙂
Что это вообще такое?
Классический сигнал переобучения:
🟠 На тренировочных данных ошибка падает;
🟠 На валидационных данных начинает расти.
В классическом (и не только) ML причины, как правило, делятся на две группы: либо проблема в данных (мультиколлинеарность, много дубликатов или маленький объем), либо в модели (слишком сложная или неподходящая архитектура, не те гиперпараметры).
Как с этим бороться?
1️⃣ Штраф на большие веса
Один из сигналов, что модель переобучается в случае линейной модели или нейросети — большие коэффициенты весов. Так давайте просто добавим штраф к функции потерь, чтобы в интересах модели было не только уменьшать значение ошибки, но и не делать веса слишком большими по модулю!
Существует несколько разных подходов: L1 (Lasso), L2 (Ridge) и их комбинация (Elastic Net), вот псевдокод вариантов этого «добавочного» слагаемого:
2️⃣ Ранняя остановка обучения
Иногда переобучение возникает из-за слишком долгого обучения. В таком случае важно поймать момент, когда метрики на обучении и валидации начинают «разъезжаться» — и можно сделать это автоматически, просто периодически проверяя разницу между ними.
3️⃣ Больше данных (или их имитация)
Пожалуй, это самый недооценённый способ: как правило, если данных мало, модель вынуждена переобучаться. Поэтому если есть возможность, имеет смысл собрать данных побольше или хотя бы убрать шум из имеющихся + сделать простые аугментации, если это допустимо.
4️⃣ «Упрощение» модели
Иногда проблема не в данных, а в том, что вы чересчур усложнили модель. Для разных архитектур приемы её «упрощения» отличаются, вот несколько примеров:
➖ Уменьшить глубину дерева;
➖ Уменьшить число обучаемых параметров;
➖ Попробовать в принципе более простую архитектуру.
Так что переобучение — это не баг, а естественное поведение модели. И ваша задача — держать его под контролем.
Ставьте❤️ , если было полезно — и сохраняйте, чтобы не потерять!
Привет! На связи Мария Жарова, ML-инженер в команде рекомендаций в Wildberries 👋🏻
Представьте ситуацию: вы обучили модель, на трейне — почти идеальная точность, а на новых данных всё разваливается… Значит, вы столкнулись с переобучением 🙂
Что это вообще такое?
Переобучение — это когда модель слишком хорошо запоминает обучающую выборку и перестаёт обобщать закономерности на новые данные. Как школьник, который «зазубрил» правильные ответы, а похожую задачу решить не может.
Классический сигнал переобучения:
В классическом (и не только) ML причины, как правило, делятся на две группы: либо проблема в данных (мультиколлинеарность, много дубликатов или маленький объем), либо в модели (слишком сложная или неподходящая архитектура, не те гиперпараметры).
Как с этим бороться?
Существует целая группа методов борьбы с переобучением — регуляризация. Разберём основные подходы.
Один из сигналов, что модель переобучается в случае линейной модели или нейросети — большие коэффициенты весов. Так давайте просто добавим штраф к функции потерь, чтобы в интересах модели было не только уменьшать значение ошибки, но и не делать веса слишком большими по модулю!
Существует несколько разных подходов: L1 (Lasso), L2 (Ridge) и их комбинация (Elastic Net), вот псевдокод вариантов этого «добавочного» слагаемого:
alpha * sum(abs(w)) # добавка к loss при L1
alpha * sum(w**2) # добавка к loss при L2
Иногда переобучение возникает из-за слишком долгого обучения. В таком случае важно поймать момент, когда метрики на обучении и валидации начинают «разъезжаться» — и можно сделать это автоматически, просто периодически проверяя разницу между ними.
Пожалуй, это самый недооценённый способ: как правило, если данных мало, модель вынуждена переобучаться. Поэтому если есть возможность, имеет смысл собрать данных побольше или хотя бы убрать шум из имеющихся + сделать простые аугментации, если это допустимо.
Иногда проблема не в данных, а в том, что вы чересчур усложнили модель. Для разных архитектур приемы её «упрощения» отличаются, вот несколько примеров:
Так что переобучение — это не баг, а естественное поведение модели. И ваша задача — держать его под контролем.
Ставьте
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍5🔥4
Привет! На связи Кристина Желтова, директор по разработке моделей в Газпромбанке 👋🏻
Когда мы обучаем модель, всегда хочется выжать из данных максимум, но на этом пути нас может подстерегать проблема: модель может не научиться находить закономерности, а просто датасет до мельчайших подробностей. Во время обучения всё красиво, а на новых данных качество внезапно проседает.
Именно здесь помогает регуляризация.
Если описывать её по-простому, регуляризация — это набор приёмов, которые не дают модели стать слишком «уверенной» и переобучиться. Она как здравый смысл для алгоритма: не усложняй там, где можно обобщить.
Какие бывают подходы к регуляризации:
1️⃣ Ограничить «сложность» модели. Идея простая — не давать модели слишком сильно подстраиваться под каждую деталь в данных.
Например, если вы строите модель для предсказания стоимости квартиры, она может начать придавать слишком большое значение случайным факторам: цвету двери в подъезде, номеру этажа в конкретном доме, редким совпадениям в обучающей выборке.
Регуляризация в таком случае как бы говорит: «не делай из этого слишком важный сигнал». Это особенно полезно, когда признаков много, а данных не очень.
2️⃣ Случайно ансамблировать — «смешивать» модели во время обучения. Звучит странно, но иногда модели полезно немного усложнить жизнь.
Например, в нейросетях есть подход, когда часть нейронов на каждом шаге обучения временно выключается. Модель не может полагаться на один «любимый» путь решения задачи и вынуждена учиться устойчивым закономерностям.
3️⃣ Остановить обучение вовремя. Иногда лучшая регуляризация — просто не дать модели переобучиться.
Частая ситуация: сначала качество на валидации растет, а потом начинает ухудшаться, хотя на обучении становиться все лучше и лучше. Это классический сигнал: модель уже не учится обобщать, а начинает запоминать детали тренировочных данных.
Поэтому один из самых практичных приемов — остановить обучение в тот момент, когда модель показывает лучший результат на проверочных данных, а не тогда, когда можно еще покрутить эпох 20.
🔥 Почему это важно ML-инженеру? В реальных задачах почти никогда не бывает идеальных данных: где-то мало примеров, где-то шумная разметка, где-то данные устарели, где-то обучение выглядит отлично, а в проде всё ломается.
И вот здесь регуляризация становится рабочим инструментом, который помогает делать модели устойчивее и полезнее на реальных данных.
Когда мы обучаем модель, всегда хочется выжать из данных максимум, но на этом пути нас может подстерегать проблема: модель может не научиться находить закономерности, а просто датасет до мельчайших подробностей. Во время обучения всё красиво, а на новых данных качество внезапно проседает.
Именно здесь помогает регуляризация.
Если описывать её по-простому, регуляризация — это набор приёмов, которые не дают модели стать слишком «уверенной» и переобучиться. Она как здравый смысл для алгоритма: не усложняй там, где можно обобщить.
Небольшой пример: представьте студента, который готовится к экзамену. Один вариант — зазубрить ответы на билеты дословно. Второй — разобраться в теме и научиться решать похожие задачи. На знакомых вопросах первый студент сможет блеснуть, но стоит формулировке чуть измениться, и всё. Регуляризация помогает модели быть похожей скорее на второго студента, чем на первого.
Какие бывают подходы к регуляризации:
Например, если вы строите модель для предсказания стоимости квартиры, она может начать придавать слишком большое значение случайным факторам: цвету двери в подъезде, номеру этажа в конкретном доме, редким совпадениям в обучающей выборке.
Регуляризация в таком случае как бы говорит: «не делай из этого слишком важный сигнал». Это особенно полезно, когда признаков много, а данных не очень.
Например, в нейросетях есть подход, когда часть нейронов на каждом шаге обучения временно выключается. Модель не может полагаться на один «любимый» путь решения задачи и вынуждена учиться устойчивым закономерностям.
Аналогия из жизни простая: если в компании есть только один сотрудник, который умеет хорошо решать конкретную задачу — это хрупкая система. Если профессионалов в команде много, надёжность и общее качество увеличиваются.
Частая ситуация: сначала качество на валидации растет, а потом начинает ухудшаться, хотя на обучении становиться все лучше и лучше. Это классический сигнал: модель уже не учится обобщать, а начинает запоминать детали тренировочных данных.
Поэтому один из самых практичных приемов — остановить обучение в тот момент, когда модель показывает лучший результат на проверочных данных, а не тогда, когда можно еще покрутить эпох 20.
И вот здесь регуляризация становится рабочим инструментом, который помогает делать модели устойчивее и полезнее на реальных данных.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥4❤3
Как одна «незначительная» фича сломала модель в бою
Привет! На связи Мария Жарова, ментор курсов «ML-инженер» и «Дата-сайентист» 👋🏻
Хочу поделиться кейсом, который хорошо показывает, как «безобидный» признак может неожиданно повлиять на модель.
Мы решали задачу предсказания оттока пользователей. Классическая история: табличные данные, градиентный бустинг, аккуратный пайплайн, валидация — всё как надо. На кросс-валидации модель давала стабильный прирост к бейзлайну, метрики выглядели уверенно.
Перед выкаткой решили добавить ещё одну фичу — «время последнего действия пользователя». На первый взгляд, абсолютно логичный и даже полезный признак. После добавления метрика на валидации ещё немного подросла — казалось бы, идеальный кандидат в прод.
Но через несколько дней после выкатки метрики в проде поползли вниз… Сначала думали на данные, потом на инфраструктуру, потом на сдвиг распределений — но оказалось, дело в одной фиче! Как раз «время последнего действия» в обучении считалось относительно фиксированной даты (условно, «срез данных на момент выгрузки»). А в проде — относительно текущего времени.
Звучит безобидно, но по факту:
➖ в обучении модель видела, что«“клиент давно не заходил» — это, например, 30 дней;
➖ в проде это же значение могло стать 60, 90 и т. д., потому что время идёт, а логика пересчёта не была синхронизирована.
В результате распределение признака в проде уплыло относительно train, и модель начала получать значения, которых «не видела» на обучении — поэтому предсказания поехали.
Более того, этот признак оказался одним из самых важных — модель сильно на него опиралась, и даже небольшая логическая несостыковка дала ощутимый эффект.
И да, чаще всего модель ломает не сложная математика, а такие вот мелочи, которые сначала кажутся очевидными.
Сохраняйте, чтобы не наступить на те же грабли!
Привет! На связи Мария Жарова, ментор курсов «ML-инженер» и «Дата-сайентист» 👋🏻
Хочу поделиться кейсом, который хорошо показывает, как «безобидный» признак может неожиданно повлиять на модель.
Мы решали задачу предсказания оттока пользователей. Классическая история: табличные данные, градиентный бустинг, аккуратный пайплайн, валидация — всё как надо. На кросс-валидации модель давала стабильный прирост к бейзлайну, метрики выглядели уверенно.
Перед выкаткой решили добавить ещё одну фичу — «время последнего действия пользователя». На первый взгляд, абсолютно логичный и даже полезный признак. После добавления метрика на валидации ещё немного подросла — казалось бы, идеальный кандидат в прод.
Но через несколько дней после выкатки метрики в проде поползли вниз… Сначала думали на данные, потом на инфраструктуру, потом на сдвиг распределений — но оказалось, дело в одной фиче! Как раз «время последнего действия» в обучении считалось относительно фиксированной даты (условно, «срез данных на момент выгрузки»). А в проде — относительно текущего времени.
Звучит безобидно, но по факту:
В результате распределение признака в проде уплыло относительно train, и модель начала получать значения, которых «не видела» на обучении — поэтому предсказания поехали.
Более того, этот признак оказался одним из самых важных — модель сильно на него опиралась, и даже небольшая логическая несостыковка дала ощутимый эффект.
Поэтому всегда имейте в виду:😶 Любая фича, завязанная на время — почти всегда источник проблем, если не продумана логика её расчёта в проде;😶 Важно проверять не только код обучения, но и код генерации признаков для прода — они должны быть идентичны по смыслу;😶 Полезно смотреть на распределения признаков: train vs prod, хотя бы на базовом уровне;😶 Если фича становится топ-важной — к ней должно быть повышенное внимание, потому что именно она может «уронить» модель.
И да, чаще всего модель ломает не сложная математика, а такие вот мелочи, которые сначала кажутся очевидными.
Сохраняйте, чтобы не наступить на те же грабли!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6✍5🔥4👍2
Forwarded from Симулейтив
Что влияет на зарплату и карьеру аналитика?
Дождались большого исследования рынка аналитики от коллег из NEWHR за 2025 год! Спасибо всем, кто принял участие🧡
Выжимки из него смотрите в карточках, а с полным текстом исследования можете ознакомиться по ссылке.
Также прикрепляем несколько прямых ссылок на интересные инсайты:
➖ Какие задачи решают аналитики сегодня
➖ На какие компании и в каком формате работают
➖ Как менялись зарплаты аналитиков в течение 2025 года
➖ Сколько они получают сегодня в зависимости от специализации и грейда
➖ Откуда пришли в профессию и как планируют развиваться дальше
➖ ТОП и Анти-ТОП российских компаний по мнению аналитиков
➖ Что ценят в аналитической культуре
➖ На какие конференции ходят и за кем из экспертов следят
📈 Симулейтив | ВК | YouTube
Дождались большого исследования рынка аналитики от коллег из NEWHR за 2025 год! Спасибо всем, кто принял участие
В исследовании приняли участие 1493 аналитика из 14+ специализаций. Они рассказали, где живут, на какие компании работают, на какие рынки ориентируются, как ищут работу и к чему стремятся. А также — сколько зарабатывают и как изменилась их зарплата.
Выжимки из него смотрите в карточках, а с полным текстом исследования можете ознакомиться по ссылке.
Также прикрепляем несколько прямых ссылок на интересные инсайты:
➡️ Для сравнения — исследование за 2024 год.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍3🔥2