Требуются ли обучающие данные для методов совместной фильтрации?

#machine-learning #recommendation-engine

#машинное обучение #рекомендация-движок

Вопрос:

Я собираюсь начать писать систему рекомендаций для видео, в основном основанную на совместной фильтрации, поскольку метаданные видео довольно скудны, а также немного фильтрации на основе контента. Однако я не уверен, что делать с обучающими данными. Важны ли обучающие данные в рекомендательных системах, особенно в методах совместной работы? Если да, то как я могу сгенерировать такие данные или какой тип данных я должен искать?

Комментарии:

1. Вам нужны данные для обучения модели? конечно. Вы спрашиваете, нужны ли вам какие-либо данные о взаимодействии пользователя с элементом в дополнение к другим метаданным, которые у вас наверняка уже есть? Я не думаю, что вы можете генерировать реальные данные, на которых вы хотите учиться.

Ответ №1:

Любому алгоритму ML нужны данные. Возьмем, к примеру, подход к факторизации матрицы.

Он получает (неполную) матрицу ставок: строки представляют пользователей, столбцы представляют элементы, а ячейка содержит оценку, которую конкретный пользователь оценил по конкретному элементу. Затем, разложив эту матрицу на множители, вы получаете скрытое векторное представление для каждого пользователя и каждого элемента, что позволяет прогнозировать будущие показатели. Очевидно, что невидимые элементы с наибольшей скоростью наиболее интересны для пользователя, согласно модели.

По сути, матричная факторизация изучает прогнозирование новых показателей для известных пользователей и элементов.