Канал для поиска исполнителей для разных задач и организации мини конкурсов
Last updated 1 week, 1 day ago
Здесь простым языком про TON, DFC и крипту.
Принимаем автоматически.
Ссылка для друзей: https://t.me/+-EOfWx2pRKhmNGE6
Связь: @deftalk_bot
Last updated 5 days, 16 hours ago
📱 RecSys каналы, обьединяйтесь!
Собрали папку с самыми интересными и полезными каналами, в которых пишут про RecSys
Часть каналов делают обзоры статей по RecSys, другие - пишут про новости, новинки индустрии и многое другое
Запрос про спрос
На прошлой неделе словил вьетнамский флешбек: однажды из-за моей ошибки в алгоритме списали фуру мяса в Ростове 🥩
А вспомнил я про это, потому что меня аж 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
➡️ Навигация по каналу 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-проекта
В поисках SOTA для рекомендательных систем
Однозначный лидер есть и в табличках (бустинг), и в LLM (GPT-4, Claude 3) и много где еще. Но в мире рекомендаций его нет!
На paperswithcode на каждом датасете свой лидер: ALS, EASE, SASRec,… где-то даже tf-idf 😅
Крупнейшие компании абсолютно по-разному строят свои рек системы. EBay ушел в кластеризацию товаров + поиск похожих, Pinterest полюбил трансформеры, при этом кое-где зажигает и классический ALS
На мой взгляд, SOTA нет, потому что задача «рекомендаций» в каждой индустрии своя
В соц сетях часто нужно показывать новые посты от любимых авторов/друзей. В фильмах - популярные сейчас и похожие. В продуктовом ритейле - стандартную корзину покупателя (повторные покупки)
Хотите поэкзотичнее? В одежде чуть ли не главный челлендж - учет размера 📐
По некоторым прикидкам, если онлайн-ритейлеры одежды с этим справятся и снизят возвраты, то это похоронит оффлайн магазины одежды
В общем, сфера рекомендаций не так проста, как кажется 💯
P.S. Если знаете клевые рек модели в вашей индустрии - пишите в комментарии, очень интересно 🧐
Увидел в 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 безумно дорого 😂
Это они еще tf-idf не пробовали..
Ну а вообще тема с бейзлайнами и сбором качественных данных за последие год-два отошла на десятый план
Очень жаль: надо как-нибудь собрать митап или конференцию а-ля "BaseConf", где все будут рассказывать свои кейсы, как бейзлайнами побеждают SOTA в индустрии 😁
Точность в нейминге размера модели критически важна для 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,...
Вдогонку к прошлому посту про «стажерские» ошибки в статьях по RecSys - даже рисерч отдел Google немножко 🤏 ошибся с неймингом своих моделей
В итоге многие думали, что смотрят на Gemma-7B (7B параметров) как на похожего по размеру конкурента условного Mixtral-7B, но… у Gemma-7B около 8.5В (+21%) параметров - правильнее ее называть Gemma-9B
Соответственно «в лоб» такие модели сравнивать не очень корректно
ML4RecSys: что происходит? февраль 2024
Последнее время читаю про недавние прорывы в рекомендательных системах... и там все очень сомнительно
Даже не верится что в 2024 году в статьях с топовых конференций классические «стажерские» ошибки:
- неправильный train-test split
- сравнение с явно недо-тюнеными бейзлайнами
- выбор для сравнения только тех датасетов, где модель побеждает…
Поэтому выудить что-то явно работающее очень сложно 😕
Тем не менее, на мой взгляд, в адекватных статьях взлетели:
- Трансформеры для отбора кандидатов
- Разные стратегии поиска Hard negatives (покупка - позитивный таргет, но найти хороший негативный - занятная задача)
- Таргет более близкий к деньгам (не клики, а хотя бы клики дольше 10 сек)
Дальше уже разные топ компании репортят совсем разные вещи:
- У одних лучше encoder (BERT4Rec), у других - decoder модели (SASRec)
- Как будто огромное значение играет не архитектура, а выбор данных / как берут негативы / лосс
- В академии SOTA показывают модели с дополнительным contrastive loss, но в индустрии этого пока не видно
- Почти у всех проблемы метча оффлайн/онлайн метрик или рост конверсии + падения чека, но никто не говорит, как с этим справляется
- Многие внедряют разнообразие / novelty в рекомендации через постпроцесинг без всякого ML
- Как будто градиентый бустинг для ранжирования все еще на уровне с SOTA
В общем, пока инженерный подход в рекомендациях решает 🔥
Если вы знаете прикольные открытия / рабочие инженерные подходы в RecSys, делитесь в комментариях ⬇️
Обычно не люблю считать стату канала за год, но tgstat тут все сделал за меня
>200К просмотров моих постов в 2023 - просто шок 🤯
Еще бОльший шок - 2.5К пересылокПохоже, становлюсь инфлюенсером на минималках 😅
Канал для поиска исполнителей для разных задач и организации мини конкурсов
Last updated 1 week, 1 day ago
Здесь простым языком про TON, DFC и крипту.
Принимаем автоматически.
Ссылка для друзей: https://t.me/+-EOfWx2pRKhmNGE6
Связь: @deftalk_bot
Last updated 5 days, 16 hours ago