Upload
anton-chebotaev
View
1.277
Download
5
Embed Size (px)
Citation preview
Рекомендательные системы на основе вложенных тегов
Исполнил: Чеботаев А. П.
Научный руководитель: Бухановский А. В., д.т.н
СПб 2011
Кафедра Компьютерных Технологий, ФИТиП
Задачи рекомендательных систем
Современные РС
• Упорядочивание
Направления развития
• Обоснование
• Фильтрация
2
пользователи
u( , ) функция «полезности» объекты
Существующие методы
3
Узкие рекомендации Однородность
объектов
Ресурсоемкость Похожие пользователи не
являются обоснованием
Ресурсоемкость Факторы являются
скрытыми
Контентные методы Совместная фильтрация Скрытые факторы
поиск рекомендация
Рекомендательные системы
4
Сравнение, упорядочивание
Фильтрация
Предсказание функции 𝒖
Обоснование
Современные РС точное значение функции 𝒖
Вложенные теги приближенное значение функции 𝒖
Вложенные теги
5
u( , ) u( , )
u( , ) u( , )
поиск
сравнение
Пример
6
Анна
Борис 1984
Антиутопия
Улитка на склоне
Фантастика
Град Обреченный
Стругацкие Фантастика
Антиутопия
Стругацкие
поиск
рекомендация
Поиск объектов
1. Поиск компонент
2. Поиск их родителей
3. Сравнение, фильтрация
7
Поиск — 𝑂 𝑛2 Сравнение — 𝑂 𝑛 𝑛 — среднее количество компонент
2
1
3
Экспериментальный стенд
8
Cassandra DB
User
MovieLens
IMDB
DAO
Recommender
Frontend
Vaadin UI
10 000 фильмов 350 000 тегов (актеры, режиссеры, метки пользователей)
BL
Crawler
Обоснование рекомендаций
9
Фильтрация рекомендаций
10
Неточные оценки
0,85 0,9 0,95 1,25
NetflixWinner
SlopeOne NetflixCinematch
Вложенные Теги
11
5
4
3
2
1
0
1. Обучение на 800 000 рейтингов 2. Проверка на 200 000 рейтингов 3. Измерение среднеквадратичной ошибки
1 000 000 рейтингов 6 000 пользователей 3 900 фильмов 100 000 ключевых слов
Результаты
1. Выявлены проблемы существующих рекомендательных систем
2. Предложен метод, решающий проблемы обоснования и фильтрации рекомендаций
3. Построен экспериментальный стенд рекомендательной системы по предложенному методу
4. Произведено сравнение результатов предложенного метода с существующими
12
Выводы
• Отсутствие явных факторов не позволяет фильтровать рекомендуемые объекты
• Возможно построение обосновывающих рекомендательных систем с функциональностью фильтрации рекомендаций при меньших затратах ресурсов
• Допустимо использование предложенного метода в промышленных системах
13
14
Далее представлены дополнительные слайды на случай вопросов комиссии
Импорт данных
15
Фильм
Актер
Режиссер
Ключевое слово
Актер играл в фильме, Вес по умолчанию
Режиссер снимал фильм, Вес по умолчанию
Слово отмечено для фильма, Вес обратно пропорционален количеству фильмов с этим словом
Взаимообмен данными
16
Фильм
Актер
Режиссер
Ключевое слово
Пользователь
• Быстрое формирование профиля пользователя • Накопление информации о фильмах
Ключевое слово
Актер
Пример
17
Анна
Борис 1984
Антиутопия
Улитка на склоне
Фантастика
Град Обреченный
Стругацкие Фантастика
Антиутопия
Стругацкие
поиск
рекомендация
Пример
18
Анна
Борис Хоббит
Сказка
Улитка на склоне
Фантастика
Понедельник начинается В субботу
Стругацкие Фантастика
Сказка
Стругацкие
поиск
рекомендация
Нерелевантность точных оценок
Растёт понимание того, что хорошая точность рекомендаций сама по себе не удовлетворяет потребности пользователей РС и не характеризует эффективность её работы.
19
J. Herlocker, J. Konstan, L. Terveen, and J. Riedl. «Evaluating collaborative filtering recommender systems», ACM Translations on Information Systems, Vol. 22(1), 2004.
Может быть, самые лучшие алгоритмы должны оцениваться по тому, насколько хорошо они могут представить пользователям обоснование вынесенного решения.
Сравнение объектов
• Объект 𝑎 связан с 𝑆𝑎 = 𝑜𝑎1 , 𝑜𝑎2 , … , 𝑜𝑎𝑛 Вес связи 𝑜1 → 𝑜2 обозначим 𝑤 𝑂1, 𝑂2
• 𝑝𝑤 𝑎, 𝑜 = 𝑊 𝑎,𝑜𝑖
(𝑊 𝑎,𝑜𝑖 ) 𝑜𝑖∈𝑆𝑎𝑖
— взвешенный вес
• 𝑢 𝑎, 𝑏 = min 𝑝𝑤(𝑜𝑖 , 𝑎), 𝑝𝑤(𝑜𝑖 , 𝑎), 𝑜𝑖∈𝑆𝑏⋃𝑆𝑎𝑖
20
15
17
21
226
475
384
𝑎 𝑏 𝑜1
𝑆𝑎 𝑆𝑏
𝑜1
𝑜3 𝑜3
𝑜2 𝑜4
Развитие метода
• Функции сравнения
• Алгоритмы поиска
• Качество описания объектов
– Анализ рецензий фильмов
– Фильтрация пользовательских данных
21