Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ПТАиМСС – магистратура, 2 курс осень 2021 – 3.2 занятие

F21d69109b1c03921abf7d12f0fb6654?s=47 ТиМПИ
September 17, 2021

ПТАиМСС – магистратура, 2 курс осень 2021 – 3.2 занятие

F21d69109b1c03921abf7d12f0fb6654?s=128

ТиМПИ

September 17, 2021
Tweet

Transcript

  1. 17 сентября 2021 vdo@dscs.pro, mva@dscs.pro Олисеенко Валерий Дмитриевич Ассистент кафедры

    информатики Рекомендательные системы в социальных сетях Абрамов Максим Викторович Доцент кафедры информатики
  2. 2/21 2/21 ЧТО ТАКОЕ РЕКОМЕНДАТЕЛЬНЫЕ СИСТЕМЫ? Рекомендательная система — это

    алгоритм, который предсказывает что будет интересно пользователю (информация, продукт, услуга и т.д.) на основе информации известной о нём. Информация
  3. 3/21 3/21 ТИПЫ РЕКОМЕНДАТЕЛЬНЫХ СИСТЕМ Существует 4 чипа рекомендательных систем:

    • Коллаборативная фильтрация (пользователи с похожими интересами); • Основанные на контенте (рекомендация похожих продуктов); • Основанные на знаниях (рекомендация дополняющих продуктов); • Гибридные. Источник: https://hub.forklog.com/
  4. 4/21 4/21 КОЛЛАБОРАТИВНАЯ ФИЛЬТРАЦИЯ 1/3 Обозначения: • 𝑗 — пользователи

    (всего пользователей — 𝑁, 𝑖 = 1 … 𝑁). • 𝑎 — предметы (сайты, товары, фильмы...), которые рекомендуются (всего — 𝑀, 𝑎 = 1 … 𝑀). • Пользователь 𝑖 оценивает предмет 𝑎, он производит отклик 𝑟𝑖,𝑎 [отклик = случайная величина]. • Задача — предсказывать оценки 𝑟𝑖,𝑎 , зная признаки 𝑥𝑖 и 𝑥𝑎 для всех элементов базы и зная некоторые уже расставленные в базе 𝑟𝑖′,𝑎′ . Предсказание будем обозначать через Ƹ 𝑟𝑖,𝑎 .
  5. 5/21 5/21 КОЛЛАБОРАТИВНАЯ ФИЛЬТРАЦИЯ 2/3 Введём расстояние схожести, например, на

    основе коэффициента Пирсона: где ҧ 𝑟𝑎 – средний рейтинг продукта 𝑎 среди всех пользователей: 𝑤𝑖,𝑗 = σ𝑎 (𝑟𝑖,𝑎 − ҧ 𝑟𝑎 )(𝑟 𝑗,𝑎 − ҧ 𝑟𝑎 ) σ𝑎 (𝑟𝑖,𝑎 − ҧ 𝑟𝑎 )2 σ𝑎 (𝑟 𝑗,𝑎 − ҧ 𝑟𝑎 )2 , Ƹ 𝑟𝑖,𝑎 = ഥ 𝑟𝑎 + σ 𝑗 𝑟 𝑗,𝑎 − ҧ 𝑟𝑗 𝑤𝑖,𝑗 σ 𝑗 |𝑤𝑖,𝑗 |
  6. 6/21 6/21 КОЛЛАБОРАТИВНАЯ ФИЛЬТРАЦИЯ 3/3

  7. 7/21 7/21 А ЧТО В СОЦИАЛЬНЫХ СЕТЯХ? Источник: https://habr.com/ru/company/vk/blog/552162/ Источник:

    https://3-info.ru/post/14727
  8. 8/21 8/21 РЕКОМЕНДАЦИЯ ДРУЗЕЙ Источник: https://habr.com/ru/company/vk/blog/552162/

  9. 9/21 9/21 ФОРМАЛИЗАЦИЯ ЗАДАЧИ Источник: https://habr.com/ru/company/vk/blog/552162/ Эвристика на основе числа

    общих друзей Эвристика Adamic/Adar
  10. 10/21 10/21 АЛГОРИТМ ВКОНТАКТЕ EgoML Источник: https://habr.com/ru/company/vk/blog/552162/ MapReduce: • Подготовка.

    Для каждого 𝑐 выделяется тот контекст, который он будет учитывать для вынесения оценок. Например, в Adamic/Adar это будет просто список друзей. • Map. «Спрашиваем» у каждого 𝑐, что он думает про возможность дружбы в каждой паре его друзей. По сути, вычисляем 𝑒𝑧𝑐 (𝑢, 𝑣) и сохраняем в виде (𝑢, 𝑣) → 𝑒𝑧𝑐 (𝑢, 𝑣) для всех 𝑢, 𝑣 𝑖𝑛 𝑁(𝑐). В случае Adamic/Adar: (𝑢, 𝑣) → 1/log |𝑁(𝑐)|. • Reduce. Для каждой пары (𝑢, 𝑣) суммируем все соответствующие ей значения. Их будет ровно столько, сколько общих друзей у 𝑢 и 𝑣.
  11. 11/21 11/21 ЭГО-ГРАФ Пример мер в эго-графе: • число общих

    друзей 𝑢 и 𝑣 внутри эго-графа 𝑐; • число общих друзей 𝑢 и 𝑐; • интенсивность взаимодействий между 𝑣 и 𝑐; • время, прошедшее с последней дружбы между 𝑢 и кем-либо из эго-графа 𝑐; • плотность эго-графа 𝑐; Эго-граф Хоппера Источник: https://habr.com/ru/company/vk/blog/552162/
  12. 12/21 12/21 НАБОР ДАННЫХ Финальный набор данных: • для каждой

    пары пользователей 𝑢 и 𝑣, а также их общего друга 𝑐, посчитаны меры(признаки) по эго-графу 𝑐; • пара пользователей 𝑢 и 𝑣 встречается в наборе данных ровно столько раз, сколько у них общих друзей; • все пары пользователей в наборе данных не являются друзьями на момент времени 𝑇; • для каждой пары 𝑢 и 𝑣 проставлена метка — подружились ли они в течение определённого промежутка времени начиная с 𝑇. Источник: https://habr.com/ru/company/vk/blog/552162/
  13. 13/21 13/21 ПОДСЧЁТ Источник: https://habr.com/ru/company/vk/blog/552162/

  14. 14/21 14/21 РЕКОМЕНДАЦИЯ ГРУПП Источник: https://3-info.ru/post/14727

  15. 15/21 15/21 ПОДХОД RANDOM WALKS Источник: https://3-info.ru/post/14727

  16. 16/21 16/21 МОДЕЛЬ В ОДНОКЛАССНИКАХ Источник: https://3-info.ru/post/14727

  17. 17/21 17/21 ПРОВЕРКА МОДЕЛИ Источник: https://3-info.ru/post/14727

  18. 18/21 18/21 ПРОБЛЕМА ПОДХОДА Источник: https://3-info.ru/post/14727

  19. 19/21 19/21 УЛУЧШЕНИЕ МОДЕЛИ Источник: https://3-info.ru/post/14727 • Собираем неявный фидбек:

    все открытия окон, просмотры видео в группах, клики в ленте и просмотры постов в ленте (число и длительность просмотра). • Собираем явный фидбек: классы, решары, комменты. • С негативным весом добавляем скрытия контента, выход из групп, отписки от групповых оповещений. • Нормализуем взаимодействия на количество показов контента (исключаем перекос активно постящих групп). • Взвешиваем по типу контента, учитывая то, насколько давно пользователь ознакомился с группой (уменьшаем вес случайным действиям). • Нормализуем веса групп во вкусах пользователей. Эти веса и будут весами ребер графа на первом шаге обхода графа.
  20. 20/21 20/21 ИТОГИ Источник: https://3-info.ru/post/14727 Word2vec, дополнительные данные и учёт

    мощности и качества групп при формировании графа по сравнению с оригинальным подходом дали: •x4 к числу групп в рекомендациях; •x13 вступлений в группы численностью менее 1к пользователей; •+30% к общим вступлениям в групп
  21. 17 сентября 2021 vdo@dscs.pro, mva@dscs.pro Олисеенко Валерий Дмитриевич Ассистент кафедры

    информатики Рекомендательные системы в социальных сетях Абрамов Максим Викторович Доцент кафедры информатики