Это основанная на элементах или содержательная совместная фильтрация?
В настоящее время я работаю над существующей системой, которая рекомендует элементы, похожие на предыдущие, которые понравились пользователю.
Он использует коллаборативную фильтрацию по методу наименьших квадратов для поиска векторов элементов пользователей и элементов. Затем он использует векторы признаков элементов и использует меру косинусного сходства, чтобы найти похожие элементы.
Тем не менее, я хотел бы получить некоторые пояснения относительно того, является ли это CF на основе элементов или фильтрация на основе содержимого? Я склоняюсь к тому, что это и то и другое. Так как он использует меру сходства для сравнения элементов, но элементы находятся на содержании вектора признаков?
Спасибо,
1 ответ
Если я правильно понимаю, что вы извлекаете векторы элементов для элементов из данных о пользовательских элементах, то это чистый CF на основе элементов.
Для фильтрации содержимого следует использовать функции самого элемента: например, если элементы являются фильмами, фильтрация содержимого должна использовать такие функции, как длительность фильма или его режиссера и т. Д., Но не функции, основанные на предпочтениях других пользователей.
Я думаю, что вы склонны правильно, вы комбинируете как контент, так и совместную фильтрацию. Если вы используете контент на основе, то векторы элемента и пользователей можно обозначить как x_i ваших данных (например, точки данных), тогда как A_ij, который представляет собой ячейку во входном массиве, указывающую, какую оценку пользователь присвоил элементу j, можно назвать как y_i. Вы используете косинусное сходство, чтобы найти сходство между item-item и user-user. Я думаю, в вашем сценарии вы должны пойти на сотрудничество.
Попробуйте составить матрицу item-item и затем рассчитать косинусное сходство.