Je construis un système de recommandation à partir des journaux de requêtes. Pour chaque journal de requête, j'ai des données sur les liens sur lesquels les utilisateurs ont cliqué. Les utilisateurs ne fournissent aucune évaluation pour les liens qu'ils visitent. J'essaye de créer un système de recommandation qui suggérera "Si vous avez cliqué celui-ci, essayez celui-ci qu'un autre utilisateur similaire a essayé". J'explore Apache Spark - MLLib pour utiliser le filtrage collaboratif à cette fin. Malheureusement, l'algorithme ALS prend des données "d'évaluation".Filtrage collaboratif MLlib basé sur des articles sans évaluation
Voici une des solutions que j'ai eu en ligne:.
« Pour chaque page, nous voulons des recommandations pour, nous recherchons tous les utilisateurs qui ont vu cette page Alors, pour chacun de ces utilisateurs, nous regardons Nous comptons ensuite le nombre d'utilisateurs qui ont consulté chaque page de cet ensemble de données et utilisons ceux qui comptent le plus pour nos recommandations. "
L'utilisateur suggère que cette approche est lente. Je me demandais s'il y avait un bon moyen de «fausser» les données de classement, ou y a-t-il une implémentation open source populaire qui ne nécessite pas les données de classement?
Les évaluations peuvent également être comptées dans le cas d'une rétroaction implicite. Ex (utilisateur1, url1, 1/0), 1/0 cliqué ou non. –
Merci pour votre réponse. J'ai réfléchi à ce sujet. Les données que j'ai sont seulement les URLs cliquées par l'utilisateur. Donc, de cette façon, je vais avoir tous les 1 dans ma matrice. En outre, si vous placez 0 dans tous les documents restants (qui sont très nombreux), il s'agira d'une très grande matrice éparse. – Omkar12353