ML for Value / Ваня Максимов

Description
Проходим путь от ML-модели до Value для компании. На задачах RecSys, Pricing, Time Series и A/B

Ваня Максимов, @Ivan_maksimov
RecSys R&D Team Lead @ Wildberries, ex-Yandex.Lavka, ex-Delivery Club, ex-PwC
Консультирую компании, веду курсы по data science
Advertising
We recommend to visit

Канал для поиска исполнителей для разных задач и организации мини конкурсов

Last updated 1 week, 1 day ago

HAYZON
HAYZON
3,594,485 @hayzonn

💼 How to create capital and increase it using cryptocurrency

👤 𝐅𝐨𝐮𝐧𝐝𝐞𝐫: @Tg_Syprion
🗓 ᴀᴅᴠᴇʀᴛɪsɪɴɢ: @SEO_Fam
⭐️ 𝐎𝐧𝐞 𝐋𝐨𝐯𝐞: @major
🍀 𝐌𝐲 𝐜𝐡𝐚𝐧𝐧𝐞𝐥𝐬: @kriptofo @tonfo
@geekstonmedia

Купить рекламу: https://telega.in/c/hayzonn

Last updated 17 hours ago

Здесь простым языком про TON, DFC и крипту.

Принимаем автоматически.
Ссылка для друзей: https://t.me/+-EOfWx2pRKhmNGE6
Связь: @deftalk_bot

Last updated 5 days, 16 hours ago

2 months ago
***📱*** **RecSys каналы, обьединяйтесь!**

📱 RecSys каналы, обьединяйтесь!

Собрали папку с самыми интересными и полезными каналами, в которых пишут про RecSys

Часть каналов делают обзоры статей по RecSys, другие - пишут про новости, новинки индустрии и многое другое

➡️ Присоединяйтесь, чтобы не пропустить ничего важного!

2 months ago
**Запрос про спрос**

Запрос про спрос
На прошлой неделе словил вьетнамский флешбек: однажды из-за моей ошибки в алгоритме списали фуру мяса в Ростове 🥩

А вспомнил я про это, потому что меня аж 4 раза спросили про задачу восстановления спроса. Или как считать спрос на товар, если его не было в наличии весь день? Это немного необычная задача backcasting - восстановление данных в прошлом:

Вчера к 12 дня продали 1 штуку товара - товар кончился. Какой был бы спрос за вчера, если бы товар был в наличии весь день?

99% решений этой задачи заканчиваются примерно так:
Товар продавался с 8 утра до 12, а не было его с 13 до 23. Получается он был в наличии 4 часа из 16 = 25% времени (этот показатель в ритейле называют OSA - on shelf availability). Раз за 25% дня продали 1 штуку товара, то за весь день продали бы 1 / 0.25 = 4 штуки.
Профит, задача решена!

Общая формула спроса = sales / OSA

Логика c OSA проста и элегантна, но у нее есть 3 проблемы - давайте разбираться

1. Сезонность внутри дня
Расчет выше неявно предполагает, что спрос равномерно распределен внутри дня. Но это не так:
- Есть "часы пик" в районе обеда и вечером
- Некоторые товары чаще продаются утром (кофе)

Поэтому надо знать распределение спроса внутри дня и взвешивать формулу на него. Обычно вес добавляют к OSA: 1 час наличия кофе утром имеет бОльший вес, чем 1 час вечером
Общая формула спроса = sales / weigted_OSA
2. Чертов Пуассон
Все было бы хорошо, если бы спрос не был распределен по Пуассону - с длииииным хвостом продаж при низком мат ожидании
В нашем же примере про 1 продажу с 8 до 12 утра есть немаленький риск (спойлер - его можно посчитать!), что мат ожидание спроса за день = 1, но эта 1 штука просто случайно выпала на первую половину дня. И мы резко завысили спрос за день в 4 раза. Глобально формула выше всегда в среднем завышает спрос. Чем меньше средние продажи товара, тем больше ошибка

Казалось бы, может и не так страшно? Товар же непопулярный. Но непопулярных товаров много (пусть 50%). И если вы для 50% товаров завышаете спрос в несколько раз - это крупная проблема. Крупная, как фура с мясом: да-да, в Ростове ее списали ровно из-за этого…
Но проблема решаемая! Об этом и 3-ей проблеме в следующей серии

To be continued..

Канал @ml4value
#timeseries #demand

2 months, 2 weeks ago
***➡️*** **Навигация по каналу v2**

➡️ Навигация по каналу v2

На связи Ваня Максимов @Ivan_maksimov - Head of RecSys R&D в Wildberries, 8+ лет в DS

Пишу алгоритмы рекомендаций тех самых кроссовок nike на WB, которые дешевле оригинала в 2 раза.. но почти такие же качественные 😇
Если посерьезнее, то исследую и внедряю новые алгоритмы рекомендаций товаров на WB. До этого построил с нуля все рекомендации в Delivery Club

Еще активно зарабатывал деньги для компаний классическим ML: оптимизация промо-акций, автоматический заказ товаров на склады, планирование смен курьеров. Ну и конечно А/В тестировал все это дело! Довелось даже построить 2 платформы А/В: в Delivery Club и Лавке

В канале пишу о том, как преодолеть путь от ML модели до реального Value для бизнеса. И какие грабли я собрал на этом пути

👍 Самые залайканные / обсуждаемые посты с хэштегами
- 13 способов ускорить АВ тест или “не CUPED-ом единым” #ab
- Отсортируй товары “по популярности” - делов на 30 минут! Стой, а почему 3 спринта? #recsys
- 70% фейлят ML system design собеседование #hiring #system_design
- Что тебя ждет при переходе team lead —> head of ML #hiring
- Серия про оптимизацию цен на товары #pricing
- Серия постов о метриках регрессии: от RMSE до WAPE и SMAPE #timeseries
- Какая трансформация фичи влияет на перформанс CatBoost? Спойлер: log(x) - влияет! #timeseries

💡Написать мне: @Ivan_maksimov
Можно позвать меня рассказать что-то интересное на конференции или в вашей компании, обсудить занятную ml-задачу, или проконсультироваться на счет ml-проекта

4 months, 2 weeks ago

В поисках SOTA для рекомендательных систем

Однозначный лидер есть и в табличках (бустинг), и в LLM (GPT-4, Claude 3) и много где еще. Но в мире рекомендаций его нет!

На paperswithcode на каждом датасете свой лидер: ALS, EASE, SASRec,… где-то даже tf-idf 😅

Крупнейшие компании абсолютно по-разному строят свои рек системы. EBay ушел в кластеризацию товаров + поиск похожих, Pinterest полюбил трансформеры, при этом кое-где зажигает и классический ALS

На мой взгляд, SOTA нет, потому что задача «рекомендаций» в каждой индустрии своя

В соц сетях часто нужно показывать новые посты от любимых авторов/друзей. В фильмах - популярные сейчас и похожие. В продуктовом ритейле - стандартную корзину покупателя (повторные покупки)

Хотите поэкзотичнее? В одежде чуть ли не главный челлендж - учет размера 📐
По некоторым прикидкам, если онлайн-ритейлеры одежды с этим справятся и снизят возвраты, то это похоронит оффлайн магазины одежды

В общем, сфера рекомендаций не так проста, как кажется 💯

P.S. Если знаете клевые рек модели в вашей индустрии - пишите в комментарии, очень интересно 🧐

5 months, 1 week ago

Увидел в Threads анекдот: Bloomberg потратил ~$10 миллионов (в AWS SageMaker) на тренировку BloombergGPT (50B параметров на 700B токенов), специально для финансовых задач. Иииии.... модель всухую проиграла на этих же финансовых тасках GPT-4, которая вышла за две недели до этого.

И тут всё было бы очевидно: "нужно сдаваться GPT-4". Если бы не одна маленькая деталь — GPT-4 в свою очередь либо проигрывала либо еле-еле перегоняла (используя Chain of Thoughts) специализированные файнтюны таких динозавров как BERT (2018, 110 лямов параметров) и RoBERTa Large (2019, ~700 млн параметров).

Мораль басни такова: если вы не лидер AI гонки, то не соревнуйтесь с OpenAI в общих задачах, это дорого и трудно. Но если есть прямые руки и конкретный таск — перегнать даже SOTA general purpose модель вполне возможно. А, и ещё: тренировать в AWS безумно дорого 😂

@ai_newz

5 months, 1 week ago

Это они еще tf-idf не пробовали..

Ну а вообще тема с бейзлайнами и сбором качественных данных за последие год-два отошла на десятый план
Очень жаль: надо как-нибудь собрать митап или конференцию а-ля "BaseConf", где все будут рассказывать свои кейсы, как бейзлайнами побеждают SOTA в индустрии 😁

6 months, 1 week ago

Точность в нейминге размера модели критически важна для LLM, поскольку это влияет на справедливость сравнения, воспроизводимость результатов и понимание компромиссов между размером модели и её производительностью.

Решил создать тред на HF. так что поддержать идею о переименовании модели Gemma7B в Gemma-9B можно тут:

👉 https://huggingface.co/google/gemma-7b/discussions/34

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

huggingface.co

google/gemma-7b · Proposal for Renaming of Gemma-7B Model to Gemma-9B

I am reaching out to discuss a proposal regarding the Gemma-7B language model. Upon detailed analysis, it has come to attention that the Gemma-7B model comprises a total of 8.54 billion parameters,...

Точность в нейминге размера модели критически важна для LLM, поскольку это влияет на справедливость сравнения, воспроизводимость результатов и понимание компромиссов …
6 months, 1 week ago

Вдогонку к прошлому посту про «стажерские» ошибки в статьях по RecSys - даже рисерч отдел Google немножко 🤏 ошибся с неймингом своих моделей

В итоге многие думали, что смотрят на Gemma-7B (7B параметров) как на похожего по размеру конкурента условного Mixtral-7B, но… у Gemma-7B около 8.5В (+21%) параметров - правильнее ее называть Gemma-9B

Соответственно «в лоб» такие модели сравнивать не очень корректно

6 months, 2 weeks ago
**ML4RecSys: что происходит? февраль 2024**

ML4RecSys: что происходит? февраль 2024

Последнее время читаю про недавние прорывы в рекомендательных системах... и там все очень сомнительно

Даже не верится что в 2024 году в статьях с топовых конференций классические «стажерские» ошибки:
- неправильный train-test split
- сравнение с явно недо-тюнеными бейзлайнами
- выбор для сравнения только тех датасетов, где модель побеждает…

Поэтому выудить что-то явно работающее очень сложно 😕
Тем не менее, на мой взгляд, в адекватных статьях взлетели:
- Трансформеры для отбора кандидатов
- Разные стратегии поиска Hard negatives (покупка - позитивный таргет, но найти хороший негативный - занятная задача)
- Таргет более близкий к деньгам (не клики, а хотя бы клики дольше 10 сек)

Дальше уже разные топ компании репортят совсем разные вещи:
- У одних лучше encoder (BERT4Rec), у других - decoder модели (SASRec)
- Как будто огромное значение играет не архитектура, а выбор данных / как берут негативы / лосс
- В академии SOTA показывают модели с дополнительным contrastive loss, но в индустрии этого пока не видно
- Почти у всех проблемы метча оффлайн/онлайн метрик или рост конверсии + падения чека, но никто не говорит, как с этим справляется
- Многие внедряют разнообразие / novelty в рекомендации через постпроцесинг без всякого ML
- Как будто градиентый бустинг для ранжирования все еще на уровне с SOTA

В общем, пока инженерный подход в рекомендациях решает 🔥

Если вы знаете прикольные открытия / рабочие инженерные подходы в RecSys, делитесь в комментариях ⬇️

8 months, 1 week ago
Обычно не люблю считать стату канала …

Обычно не люблю считать стату канала за год, но tgstat тут все сделал за меня

>200К просмотров моих постов в 2023 - просто шок 🤯

Еще бОльший шок - 2.5К пересылокПохоже, становлюсь инфлюенсером на минималках 😅

We recommend to visit

Канал для поиска исполнителей для разных задач и организации мини конкурсов

Last updated 1 week, 1 day ago

HAYZON
HAYZON
3,594,485 @hayzonn

💼 How to create capital and increase it using cryptocurrency

👤 𝐅𝐨𝐮𝐧𝐝𝐞𝐫: @Tg_Syprion
🗓 ᴀᴅᴠᴇʀᴛɪsɪɴɢ: @SEO_Fam
⭐️ 𝐎𝐧𝐞 𝐋𝐨𝐯𝐞: @major
🍀 𝐌𝐲 𝐜𝐡𝐚𝐧𝐧𝐞𝐥𝐬: @kriptofo @tonfo
@geekstonmedia

Купить рекламу: https://telega.in/c/hayzonn

Last updated 17 hours ago

Здесь простым языком про TON, DFC и крипту.

Принимаем автоматически.
Ссылка для друзей: https://t.me/+-EOfWx2pRKhmNGE6
Связь: @deftalk_bot

Last updated 5 days, 16 hours ago