Description détaillée des algorithmes utilisés dans Adobe Target Recommendations, y compris les détails logiques et mathématiques de la formation de modèle et du processus de diffusion des modèles.
La formation de modèle est le processus de génération de recommandations par la fonction Adobe Target algorithmes d’apprentissage. La diffusion de modèles est la méthode Target diffuse des recommandations aux visiteurs de votre site (également appelé diffusion de contenu).
Target inclut les types d’algorithmes suivants dans Recommendations:
Algorithmes basés sur des éléments: Inclure les algorithmes qui suivent la logique "Les personnes qui ont consulté/acheté cet article ont également consulté/acheté ces articles". Ces algorithmes sont regroupés sous le terme parapluie de filtrage collaboratif article-article, ainsi que Éléments avec des attributs similaires algorithmes.
Algorithmes basés sur les utilisateurs: Inclure la variable Récemment consultés et Recommandé pour vous algorithmes.
Algorithmes basés sur la popularité: Incluez des algorithmes qui renvoient les articles les plus consultés ou les plus achetés sur le site web, ou les articles les plus consultés ou les plus achetés par catégorie ou attribut d’article.
Algorithmes basés sur le panier: Incluez des recommandations à plusieurs éléments avec la logique "les personnes qui ont consulté/acheté ces éléments, ont également consulté/acheté ces éléments".
Critères personnalisés: Inclure des recommandations basées sur des fichiers personnalisés chargés dans Target.
Pour plus d’informations sur chaque type d’algorithme et les algorithmes individuels, voir Baser la recommandation sur une clé de recommandation.
La plupart des algorithmes répertoriés ci-dessus reposent sur la présence d’une ou de plusieurs clés. Ces clés sont utilisées pour récupérer des éléments similaires au moment de la diffusion du contenu (lorsque des recommandations sont faites). Les clés spécifiées par le client peuvent inclure l’article actuel qu’un visiteur consulte, le dernier article consulté ou acheté, l’article le plus consulté, la catégorie actuelle ou la catégorie préférée pour ce visiteur. D’autres algorithmes, tels que les recommandations reposant sur le panier ou l’utilisateur, utilisent des clés implicites (qui ne peuvent pas être configurées par le client). Pour plus d’informations, voir Clés de recommandation, dans Baser la recommandation sur une clé de recommandation. Notez toutefois que ces clés ne sont pertinentes qu’au moment de la diffusion du modèle (diffusion de contenu). Ces clés n’affectent pas la logique du temps de formation "hors ligne" ou du modèle.
Les sections suivantes regroupent les algorithmes d’une manière légèrement différente des types décrits ci-dessus. Le regroupement suivant est basé sur la similarité de la logique de formation du modèle.
Les algorithmes incluent :
Les algorithmes de recommandation collaborative de filtrage des éléments reposent sur l’idée que vous devriez utiliser les modèles comportementaux de nombreux utilisateurs (d’où la collaboration) pour fournir des recommandations utiles pour un élément donné (par exemple, filtrer le catalogue des éléments possibles à recommander). Bien qu’il existe de nombreux algorithmes différents qui tombent sous le parapluie général de filtrage collaboratif, ces algorithmes utilisent universellement des sources de données comportementales comme entrées. Dans Target Recommendations, ces entrées sont les vues et achats uniques d’éléments par les utilisateurs.
Pour l’algorithme "Les personnes qui ont consulté/acheté cet article ont également consulté/acheté ces articles", l’objectif est de calculer une similarité s(A,B) entre toutes les paires d’articles. Pour un élément A donné, les principales recommandations sont ensuite classées selon leur similarité s(A,B).
Un exemple de cette similarité est la co-occurrence entre les éléments : comptage simple du nombre d’utilisateurs qui ont acheté les deux articles. Bien qu’intuitive, une telle mesure est naïve dans la mesure où elle est orientée vers la recommandation d’articles populaires. Par exemple, si, dans une épicerie, la plupart des consommateurs achètent du pain, celui-ci aura une forte co-occurrence avec tous les articles, mais ce n’est pas nécessairement une bonne recommandation. Target utilise plutôt une mesure de similarité plus sophistiquée appelée taux de probabilité du journal (LLR). Cette quantité est importante lorsque la probabilité que deux éléments, A et B, se produisent simultanément est très différente de la probabilité qu’ils ne se produisent pas conjointement. Pour être concret, envisagez un cas de la Les personnes ayant consulté ceci ont acheté cela algorithme. La similarité du LR est importante lorsque la probabilité que B ait été acheté est not indépendamment du fait que quelqu’un ait consulté A.
Par exemple, si
L’élément B ne doit pas être recommandé avec l’élément A. Des détails complets sur ce calcul de similarité du taux de probabilité du journal sont fournis. dans ce PDF.
Le flux logique de l’implémentation réelle de l’algorithme est illustré dans le diagramme schéma suivant :
Les détails de ces étapes sont les suivants :
Données d’entrée: Données comportementales, sous la forme d’affichages et d’achats de visiteurs collectés lorsque vous implémentation de Target ou de Adobe Analytics.
Formation de modèles:
Diffusion de modèles: Le contenu Recommendations est diffusé à partir de Target's réseau mondial "Edge". Lorsque des requêtes de mbox sont envoyées à Target et il est déterminé que le contenu des recommandations doit être diffusé sur la page, la demande pour la item key pour l’algorithme recommendations est analysé à partir de la requête ou consulté à partir du profil utilisateur, puis utilisé pour récupérer les recommandations calculées lors des étapes précédentes. D’autres filtres dynamiques sont actuellement appliqués, avant que les design est rendue.
Algorithme inclus :
Dans ce type d’algorithme, deux éléments sont considérés comme liés si leurs noms et descriptions textuelles sont sémantiquement similaires. Contrairement à la plupart des algorithmes de recommandations dans lesquels des sources de données comportementales doivent être utilisées, les algorithmes de similarité de contenu utilisent des métadonnées provenant de catalogues de produits pour dériver la similarité entre les éléments. Target est donc en mesure de générer des recommandations dans les scénarios dits de "démarrage à froid", où aucune donnée comportementale n’a été collectée (par exemple, au début d’une Target activité).
Bien que les aspects de diffusion de contenu et de diffusion de contenu du modèle TargetLes algorithmes de similarité de contenu de sont identiques aux autres algorithmes basés sur un élément, les étapes de formation du modèle sont radicalement différentes et impliquent une série d’étapes de traitement et de prétraitement du langage naturel, comme illustré dans le diagramme ci-dessous. Le coeur du calcul de la similarité est l’utilisation de la similarité cosinale des vecteurs tf-idf modifiés qui représentent chaque élément du catalogue.
Les détails de ces étapes sont les suivants :
Données d’entrée: Comme décrit précédemment, cet algorithme est basé uniquement sur des données de catalogue (ingérées par Target via un Flux de catalogue, API des entités ou à partir des mises à jour sur la page.
Formation de modèles:
Extraction d’attributs: Après l’application de filtres statiques réguliers, de règles de catalogue et d’exclusions globales, cet algorithme extrait les champs textuels pertinents du schéma d’entité. Target utilise automatiquement les champs de nom, de message et de catégorie des attributs d’entité et tente d’extraire les champs de chaîne d’un champ personnalisé. attributs d’entité. Ce processus s’effectue en s’assurant que la majorité des valeurs de ce champ ne peut pas être analysée en tant que nombre, date ou valeur booléenne.
Suppression de mots-clés et de blocage: Pour une correspondance plus précise des similarités de texte, il est prudent de supprimer les mots "stop" très courants qui ne modifient pas significativement la signification d’un élément (par exemple, "was", "is", "and", etc.). De même, le terme "chaîne" fait référence au processus de réduction des mots avec des suffixes différents sur leur mot racine, qui a une signification identique (par exemple, "connexion", "connexion" et "connexion"), et qui ont tous le même mot racine : "connect"). Target utilise le moteur de recherche Snowball. Target effectue d’abord une détection automatique des langues et peut arrêter la suppression de mots pour 50 langues au maximum et la recherche de termes pour 18 langues.
Création n-gramme: Après les étapes précédentes, chaque mot est traité comme un jeton. Le processus de combinaison de séquences contiguës de jetons en un seul jeton est appelé création n-gram. TargetLes algorithmes de peuvent prendre en compte jusqu’à 2 grammes.
calcul tf-idf: L’étape suivante implique la création de vecteurs tf-idf pour refléter l’importance relative des jetons dans la description de l’élément. Pour chaque jeton/terme t d’un élément i, dans un catalogue D avec |D| éléments, la fréquence du terme TF(t, i) est calculée en premier (le nombre de fois où le terme apparaît dans l’élément i), ainsi que la fréquence du document DF(t, D). En substance, le nombre d’éléments où le jeton t existe. La mesure tf-idf est alors
Target utilise Apache Spark tf-idf implémentation des fonctionnalités, qui, sous le capot, hache chaque jeton sur un espace de 218 jetons. Au cours de cette étape, l’amplification et l’enterrement des attributs spécifiés par le client sont également appliqués en ajustant les fréquences de terme dans chaque vecteur en fonction des paramètres spécifiés dans la variable critères.
Calcul de la similarité d’élément: Le calcul final de la similarité d’élément est effectué à l’aide d’une similarité cosinale approximative. Pour deux éléments : A et B, avec les vecteurs tA et tB, la similarité cosinale est définie comme suit :
Pour éviter une complexité significative des similarités de calcul entre tous les éléments N x N, la variable tf-idf vectoriel est tronqué pour ne contenir que ses 500 plus grandes entrées, puis calculer les similarités cosinales entre les éléments à l’aide de cette représentation vectorielle tronquée. Cette approche s’avère plus robuste pour les calculs de similarité vectorielle épars, par rapport à d’autres techniques approximatives du voisin le plus proche (ANN), telles que le hachage sensible à la localisation.
Diffusion de modèles: Ce processus est identique aux techniques de filtrage collaboratif des éléments décrites dans la section précédente.
Les algorithmes incluent :
Les ajouts les plus récents à la variable Target suite d’algorithmes de recommandations sont Recommandé pour vous et une série d’algorithmes de recommandations basés sur le panier. Les deux types d’algorithmes utilisent des techniques de filtrage collaboratif pour former des recommandations individuelles basées sur des éléments. Ensuite, au moment du serveur, plusieurs éléments dans l’historique de navigation de l’utilisateur (pour Recommandé pour vous) ou le panier actuel de l’utilisateur (pour les recommandations basées sur le panier) sont utilisés pour récupérer ces recommandations basées sur des éléments, qui sont ensuite fusionnées pour former la liste finale des recommandations. Notez qu’il existe de nombreuses versions des algorithmes de recommandation personnalisés. Le choix d’un algorithme multi-clé signifie que les recommandations sont immédiatement disponibles lorsqu’un visiteur a un historique de navigation et que les recommandations peuvent être mises à jour pour répondre au comportement du visiteur le plus récent.
Ces algorithmes reposent sur les techniques de filtrage collaboratif de base décrites dans la section Recommandations basées sur les éléments , mais intègrent également le réglage d’hyperparamètres pour déterminer la mesure de similarité optimale entre les éléments. L’algorithme effectue une division chronologique des données comportementales pour chaque utilisateur et forme les modèles de recommandation sur les données antérieures tout en tentant de prévoir les éléments qu’un utilisateur consulte ou achète ultérieurement. La mesure de similarité qui produit l’optimisation Précision moyenne est ensuite sélectionné.
La logique des étapes de formation et de notation des modèles est présentée dans le diagramme suivant :
Les détails de ces étapes sont les suivants :
Données d’entrée: Ceci est identique aux méthodes de filtrage collaboratif (CF) des éléments. Nous vous recommandons les deux Les algorithmes basés sur le panier utilisent des données comportementales sous la forme d’affichages et d’achats d’utilisateurs collectés lorsque vous implémentation de Target ou de Adobe Analytics.
Formation de modèles:
L’étape d’entraînement calcule plusieurs types de similarités vectorielles : similarité LLR (présenté ici), une similarité cosinale (définie précédemment) et une similarité L2 normalisée, définie comme suit :
Diffusion de modèles: Contrairement aux algorithmes précédents dans lesquels la diffusion de recommandations impliquait la spécification d’une clé unique pour la récupération, suivie de l’application de règles commerciales, la variable Recommandé pour vous Les algorithmes basés sur le panier utilisent un processus d’exécution plus complexe.
Ces processus sont illustrés dans l’image suivante, où un visiteur a consulté l’article A et l’article B. Les recommandations individuelles sont récupérées avec les scores de similarité hors ligne affichés sous chaque étiquette d’article. Après la récupération, les recommandations sont fusionnées avec les scores de similarité pondérés additionnés. Enfin, dans un scénario où le client a spécifié que les articles consultés et achetés précédemment doivent être filtrés, l’étape de filtrage supprime les articles A et B de la liste de recommandations.
Les algorithmes incluent :
Target fournit des algorithmes reposant sur la popularité pour les articles les plus consultés, ainsi que pour les articles les plus vendus sur un site web, ou ventilés selon un attribut d’article ou une catégorie. Les algorithmes basés sur la popularité classent les éléments en fonction du nombre de sessions au cours desquelles cet élément a été affiché ou acheté au cours d’une période donnée.
Tous ces algorithmes combinent des données comportementales agrégées où le nombre total de sessions au cours desquelles les articles ont été consultés et achetés est enregistré aux résolutions horaire et quotidienne. Les algorithmes individuels recherchent ensuite les articles les plus consultés ou les plus achetés pour l’intervalle de recherche en amont configuré par le client.
Les nuances des algorithmes individuels sont les suivantes :
L’algorithme de recommandations "récemment consultées" permet la personnalisation des recommandations en session. Cet algorithme ne nécessite aucune "formation de modèle" hors ligne. Au lieu de cela, Target utilise l’unique Profil du visiteur pour conserver une liste en cours d’exécution des éléments qui ont été affichés au cours d’une session donnée et qui peuvent apparaître dans les activités de recommandations. Cela permet des mises à jour en temps réel des recommandations et de la personnalisation de la page suivante.
Les critères personnalisés permettent aux clients de charger leurs propres recommandations dans Target, offrant une flexibilité importante et permettant d’"apporter votre propre modèle". Les critères personnalisés remplacent la partie "Formation hors ligne" de Basé sur des éléments recommandations, mais se comportent de la même manière que les algorithmes de recommandation basés sur un élément lors de la phase de diffusion du contenu en ligne, en ce sens qu’une seule clé est utilisée pour la récupération des recommandations et que les règles/filtres métier sont ensuite appliqués.