Avantages et inconvénients du filtrage collaboratif

Avantages

Aucune connaissance du domaine n'est nécessaire

Nous n'avons pas besoin de connaître le domaine, car les représentations vectorielles continues sont apprises automatiquement.

Serendipité

Le modèle peut aider les utilisateurs à découvrir de nouveaux centres d'intérêt. Isolément, le système de ML peut ne pas savoir que l'utilisateur est intéressé par un élément donné, mais le modèle peut toujours le recommander, car des utilisateurs similaires s'intéressent à cet élément.

Un bon point de départ

Dans une certaine mesure, le système a uniquement besoin de la matrice de rétroaction pour entraîner un modèle de factorisation matricielle. Plus particulièrement, le système n'a pas besoin de fonctionnalités contextuelles. En pratique, il peut s'agir de l'un des générateurs de candidats multiples.

Inconvénients

Ne peut pas traiter de nouveaux éléments

La prédiction du modèle pour une paire donnée (utilisateur/élément) est le produit scalaire des représentations vectorielles continues correspondantes. Ainsi, si un élément n'est pas détecté lors de l'entraînement, le système ne peut pas créer de représentation vectorielle continue pour cet élément et ne peut pas interroger le modèle avec cet élément. Ce problème est souvent appelé problème de démarrage à froid. Toutefois, les techniques suivantes peuvent permettre de résoudre le problème de démarrage à froid dans une certaine mesure:

  • Projection en WALS. Si un système présente quelques interactions avec les utilisateurs \(i_0\) et n'est pas détecté lors de l'entraînement, il peut facilement calculer une représentation vectorielle continue \(v_{i_0}\) pour cet élément sans avoir à réentraîner l'ensemble du modèle. Le système doit simplement résoudre l'équation suivante ou la version pondérée:

    \[\min_{v_{i_0} \in \mathbb R^d} \|A_{i_0} - U v_{i_0}\|\]

    L'équation précédente correspond à une itération de l'algorithme WALS: les représentations vectorielles continues des utilisateurs sont maintenues fixes, et le système résout l'intégration de l'élément \(i_0\). Il en est de même pour un nouvel utilisateur.

  • Heuristiques pour générer des représentations vectorielles continues de nouveaux éléments. En l'absence d'interactions, le système peut obtenir une approximation de ses représentations vectorielles continues en faisant la moyenne des représentations vectorielles continues d'éléments appartenant à la même catégorie, provenant du même utilisateur ayant mis en ligne une vidéo (dans YouTube), etc.

Il est difficile d'inclure des caractéristiques latérales pour la requête/l'article

Les caractéristiques secondaires sont des éléments géographiques autres que la requête ou l'ID d'élément. Pour les recommandations de films, les caractéristiques secondaires peuvent inclure le pays ou l'âge. L'inclusion de caractéristiques secondaires améliore la qualité du modèle. Bien qu'il ne soit pas facile d'inclure des caractéristiques latérales dans la méthode WALS, Une généralisation de la méthode WALS rend cela possible.

Pour généraliser l'activité WALS, amplifiez la matrice d'entrée avec des caractéristiques en définissant une matrice de blocs \(\bar A\), où:

  • Le bloc (0, 0) correspond à la matrice de commentaires d'origine \(A\).
  • Le bloc (0, 1) est un encodage multihot des caractéristiques utilisateur.
  • Le bloc (1, 0) est un encodage multihot des caractéristiques de l'élément.