sberloga | Unsorted

Telegram-канал sberloga - Sberloga

2496

Data Сообщество По всем вопросам обращаться @SberlogaHelperBot Чат - @sberlogadataclub

Subscribe to a channel

Sberloga

Там Стэнфорд выложили на YouTube свой свежий курс CS336: Language Modeling from Scratch

Это практический курс, в котором вся теория по LLM подается в процессе разработки собственной модели. Получается изучение end-to-end: от обработки данных и архитектуры трансформера до RL и эвала.

Ведет курс опытный профессор университета и сооснователь TogetherAI Перси Лианг.

Ну и главное: курс новый и вся информация актуальна на сегодняшний день. Он даже в самом Стэнфорде еще идет прямо сейчас, так что лекции и код продолжат выкладывать по ходу.

Репозиторий с дз и ноутбуками
Сайт курса
YouTube

Читать полностью…

Sberloga

Track every DAG evolution with immutable snapshots tied to each run.
Never wonder which code version produced which outcome - teams can rapidly audit and debug, eliminating confusion and accelerating compliance checks. Troubleshooting now takes minutes instead of hours, giving you clear accountability and pipeline governance that satisfies even the most stringent regulatory requirements.

Читать полностью…

Sberloga

Scheduler-driven backfills triggered straight from the UI.
Trigger, monitor, pause, or cancel backfills from the UI or API — no more fragile CLI-based backfills. Large-scale reprocessing jobs run reliably without session timeouts, ensuring consistent performance even for backfills spanning months of historical data.

Читать полностью…

Sberloga

🔥 МТС BIG DATA X Лаборатория Машинного обучения

🤩 На фото запечатлены два довольных парня из красных компаний, офисы которых находятся через дорогу, которые только что провели совместный митап. Процесс организации был настолько нативным и синергичным, что мы потратили всего полчаса на созвон и чуть больше на переписку в телеге чтобы договориться обо всех деталях. Мы обязательно продолжим проводить совместные митапы, ставьте 🔥чтобы это случилось быстрее.

🙏 Хочу поблагодарить всех причастных к этому событию. Спасибо площадке МТС за теплый прием и позитивные эмоции, всем спикерам за интересные доклады и качественный перфоманс, членам команды Лаборатории за высокий уровень самостоятельности в подготовке к митапу. Ну и конечно спасибо всем, кто пришел на наш митап в онлайне и большое спасибо тем, кто пришел на офлайн часть без вашей поддержки ничего бы не получилось!

📸 Фото вышли огонь, забирайте по ссылке.
📹 Видео и презентации на следующей неделе появятся в комментариях к посту 👇

Читать полностью…

Sberloga

Спасибо всем кто вчера подключился ❤️
Если вчера не получилось присоединиться - ничего страшного, самое сложное будет еще впереди :)

Краткий саммари что обсуждали:
- по первой лекции - лекции были вводные, из самого интересного это третья часть о различных представлениях графов, в слайдах 2023 этих материалов почти нет, поэтому слайды 2021 стоит открыть
- разницу в курсах 2019/2021/2023
- познакомились, рассказали что кому интересно и кто чем занимается (по желанию)
- орг вопросы

Расписание дальнейших встреч будет в чате
/channel/sberlogawithgraphs/

Читать полностью…

Sberloga

Всем привет! 28 февраля в 17:00 приходите на митап по Data Science в Москве. На встрече экспертами из Центра Big Data МТС и Лаборатории машинного обучения Альфа-Банка поделимся кейсами:

🎙️Гибкая калибровка: как одновременно попадать в KPI для сотен рекламных кампаний?
🎙️Превращаем нейросети в SOTA и для табличных задач
🎙️Трансформеры в RecTools: от fit/predict из коробки до кастомных архитектур
🎙️Улучшаем клиентский опыт за счет комплекса моделей
🎙️Бандиты и нейросети. Строим рекомендации с нуля в стриминговом сервисе с UGC-контентом
🎙️Ускоряем работу аналитиков инструментами Data Science
🎙️Новый релиз CoolGraph – краткий обзор нашей библиотеки для быстрого старта с GNN

🎬Модераторы: Никита Зелинский (CDS & Head of ML Platforms МТС и Евгений Смирнов (CDS & Head of ML Lab, Alfa-Bank).

😍 В рамках колоборации двух CDS-ов из красных компаний запускаем розыгрыш аж 1️⃣0️⃣ подписок ✈️-премиум на год!

Как принять участие?
1️⃣ Подписаться на канал "Нескучный Data Science" (@not_boring_ds)
2️⃣ Подписаться на канал "Дата канальи – про "специалистов" данных в ML/AI" (@datarascals)
3️⃣ Ждать 28 февраля, когда мы объявим, кто победил.

🗓️ 28 февраля в 17:00
📍 г. Москва, офлайн
➡️ Регистрация по ссылке: https://mts-digital.ru/events/details?id=12357783

Читать полностью…

Sberloga

ML-архитектор: кто это и зачем он нужен в эпоху автоматизации кода

С появлением инструментов для автоматизации кода (например, GitHub Copilot, Cursor) роль ML-архитектора становится критически важной. ИИ генерирует фрагменты кода, но пока что плохо проектирует системы целиком, не способен предвидеть все скрытые риски и обеспечивать устойчивость решений. Архитектор здесь — тот, кто превращает разрозненные компоненты в надежный продукт.

Кто такой ML-архитектор?

Официально: Специалист, проектирующий структуру ML-систем, от выбора алгоритмов до интеграции с инфраструктурой.

По-простому: Человек, который отвечает за каждую будущую проблему — от падения accuracy модели до сбоев в продакшене. Если система «упала» через полгода после релиза — это его зона ответственности.

Чем конкретно занимается:
⚡️ Проектирование сценариев failure: предсказывает, что может сломаться, и встраивает защитные механизмы (например, автоматический откат моделей).
⚡️ Оптимизация trade-off: баланс между скоростью инференса, точностью и стоимостью инфраструктуры.
⚡️ Стандартизация процессов: как данные поступают в модель, как мониторится её работа, как обновляется pipeline.

Отдельная роль или навык разработчика?

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

Реальность: В крупных компаниях (например, банки, маркетплейсы) ML-архитектор — отдельная позиция.
Почему?
⚡️ Масштаб: Системы с сотнями моделей требуют единой стратегии развертывания и мониторинга.
⚡️ Специализация: Лид фокусируется на управлении и бизнес-метриках, архитектор — на широте технической экспертизы в проекте и принимаемых архитектурных решениях.

Как развивать архитектурное мышление: 5 шагов
1️⃣ Рисуйте схемы — но правильно
Используйте различные стандарты: C4-моделирование, UML для ML (Data Flow Diagrams, Deployment Diagrams).
Практика: Возьмите любой open source проект (например, TensorFlow Extended) и визуализируйте его компоненты.
2️⃣ Рефлексируйте над ошибками — своими и чужими
Свои проекты: Ведите «журнал архитектурных решений» (ADR — Architecture Decision Record). Пример записи:

- Выбор базы данных для метаданных моделей
- Проблема: Нужно хранить версии моделей и их параметры.
- Варианты: PostgreSQL vs ML Metadata от TFX.
- Решение: TFX, так как интеграция с пайплайнами проще.
- Последствия: Придется мигрировать при переходе на Kubeflow.


Чужие проекты: Анализируйте кейсы на Kaggle или открытые проекты в github. Спрашивайте:
- Почему автор выбрал PyTorch, а не TensorFlow для этого NLP-проекта?
- Как система масштабируется при росте данных в 10 раз?

3️⃣ Стройте «гибридные» системы
Пример задачи: спроектируйте pipeline, где модель на PyTorch интегрирована с FastAPI-бэкендом, а логирование ошибок идет через Elasticsearch.
Совет: используйте Docker и Kubernetes даже для пет-проектов — это научит вас думать о масштабируемости.

4️⃣ Изучайте смежные области
- DevOps для ML: CI/CD пайплайны для моделей (например, gitlab + DVC).
- ETL и стриминг данных: как настроить spark-стриминг / kafka в kubernetes.

5️⃣ Участвуйте в Code Review
Задавайте вопросы не только «как работает этот код», но и:
- Что произойдет, если входные данные увеличатся в 100 раз?
- Как система восстановится при падении GPU-сервера?

Карьерный путь: когда вы готовы стать архитектором?
⚡️ Junior: решаете локальные задачи (написание модели, фича-инжиниринг).
⚡️ Middle: видите связь между своей задачей и всей системой (например, как ваша модель влияет на нагрузку API).
⚡️ Senior/Architect: можете спроектировать систему с нуля, включая точки отказа и план миграции на новые технологии.

Заключение
ML-архитектор — это не про рисование схем в вакууме. Это про умение видеть систему на 5 шагов вперед и принимать решения, которые сэкономят компании тысячи часов на исправление костылей. Инструменты автоматизации кода не заменят эту роль — они лишь увеличат спрос на людей, которые могут ими грамотно управлять.

(мемы для привлечения внимания)

Читать полностью…

Sberloga

В комментариях к этому посту попросили поделиться ссылками на антифрод, их есть у меня

Прям в цельную картинку вместе они собраны в курсе ML в бизнесе, но здесь поделюсь кусочками, из которых она состоит.

А для совсем начинающих – хендбук

Как вообще устроен антифрод (на примере фин. мониторинга):

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

2. Модели (supervised модели, построенные по отловленным правилами и руками кейсам). Здесь тоже работает PseudoLabelling. Но и фродеры не стоят на месте, на это намекал в самом первом начале канала /channel/datarascals/3
Кейс-менеджмент и эксперты (разбор найденных примеров, новых схем, мотивированное суждение). Разбор кейса может занимать, например, 2 недели, включая запрос документов от клиента

3. Exploration -- unsupervised -- outlier detection -- наша задача найти несколько десятков примеров, передать их на разбор, сделать supervised модель

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

Таргетом может быть как компания / физик так и конкретная сомнительная транзакция.

Итак, сами материалы

Поиск аномалий в табличках (для того чтобы быстро разные алгоритмы перебрать):
1. PYOD – база, даже вариационный автоэнкодер включили (вообще автоэкнодеры в разных формах полезны в этих задачах)
2. PYTOD – ускоренная версия (за счет использования GPU) – вообще большинство классических алгоритмов редко применяют из-за того что они очень медленные, мне нравится Isolation Forest из всех, но перебирать всегда приходится несколько
Здесь важно сделать отступление – что для многих классических алгоритмов придется как-то умозрительно задать ожидаемую долю аномалий, что не очень удобно. По факту нам интереснее ранжирование на более аномальные и менее – а дальше сколько мы возьмем будет зависеть от цены ошибки в каждом кейсе и мощности офицеров чтобы эти кейсы руками разобрать и подтвердить.

Поиск аномалий на транзакциях:
1. PYGOD– смотрим на задачу как на поиск аномалий в графах (и то, насколько аномалия должна быть более структурной чем контекстной – необучаемый параметр в лоссе), здесь в основном графовые автоэнкодеры
Но это прям затравочка, тема популярная, плюс графы меняются по времени (и структура и свойства вершин / ребер), даже на последнем NIPS (а это декабрь) показали новый алгоритм поиска аномалий на графах UniGAD. И еще на KDD’24 (сам еще не успел прочесть читал, но denoising диффузионка звучит как что-то интересное)

Подборка актуальных статей по теме

2. PTLS от Sber AI лабы сначала ssl-эмбеддим транзакции, потом закидываем в табличные методы

Если уже нашли и даже добились какой-то разметки, но единичек не очень много сотни), то помогает pseudolabelling– строите график того как метрика (обычно recall) зависит от того, с какого порога предикты единичек первой моделью досыпать в трейн второй. Выбираете порог, максимизирующий recall -- не панацея конечно, но до +10% полноты получалось выжимать.

Ну и supervised – здесь относительно понятно, кроме того на какой event rate калиброваться, да и надо ли )

Читать полностью…

Sberloga

Подготовил для вас актуальные идеи pet-проектов в ML на 2025 год

Всем data-привет! 🚀

Новый 2025 год уже начался, а значит самое время взяться за реализацию (и довести до конца 😬) крутого pet-проекта, который бустанёт ваши навыки и карьеру в сфере ML.

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

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

Чуть более детальное описание можно найти на habr

#pet_проект
#карьера

Читать полностью…

Sberloga

Привет, друзья! 🤓

Вот и закончились праздники, и пришло время вернуться к нашим любимым историям. Сегодня хочу поделиться итогами одной из прошлогодних историй
Серия 1
Серия 2
Серия 3
Серия 4
Которая, как ни странно, оказалась настоящим приключением в мире data science и бизнеса.

Итак, начнем с того, что в той истории было слишком много накладок. Представьте себе: усложнение задач с использованием word2vec и NLP там, где это было совершенно не нужно, неправильный выбор метрик и полное непонимание базовых методов машинного обучения, таких как PCA. Да, такое бывает даже у самых опытных!

Почему это важно? Потому что бизнесу редко интересна внутренняя кухня обучения моделей. Начальники спешат отчитаться о завершении задач, и часто нет ни валидации, ни A/B тестов. Когда приходит время разбираться с последствиями, многие уже уволились, и разгребать ошибки приходится тем, кто остался.

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

Но в итоге я построил базовое решение, показывающее ранее просмотренные страницы, и более сложное на основе lightfm. Финальное решение состояло из трех сервисов в docker-compose:
1⃣ База Redis для хранения рекомендаций.
2⃣ Сервис, который забирает данные из бэкэнда, рассчитывает рекомендации и кладет оба решения в Redis для честного А/В теста. Всё запускалось с помощью cron.
3⃣ Flask, который отдавал рекомендации и решал, какое решение использовать — lightfm или базовое, по остаточному делению хеша client_id.

И знаете что? Всё развернулось практически с первого раза! 🚀 Конечно, из-за отсутствия интернета пришлось собирать docker-образы локально, что оказалось не всегда так просто, но мы справились.

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

Мы обсуждаем такие истории, чтобы обратить внимание на важные моменты и улучшить нашу работу в data science. Учимся на ошибках и движемся вперед! 🙌

До новых историй, друзья! 💡

Читать полностью…

Sberloga

Напомнило мне вот этот ролик
https://youtu.be/UFqXDpMMwtA?si=FKH3We7MX3VomiF1

Читать полностью…

Sberloga

Всем привет!

Приглашаем всех на Дата Ëлку 2024 и голосование ODS Awards 2024 🎄

📆 Ëлка пройдёт после праздников — в субботу 18 января
В лучших традициях, вас ждут обзорные итоги года по 12 DS/ML областям 🔥

Более того, будут сразу 2 офлайн площадки куда можно прийти живьем:
💙 В Москве — в гостях у ВК, начало программы в 12:00
💚 В Питере — в гостях у ecom.tech, начало программы в 14:00
И конечно же будет онлайн трансляция с докладами итогов с обеих площадок сразу 🙀
Поторопитесь зарегистрироваться, места на площадках ограничены! Внимательно относитесь к заполнению анкет, все регистрации будут проходить модерацию.

🌟 Открыто голосование ODS Awards 2024 🌟
Это ежегодная премия за вклад в Open Data Science — лучшие треки, видео, статьи, менторы и погонщики гусей 🦾
Как и в предыдущие года, новогодние подарки достанутся и победителям, и тем кто голосовал.
Голосование открыто, итоги мы подведём как раз на Дата Ëлке 🎅

Ждём вас на Дата Ёлке, и ждём ваши голоса в ODS Awards 2024!

TL;DR:
🎄Дата Ёлка ждёт всех 18 января
🎁 Пройдут 2 офлайн Ëлки: в Москве в гостях у ВК и в Питере гостях у ecom.tech
🌟Ждём ваши голоса и номинации ODS Awards 2024

Читать полностью…

Sberloga

💡 Для инфо
Если вы плохо понимаете, как pca работает, то рекомендую почитать
https://setosa.io/ev/principal-component-analysis/

TLDR
PCA переводит фичи в новое пространство, где компоненты направлены в сторону наибольшей дисперсии, т.е. это все теже фичи, но развернуты таким образом чтобы корреляции в новом пространстве нулю равнялась. И клянусь впервые увидел, чтобы ктото это в прод пытался тащить 🤓

Читать полностью…

Sberloga

💡 Для инфо
О метриках рекомендательных систем можно тут почитать
https://www.evidentlyai.com/ranking-metrics/evaluating-recommender-systems
или тут
https://towardsdatascience.com/metrics-of-recommender-systems-cde64042127a
Даже если вы считаете основной метрикой "свою" кастомную, то это не означает, что другие - это мусор. Для принятия взвешенного решения нужно рассчитывать несколько метрик, чтобы понять плюсы и минусы различных решений.
В любом случае ваши оффлайн данные для обучения будут содержать баес по отношению к показам текущих товаров и только аб тест сможет сказать насколько то или иное решение лучше.
P.S. АБ теста или бейслайна тоже кстати не было 😀

На собезах между прочим часто прошу назвать все метрики которые знаешь для регрессии. В больее чем в половине случаев ответ ограничивается 1й или 2мя метриками 🥲

Читать полностью…

Sberloga

Серия вторая 😄

Отчет значит читаю неспеша, решил сперва понять, что я за эмбединги то выгружал такие, а то вдруг я что неправильно выгрузил 😂
Короч изза того что клиентами были юрлица, то и эмбединги это были своего рода фичи по всем компаниям рф. Но как их сделать? Очень уж хочется понять, что компания 1 похожа на компанию 2. DS почесал то откуда руки росли и светлая мысль пришла откуда и ожидалось - у каждой компании же есть оквэд (код вида деятельности), значит их нужно использовать. Вроде даже и идея то прикольная, но при чем тут эмбеды? Т.е. банально коды в качестве фичей можно было бы использовать, но где же тут DATA SCIENCE а? 🤣
В общем по всем компаниям были спарсены эти коды из интернетов, эти коды были замапплены на словарь с описанием оквэдов, т.е. теперь у каждой компании есть теперь тексты...
Чувствуете, да, чем запахло? Если вы подумали, что тут сейчас NLP бригада подъедет, то вы ошиблись, это же уже DEEP LEARNING будет, а мы рексис ващет строим, поэтому на эти тексты мы натравим word2vec обученный и усредним 😦
Я конечно прихуел... блэд, это конечно было давно, но даже тогда это дерьмо только на курсах показывали, для примера, что "queen-king=woman" и все.
Но мало всего прочего, компании то появляются новые, где их оквэды брать? Как эту базу обновлять? Кто должен этот word2vec применять, а? А у DS лапки 🙂

Читать полностью…

Sberloga

Navigate easily with an intuitive, modern UI.
Airflow’s UI has been rebuilt from the ground up, with new navigation and views to access to logs and task details quickly, making the experience ideal for both newcomers and power users. This future-focused redesign also opens the door for advanced React plugins and community-driven customizations in Airflow 3.x.

Читать полностью…

Sberloga

Put your data assets at the center of orchestration.
Define data objects directly with the @asset decorator, simplifying pipeline creation while maintaining visibility into your data's journey. Write less boilerplate code, manage dependencies naturally, and align your pipelines with how you actually think about data.

Читать полностью…

Sberloga

Вышел Airflow 3.0.0 🥳

Anywhere
Deploy workers to any environment while maintaining security isolation. Remote Execution lets you run tasks exactly where your data resides — optimizing for cost-efficiency, latency, and data sovereignty without sacrificing centralized control.

Any Time
Unlock new use cases with event-driven scheduling by integrating with message systems like Amazon SQS, so you can trigger your DAGs the moment data arrives – not just on a schedule. By removing the uniqueness constraint for logical dates, users can launch parallel inference runs easily, ideal for GenAI and on-demand ML workloads.

Any Language
Unify your data stack under a single orchestrator with multi-language task execution coming in future 3.x releases. Starting with Golang, Airflow 3 eliminates the need for code rewrites or Python wrappers — choose the right language for each task based on your specific requirements.

Читать полностью…

Sberloga

«SotA для TS forecasting, все ли так однозначно?»

2️⃣0️⃣ февраля состоится следующая встреча тренировок по машинному обучению ↩️

В рамках этой встречи мы разберем следующие темы с нашими приглашенным экспертом:
⚪️переход от задачи прогнозирования временных рядов к задаче регрессии
⚪️как выбрать подходящую модель для вашей задачи временных рядов
⚪️какие есть нейронные архитектуры, в том числе Zero-shot

📢 Спикер:
⚪️Дмитрий Симаков, Kaggle competitions master, тимлид Sber AI Lab

📆 Когда: 20 февраля с 19:00
🗺️ Где: Покровский бульвар д. 11, ауд. R308

Подробнее про челленджи 🐭

Студентам других вузов необходимо заполнить форму для заказа пропуска не позднее чем за 24 часа до дня проведения тренировок, по организационным вопросам участия в тренировках вы можете обращаться к Александре ▶️

Читать полностью…

Sberloga

Ребята
Мы в команде решили проходить курс по графам :)
За основу взял стэнфордский курс
cs224w Machine Learning with Graphs
По материалам - на просторах интернета есть абсолютно все лекции 2021г и только 8 лекций 2023г
прикол в том что есть лекции которые есть в 2023, которых нет в 2021 и наоборот, поэтому я попробовал их объединить.

Сегодня начнем (поздний анонс немного), но там типа интро всего лишь, думаю не очень критично

Информация тут:
/channel/sberlogawithgraphs/26044

Читать полностью…

Sberloga

The future is now, old man

Читать полностью…

Sberloga

Собеседование в Яндекс

Читать полностью…

Sberloga

История о том, как неудачный джойн чуть не испортил всё

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

Итак, работал я в компании, где мы решили начать использовать данные из Бюро Кредитных Историй (БКИ). Если вы не в теме, это такие данные, которые помогают моделям кредитного скоринга стать почти волшебными. Они дают около 95% всей силы модели, и это намного лучше, чем универсальные модели, которые продаёт БКИ.

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

У меня уже был опыт работы с этими данными, поэтому я знал, как их джойнить. Описал всё в задаче, приложил примерный код. Инженеры начали загружать данные, а я поручил коллеге проверить, всё ли ок. Ответ был: всё ОК. Мы начали копить данные. Копили их полгода, и вот настало время строить модель.

Что-то меня насторожило — может, объём данных был в 10 раз больше ожидаемого, или что-то ещё. В общем, решил я уточнить, что же именно проверял мой коллега. Оказалось, что в моём скрипте был джойн нескольких таблиц. В каждой таблице был serial key (Hijid) — просто последовательные цифры 1, 2, 3, ... А чтобы джойнить, нужно было использовать foreign key из таблицы 1 (поле называлось похожим образом как название таблицы 2) с serial key (Hijid) из таблицы 2

Коллега мой взял скрипт, воспроизвёл его на Spark, но ничего не заджойнилось. Он подумал, что скрипт фигня, и решил джойнить по своему - все таблицы по полю Hijid, которое было во всех таблицах. И это у него прекрасно получилось, потому что во всех были значения от 1 до N. В итоге он проджойнил все 5 таблиц по этому полю и получил не пустые результаты. Раз данные собрались то все ОК, так ведь? 🤣

Вывод из этой истории такой: важно иметь опыт работы с базами данных и понимать, хотя бы что такое serial key и foreign key. А ещё самостоятельность — это не просто делать всё самому, а критически относиться к своей работе и задавать вопросы, если есть сомнения. В итоге мы потеряли около 2 месяцев на то, чтобы прогрузить корректные данные и получить правильные результаты. И хорошо, что мы вовремя заметили ошибку, ведь могли бы обучить модель на неправильных данных и получить "не те" результаты.

Так что, друзья, не забывайте задавать вопросы и проверять свою работу. Удачи вам в ваших проектах!

Читать полностью…

Sberloga

Ну и карьерная новость №1 на сегодня: тим лид продуктовой аналитики в Lamoda Tech Анжелика Шахурина стала порноакртисой под ником Lika Blackberry. Точнее она ей была, просто об этом никто не знал, а сейчас узнали. А Lamoda Tech зачем-то начал удалять все посты с упоминанием Анжелики, хотя могли бы наоборот поддержать, зарплату повысить, накинуть новый функционал по организации тим билдингов, или еще как-то...

с кем не бывает, однажды вы найдете и мои видео…….

Читать полностью…

Sberloga

AI видимо добить его решил

Читать полностью…

Sberloga

Удалось побывать DS-ментором на одном из хакатонов в конце прошлого года, где моя команда заняла 3-е место 🎉 . Исходный проект был посвящён кластеризации событий брокера сообщений/логов.

Коллективным разумом были предложены следующие идеи ниже. Ожидаемо хотелось применить трансформеры, но из-за объёма данных и доступных ресурсов был выбран другой подход. Как вы думаете, какой?

1. Baseline: scaNN + любимый эмбеддер
• ScaNN — супербыстрый на CPU алгоритм поиска ближайших соседей (быстрее Faiss)
Benchmarks алгоритмов кластеризаций

2. Готовый алгоритм ранжирования текстов: Rank-BM25 — улучшенный tf-idf, который может плохо выделять если признаков мало, и очень быстро растет размер словаря при увеличении кол-во n-gramm

3. Алгоритм с кастомным эмбеддингом

• Используем токенизатор (например, BPE). Обучаем его на логах
• Переводим логи в последовательность токенов
• Генерируем tf-idf для 1-, 2-, 3-грамм (размер словаря ~10⁶)
• Создаём эмбеддинги для токенов (например, с помощью предобученной модели)
• Кластеризуем эмбеддинги (например, на 100-800 кластеров)
• Для нового текста создаём вектор, учитывающий частоту кластеров
• Результат — компактные векторы, подходящие для кластеризации и обнаружения аномалий

4. Быстрая работа со строками + dbstream clustering
RapidFuzz — библиотека с быстрыми реализациями функций string similarity.
• Jaro-Winkler Distance — быстрее Левенштейна на коротких строках.

5. Итеративное выделение кластеров с помощью LLM
• Генерируем ключевые слова и типы ошибок по существующим кластерам
• Покрываем базу кейвордами (~50%)
• Обрабатываем оставшиеся данные, выделяя новые кластеры
• Повторяем процесс, пока покрытие не станет полным
• Удобно выделяем ключевые виды ошибок (например, SQLException, JavaException, Timeout и т.д.)

6. Имплентация от Jetbrains (📕Статья: Aggregation of Stack Trace Similarities for Crash Report Deduplication, ⭐️ код на GitHub)
Внутри решение k-NN с хитрой агрегацией stack trace логов ошибок с временными метками

Читать полностью…

Sberloga

Нашел фотки 6летней давности

Читать полностью…

Sberloga

Серия четвертая ❤️

Сайт для которого мы рекомендашки делали занимался реализацией разных активов - бензоколонок, кафешек, домов, машин, даже нефтяных месторождений. И у каждого актива в зависимости от его категории были какието свои фичи, а этих категорий было около 10. DS при этом очень уж хотел объеденить все эти фичи в одно пространство, но как это сделать? 🤔
Короч, а что если взять фичи из 1 категории активов и натравить на них... PCA и взять первые 10 компонент. Потом взять фичи 2й категории, повторить и т.д. Получится что все активы содержат фичи pca1,pca2,...,pca10. Охеренно похоже ведь 🤣
У тебя в одной категории марка автомобиля с годом выпуска, а в другой площадь квартиры, а теперь ровно 10 фичей с одинаковым названием. Почему ds подумал, что компоненты нескольких pca совпадать будут мне не известно, но так вот было сделано. Собственно тогда я уже и решил, что эту модельку уже не спасти 😦

Читать полностью…

Sberloga

Серия третья 🥰

Ну ладно, эмбединги хуединги, сделала и сделала, что ж там дальше? Читаю значит текстом объяснение, не дословно конечно, потому что не помню, но смысл был следующий:
"Для обучения рекомендательной системы нужно выбрать метрику оценки, но все существующие метрики, слишком "обычные", поэтому была разработана новая, уникальная метрика специально, для решения этой задачи"
Короч перевожу - вертел я ваши метрики, щас свою создам 🙀
Об этих метриках самописных я отдельную историю расскажу как пришлось разъебать одного сотрудника, изза горя от ума.
Но тут я так поступить не мог, поэтому пришлось дочитывать. Дальше был целый лист с формулами и каким-то описанием, что там считается. Логики если честно я совсем не уловил, просто в конце из формул был сделан вывод, что это самая заебатая метрика среди всех, но ее не использут, потому что все тупые, а я самый датасаентист среди всех. Сферический теоретик в вакууме, причем в коде реально считается только эта метрика, всех других будто не существует. А метрики получались такими странными, что я так до конца и не понял - она классная когда большая или маленькая 😂 Просто в конце отчета метрика была равна скажем 1000. Спасибо бро, очень понятно, что ты этим сказать хотел 😀

Читать полностью…

Sberloga

Короч история длинная, сегодня будет первая серия 😁

Когда только в сбер устроился, дали задание поставить в прод рекомендательную систему для дочерней компании, которая с юл работает. Были артефакты, код для инференса, описание как поставить модель и сам отчет о построении. Выглядит все заебись 👍
Ну собственно раз отчет был, я не особо решил вдаваться в подробности, да и был он листов на 15 А4 😩 Наверное только его написание заняло минимум пару недель, читать его не особо хотелось и решил по максимуму сконцентрировать силы на самой задаче 💪
Как оказалось в рамках постановки в прод, должен был быть развернут postgres, и туда нужно было пролить таблицу с какимито эмбедингами по юр лицам. DS по какимто причинам подумал, что будет супер крутой идеей ее сохранить в формате csv, а каждое число хранить с точностью в 19 знаков. В итоге эта таблица оказалась 10млн х 50 в виде текста которая занимает 10Гб в не сжатом виде. Это нужно было выкачать из внутреннего контура и передать во внешнюю компанию. Как я это сделал я уж писать не буду, но я конечно удивлен, что никого после этого не уволили 😅
Кстати в сериализированном виде она весила 300мб всего
Все это отдавал разрабу в дочке (у меня прав не было) и писал ему какие команды запускать. Запустилось ли с первого раза? Конечно же нет (спасибо за охеренное качества код), в общем с разрабом неделю переписывались исправляя раз за разом все новые ошибки 😱
В итоге запустили рекомендашку раньше положенного, все как нужно. Но на следующий день разраб снова пишет
- Влад, а моделька то "твоя" чет хуевая, она же на сайте в риалтайм должна работать, а там время ответа 3сек. Да и то почти по всем клиентам рекомендашки одни и теже...
Ну собтвенно, я попробовал объяснить, что вообще модель то не моя, а девочки которая писала все с нами больше не работает, а ушла в яндекс. Столько мата в свой адрес я еще не слышал. Самый сок была фраза "вы что доверили кодить девушке???" 😂 ну собственно по итогу так и оказалось, не стоило 😅
Короч начал копать этот великолепный код с отчетом, чтобы понять что там не так и знаете что? После csv на 10гб я догадывался, что там будут странности, но вся дичь еще впереди...

Читать полностью…
Subscribe to a channel