Reclassement

Lors de la dernière étape d'un système de recommandation, le système peut reclasser les candidats pour prendre en compte des critères ou des contraintes supplémentaires. Une approche de reclassement consiste à utiliser des filtres qui suppriment certains candidats.

Une autre approche consiste à transformer manuellement le score renvoyé par le rang.

Cette section aborde brièvement la fraîcheur, la diversité et l'équité. Ces facteurs font partie de ceux qui peuvent vous aider à améliorer votre système de recommandation. Certains de ces facteurs nécessitent souvent de modifier différentes étapes du processus. Chaque section propose des solutions que vous pouvez appliquer individuellement ou collectivement.

Actualisation

La plupart des systèmes de recommandation visent à intégrer les informations d'utilisation les plus récentes, telles que l'historique utilisateur actuel et les éléments les plus récents. Maintenir le modèle à jour permet d'obtenir de bonnes recommandations.

Solutions

  • Relancez l'entraînement aussi souvent que possible pour apprendre les dernières données d'entraînement. Nous vous recommandons de démarrer l'entraînement à chaud afin d'éviter au modèle de réapprendre à partir de zéro. Un démarrage à chaud peut réduire considérablement le temps d'entraînement. Par exemple, dans la factorisation matricielle, démarrez à chaud les représentations vectorielles continues des éléments qui étaient présents dans l'instance précédente du modèle.
  • Créer un utilisateur "moyenne" pour représenter les nouveaux utilisateurs dans les modèles de factorisation matricielle Vous n'avez pas besoin de la même représentation vectorielle continue pour chaque utilisateur. Vous pouvez créer des clusters d'utilisateurs en fonction des caractéristiques utilisateur.
  • Utilisez un DNN tel qu'un modèle softmax ou à deux tours. Étant donné que le modèle accepte les vecteurs de caractéristiques en entrée, il peut être exécuté sur une requête ou sur un élément qui n'a pas été vu pendant l'entraînement.
  • Ajoutez une ancienneté du document en tant que fonctionnalité. Par exemple, en tant que fonctionnalité, vous pouvez ajouter l'âge d'une vidéo ou l'heure de son dernier visionnage.

Image de quatre vidéos recommandées à propos de hiboux.

Diversité

Si le système recommande toujours des éléments "les plus proches" de la représentation vectorielle continue de la requête, les candidats ont tendance à être très similaires les uns aux autres. Ce manque de diversité peut nuire à l'expérience utilisateur. Par exemple, si YouTube se contente de recommander des vidéos très semblables à celles que l'utilisateur regarde actuellement, telles que des vidéos de hiboux (comme illustré sur l'illustration), il est probable que l'utilisateur perdra rapidement de l'intérêt.

Solutions

  • Entraîner plusieurs générateurs de candidats à l'aide de différentes sources
  • Entraînez plusieurs rangs à l'aide de différentes fonctions d'objectif.
  • Classez de nouveau les éléments en fonction du genre ou d'autres métadonnées afin de garantir leur diversité.

Équité

Votre modèle doit traiter tous les utilisateurs de manière équitable. Par conséquent, assurez-vous que votre modèle n'apprend pas les biais inconscients à partir des données d'entraînement.

Solutions

  • Tenez compte de différents points de vue sur la conception et le développement.
  • Entraînez des modèles de ML sur des ensembles de données complets. Ajoutez des données auxiliaires lorsque vos données sont trop creuses (par exemple, lorsque certaines catégories sont sous-représentées).
  • Suivez les métriques (par exemple, la justesse et l'erreur absolue) sur chaque catégorie démographique pour surveiller les biais.
  • Créez des modèles distincts pour les groupes défavorisés.