TGViewer
Information Retriever Information Retriever @inforetriever · 4.13K subscribers
Post #52 2.29K
Learning RecSys on Graphs.

Если собрать все данные, которые порождает какой-нибудь продукт (e.g. Яндекс Маркет), получится граф. Строить рекомендации для пользователей с помощью этого графа — это ключевая задача рекомендательной системы.

Вершинами в графе являются всевозможные сущности и объекты — пользователи, товары, поисковые запросы, etc.

Ребра — это взаимодействия между сущностями: e.g. взаимодействия пользователей с товарами, клики на товары по запросу, etc. Метаданные ребер содержат контекст взаимодействия, e.g. время и тип взаимодействия, девайс пользователя, поверхность рекомендации.

Граф — гетерогенный (разнородный). Вершины и ребра в нем имеют разные типы, содержат разные наборы информации.

Это гиперграф. В нем есть гиперребра — ребра, объединяющие произвольное количество вершин. Например, купленные вместе товары (i.e. basket).

Граф — динамический. Он развивается со временем; поток событий в системе порождает новые ребра в графе.

Еще есть граф знаний. Все метаданные вершин можно представить в виде графа с “семантическими вершинами”, e.g. категориями и характеристиками товаров. Сами семантические ноды могут быть связаны между собой, e.g. таксономия категорий товаров.

А еще можно построить граф сразу для всей экосистемы. Добавить в тот же граф для Маркета данные из других сервисов, т.н. кросс-доменный граф: пользователей, айтемы, их метаданные и всевозможные типы взаимодействий.

Задача графовых моделей — извлечь максимум пользы из этих данных. Любые модели рекомендаций так или иначе оперируют этим графом, но, как правило, игнорируют большую его часть. Например, sequential модели (e.g. SASRec) часто рассматривают только пользователей и айтемы, оставляют только один тип ребра, при этом выкидывают все метаданные айтемов и ребер (кроме их порядка по времени), убирают граф знаний и кросс-доменную информацию.

Обучить ультимативную графовую модель на всех данных, получив универсальные эмбеддинги для всех сущностей в системе — одна из задач, которой мы с командой занимаемся в Яндексе.
  • 🔥 25
  • 👍 8
  • 😎 6
More from @inforetriever
  1. Sep 24, 2026Не знаю, как студенты сейчас проводят свободное время (кэгл решают?), а мы в свое время по…
  2. Sep 24, 202628 сентября начинается ACM RecSys'26 в Миннесоте. Впервые за три года его пропускаю (RecSy…
  3. Sep 22, 2026По мотивам поста Вани Рубачёва Вечная классика
  4. Sep 19, 2026А я сегодня стал лауреатом премии Yandex ML Prize! В номинации “Преподаватели”. Спасибо вс…
  5. Sep 19, 2026Я не покемон, но меня можно сегодня поймать на Practical ML Conf :)
  6. Sep 18, 2026WARNING: пост на отвлеченную тему)) Я люблю историю. В детстве мне попадались различные кн…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →