Нет поля рейтинга для ALS Spark MLlib

Я пытаюсь использовать Spark MLib ALS для совместной фильтрации музыкальных рекомендаций. Входные данные имеют несколько полей, включая userId, songId, artist и т. д. У меня нет поля рейтингов в моих данных. БАС нуждается в оценке как один из параметров. Я много оглядывался, но не мог получить никакой помощи. Как я могу продолжить это? Можно ли взять listen_count (количество раз, когда пользователь прослушал определенную песню)

Мой набор данных:

user_id song_id songtitle   artist  language    music_director
123        1     abc            artist1  English    NULL
345        2     xyz            artist2  English    NULL
456        3     abc            artist3  English    NULL
567        4     xyz            artist4  English    NULL
678        5     xyz            artist5  English    NULL
789        6     abc            artist6  English    NULL

comment
Возможный дубликат Spark ALS predictAll возвращает пустое значение   -  person Alper t. Turker    schedule 09.02.2018
comment
@ user8371915: Это больше не похоже на то, что я здесь спросил.   -  person Sonal    schedule 12.02.2018


Ответы (1)


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

Следовательно, поле рейтинга помогает различать такую ​​разную реакцию пользователей на разные песни в этом случае, а затем прогнозировать рейтинги пользователей для песен, которые они не слушали.

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

person pratiklodha    schedule 09.02.2018
comment
Алгоритм ALS также требует неприязни пользователя? Предположим, у меня есть данные о пользователях, у которых есть темы, которые им нравятся, но, в отличие от рейтингов, этот набор данных не дает информации о том, не интересуются ли пользователи другими темами, или они просто еще не открыли эти темы. В таком случае работает рейтинг 1? - person Abhishek; 24.04.2019