Pratique de grands modèles clairsemés dans les scénarios de classement publicitaire iQiyi

01

   dosscèneet le statu quo

1. Caractéristiques des données dans le domaine publicitaire

Les données dans le domaine de la publicité peuvent être divisées en : caractéristiques de valeur continue Différentes des domaines de l'image, de la vidéo, de la voix et d'autres domaines de l'IA , les données originales dans le domaine sont principalement présentées sous forme d'identifiant, tel que l'identifiant utilisateur, l'identifiant publicitaire, la séquence d'identifiant publicitaire interagissant avec l'utilisateur, etc., et l'identifiant. l'échelle est grande, formant le champ publicitaire Les caractéristiques distinctives des données clairsemées de haute dimension.

Caractéristiques à valeur continue
  • Il existe des caractéristiques à la fois statiques (comme l'âge de l'utilisateur) et dynamiques basées sur le comportement de l'utilisateur (comme le nombre de fois qu'un utilisateur clique sur une publicité dans un certain secteur).
  • L’avantage est qu’il possède une bonne capacité de généralisation. La préférence d'un utilisateur pour une industrie peut être généralisée à d'autres utilisateurs présentant les mêmes caractéristiques statistiques de l'industrie.
  • L’inconvénient est que le manque de capacité de mémoire entraîne une faible discrimination. Par exemple, deux utilisateurs ayant les mêmes caractéristiques statistiques peuvent avoir des différences de comportement significatives. De plus, les fonctionnalités à valeur continue nécessitent également beaucoup d’ingénierie manuelle des fonctionnalités.
caractéristiques de valeur discrète
  • Les fonctionnalités à valeur discrète sont des fonctionnalités à granularité fine. Il en existe d'énumérables (tels que le sexe de l'utilisateur, l'identifiant de l'industrie), et il existe également des éléments de grande dimension (tels que l'identifiant de l'utilisateur, l'identifiant publicitaire).
  • L’avantage est qu’il possède une forte mémoire et une haute distinction. Des fonctionnalités de valeur discrète peuvent également être combinées pour apprendre des informations croisées et collaboratives.
  • L’inconvénient est que la capacité de généralisation est relativement faible.
La publicité est un scénario qui nécessite une mémoire forte pour les utilisateurs et une forte différenciation du trafic médiatique. Par conséquent, les caractéristiques de valeur discrète constituent la base de la prédiction personnalisée et de l'optimisation des modèles publicitaires. Les données éparses de grande dimension telles que l'identifiant publicitaire, l'identifiant utilisateur et leurs combinaisons peuvent être utilisées comme fonctionnalités à valeur discrète. De cette manière, différents utilisateurs ayant des comportements différents peuvent être bien distingués dans les fonctionnalités. De manière générale, il existe deux manières d'utiliser les fonctionnalités de valeurs discrètes :
  • Encodage à chaud
  • Intégration de fonctionnalités (Intégration)
Le codage à chaud de caractéristiques à valeurs discrètes de grande dimension peut facilement conduire à la « malédiction de la dimensionnalité », qui se manifeste par des défauts évidents tels qu'une explosion de paramètres, une convergence lente du modèle et une faible capacité de généralisation. Par conséquent, il convient au codage sous des types énumérables limités de valeurs discrètes. Pour le codage d’ID à grande échelle, les ID clairsemés dans un espace de grande dimension sont exprimés sous forme de vecteurs dans un espace dense de basse dimension grâce à l’intégration de fonctionnalités.

2. État actuel du modèle de classement publicitaire d'iQiyi
En 2016, le modèle Wide & Deep proposé par Google a officiellement introduit les modèles d'apprentissage profond dans le domaine de la recommandation. Le modèle Wide & Deep a réalisé une modélisation unifiée des capacités de mémoire et de généralisation et est rapidement devenu le modèle de référence dans la recherche industrielle, la publicité et la recommandation. des champs. . L'activité de classement publicitaire d'iQiyi a également progressivement évolué du modèle FM d'apprentissage en ligne au modèle DNN en 2019.
Notre modèle DNN est basé sur le framework open source TensorFlow pour la formation et l'inférence. Dans le framework TensorFlow, le Tensor dense est utilisé comme unité de données de base pour calculer, stocker et transmettre des données. La forme Tensor utilisée pour stocker la fonctionnalité d'identification à valeur discrète L'intégration doit être déterminée à l'avance, c'est-à-dire qu'elle est fixée à [vocabulary_size, embedding_dimension] et la taille de vocabulaire doit être déterminée manuellement en fonction de l'espace d'identification. Par conséquent, lors de l’introduction de fonctionnalités d’ID clairsemées de haute dimension, nous mappons d’abord le hachage de la fonctionnalité d’ID à la plage vocabulaire_size.
Actuellement, nous rencontrons les problèmes suivants lors de l’utilisation de fonctionnalités d’ID clairsemées de haute dimension :
  • Conflit de fonctionnalités : si le paramètre vocabulaire_size est trop grand, l'efficacité de la formation diminuera fortement et la formation échouera en raison du MOO de la mémoire. Par conséquent, même pour les fonctionnalités à valeur discrète d'ID utilisateur de plusieurs milliards, nous ne configurerons qu'un espace de hachage d'ID de 100 000 niveaux. Le taux de conflit de hachage est élevé, les informations sur les fonctionnalités sont endommagées et il n'y a aucun avantage positif à tirer d'une évaluation hors ligne.
  • E/S inefficaces : étant donné que les fonctionnalités telles que l'ID utilisateur et l'ID publicitaire sont de grande dimension et clairsemées, c'est-à-dire que les paramètres mis à jour pendant la formation ne représentent qu'une petite partie du total. Dans le cadre du mécanisme d'intégration statique d'origine de TensorFlow, l'accès au modèle doit être traité. L'ensemble du Tensor dense entraînera une énorme surcharge d'E/S et ne pourra pas prendre en charge la formation de grands modèles clairsemés.


02

   Pratique de grand modèle clairsemée

Comme mentionné ci-dessus, les caractéristiques de valeur discrète constituent la base sur laquelle le modèle permet de réaliser davantage de prédictions personnalisées. Nous avons également rencontré des problèmes lors de l'utilisation de caractéristiques de valeur discrète ID clairsemée de grande dimension. Par conséquent, nous utiliserons la technologie open source dominante de l'industrie en 2023 pour effectuer la formation et la construction d'inférences de grands modèles clairsemés.
1. Cadre algorithmique
Au cours des dernières années, l'industrie a mené de nombreuses recherches sur la prise en charge de TensorFlow pour recommander de grands modèles clairsemés et l'a mis en œuvre dans des scénarios commerciaux réels. Nous choisissons le composant open source TFRA Dynamic Embedding principalement pour les raisons suivantes :
  • L'API TFRA est compatible avec l'écosystème Tensorflow (en réutilisant l'optimiseur et l'initialiseur d'origine, l'API a le même nom et un comportement cohérent), permettant à TensorFlow de prendre en charge la formation et l'inférence de grands modèles clairsemés de type ID de manière plus native ; le coût d'apprentissage et d'utilisation est faible et ne modifie pas les habitudes de modélisation des ingénieurs en algorithmes.
  • L'expansion et la contraction dynamiques de la mémoire permettent d'économiser des ressources pendant l'entraînement ; elles évitent efficacement les conflits de hachage et garantissent que les informations sur les fonctionnalités sont sans perte.
Sur la base des frameworks TensorFlow 2.6.0 et TFRA 0.6.0, nous avons réalisé les itérations suivantes :
  • L'intégration statique est mise à niveau vers l'intégration dynamique : pour la logique de hachage artificielle des fonctionnalités à valeur discrète, l'intégration dynamique TFRA est utilisée pour stocker, accéder et mettre à jour les paramètres, garantissant ainsi que l'intégration de toutes les fonctionnalités à valeur discrète est sans conflit dans le cadre de l'algorithme et garantissant que toutes les valeurs discrètes Apprentissage sans perte des fonctionnalités.
  • Utilisation de fonctionnalités d'identification clairsemées de grande dimension : comme mentionné ci-dessus, lors de l'utilisation de la fonction d'intégration statique de TensorFlow, les fonctionnalités d'identification utilisateur et d'identification publicitaire ne profitent pas de l'évaluation hors ligne en raison de conflits de hachage. Une fois le cadre algorithmique mis à niveau, les fonctionnalités d'identification utilisateur et d'identification publicitaire sont réintroduites, et il existe des avantages positifs à la fois hors ligne et en ligne.
  • L'utilisation de fonctionnalités d'identification combinées clairsemées de haute dimension : présentation des fonctionnalités combinées de valeur discrète de l'ID utilisateur et de l'ID publicitaire à gros grain, telles que la combinaison de l'ID utilisateur avec l'ID de l'industrie et le nom du package d'application, respectivement. Dans le même temps, combinées à la fonction d'accès aux fonctionnalités, des fonctionnalités discrètes utilisant une combinaison d'identifiants utilisateur et d'identifiants publicitaires plus clairsemés sont introduites.


2. Mise à jour du modèle

Lors du processus de mise en œuvre du grand modèle clairsemé, nous avons rencontré de nombreux problèmes lors de l'inférence de formation et des mises à jour de déploiement. Nous avons effectué une analyse approfondie et une optimisation de divers problèmes au cours du processus de mise en œuvre, et avons finalement obtenu des mises à jour efficaces et stables de formation, d'inférence et de déploiement de grands modèles clairsemés.
Lorsque vous utilisez TensorFlow Serving pour mettre à jour à chaud un grand modèle clairsemé, des retards d'inférence se produiront en raison de la concurrence pour l'allocation et la libération de mémoire. Les scénarios d'utilisation de l'allocation et de la libération de mémoire TensorFlow comportent deux parties principales :
  • L'allocation de la variable elle-même Tensor lorsque le modèle est restauré, c'est-à-dire que la mémoire est allouée lorsque le modèle est chargé et la mémoire est libérée lorsque le modèle est déchargé.
  • La mémoire du Tensor de sortie intermédiaire est allouée lors du calcul du transfert de réseau lors de la requête RPC et est libérée une fois le traitement de la requête terminé.
Par conséquent, lorsqu'un grand modèle clairsemé est mis à jour, une grande quantité de mémoire est allouée dans l'OP de restauration lorsque le nouveau modèle est chargé, et une grande quantité de mémoire est libérée lorsque l'ancien modèle est déchargé. Au cours de ce processus, la demande d'inférence RPC n'est pas interrompue. À ce stade, l'allocation de mémoire et la libération des deux entreront en conflit et entreront en concurrence, provoquant des problèmes d'inférence. Sur la base de l'analyse ci-dessus, en concevant l'isolation de l'allocation de mémoire, l'allocation de mémoire des paramètres du modèle et l'allocation de mémoire des requêtes RPC sont isolées, et elles sont allouées et libérées dans différents espaces de mémoire indépendants, résolvant ainsi le retard de mise à jour à chaud des grands espaces clairsemés. modèles.
Enfin, la fragmentation des fichiers de grands modèles clairsemés et la transmission P2P au sein de la même salle informatique sont utilisées pour la distribution des modèles, ce qui réduit la pression sur le backend de stockage et les lignes dédiées au réseau, et résout les problèmes de stockage et de bande passante causés par les mises à jour fréquentes des grands modèles clairsemés.

03

   bénéfice global

À l'heure actuelle, la plate-forme d'apprentissage profond prend en charge de manière efficace et stable la formation, l'inférence et les mises à jour de déploiement de modèles de paramètres d'un milliard de niveaux. Nous avons entièrement lancé trois grands modèles clairsemés dans les scénarios de publicité à la performance CVR et DCVR, ce qui a directement entraîné une augmentation de 4,3 % des revenus de la publicité à la performance alors que le délai d'inférence était fondamentalement le même.


04

   perspectives d'avenir

Actuellement, toutes les valeurs de fonctionnalité de la même fonctionnalité dans le modèle clairsemé de grande publicité reçoivent la même dimension d'intégration. Dans les affaires réelles, la distribution des données des caractéristiques de grande dimension est extrêmement inégale, un très petit nombre de caractéristiques à haute fréquence représentent une proportion très élevée et le phénomène de longue traîne est grave en utilisant des dimensions d'intégration fixes pour toutes les valeurs de caractéristiques ; réduira la capacité d’apprentissage de la représentation intégrée. Autrement dit, pour les fonctionnalités à basse fréquence, la dimension d'intégration est trop grande et le modèle risque d'être sur-ajusté ; pour les fonctionnalités à haute fréquence, car il existe une multitude d'informations qui doivent être représentées et apprises, l'intégration ; La dimension est trop petite et le modèle risque d'être sous-ajusté. Par conséquent, à l’avenir, nous explorerons des moyens d’apprendre de manière adaptative la dimension d’intégration de la fonctionnalité pour améliorer encore la précision de la prédiction du modèle.

Dans le même temps, nous explorerons la solution d'exportation incrémentielle du modèle, c'est-à-dire charger uniquement les paramètres qui changent lors de la formation incrémentielle vers TensorFlow Serving, réduisant ainsi la transmission réseau et le temps de chargement lors de la mise à jour du modèle, obtenant ainsi des mises à jour à la minute près. de grands modèles clairsemés et l'amélioration de la nature en temps réel du modèle.


aussiPeuttoiretourpenseregarder

Révéler le secret de l'explosion de la mémoire : résoudre le problème du MOO de la formation distribuée sur grands modèles

Processus d'optimisation des doubles enchères de publicité de performance iQIYI

Application iQIYI Data Lake Practice-Advertising Data Lake

Cet article est partagé à partir du compte public WeChat - Équipe produit technologique iQIYI (iQIYI-TP).
En cas d'infraction, veuillez contacter [email protected] pour suppression.
Cet article participe au « Plan de création de sources OSC ». Vous qui lisez, êtes invités à vous joindre et à partager ensemble.

Un camarade de poulet "open source" deepin-IDE et a finalement réalisé l'amorçage ! Bon gars, Tencent a vraiment transformé Switch en une « machine d'apprentissage pensante » Examen des échecs de Tencent Cloud le 8 avril et explication de la situation Reconstruction du démarrage du bureau à distance RustDesk Client Web La base de données de terminal open source de WeChat basée sur SQLite WCDB a inauguré une mise à niveau majeure Liste d'avril TIOBE : PHP est tombé à un plus bas historique, Fabrice Bellard, le père de FFmpeg, a sorti l'outil de compression audio TSAC , Google a sorti un gros modèle de code, CodeGemma , est-ce que ça va vous tuer ? C'est tellement bon qu'il est open source - outil d'édition d'images et d'affiches open source
{{o.name}}
{{m.nom}}

Je suppose que tu aimes

Origine my.oschina.net/u/4484233/blog/11045480
conseillé
Classement