Cet article partagera des réflexions et des pratiques sur la modélisation multi-scénarios adaptative et non supervisée dans les scénarios de recommandation personnalisés de Taobao. Ce travail a été publié dans le CIKM 2022 (titre de l’article : Scenario-Adaptive and Self-Supervised Model for Multi-Scenario Personalized Recommendation). Cet article présentera comment la modélisation multi-scénarios décrit la relation de migration entre les scénarios de domaine complet et les scénarios uniques de manière fine pour réaliser l'adaptation de domaine, et comment introduire des données non supervisées dans la modélisation multi-scénarios. de modélisation multi-scénarios dans la pratique de recommandation et de rappel.
Présentez d'abord le contexte commercial, la motivation de la modélisation et la sélection de solutions de la modélisation multi-scénarios. Cet article se concentrera sur le problème de modélisation multi-scénarios des systèmes de recommandation, qui est également un problème courant dans divers systèmes de recommandation et doit être résolu de toute urgence. Concrètement, il sera introduit autour de 5 questions.
peut être expliqué du point de vue de l'entreprise et du point de vue du modèle. D'un point de vue commercial, « scénario » peut être simplement compris comme différents portails de recommandation ou pages d'hébergement de recommandations sur la plateforme de recommandation. Par exemple, dans le domaine de la publicité, la même publicité peut être placée sur différents terminaux multimédias, et en même temps, elle peut correspondre à différentes formes de diffusion, telles que des publicités de flux d'informations ou des publicités sur écran ouvert. Dans le domaine du commerce électronique, il y aura également une page de recommandations très riche. En prenant Taobao comme exemple, il y aura une interface de recommandation de produits préférés sur la page d'accueil, des scénarios de recommandation dans le panier et des recommandations associées. la page de détails du produit. Dans le domaine de la recommandation de contenu, comme notre activité actuelle - les achats sur Taobao, la page de recommandation comprend une scène d'affichage à un saut sur deux colonnes, ainsi qu'un flux immersif sans fin de recommandations qui glisse de haut en bas après avoir cliqué pour entrer. le deuxième saut. Dans ces exemples, chaque page hébergée peut être utilisée comme scène, et la même plateforme de recommandation aura également plusieurs scènes de recommandation, montrant les caractéristiques de plusieurs scènes.
Du point de vue de la modélisation de modèles, les problèmes multi-scénarios peuvent être simplement définis comme plusieurs ensembles de données qui partagent le même espace de fonctionnalités et le même espace d'étiquettes, mais ont des distributions de données différentes. Les données enregistrées dans chaque scénario de recommandation peuvent former un ensemble de données correspondant. Bien que chaque ensemble de données provienne de sources différentes, leur système de fonctionnalités et leur espace d'étiquettes sont cohérents.
Le premier point est le chevauchement du trafic du point de vue de l'utilisateur, pour un même utilisateur, il peut accéder à différents produits dans un produit recommandé ou un système de recommandation basé sur des scénarios. , et certains comportements interactifs tels que la navigation et le clic seront laissés dans plusieurs scénarios.
Le deuxième point est que l'offre se chevauche. Qu'il s'agisse de publicité, de produits ou de contenu, elle peut être placée dans différentes scènes et affichée dans différentes scènes.
Le troisième point est la différence de distribution entre les scénarios. D'après le modèle comportemental, le même utilisateur visite plusieurs scénarios différents, et le comportement de l'utilisateur dans le scénario peut être différent, du point de vue de l'offre, pour la même publicité, le même produit ; ou le contenu, les performances d'exposition et les performances d'interaction affichées par celui-ci dans différentes scènes sont également différentes. Il existe donc des différences entre les différents scénarios en termes de distribution des données. Par conséquent, le problème de recommandation multi-scénarios auquel nous sommes confrontés incarne désormais la caractérisation des points communs et des caractéristiques des scénarios : les utilisateurs peuvent avoir des intérêts durables, mais leurs expressions dans différents scénarios peuvent être différentes.
Le quatrième point est que les espaces de fonctionnalités et les cibles entre les scènes sont cohérents. Différentes scènes reflètent davantage de différences dans la distribution des données, mais le système de fonctionnalités est en fait relativement cohérent. De plus, l'espace des étiquettes entre les scènes est le même, ce qui signifie que les tâches de modélisation entre plusieurs scènes sont en réalité les mêmes. Par exemple, la modélisation de tâches de clic sur des scènes de produits, ou la modélisation de tâches d'achèvement ou de longue durée sur des scènes de contenu.
Sur la base du contexte commercial spécifique, nous espérons nous concentrer sur la réalisation des deux objectifs suivants grâce à la modélisation de problèmes multi-scénarios.
Le premier est l'objectif de performance, axé sur l'optimisation du problème de la rareté des données. Les scénarios de recommandation unique sont généralement confrontés au problème de la rareté des données sur le comportement des utilisateurs, et ce phénomène est particulièrement évident dans certains petits scénarios ou dans de nouveaux scénarios. L'un des objectifs importants du problème multi-scénarios est d'atténuer le problème de la rareté des données et d'améliorer les indicateurs commerciaux de tous les scénarios grâce au partage d'informations entre plusieurs scénarios.
Le deuxième objectif concerne les coûts d'itération et d'exploitation et de maintenance. La méthode d'optimisation traditionnelle consiste à allouer du personnel dédié pour maintenir et optimiser des modèles indépendants pour chaque scénario. Lorsque de nouveaux scénarios sont connectés, il peut être nécessaire de répéter l'intégralité. processus d’accès et processus de formation modèle. Cela signifie que toutes les allocations de personnel, les travaux de déploiement de modèles et les coûts de maintenance sont positivement liés au nombre de scénarios, ce qui entraînera des coûts de maintenance globaux et des coûts d'itération relativement élevés.
Compte tenu des coûts réels, nous espérons créer un ensemble unifié de cadres d'algorithmes capables de servir différents scénarios en même temps et de prendre en charge un accès rapide à de nouveaux scénarios. C'est un autre objectif que nous souhaitons atteindre grâce à la modélisation multi-scénarios.
Il convient également de souligner que les problèmes multi-scénarios sont différents des problèmes multi-objectifs et inter-domaines actuellement connus. L'objectif des problèmes multi-scénarios est de partager le même système de fonctionnalités, d'avoir plusieurs sources de données différentes et d'avoir le même objectif. Multi-objectif signifie avoir plusieurs objectifs d’optimisation différents pour la même source de données. Les problèmes inter-domaines sont généralement divisés en un domaine source et un domaine cible. On suppose généralement que le volume de données et l'effet du domaine source sont supérieurs, puis le domaine source est utilisé pour aider à améliorer l'effet du domaine cible. . Dans les problèmes multi-scènes, il n'y a aucune relation entre les avantages et les inconvénients de chaque scène. L'objectif de la modélisation est d'améliorer les effets de toutes les scènes.
Au début de l'application pratique, nous avons fait une classification simple des solutions existantes dans l'industrie pour modéliser ce problème multi-scénarios. grossièrement divisé en quatre types suivants.
La première est la plus intuitive, et c'est aussi une solution actuellement utilisée dans de nombreuses pratiques commerciales, c'est-à-dire que pour chaque scénario individuel, utiliser les données respectives de ces scénarios pour former des modèles distincts respectivement. Ensuite, lors du déploiement et de l'estimation en ligne, chaque scénario aura un modèle distinct. De cette manière, les structures modèles existantes dans l'industrie peuvent être sélectionnées pour être modélisées dans différents scénarios.
Bien sûr, cette solution présente également quelques inconvénients, se concentrant principalement sur les points suivants. Le premier point est que cette méthode ne peut pas résoudre correctement le problème de la rareté des données d'une seule scène. En effet, d'autres scènes du même type ne peuvent pas être utilisées. . Les informations sur les fonctionnalités sont complétées, en particulier dans certains scénarios où la quantité de données est relativement faible ou les données comportementales sont rares, le problème de la rareté des données est plus important. Le deuxième point mentionné précédemment est que cette méthode de modélisation à scénario unique et à modèle unique consomme une main d'œuvre et des ressources relativement élevées en termes de coûts de maintenance et d'itération du modèle. Le troisième point est que lorsque de nouveaux scénarios seront introduits dans l’entreprise, se posera également le problème de la hausse des coûts.
Étant donné que la méthode de scène unique et de modèle unique pose le problème des échantillons clairsemés, la deuxième solution consiste à mélanger les exemples de données de toutes les scènes, à entraîner un modèle avec les données mixtes, puis à déployer le même modèle sur toutes les scènes. Cette méthode peut résoudre deux problèmes dans le premier type de schéma, car ce schéma utilise des échantillons de toutes les scènes et toutes les scènes partagent le même modèle. Cependant, son inconvénient est que cet entraînement mixte relativement grossier d'échantillons de données détruit la distribution des données entre chaque scène et introduit du bruit. De plus, l'effet global du modèle peut être dominé par les données de certaines grandes scènes, affectant ainsi les effets de certaines petites scènes.
Le troisième type de solution consiste à utiliser une méthode de formation en deux étapes, c'est-à-dire qu'il faut d'abord effectuer une formation mixte sur des échantillons de tous les scénarios pour former un modèle de base, puis utiliser des échantillons indépendants de chaque scène pour effectuer une formation de scène sur l'original. modèle de base. Mise au point interne. En termes de déploiement et d'estimation du modèle, chaque scénario est également mis en ligne et estimé à l'aide du modèle affiné avec ses propres données de scène. L’inconvénient de cette approche est que chaque scénario nécessite le déploiement de son propre modèle séparément. De plus, cette méthode directe de pré-entraînement et de réglage fin ne modélise pas très bien la relation entre les scènes.
La dernière catégorie est actuellement la méthode dominante dans l'industrie pour la modélisation multi-scénarios, et en s'appuyant sur l'architecture d'apprentissage multitâche, les données de chaque scénario sont prises en compte dans la structure du modèle pour effectuer une modélisation conjointe, et et à travers le. structure du modèle Le design est utilisé pour décrire les expressions communes et les différences entre les scènes. Au cours des deux dernières années, de nombreuses tentatives et mises en œuvre ont eu lieu dans l'industrie. Par exemple, SAR-Net est formé d'une manière similaire à MMOE, et STAR construit ce réseau partagé à l'échelle mondiale ainsi qu'un réseau unique à chaque scénario, grâce à une cartographie matricielle. entre les paramètres du modèle, des méthodes pour réaliser la caractérisation de cette différence de scène, et d'autres travaux pour décrire cette différence de scène à travers des réseaux de paramètres dynamiques.
Considérant les lacunes des trois premiers types de méthodes, nous avons choisi de réaliser des travaux ultérieurs basés sur des formations conjointes.
Dans notre processus de mise en œuvre métier réel, pour ce type de modélisation multi-scénarios via un modèle unifié Dans la modélisation conjointe , nous sommes également confrontés à des défis plus spécifiques, qui se reflètent principalement dans les aspects suivants.
Défi 1 : Nous utilisons la modélisation conjointe dans l'espoir d'utiliser pleinement les informations de toutes les scènes pour résoudre le problème de la rareté des données d'une seule scène. L'essence est de migrer les informations efficaces d'une seule scène. autres scènes Dans une scène spécifiée, bien que certaines des méthodes mentionnées précédemment utilisent des opérations matricielles de paramètres ou des réseaux de paramètres dynamiques pour caractériser les points communs et les différences de la scène, ces méthodes de transformation sont relativement implicites et ne peuvent pas expliquer de manière interprétable si d'autres scènes sont quantifiées. vers la scène spécifiée. Le scénario migre les informations et la quantité d'informations migrées. Par conséquent, comment parvenir à une migration raffinée et efficace des informations de scène est le premier défi auquel nous sommes confrontés. Pour le dire simplement, comment modéliser s’il faut migrer les informations et quelle quantité d’informations migrer.
Défi 2 : Lors de la formation du modèle, nous construisons principalement des échantillons positifs basés sur les comportements d'interaction des utilisateurs, tels que les clics sur les produits ou les signaux de retour positifs tels que l'achèvement de la vidéo, c'est-à-dire dans des échantillons étiquetés. La formation est effectué sur les données, ce qui entraînera de sérieux problèmes de données éparses pour certains scénarios avec peu de comportements. Si nous pouvons utiliser certaines tâches non supervisées pour étendre les données d'entraînement de l'espace échantillon étiqueté à l'espace échantillon non étiqueté, cela contribuera à atténuer le problème de la rareté des données.
Défi 3 : Nous savons tous que l'ensemble du lien de recommandation est divisé en plusieurs étapes principales telles que le rappel et le tri. Dans les premières recherches, nous avons constaté que la modélisation conjointe de problèmes multi-scénarios était principalement concentrée dans la phase de classement, y compris certains des modèles répertoriés ci-dessus, qui sont essentiellement des modèles de classement. En tant que première étape de l'ensemble du lien de recommandation, le rappel fait face à des tailles de candidats, des méthodes de récupération et un tri très différents. Par conséquent, comment mettre en œuvre une modélisation conjointe multi-scénarios dans la phase de rappel est également un défi auquel nous sommes confrontés.
Présentons notre solution de modèle lors de la mise en œuvre d'une activité réelle. Ce modèle est appelé SASS. Cette solution se concentre principalement sur trois mots-clés principaux : le premier est le transfert adaptatif de scène (Scenario-Adaptive), le second est non supervisé (Self-Supervised) et le troisième est l'exploration de l'implémentation pour les tâches de rappel.
Le cadre global du modèle contient deux étapes, l'une est la tâche de pré-formation et l'autre est la tâche de réglage fin. La première étape consiste à construire une tâche de pré-entraînement non supervisée sur un ensemble d'échantillons non étiquetés et à modéliser la relation entre les scènes grâce à un apprentissage contrastif. De plus, étant donné que l'ensemble du modèle est implémenté lors de la phase de rappel, le côté utilisateur et le côté article doivent être modélisés indépendamment, nous avons donc une conception structurelle symétrique du côté utilisateur et du côté article.
La deuxième étape est une tâche de réglage fin, qui réutilisera la structure du modèle basée sur la première étape, y compris le chargement des paramètres d'intégration et de structure de réseau pré-entraînés dans la première étape. De plus, la deuxième étape consiste à entraîner une tâche de rappel sur l'espace échantillon étiqueté, puis à générer les vecteurs de représentation côté utilisateur et côté élément. Nous présenterons ensuite ces deux étapes en détail.
Tout d'abord, dans la première phase de la tâche de pré-entraînement, nous construisons une tâche non supervisée d'apprentissage contrastif entre les scènes. Comme le montre le coin supérieur droit de la figure, tout le monde devrait être familier avec le paradigme de formation classique de l'apprentissage contrastif. Le même objet x obtient deux ensembles de fonctionnalités différents grâce à deux méthodes d'amélioration des données différentes, puis utilise le réseau d'extraction de fonctionnalités et la cartographie. Le réseau obtient finalement deux expressions vectorielles différentes du même objet, puis la distance de représentation entre les deux vecteurs peut être raccourcie en comparant la perte métrique apprise pour réaliser des tâches de pré-entraînement non supervisées.
Inspirés par l'idée de l'apprentissage contrastif, nous combinons l'expression d'alignement entre scènes dans la modélisation multi-scènes avec la tâche de pré-entraînement de l'apprentissage contrastif. Comme mentionné précédemment, le même utilisateur peut accéder à plusieurs scènes différentes et avoir des comportements interactifs différents dans différentes scènes, laissant certaines informations statistiques liées à la scène. Par conséquent, nous pouvons considérer cette différence de comportement des utilisateurs dans différents scénarios comme une manière naturelle d'améliorer les données. Les intérêts d'un même utilisateur sont continus, mais il peut y avoir certaines différences dans son expression entre les différents scénarios. Ensuite, nous construisons sur cette base une tâche non supervisée d’apprentissage contrastif.
En regardant le modèle spécifique, comme indiqué sur le côté gauche de la figure, nous allons construire un système de fonctionnalités unifié pour différents scénarios, mais les valeurs spécifiques des fonctionnalités correspondent aux scénarios. Par exemple, nous divisons celles de l'utilisateur. séquence de comportement en scénarios ouverts, les utilisateurs ont des caractéristiques statistiques correspondantes telles que les intérêts et les préférences dans leurs scénarios respectifs. Grâce à cette méthode de fractionnement, le même utilisateur dispose de plusieurs ensembles de valeurs de fonctionnalités différents liés au scénario. Par exemple, sur la figure, les caractéristiques du même utilisateur dans la scène a et la scène b, puis grâce à un réseau de représentation unifié (ce réseau de représentation sera introduit plus tard), nous pouvons obtenir les vecteurs de représentation du même utilisateur dans différentes scènes. , et enfin apprendre la perte par comparaison pour raccourcir la distance entre les deux.
Ce dont je viens de parler, c'est la méthode de formation du côté utilisateur Dans la tâche de rappel, le côté utilisateur et le côté article sont généralement modélisés indépendamment. Par conséquent, le côté élément utilise également des structures et des tâches symétriques pour la formation, et le côté utilisateur et le côté élément partagent la même couche d'intégration. Plus précisément, pour un même élément, nous divisons les valeurs des caractéristiques côté élément en scènes. Après avoir traversé le réseau de représentation côté élément, nous obtenons l'expression vectorielle de chaque scène, puis utilisons le même apprentissage contrastif. perte pour la formation.
Lors de la construction de l'échantillon, nous avons un traitement spécial selon lequel un utilisateur peut visiter plus de 2 scènes. Par conséquent, lors de la construction de la tâche de formation d'apprentissage comparatif, nous combinerons les scènes visitées par l'utilisateur par paires pour construire plusieurs échantillons de formation. Du côté des articles également, plusieurs échantillons sont construits à travers ces deux combinaisons.
Dans la tâche d'apprentissage contrastif spécifique, nous avons suivi le formulaire de perte d'InfoNCE pour la formation.
Nous réalisons le pré-entraînement des données non étiquetées entre plusieurs scènes grâce à la modélisation de scènes et à des tâches d'apprentissage comparatif entre les scènes. Ensuite, nous introduisons les détails de conception du réseau de représentation le plus important dans l'ensemble du cadre du modèle.
Le réseau de représentation de scène dans le modèle est un réseau de migration multicouche adaptatif à la scène. Tout d’abord, à partir de la structure globale du modèle, les paramètres sont partagés dans la couche d’intégration du modèle. Ce réseau de représentation peut être divisé en plusieurs composants dans leur ensemble. Le premier est le réseau partagé par l'ensemble de la scène, qui est la partie bleue sur le côté gauche du modèle dans l'image. Le réseau global partagé ici est celui des échantillons. toutes les scènes y passeront. La formation peut ici être considérée comme une structure de représentation qui est formée sur un mélange de tous les échantillons de scènes du côté utilisateur ou du côté élément.
La deuxième partie est la structure de réseau unique de chaque scène, qui est la partie grise correspondant à chaque scène de l'image. Les échantillons correspondant à chaque scène sont entraînés via le réseau correspondant Puisque les paramètres de la couche réseau de chaque scène sont séparés, cet entraînement et cette représentation peuvent bien décrire les différences de distribution entre chaque scène. De plus, dans le coin inférieur gauche de la figure, nous introduisons également un réseau de polarisation auxiliaire. L'entrée de ce réseau de biais inclut l'identifiant de la scène et certaines fonctionnalités spécifiques à la scène, ainsi que certaines fonctionnalités contextuelles. Cela permet de caractériser davantage les différences et les biais d'information entre les contextes des scènes sur la base d'un système partagé.
Dans le processus de formation spécifique, une fois que chaque échantillon passe à travers la couche d'intégration de fonctionnalités unifiée et est épissé, il entrera dans le réseau de partage de scène complet et le réseau unique à la scène correspondant à cet échantillon, et effectuera une propagation vers l'avant. et formation au réseau de rétropropagation.
Dans le même temps, dans l'ensemble de la structure du réseau, la sortie de chaque couche du réseau de partage de scène complète passera par une unité de contrôle adaptative à la scène pour migrer les informations de fusion de la scène complète vers une seule. scène pour réaliser des informations sur la scène Migration raffinée entre. Pour plus de détails, veuillez vous référer à la structure dans le coin supérieur droit du modèle dans la figure. La structure de migration comprend principalement une porte adaptative et une porte de mise à jour. La valeur de sortie de la porte adaptative est utilisée pour contrôler la quantité d'informations de la scène complète qui peut être migrée vers une seule scène, tandis que la sortie de la porte de mise à jour sert à contrôler les informations migrées du réseau de scène complet et les informations d'origine. de la scène unique. La valeur de poids de la fusion pondérée. Les entrées de ces deux réseaux de portes comprennent les informations du réseau de scène complet, les informations du réseau de scène unique et les informations de polarisation de la scène elle-même. Grâce à cette structure de migration raffinée et adaptative, la direction de migration et la quantité d'informations de migration de la scène sont modélisées et caractérisées. Nous empilons la structure de migration en plusieurs couches et enfin chaque échantillon peut obtenir une représentation vectorielle de sa scène correspondante. Enfin, la sortie respective de chaque scène est fusionnée avec la sortie de biais sur la scène correspondante pour obtenir son expression vectorielle finale sur la scène correspondante.
La deuxième phase consiste à peaufiner la tâche. Puisque nous souhaitons implémenter le modèle dans la phase de rappel du lien recommandé, les objectifs de la tâche de réglage fin et de la tâche de rappel sont alignés. En termes de sélection d'échantillons, nous utilisons les éléments sur lesquels l'utilisateur a cliqué comme échantillons positifs, construisons des échantillons négatifs par échantillonnage aléatoire, puis calculons la perte par paire en construisant des triplets pour la formation.
De plus, dans la phase de réglage fin, nous réutiliserons la structure et les paramètres du modèle, c'est-à-dire que nous réutiliserons la même structure de réseau de représentation dans la phase de réglage fin que dans la phase de pré-formation , et chargez la pré-formation. La couche d'intégration et les paramètres de réseau de l'étape sont équivalents à la conservation des informations de formation non supervisée entre les scènes de la première étape.
Sur les tâches de correspondance des métriques côté utilisateur et côté article dans la phase de réglage fin, nous avons également introduit une nouvelle tâche auxiliaire pour aider à la formation. Comme mentionné précédemment, chaque échantillon peut obtenir deux expressions vectorielles après avoir été caractérisé via le réseau de représentation. L'une est la sortie vectorielle unique de chaque réseau de scènes. Ce vecteur représente son expression indépendante dans chaque scène correspondante, l'autre est un vecteur partagé globalement. sortie qui décrit l’expression globale des fonctionnalités utilisateur ou des fonctionnalités d’élément. Par conséquent, la tâche de formation dans toute la phase de réglage fin contient deux pertes. L'une est la perte entraînée entre l'intégration de l'utilisateur et la sortie d'intégration d'élément par le réseau à scène unique, l'autre est la sortie d'intégration d'utilisateur et d'intégration d'élément correspondant à la sortie complète ; -réseau de scène. Une autre perte peut également être obtenue grâce à une telle méthode de calcul, et la somme pondérée des deux dernières pertes est utilisée comme perte finale pour la formation. L'introduction de la tâche auxiliaire de perte de scène complète équivaut à décrire l'expression du même utilisateur et du même élément dans l'ensemble du domaine, bien que son expression puisse ne pas convenir à l'expression de caractéristiques indépendantes de chaque scène, si elle est ajoutée à un. tâche globale pour la formation Enfin, cela est bénéfique à la convergence de l'effet global, et une analyse expérimentale ultérieure peut également démontrer ce point.
Ensuite, nous présenterons comment déployer le modèle de rappel. Une fois la formation du modèle terminée, nous déploierons le modèle dans la phase de réglage fin et le mettrons en ligne. Lors de l'estimation en ligne, les informations de chaque scène seront transmises via le réseau de la scène correspondante sur le modèle pour obtenir le vecteur de représentation dans cette scène.
De plus, dans la tâche auxiliaire, la sortie du réseau de scènes complet n'est utilisée que dans la phase de formation, car il s'agit d'un échantillon mixte, il peut y avoir du bruit, et puis lors de l'estimation, chaque scène encore utilise la sortie de sa propre scène. Pour la tâche de rappel, côté élément, nous générerons ce vecteur pour tous les candidats, puis construirons l'index correspondant, puis générerons le vecteur lors de l'estimation en ligne via le déploiement du modèle. Ensuite, les résultats topk sont obtenus grâce à la récupération vectorielle, et enfin les résultats sont renvoyés à l'étape de tri pour effectuer certaines opérations ultérieures sur l'ensemble du lien recommandé.
Ensuite, nous présenterons quelques analyses expérimentales et applications pratiques utilisant ce modèle.
Nous avons comparé l'effet avec d'autres méthodes sur deux ensembles de données open source et l'ensemble de données industrielles de notre propre entreprise.
Les méthodes comparées sont principalement divisées en trois catégories. La première catégorie est le modèle traditionnel à scène unique Parce que nous nous concentrons sur une tâche de rappel, nous comparons certaines des méthodes de rappel les plus populaires de l'industrie, telles que. comme YoutubeDNN et MIND, BST, DSSM, etc. Ces modèles à scène unique sont entraînés avec des échantillons indépendants de chaque scène. Le deuxième type consiste à utiliser des échantillons mélangés à partir de plusieurs scènes pour la formation. Le modèle utilise toujours le modèle à scène unique couramment utilisé dans l'industrie. La troisième catégorie regroupe certaines méthodes de modélisation conjointe multi-scénarios existantes dans l'industrie et proposées par nos soins. Certaines de ces méthodes sont utilisées dans la phase de tri, et pour la mise en œuvre dans la phase de rappel, pour une meilleure comparaison, nous les comparons. La méthode est légèrement modifiée, c'est-à-dire que la sortie de la dernière couche du réseau de modèles de classement est utilisée comme vecteur de représentation pour s'adapter à la tâche de rappel.
Les deux dernières colonnes du tableau ci-dessus sont les modèles que nous avons proposés, où SASS-Base est une structure modèle sans pré-formation, tandis que SASS ajoute une étape de pré-formation. Étant donné que le deuxième ensemble de données que nous avons vérifié présente un problème de fonctionnalités manquantes et ne peut pas prendre en charge la tâche de pré-formation, nous nous sommes concentrés sur la comparaison des effets de SASS-Base et d'autres méthodes sur cet ensemble de données.
En comparant différents types de méthodes, nous avons obtenu plusieurs conclusions précieuses. Le premier point est que un modèle à scène unique entraîné avec des échantillons mixtes est dans la plupart des cas moins efficace qu'un modèle à scène unique entraîné avec ses propres échantillons séparés. Ceci est cohérent avec la conclusion de notre démonstration et de notre enquête précédentes, c'est-à-dire que cette méthode de mélange d'échantillons peut introduire plus de bruit et rompre la distribution originale des données de chaque scène. Cependant, pour certaines petites scènes contenant des données particulièrement rares, des échantillons mixtes peuvent donner de meilleurs résultats. Parce que pour ces scénarios, il est difficile d'obtenir des informations efficaces lors d'un entraînement avec des données clairsemées. L'utilisation de cette méthode d'échantillonnage mixte, même si les données peuvent être biaisées, peut apporter certains avantages grâce à l'augmentation de la taille de l'échantillon et à l'amélioration des effets. La deuxième conclusion est que les modèles formés via la modélisation conjointe multi-scénarios sont généralement meilleurs que les deux premiers types de méthodes de modélisation à scénario unique. Le modèle que nous avons proposé n'ajoute pas de tâches de pré-formation, c'est-à-dire le SASS-Base. structure du modèle, dans chaque scène, elle est fondamentalement meilleure ou peut obtenir des résultats similaires à d'autres méthodes de modélisation conjointe multi-scènes. Après avoir superposé les tâches de pré-formation, l'effet global a encore été amélioré.
Nous avons ensuite mené une série d'expériences d'ablation, qui comprenaient principalement les parties suivantes.La première est une structure de porte adaptative qui décrit le transfert d'informations d'une scène globale vers une scène unique. Nous avons comparé la structure du réseau de portes du modèle avec d'autres méthodes de migration de portes existantes, notamment (1) l'utilisation du mappage de multiplication matricielle pour réaliser la migration des informations (2) l'utilisation de deux fonctionnalités similaires à Simnet. Cette méthode de migration consiste à effectuer l'addition, la multiplication et l'épissage ; puis effectuez la fusion via MLP ; (3) Une structure de réseau similaire à MOE, qui est migrée via la porte Sigmoïde. Enfin, à en juger par les résultats expérimentaux réels, notre méthode adaptative peut donner de bons résultats.
Le deuxième point est de comparer l'opportunité d'ajouter des tâches de pré-formation et l'impact des différents types de tâches de pré-formation sur les résultats expérimentaux. La méthode de pré-entraînement contrastée est la tâche d'entraînement consistant à prédire la prochaine vidéo ou l'élément suivant à travers la séquence de comportement de l'utilisateur. Après avoir comparé les résultats, il peut être prouvé que la tâche de pré-entraînement est ajoutée et que l'effet du modèle peut être amélioré grâce à un apprentissage contrasté entre les scènes.
Le troisième point est de démontrer le réseau auxiliaire et une tâche auxiliaire dans la conception de la structure du modèle. L'une d'elles est que nous introduisons un réseau partagé à l'échelle mondiale dans la phase de réglage fin et que nous utilisons les résultats de sortie de ce réseau pour effectuer une formation auxiliaire de réglage fin. L'autre est que dans la conception de notre structure de réseau, nous intégrons les informations liées à la scène. pour la sortie de chaque scène. Expériences d’ablation des caractéristiques de biais. Les résultats expérimentaux prouvent également que l’ajout de ces deux structures entraîne une certaine amélioration de l’effet global du modèle.
De plus, étant donné que notre réseau de représentation est une structure de transfert d'informations multicouche, nous avons également comparé l'amélioration de l'effet de notre modèle en augmentant le nombre de couches de réseau. On peut voir que la tendance générale est qu'à mesure que le nombre de couches de réseau augmente, l'effet de modèle s'améliore d'abord puis diminue. L'augmentation ultérieure du nombre de couches de réseau a provoqué une détérioration de l'effet. Nous avons analysé que cela pourrait être dû au fait que la quantité totale de paramètres augmente avec l'augmentation du nombre de couches de réseau, et qu'il y aura des phénomènes de surajustement. De plus, effectuer une telle migration d’informations après avoir obtenu la représentation de niveau supérieur peut rendre la représentation d’une scène unique plus sensible à l’influence des informations de la scène complète. Par conséquent, augmenter le nombre de couches de cette structure de réseau multicouche peut améliorer l'effet dans une certaine mesure, mais le nombre de couches de réseau n'est pas nécessairement meilleur.
Dans la prochaine série d'expériences, nous avons comparé les vecteurs de représentation des différents côtés d'éléments pour la tâche de rappel, car chaque scène générera son propre vecteur lors du rappel. Dans certaines modélisations multi-scénarios, le côté utilisateur aura des expressions différentes, mais le côté élément n'est pas décrit en détail. Dans notre tâche de rappel, le côté utilisateur et le côté élément correspondent à chaque scène. Chaque scène a sa propre expression vectorielle indépendante. nous avons donc également comparé l'expression d'élément correspondant à chaque scène et l'intégration du même côté d'élément partagé par la scène. Par comparaison, on constate que les expressions vectorielles indépendantes de chaque scène peuvent également être distinguées du côté des éléments.
Enfin, nous avons mené une expérience A/B en ligne avec ce modèle dans un scénario réel de recommandation de contenu. Il a obtenu de bons résultats sur certains indicateurs expérimentaux, en particulier dans certaines scènes relativement petites ou avec des données rares, le taux d'amélioration est plus élevé.
À l'heure actuelle, la solution modèle que nous avons proposée a été promue dans les scénarios de recommandation de contenu de Taobao, y compris de courtes vidéos, des recommandations d'images et de texte, etc., et ce modèle est devenu l'une des principales méthodes de rappel dans divers scénarios.
Enfin, résumons. Dans l'ensemble, le problème que nous voulons résoudre est le problème de la modélisation multi-scénarios dans le domaine de la recommandation, qui est également un problème courant dans les systèmes de recommandation. Pour ce type de modélisation multi-scénarios, notre objectif principal est de maximiser l'utilisation des informations entre différents scénarios en construisant un cadre unifié. Cette méthode de modélisation conjointe résout le problème de la rareté des données et améliore les indicateurs métiers de chaque scénario. Et grâce au même ensemble d’architecture de méthodes, le coût d’itération et de déploiement du modèle est réduit. Mais dans nos applications métier actuelles, la modélisation multi-scénarios est confrontée à trois défis principaux. Le premier est de savoir comment réaliser le raffinement et la migration des informations de scène efficaces ; en outre, comment résoudre le problème de la rareté des données dans la modélisation multi-scènes et comment introduire des données non étiquetées, puis le troisième point est la phase de rappel du multi-scène ; -Modélisation conjointe de scène. Réaliser l'atterrissage.
Dans notre pratique, nous concevons ce type d'architecture de réseau de transfert d'informations de scène adaptative, et construisons des tâches non supervisées d'apprentissage contrasté entre les scènes, et incluons la conception de la structure du modèle adaptatif, les méthodes de formation et le déploiement. . Enfin, ce modèle non supervisé adaptatif à la scène est actuellement bien implémenté dans toutes les scènes et est utilisé comme méthode de rappel principale.
A1 : Il s'agit d'un problème d'évaluation de modèle. Il faut qu'il corresponde aux objectifs de modélisation de chaque scénario, puis s'intéresse à l'amélioration des indicateurs par scénario. S'il s'agit d'une tâche en phase de rappel, les indicateurs d'évaluation liés au rappel sont sélectionnés pour chaque scène correspondante, tels que Hit Rate ou NDCG. S'il est en phase de tri, il faudra principalement se concentrer sur certains indicateurs liés au tri comme l'AUC et le GAUC.
A2 : Tout d'abord, parce que nous résolvons un problème multi-scènes dans son ensemble. Comme le montre la définition, entre chaque scène, les échantillons sont largement alignés, donc lorsque nous modélisons réellement, nous essayons d'aligner et d'aplatir toutes les caractéristiques. De plus, pour le cas où chaque scène possède encore des fonctionnalités uniques, nous avons conçu un réseau de biais de scène. Pour les fonctionnalités qui ne peuvent pas être complètement alignées, nous les placerons dans cette structure de réseau distincte.
A3 : Cet ensemble de codes est actuellement utilisé dans les scénarios commerciaux réels de l'entreprise, et l'open source doit se conformer aux exigences de conformité en matière de divulgation d'informations de l'entreprise. Nous communiquerons dans le futur et pourrons proposer une version démo pour l'open source.
A4 : Notre modèle actuel lui-même est implémenté lors de la phase de rappel, donc l'ensemble du modèle est également déployé lors d'une telle étape de rappel. Bien sûr, ce que nous proposons est une solution plus générale, et c'est tout à fait possible avec certains. modifications. Utilisé comme modèle de classement.
A5 : L'échantillonnage négatif est principalement effectué lors de la phase de réglage fin. Nous utilisons une méthode d'échantillonnage négatif qui est plus courante dans les tâches de rappel, dans laquelle les clics de l'utilisateur sont utilisés comme échantillons positifs, et les échantillons négatifs sont échantillonnés de manière aléatoire en fonction de la probabilité d'exposition de l'élément dans chaque scène. Ensuite dans plusieurs scènes, car notre tâche de formation globale sera toujours formée séparément dans chaque scène. Par conséquent, lors d'un échantillonnage négatif, les échantillons négatifs correspondant aux échantillons positifs seront également échantillonnés de manière aléatoire dans l'espace d'exposition correspondant à la scène. De cette manière, une paire d'échantillons positifs et négatifs est construite.
A6 : Ce problème est un peu gros. Laissez-moi le décomposer. C'est que notre modèle actuel est implémenté dans le scénario de recommandation de contenu sur Taobao. Il est basé sur le contenu comme support principal, y compris les images et les textes. et des vidéos. Cette pièce est totalement adaptable car son système global de fonctionnalités est fondamentalement le même et peut être entièrement réutilisé. Et un autre point est en fait ce que nous devons faire dans l'étape suivante, c'est-à-dire que les produits et les contenus peuvent être mentionnés, et que leurs propres systèmes de distribution de données et de fonctionnalités sont en fait différents. Cela peut être compris comme un problème inter-domaines. . Il s'agit d'une fusion entre le domaine du produit et le domaine du contenu. Notre prochaine phase de travail espère également introduire de telles idées inter-domaines dans plusieurs scénarios et migrer certaines informations comportementales du domaine des produits de base vers le domaine du contenu. Quant au deuxième point, concernant l’unification des objectifs, nous avons désormais réalisé l’unification des objectifs. Par exemple, lorsqu'il s'agit de clics sur la page d'accueil, nous utilisons le signal de clic de l'utilisateur comme échantillon positif. Cependant, dans ce flux sans fin de haut en bas, il n'y a en fait aucun clic de l'utilisateur. Ensuite, nous utilisons le long play, l'achèvement. et d'autres signaux de durée comme échantillon positif. Une rétroaction positive signifie que l'étiquette globale est aplatie à une telle dimension binaire.
A7 : De manière générale, nous suivons toujours cette idée d'apprentissage comparatif. En fait, le point clé est de répartir les fonctionnalités entre les scènes puis de construire une tâche de pré-formation. Vous pouvez vous référer à mon explication PPT précédente ou à notre. Introduction dans l'article (Modèle adaptatif aux scénarios et auto-supervisé pour des recommandations personnalisées multi-scénarios).
A8 : La tâche de pré-formation est effectuée sur un espace sans étiquettes, comme les deux scénarios a et b visités par un utilisateur, et l'utilisateur a certaines caractéristiques d'attributs statiques, et la séquence de comportement utilisateur historiquement préservée correspondant à chaque scène constitue alors un système caractéristique d'un même utilisateur dans les deux scènes a et b. L'objectif de modélisation de la pré-formation est de modéliser cet utilisateur consulté et de raccourcir la distance entre les deux vecteurs de représentation entre la scène a et la scène b grâce à une telle mesure de caractéristiques. Par conséquent, il s’agit en fait d’une tâche non supervisée et entraînée sur un espace échantillon sans clic.
A9 : C'est en fait un autre problème. Actuellement, nous résolvons le problème des multi-scénarios. Nous espérons que toutes les scènes partagent le même objectif, comme l'objectif cliqué ou celui que nous avons converti. indique en fait si l'utilisateur est intéressé par ce contenu ou cette vidéo. Quant à la méthode multi-scènes et multi-cibles mentionnée tout à l'heure, elle est en fait quelque peu différente du multi-scènes, mais je comprends qu'une telle méthode de modélisation multi-cibles peut être construite sur cette modélisation multi-scènes. Parce qu'il y a actuellement beaucoup de travail sur la tâche de représentation conjointe de plusieurs scènes et plusieurs cibles. Par exemple, dans notre architecture actuelle, après avoir traversé le réseau de représentation, chaque échantillon aura une expression vectorielle indépendante correspondant à chaque scène. nous utilisons cette expression vectorielle comme entrée, puis construisons un réseau de fonctionnalités unique lié à la cible pour chaque cible sur cette base, nous pouvons réellement effectuer des tâches conjointes multi-cibles et multi-scénarios. Vous pouvez considérer notre méthode de formation multi-scénarios actuelle comme un cadre de base, puis modéliser d'autres tâches multi-objectifs sur cette base. J'ai l'impression que cela a du sens.
A10 : Cette perte est en fait similaire au schéma d'apprentissage comparatif traditionnel. Nous utilisons également la perte InfoNCE, c'est-à-dire que dans un échantillon d'entraînement avec une taille de lot de n, le même utilisateur ou élément est placé dans la scène correspondante. Les deux vecteurs générés sont considérés comme des échantillons positifs et les 2n-2 vecteurs générés correspondant à d'autres échantillons sont considérés comme leurs échantillons négatifs. De cette manière, une perte est construite pour l'apprentissage.
A11 : Ce sur quoi nous venons de nous concentrer est le côté utilisateur, donc le côté article a en fait la même structure. Du côté des éléments, il existe également un réseau global partagé pour l'élément lui-même et une expression d'un paramètre de réseau pour chaque élément dans chaque scène de chaque scène. Par conséquent, grâce à la même méthode de modélisation, il s’agit d’une structure complètement symétrique côté utilisateur. Chaque élément migrera via un tel paramètre partagé globalement et la structure de réseau de chaque scène, et aura éventuellement une sortie indépendante liée à la scène.
A12 : C'est une bonne question. Notre modèle actuel est en fait formé hors ligne et mis à jour quotidiennement. Ensuite, nous faisons également quelques tentatives de substitution, dans l'espoir d'améliorer sa rapidité et d'organiser une formation en streaming via l'apprentissage en ligne. Bien sûr, il existe encore certains problèmes actuellement rencontrés, principalement reflétés dans une telle méthode de formation multi-scénarios. En fait, elle doit introduire des données provenant de plusieurs sources en même temps. Ainsi, dans ce type de formation en streaming, comment les données peuvent-elles provenir de plusieurs sources. L'accès simultané à plusieurs sources et la façon de garantir une formation stable sont en fait des défis relativement importants, c'est pourquoi notre modèle actuel est toujours mis à jour au niveau quotidien hors ligne. Nous pourrions faire quelques tentatives à l'avenir, comme traiter la formation conjointe multi-scénarios hors ligne actuelle comme modèle de base, puis affiner les données en streaming via la restauration du modèle sur un seul scénario et effectuer des mises à jour itératives de cette manière.
A13 : Cela vient en fait d'être introduit tout à l'heure. Le point central est que le même utilisateur divise l'expression de certaines fonctionnalités dans différents scénarios. Par exemple, deux scénarios a et b ont des fonctionnalités statiques, et en même temps, ils laisseront des comportements d'utilisateur indépendants dans la séquence correspondante. , ainsi que certaines informations statistiques d'un tel utilisateur dans la scène correspondante, telles que les préférences de catégorie, les préférences de compte et certaines caractéristiques statistiques telles que l'exposition aux clics. Cela équivaut à diviser la structure des fonctionnalités des données en différents scénarios, afin que le même utilisateur puisse disposer de différentes fonctionnalités dans différents scénarios. Il s'agit de la structure des fonctionnalités, et des échantillons, elle est simplement mentionnée. Si un utilisateur visite plusieurs scènes, alors les scènes sont combinées par paires pour construire une telle paire d'échantillons. Ensuite, du côté des éléments, un élément peut être placé sur plusieurs scènes, de sorte que la combinaison par paire entre plusieurs scènes peut également construire des échantillons de l'élément.
A14 : Notre phase de pré-formation est une tâche non supervisée. Notre objectif est d'obtenir la représentation de son intégration et l'initialisation des paramètres de réseau correspondants via la tâche de pré-formation. Par conséquent, lorsque nous évaluons l’apprentissage contrastif pré-entraînement, nous analysons principalement l’effet via le regroupement visuel de vecteurs produits au cours de la phase de pré-entraînement.
A15 : Il s'agit en fait d'une représentation des points communs et des différences des scènes. L'intention initiale de notre solution multi-scènes est de l'optimiser dans chaque scène après avoir été renforcée par un modèle unifié. Bien entendu, en réalité, notamment lors des itérations ultérieures, il n’est pas possible d’obtenir un succès à 100 % avec la même architecture de modèle dans tous les scénarios, et certains avantages peuvent ne pas être évidents. Donc, à ce stade, nous devons en fait affiner la conception de la structure supérieure en fonction des caractéristiques de chaque scène dans notre architecture multi-scénarios actuelle, c'est-à-dire que les multi-scénarios peuvent être utilisés pour l'intégration sous-jacente du partage et des informations. migration. Bien entendu, chaque scénario a ses propres caractéristiques de réseau. Par exemple, certaines informations de déclenchement fortes dans le deuxième saut auront des structures de fonctionnalités indépendantes, qui nécessitent une certaine adaptation dans la couche supérieure.
A16 : L'intégration sous-jacente et le réseau global partagé sont partagés entre chaque scène, et chaque scène correspond à un paramètre de réseau unique à chaque scène.
A17 : Nous utilisons actuellement une méthode de construction de base de données fractionnée, c'est-à-dire qu'un candidat correspondant à chaque scène générera un index indépendant dans chaque scène.
A18 : Il n'y a pas de réponse standard à cette question. Il faudra peut-être l'examiner en fonction du scénario commercial réel.
A19 : Parce que la phase de rappel est un rappel multicanal, c'est-à-dire qu'il y aura de nombreux types différents de méthodes de rappel, telles que le rappel vectoriel, etc., et puis il y aura également des rappels manuels fournis par certaines méthodes d'indicateurs opérationnels, de sorte que l'étape globale de recommandation actuelle est en fait une fusion de différents types de méthodes de rappel, puis une notation unifiée est attribuée au côté tri. Spécifique au modèle dont nous parlons aujourd’hui, l’accent est toujours mis sur l’optimisation de ce modèle.
A20 : Notre plan actuel est de charger les paramètres du modèle lors de la phase d'initialisation après la formation du modèle. En ce qui concerne l'intégration et la nécessité de mettre à jour les paramètres après la pré-formation, nous avons réalisé deux expériences : la première consiste à corriger le modèle pré-entraîné après l'avoir chargé, et la seconde consiste à continuer à participer à une telle formation du modèle pendant la formation. étape de mise au point. Ensuite, ce que nous utilisons actuellement est de recycler les paramètres du modèle pré-entraîné d'origine pendant la phase de réglage fin.
A21 : L'ordre entre les scènes est aléatoire, car notre modèle transfère en fait les informations d'une telle scène globale à une seule scène, donc son ordre d'entraînement entre les scènes est en fait aléatoire.
A22 : Oui, en termes de différences de scène, nous utilisons les caractéristiques du même utilisateur ou du même élément dans différentes scènes pour décrire les différences de scène, c'est-à-dire pour décrire la différence de scène. sont utilisés comme moyen d’enrichissement des données. Non seulement la scène seule, mais aussi certaines représentations caractéristiques comportementales des utilisateurs et des éléments de la scène.
A23 : La pré-formation vise à assister la formation de notre tâche de rappel finale, donc lors de l'estimation, nous n'utiliserons que la tâche de réglage fin de la deuxième étape pour le déploiement. Vous pouvez comprendre un tel modèle de structure à deux tours comme un DSSM plus classique. Par conséquent, en fin de compte, la structure du modèle en phase de réglage fin est utilisée pour être mise en ligne, puis l'expression côté utilisateur et l'expression côté élément sont sorties lorsque l'entrée de représentation est estimée.
A24 : Une autre façon de poser cette question est de savoir si l'approche en deux étapes que nous utilisons actuellement peut être transformée en une formation de bout en bout, c'est-à-dire que dans la tâche de formation, il existe un lien infini entre les scènes et les scènes. Superviser la formation et organiser en même temps une formation conjointe sur le rappel des utilisateurs et des articles sur cette base. Cette approche semble réalisable, mais la raison pour laquelle nous ne l'avons pas fait est qu'elle ne résout pas le problème de l'utilisation d'échantillons de données non étiquetés. C'est-à-dire que les échantillons utilisés dans nos tâches en deux étapes sont en fait différents. Dans la phase de pré-formation, une plus grande gamme de données non étiquetées est utilisée, puis dans la phase de réglage fin, les données étiquetées sont utilisées. Si une formation conjointe est utilisée, la formation ne peut être effectuée que sur ces données étiquetées, et l'espace d'échantillonnage sera en fait réduit. Cela sera quelque peu différent de notre intention de conception initiale.
A25 : Cela effectuera une migration sur chaque couche, c'est-à-dire que sur la structure multicouche, la structure monocouche migrera les informations, puis la structure sera empilée. Selon les résultats d'une expérience récente, si vous choisissez la couche 3 après plusieurs comparaisons, son effet est quelque peu amélioré. Par conséquent, dans notre implémentation métier actuelle, le nombre de couches correspondant à ce modèle est également fixé à 3.
A26 : Nos tâches de phase de pré-formation et de mise au point sont une formation incrémentielle au niveau de la journée, puis la phase de pré-formation sera introduite dans la phase de mise au point. Les deux côtés sont équivalents à faire une formation incrémentielle en. parallèle, puis les paramètres seront chargés au milieu.
A27 : Je viens de mentionner que notre méthode de formation globale est une formation incrémentielle, donc leurs fenêtres horaires sont fondamentalement alignées.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!