Sberloga
2.56K subscribers
181 photos
22 videos
5 files
235 links
Data Сообщество
По всем вопросам обращаться @SberlogaHelperBot
Чат - @sberlogadataclub
加入频道
Please open Telegram to view this post
VIEW IN TELEGRAM
Серия вторая 😄

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

Ну ладно, эмбединги хуединги, сделала и сделала, что ж там дальше? Читаю значит текстом объяснение, не дословно конечно, потому что не помню, но смысл был следующий:
"Для обучения рекомендательной системы нужно выбрать метрику оценки, но все существующие метрики, слишком "обычные", поэтому была разработана новая, уникальная метрика специально, для решения этой задачи"
Короч перевожу - вертел я ваши метрики, щас свою создам 🙀
Об этих метриках самописных я отдельную историю расскажу как пришлось разъебать одного сотрудника, изза горя от ума.
Но тут я так поступить не мог, поэтому пришлось дочитывать. Дальше был целый лист с формулами и каким-то описанием, что там считается. Логики если честно я совсем не уловил, просто в конце из формул был сделан вывод, что это самая заебатая метрика среди всех, но ее не использут, потому что все тупые, а я самый датасаентист среди всех. Сферический теоретик в вакууме, причем в коде реально считается только эта метрика, всех других будто не существует. А метрики получались такими странными, что я так до конца и не понял - она классная когда большая или маленькая 😂 Просто в конце отчета метрика была равна скажем 1000. Спасибо бро, очень понятно, что ты этим сказать хотел 😀
Please open Telegram to view this post
VIEW IN TELEGRAM
"Обычные" метрики:
💡 Для инфо
О метриках рекомендательных систем можно тут почитать
https://www.evidentlyai.com/ranking-metrics/evaluating-recommender-systems
или тут
https://towardsdatascience.com/metrics-of-recommender-systems-cde64042127a
Даже если вы считаете основной метрикой "свою" кастомную, то это не означает, что другие - это мусор. Для принятия взвешенного решения нужно рассчитывать несколько метрик, чтобы понять плюсы и минусы различных решений.
В любом случае ваши оффлайн данные для обучения будут содержать баес по отношению к показам текущих товаров и только аб тест сможет сказать насколько то или иное решение лучше.
P.S. АБ теста или бейслайна тоже кстати не было 😀

На собезах между прочим часто прошу назвать все метрики которые знаешь для регрессии. В больее чем в половине случаев ответ ограничивается 1й или 2мя метриками 🥲
Please open Telegram to view this post
VIEW IN TELEGRAM
Серия четвертая ❤️

Сайт для которого мы рекомендашки делали занимался реализацией разных активов - бензоколонок, кафешек, домов, машин, даже нефтяных месторождений. И у каждого актива в зависимости от его категории были какието свои фичи, а этих категорий было около 10. DS при этом очень уж хотел объеденить все эти фичи в одно пространство, но как это сделать? 🤔
Короч, а что если взять фичи из 1 категории активов и натравить на них... PCA и взять первые 10 компонент. Потом взять фичи 2й категории, повторить и т.д. Получится что все активы содержат фичи pca1,pca2,...,pca10. Охеренно похоже ведь 🤣
У тебя в одной категории марка автомобиля с годом выпуска, а в другой площадь квартиры, а теперь ровно 10 фичей с одинаковым названием. Почему ds подумал, что компоненты нескольких pca совпадать будут мне не известно, но так вот было сделано. Собственно тогда я уже и решил, что эту модельку уже не спасти 😦
Please open Telegram to view this post
VIEW IN TELEGRAM
💡 Для инфо
Если вы плохо понимаете, как pca работает, то рекомендую почитать
https://setosa.io/ev/principal-component-analysis/

TLDR
PCA переводит фичи в новое пространство, где компоненты направлены в сторону наибольшей дисперсии, т.е. это все теже фичи, но развернуты таким образом чтобы корреляции в новом пространстве нулю равнялась. И клянусь впервые увидел, чтобы ктото это в прод пытался тащить 🤓
Please open Telegram to view this post
VIEW IN TELEGRAM
Нашел фотки 6летней давности
Forwarded from ODS Events
Всем привет!

Приглашаем всех на Дата Ëлку 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
Forwarded from AI.Insaf
Удалось побывать 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 логов ошибок с временными метками