Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Совместная фильтрация — это задача предсказания интересов пользователя на основе интересов многих других пользователей. В качестве примера рассмотрим задачу рекомендации фильмов. Предположим, у нас есть 500 000 пользователей и список фильмов, которые смотрел каждый пользователь (из каталога из 1 000 000 фильмов). Наша цель — рекомендовать фильмы пользователям.
Чтобы решить эту проблему, необходим какой-то метод, чтобы определить, какие фильмы похожи друг на друга. Мы можем достичь этой цели, встраивая фильмы в низкоразмерное пространство, созданное таким образом, чтобы рядом были похожие фильмы.
Прежде чем описывать, как мы можем изучить вложение, мы сначала исследуем тип качеств, которые мы хотим, чтобы вложение имело, и как мы будем представлять обучающие данные для изучения вложения.
Расположите фильмы на одномерной числовой прямой
Чтобы помочь развить интуицию о встраиваниях, попробуйте на листе бумаги расположить следующие фильмы на одномерной числовой прямой так, чтобы ближайшие друг к другу фильмы были наиболее тесно связаны:
Мальчик-сирота узнает, что он волшебник, и поступает в школу чародейства и волшебства Хогвартс, где вступает в свою первую битву со злым Лордом Волан-де-Мортом.
Семья супергероев, вынужденных жить как гражданские лица в пригороде, выходит на пенсию, чтобы спасти расу супергероев от Синдрома и его робота-убийцы.
Когда профессионального велогонщика Чемпиона похищают во время Тур де Франс, его бабушка и толстая собака отправляются за границу, чтобы спасти его с помощью трио пожилых джазовых певцов.
Больной амнезией отчаянно пытается раскрыть дело об убийстве своей жены, нанося на свое тело улики.
Щелкните значок плюса для одного возможного (крайне несовершенного) решения.
Рисунок 1. Возможное одномерное расположение
Хотя это встраивание помогает понять, насколько фильм ориентирован на детей по сравнению со взрослыми, есть много других аспектов фильма, которые хотелось бы зафиксировать при даче рекомендаций. Давайте сделаем еще один шаг в этом примере, добавив второе измерение внедрения.
Расположите фильмы в двухмерном пространстве
Попробуйте то же упражнение, что и раньше, но на этот раз разместите те же фильмы в двухмерном пространстве.
Щелкните значок плюса для другого возможного решения.
Рисунок 2. Возможное двухмерное расположение
С помощью этого двумерного вложения мы определяем расстояние между фильмами таким образом, что фильмы находятся рядом (и, таким образом, предполагается, что они похожи), если они оба похожи в той степени, в которой они ориентированы на детей по сравнению со взрослыми, а также в той степени, в которой они это фильмы-блокбастеры по сравнению с артхаусными фильмами. Это, конечно, только две из многих характеристик фильмов, которые могут быть важны.
В более общем плане мы отобразили эти фильмы в пространство вложения , где каждое слово описывается двумерным набором координат. Например, в этом пространстве «Шрек» отображается в (-1,0, 0,95), а «Блю» отображается в (0,65, -0,2). В общем, при изучении d -мерного вложения каждый фильм представлен d действительными числами, каждое из которых дает координату в одном измерении.
В этом примере мы дали имя каждому измерению. При изучении вложений отдельные измерения не изучаются с именами. Иногда мы можем посмотреть на вложения и присвоить измерениям семантическое значение, а иногда мы не можем. Часто каждое такое измерение называют скрытым измерением , поскольку оно представляет собой функцию, которая не является явной в данных, а скорее выводится из них.
В конечном счете, значение имеют расстояния между фильмами в пространстве встраивания, а не значения одного фильма в любом заданном измерении.