ML — это ОК
Вы уже устали от статьи Methodologies for Improving Modern Industrial Recommender Systems? Мы нет. Поэтому на ридинг-группе 7 сентября в 17:00 разберём её в подробностях. Ведущим будет Николай Рябых, руководитель команды рекомендаций ОК. Ссылку на звонок…
Привет! Напоминаем, что сегодня в 17:00 МСК пройдет очередная ридинг-группа. Ссылка на встречу
Идентификатор конференции:
920 3695 0643
Код доступа: 7SDKuk
Идентификатор конференции:
920 3695 0643
Код доступа: 7SDKuk
🔥1
ML — это ОК
Приглашаем на Dark Geometry Fest Место: БЦ Skylight, Ленинградский проспект, 39с79, Москва Дата и время: 9 сентября, 13:00 — 20:00 Разберём, как многообразия помогают в машинном обучении, обсудим занимательное геометрическое доказательство одного известного…
Привет!
Сегодня в офисе ВК проходит Dark Geometry Fest.
Подключайтесь к трансляции в 14:00 МСК.
Ссылка на трансляцию
Сегодня в офисе ВК проходит Dark Geometry Fest.
Подключайтесь к трансляции в 14:00 МСК.
Ссылка на трансляцию
Media is too big
VIEW IN TELEGRAM
Запись ридинг-группы 07.09.23
Ведущий — Николай Рябых, руководитель команды рекомендаций ОК
Ведущий — Николай Рябых, руководитель команды рекомендаций ОК
🔥8❤1
Наша ридинг-группа в последнее время какая-то неразнообразная: из пяти встреч только одна была не про рекомендательные системы (а про инфраструктуру для рекомендательных систем 😅). Мы хотели это исправить, но пока не получается – в пятницу 22 сентября в 16.00 поговорим про разнообразие в рекомендациях и алгоритм Determinantal Point Processes. Коля Анохин, ведущий специалист по машинному обучению ОК, будет эээ ведущим.
😁14🔥5
📖Ссылка на сегодняшнюю ридинг-группу в 16:00: https://shorturl.at/bcdBJ
В программе: разнообразие рекомендаций, Николас Кейдж, Вольфганг Паули, Мэйби Бэйби и Дукалис.
Приходите!
В программе: разнообразие рекомендаций, Николас Кейдж, Вольфганг Паули, Мэйби Бэйби и Дукалис.
Приходите!
🔥7
Media is too big
VIEW IN TELEGRAM
Запись ридинг группы 2023-09-22: Practical Diversified Recommendations on YouTube with Determinantal Point Processes
🔥8
Разбираем RecSys 2023! 🧑🔬👩🔬
Проведём две сессии в слоты 16.00-18.00 5 и 6 октября. В программе уже 20 статей, помимо нашей команды рассказать про свои работы с RecSys придут сами авторы: Александр Петров, Алексей Васильев и Антон Кленицкий.
Запись как обычно будет, но онлайн всегда интереснее. Бронируйте слоты на встречу в следующий четверг и пятницу.
Зум
Проведём две сессии в слоты 16.00-18.00 5 и 6 октября. В программе уже 20 статей, помимо нашей команды рассказать про свои работы с RecSys придут сами авторы: Александр Петров, Алексей Васильев и Антон Кленицкий.
Запись как обычно будет, но онлайн всегда интереснее. Бронируйте слоты на встречу в следующий четверг и пятницу.
Зум
👍11🔥3
🔮Если хотите узнать подробности, приходите на ридинг-группу ОК 19 октября в 17:00. Обсудим статью Sheaf Neural Networks for Graph-based Recommender Systems. Ведущим будет Александр Тараканов, исследователь ОК.
🔥10🙈3👍1
📖Ссылка на зум нашей ридинг-группы сегодня в 17:00
Join Zoom Meeting
https://us05web.zoom.us/j/82167512039?pwd=bOPiB9Y04VHku8mu0Q1bL7p2vomF5H.1
Meeting ID: 821 6751 2039
Passcode: 5FGDD4
Join Zoom Meeting
https://us05web.zoom.us/j/82167512039?pwd=bOPiB9Y04VHku8mu0Q1bL7p2vomF5H.1
Meeting ID: 821 6751 2039
Passcode: 5FGDD4
✍1
Media is too big
VIEW IN TELEGRAM
🎬 Запись ридинг-группы от 19 октября 2023 года. Александр Тараканов, исследователь в ОК, рассказывал про нейронные сети на пучках.
👍4🆒4👏3
🏗️🏠Иногда на ридинг-группе мы выходим за рамки обычной тематики: машинного обучения, рекомендательных систем, анализа данных. Следующая встреча – именно такой случай. Настало время обсудить выбор напольных покрытий! Профессиональный строитель дата-платформ, прораб разработчик ОК Владимир Ермаков расскажет про паркет: плюсы, минусы, укладку на большие кластеры. Приглашаем послушать Володю 2 ноября в 17:00.
Зум:
https://us05web.zoom.us/j/81901499743?pwd=SYI7UTEbPI8BbkqhQGpv4JwaY4d5ju.1
Meeting ID: 819 0149 9743
Passcode: 3ASKmt
Зум:
https://us05web.zoom.us/j/81901499743?pwd=SYI7UTEbPI8BbkqhQGpv4JwaY4d5ju.1
Meeting ID: 819 0149 9743
Passcode: 3ASKmt
😁20🔥5🤩2🙈1
В октябре мы провели традиционный разбор конференции RecSys’23. В этот раз на разборе выступали не только ребята из ОК и VK, но и авторы оригинальных статей. Мы думаем, что получилось отлично. Следующие полтора месяца будем дважды в неделю публиковать текстовые версии разборов статей. Делаем для себя, не обращайте внимания ❤️ #recsys23
❤4😁4👍1
AUGMENTED NEGATIVE SAMPLING FOR COLLABORATIVE FILTERING
https://arxiv.org/abs/2308.05972
https://arxiv.org/abs/2308.05972
ML — это ОК
AUGMENTED NEGATIVE SAMPLING FOR COLLABORATIVE FILTERING https://arxiv.org/abs/2308.05972
В задаче рекомендаций с неявным фидбэком данные состоят только из «положительных» пар пользователь-айтем. Например, в рекомендациях видео положительными могут считаться ролики, которые пользователь посмотрел до конца. Для того чтобы обучить модель, нужны и «отрицательные» пары – их получают с помощью процедуры семплирования негативных. Базовый вариант этой процедуры – выбирать в качестве негативных айтемы пропорционально их популярности.
Авторы статьи предлагают новый подход к семплированию негативных, основанный на аугментации данных. Факторы, которые описывают айтемы, делятся на две группы:
- easy factors (легкие факторы);
- hard factors (сильные факторы).
Сильные факторы положительно влияют на качество модели, в то время как легкие факторы ухудшают модель или ничего не меняют. Нужно специальным образом зашумить легкие факторы и объединить их с сильными факторами. С помощью жадного алгоритма из получившегося множества аугментированных айтемов отбирают несколько сэмплов в качестве негативных.
Авторы оценивали эффективность своего метода на трёх датасетах с использованием матричной факторизации с BPR лоссом. Почти во всех экспериментах предложенный алгоритм оказался лучше конкурентов. Недостатки подхода такие:
- время обучения вдвое больше, чем при базовом семплировании негативных;
- добавляется два гиперпараметра, которые нужно настраивать под конкретные данные. #recsys23
Авторы статьи предлагают новый подход к семплированию негативных, основанный на аугментации данных. Факторы, которые описывают айтемы, делятся на две группы:
- easy factors (легкие факторы);
- hard factors (сильные факторы).
Сильные факторы положительно влияют на качество модели, в то время как легкие факторы ухудшают модель или ничего не меняют. Нужно специальным образом зашумить легкие факторы и объединить их с сильными факторами. С помощью жадного алгоритма из получившегося множества аугментированных айтемов отбирают несколько сэмплов в качестве негативных.
Авторы оценивали эффективность своего метода на трёх датасетах с использованием матричной факторизации с BPR лоссом. Почти во всех экспериментах предложенный алгоритм оказался лучше конкурентов. Недостатки подхода такие:
- время обучения вдвое больше, чем при базовом семплировании негативных;
- добавляется два гиперпараметра, которые нужно настраивать под конкретные данные. #recsys23
👍4✍2
INTUNE: REINFORCEMENT LEARNING-BASED DATA PIPELINE OPTIMIZATION FOR DEEP RECOMMENDATION MODELS
https://arxiv.org/abs/2308.08500 #recsys23
IT-гиганты используют большие нейросети (DLRM), чтобы строить персонализированные рекомендации для сотен миллионов пользователей. Количество обучаемых параметров у таких моделей сравнимо с количеством параметров у современных языковых моделей. При этом DLRM намного проще трансформеров с точки зрения архитектуры. Поэтому при обучении DLRM узкое место — не вычисления внутри нейронной сети, а процесс подготовки данных, который состоит из нескольких этапов:
- загрузки данных с диска;
- формирования батчей;
- перемешивания;
- преобразований данных;
- загрузки данных на GPU.
Если хотя бы один из этапов «тормозит» — весь процесс замедляется, а вместе с ним замедляется и обучение. Решением в этой ситуации является распараллеливание каждого из этапов на нескольких процессорах, причем так, чтобы пропускная способность всех этапов была одинаковой.
Ключевым вопросом здесь становится выявление необходимого количества процессоров на каждом этапе. Оказывается, что для DLRM стандартные инструменты вроде AUTOTUNE работают недостаточно хорошо: процессоры используются неоптимально, переполняется память. Разработчики из Netflix предлагают собственное решение.
Представленный в статье фреймворк InTune основан на обучении с подкреплением в такой постановке:
- Action. Агент InTune может увеличивать или уменьшать количество процессоров, которое выдается каждому этапу подготовки данных.
- State. В качестве параметров среды агент наблюдает метрики процесса обучения — например, текущую пропускную способность и объём свободной памяти в кластере.
- Reward. С помощью Q-learning агент учится выделять ресурсы так, чтобы скорость обучения была максимальной при минимальном использовании памяти.
Эксперименты показали, что под управлением InTune модель обучается в 2,3 раза быстрее, чем под управлением AUTOTUNE, а доля падений по памяти снижается с 8% до нуля. Авторы не опубликовали исходный код, но идея достаточно простая, чтобы повторить её в «домашних условиях».
Бонус: предложенный в статье фреймворк может быть полезен не только для обучения DLRM. Например, его можно прикрутить для автоматического выделения ресурсов приложениям Spark.
https://arxiv.org/abs/2308.08500 #recsys23
IT-гиганты используют большие нейросети (DLRM), чтобы строить персонализированные рекомендации для сотен миллионов пользователей. Количество обучаемых параметров у таких моделей сравнимо с количеством параметров у современных языковых моделей. При этом DLRM намного проще трансформеров с точки зрения архитектуры. Поэтому при обучении DLRM узкое место — не вычисления внутри нейронной сети, а процесс подготовки данных, который состоит из нескольких этапов:
- загрузки данных с диска;
- формирования батчей;
- перемешивания;
- преобразований данных;
- загрузки данных на GPU.
Если хотя бы один из этапов «тормозит» — весь процесс замедляется, а вместе с ним замедляется и обучение. Решением в этой ситуации является распараллеливание каждого из этапов на нескольких процессорах, причем так, чтобы пропускная способность всех этапов была одинаковой.
Ключевым вопросом здесь становится выявление необходимого количества процессоров на каждом этапе. Оказывается, что для DLRM стандартные инструменты вроде AUTOTUNE работают недостаточно хорошо: процессоры используются неоптимально, переполняется память. Разработчики из Netflix предлагают собственное решение.
Представленный в статье фреймворк InTune основан на обучении с подкреплением в такой постановке:
- Action. Агент InTune может увеличивать или уменьшать количество процессоров, которое выдается каждому этапу подготовки данных.
- State. В качестве параметров среды агент наблюдает метрики процесса обучения — например, текущую пропускную способность и объём свободной памяти в кластере.
- Reward. С помощью Q-learning агент учится выделять ресурсы так, чтобы скорость обучения была максимальной при минимальном использовании памяти.
Эксперименты показали, что под управлением InTune модель обучается в 2,3 раза быстрее, чем под управлением AUTOTUNE, а доля падений по памяти снижается с 8% до нуля. Авторы не опубликовали исходный код, но идея достаточно простая, чтобы повторить её в «домашних условиях».
Бонус: предложенный в статье фреймворк может быть полезен не только для обучения DLRM. Например, его можно прикрутить для автоматического выделения ресурсов приложениям Spark.
✍4🔥1