Système de recommandation
Découvrez comment les systèmes de recommandation utilisent l'IA pour personnaliser l'expérience utilisateur. Explorez le filtrage collaboratif et la similarité visuelle à l'aide Ultralytics .
Un système de recommandation est un algorithme de filtrage d'informations conçu pour prédire les préférences d'un utilisateur pour des éléments spécifiques
. Ces systèmes intelligents constituent la base des applications modernes d'
intelligence artificielle (IA)
et aident les utilisateurs à naviguer dans la quantité écrasante de contenus disponibles en ligne en leur proposant des suggestions personnalisées
. En analysant les modèles dans le Big Data, tels que l'
historique des achats, les habitudes de consultation et les évaluations des utilisateurs, les moteurs de recommandation améliorent l'engagement des utilisateurs et rationalisent les
processus décisionnels. Ils sont largement utilisés dans les environnements où la variété des choix dépasse la capacité d'un utilisateur à
les évaluer tous manuellement.
Principaux mécanismes de recommandation
Les moteurs de recommandation utilisent généralement des stratégies
stratégies d'apprentissage automatique pour générer des
suggestions pertinentes. Les trois approches principales sont les suivantes :
-
Filtrage collaboratif:
Cette méthode repose sur l'hypothèse que les utilisateurs qui se sont mis d'accord par le passé se mettront d'accord à l'avenir. Elle identifie
Elle identifie les similitudes entre les utilisateurs (en fonction de l'utilisateur) ou les éléments (en fonction de l'élément) à l'aide des données d'interaction. Par exemple, si l'utilisateur A et
l'utilisateur B ont tous deux aimé le "film X", le système suppose que l'utilisateur A pourrait également aimer le "film Y" si l'utilisateur B l'a apprécié.
l'a apprécié.
-
Filtrage basé sur le contenu: Cette approche
Cette approche recommande des articles similaires à ceux que l'utilisateur a déjà aimés, sur la base des attributs de l'article. Elle nécessite l'analyse des
l'analyse des caractéristiques des éléments eux-mêmes, souvent à l'aide
le traitement du langage naturel (NLP)
pour les descriptions textuelles ou
la vision artificielle (CV) pour analyser les images
produits.
-
Modèles hybrides : En combinant le filtrage collaboratif et le filtrage basé sur le contenu,
les systèmes de recommandation hybrides visent à
les limites des méthodes individuelles, telles que l'incapacité de recommander de nouveaux éléments qui n'ont pas d'historique d'interaction avec l'utilisateur.
d'interaction avec l'utilisateur.
Applications concrètes
L'utilité pratique des systèmes de recommandation s'étend à divers secteurs d'activité, favorisant à la fois
l'expérience client
et le chiffre d'affaires des entreprises.
-
Commerce électronique et vente au détail : les plateformes utilisent des algorithmes sophistiqués pour suggérer des produits aux acheteurs.
Ces systèmes alimentent l'IA dans le commerce de détail en affichant de manière dynamique
des listes « Les clients qui ont acheté cet article ont également acheté... », ce qui augmente considérablement les opportunités de ventes croisées
.
-
Diffusion multimédia : les services dépendent fortement de la personnalisation.
Les équipes de recherche de Netflix chargées des recommandations
développent des algorithmes qui analysent l'historique de visionnage afin de remplir la page d'accueil de l'utilisateur avec des films et des séries pertinents.
De même, les plateformes musicales génèrent des listes de lecture en analysant les modèles acoustiques et les comportements d'écoute des utilisateurs.
Recommandations visuelles avec Embeddings
Une technique clé des systèmes de recommandation modernes, en particulier pour les contenus visuels, consiste à utiliser des
d'encastrements. Un encastrement est une représentation numérique
d'un élément (comme une image) dans un espace à haute dimension. Les éléments visuellement similaires auront des embeddings qui sont
proches les uns des autres.
Python suivant montre comment extraire des intégrations d'images à l'aide d'un modèle de classification Ultralytics pré-entraîné
et calculer leur
similarité à l'aide de
PyTorch.
import torch.nn.functional as F
from ultralytics import YOLO
# Load a YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Generate embeddings for two images (returns a list of Results objects)
results = model.predict(["bus.jpg", "dog.jpg"], embed=[1000])
# Calculate cosine similarity between the two embeddings
# Higher score indicates greater visual similarity
similarity = F.cosine_similarity(results[0].probs.data, results[1].probs.data, dim=0)
print(f"Visual Similarity Score: {similarity.item():.4f}")
Systèmes de recommandation et concepts connexes
Il est important de distinguer les systèmes de recommandation des technologies sous-jacentes qu'ils utilisent souvent :
-
Recherche vectorielle: Il s'agit d'une méthode de recherche
méthode d'extraction utilisée pour trouver les éléments d'une
base de données vectorielles qui sont mathématiquement les plus proches
d'une requête. Alors qu'un système de recommandation utilise la recherche vectorielle pour trouver des produits similaires, le système de recommandation lui-même englobe la logique plus large du profilage et du classement des utilisateurs.
englobe la logique plus large du profilage et du classement des utilisateurs. Vous pouvez approfondir cette question dans notre
guide sur la recherche de similarités.
-
Recherche sémantique: Contrairement aux recommandations
recommandations de base qui peuvent s'appuyer sur un chevauchement comportemental, la recherche sémantique se concentre sur la compréhension de la signification d'une requête.
le sens d' une requête. Un moteur de recommandation peut utiliser la recherche sémantique pour interpréter l'intention d'un utilisateur lorsqu'il parcourt des catégories spécifiques.
lorsqu'il parcourt des catégories spécifiques.
Défis et considérations
Le déploiement de systèmes de recommandation efficaces se heurte à des obstacles importants :
Pour créer et former vos propres modèles pour les tâches de recommandation, la
Ultralytics offre un environnement complet pour la gestion des ensembles de données
et la formation des modèles.