Filtrage collaboratif explicite par analyse de sentiments à l'aveugle
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
Filtrage collaboratif explicite par analyse de sentiments à l’aveugle Charles-Emmanuel Dias, Vincent Guigue et Patrick Gallinari 21 janvier 2020 Résumé lyse de sentiments [DdGGG18]. Dans tous les cas, l’en- jeu est double : être capable de proposer un texte sup- En recommandation, les modèles de filtrage collabo- port – par extraction ou génération – pour chaque sug- ratif sont souvent qualifiés de boites noires. Pour pa- gestion tout en ayant des profils encodant efficacement lier ce problème, nous proposons de mettre en parallèle les gouts des utilisateurs. analyse de sentiments et filtrage collaboratif dans un schéma que nous qualifions "d’analyse de sentiments à Pour obtenir à la fois des profils interprétables et des l’aveugle". Concrètement, nous proposons, par appren- suggestions explicite, nous explorons ici l’utilisation des tissage adverse adverse d’effectuer du filtrage collabo- réseaux adverses dans le cadre du filtrage collaboratif. ratif par génération de textes plutôt que via la pré- Il s’agit d’exploiter les capacités de génération [KLA18] diction directe de notes. Nous détaillons comment ce et de désambiguïsassions [CDH+ 16, LZU+ 17] de l’es- schéma permet, en plus d’un gain de performances, pace des modèles adverses pour créer un système de re- d’expliciter naturellement la recommandation. commandation transparent. Jusqu’à présent, ces tech- Mots-clef : Filtrage Collaboratif, Réseaux de Neu- niques ont été uniquement appliquées dans le cadre de rones, Réseaux Adverses. la recommandation de séquences [BPL18, HHDC18]. Pour lier texte et note, nous exploitons le cadre de 1 Introduction l’analyse de sentiment en parallèle de la recommanda- tion. l’objectif est de tirer profit de la similitude entre En recommandation, les modèles de l’état de l’art ces tâches pour améliorer le filtrage collaboratif. Dans étant majoritairement appris à l’aide d’interactions cet article, plutôt que d’associer les tâches, nous les op- utilisateur-produit, ils sont souvent abstrait [KBV09]. posons dans un schéma d’apprentissage adverse. En ce De ce fait, les algorithmes de filtrage collaboratif sens, nous partons d’une observation simple : l’analyse manquent de transparence et sont souvent qualifiés de de sentiment, lorsqu’elle prend en compte les spécifi- boites-noires [BeK14]. En effet, les seules explications cités de chaque utilisateurs et produits [CST+ 16], est proviennent généralement d’une interprétation du voi- similaire au filtrage collaboratif dans sa version régres- sinage et sont limitées à de simples comparaisons entre sive. La seule différence est l’absence de texte. Nous produits : nous vous proposons XXX parce que vous pouvons alors considérer le filtrage collaboratif comme avez aimé YYY. Pourtant, il est crucial qu’une sugges- de l’analyse de sentiment "à l’aveugle". tion soit explicité. De plus, pour inspirer confiance, un système de recommandation se doit d’être transparent [TM07]. Pour améliorer conjointement performance et trans- parence, il est commun d’exploiter les avis textuels as- sociées aux notes. Une première approche consiste à créer [DGG16, CC17] des profils uniquement textuels, naturellement interprétable. Une seconde approche consiste plutôt à enrichir des profils par l’apprentissage conjoint d’un modèle prédictif et d’un modèle théma- tique [ML13], de langue [AKCC15, NLVM17] ou d’ana- 1
Ce papier s’organise de la façon suivante : Dans un une affinité textuel. Enfin, [DdGGG18] propose de lier premier temps, nous détaillons l’état de l’art en pré- analyse de sentiment et filtrage collaboratif afin d’ex- diction de note. Ensuite, nous formalisons le concept traire les biais textuels. Ces modèles permettent, par d’ analyse de sentiment "à l’aveugle" avant de détailler extraction, d’obtenir du texte support. le modèle adverse considéré. Enfin, nous proposons une évaluation quantitative et qualitative de notre modèle. Les réseaux adverses ont permis d’obtenir de très bon résultats sur une multitudes de tâches génératives. 2 État de l’art Ces modèles s’inspirent de la théorie des jeux : un gé- nérateur et un discriminateur s’améliorent au cours du Dans cette section, nous détaillons brièvement les temps grâce à une compétition. différents concepts abordés dans ce papier : le filtrage collaboratif et les réseaux adverses. Ces deux modèles sont entraînés dans un jeu à somme nul : G apprend à tromper D qui lui essaye d’apprendre justement à ne pas être trompé. Dans leurs Le filtrage collaboratif se résume concrètement formulation originale, il s’agit de d’entraîner parallèle- à l’apprentissage de préférences directement à par- ment : tir d’interactions (clics, notes) d’utilisateurs. L’hypo- — le discriminateur D à faire la différence entre les thèse sous-jacente est que si plusieurs personnes ont vrais et faux examples en maximisant à la fois des intérêts communs pour certaines choses alors ces Ex∼pr (x) [log D(x)] et Ez∼pz (z) [log(1 − D(G(z)))] intérêts s’étendent probablement à d’autres produits. — le générateur G à minimiser la capacité de D à Tout l’enjeux des algorithmes de filtrage collaboratif repérer ses exemples Ez∼pz (z) [log(1 − D(G(z)))] est d’exploiter les corrélations d’interactions afin d’in- férer des similarités existantes entre produits et utili- sateurs. Suite au concours Netflix [BL07], les méthodes de filtrage collaboratif par factorisation se sont im- Il convient de noter que les réseaux adverses, sur- posées [KBV09, SMH07]. Il s’agit d’obtenir des pro- tout dans leurs formulation d’origine, sont notoire- + fils en décomposant la matrice d’interactions en deux ment difficile à entraîner [[GPAM 14]. Ces modèles sous matrices ; une codant pour les utilisateurs, une sont particulièrement sensibles aux hyper-paramètres pour les produits. Aujourd’hui, la plupart des algo- et à l’équilibre générateur/discriminateur. Cependant, rithmes développés utilisent des réseaux de neurones leur principal intérêt réside dans leurs capacité à gé- [HKBT15, HLZ+ 17] qui, grâce à une grande flexibilité nérer des données ayant l’air a priori vraie [KLA18]. de modélisation permettent la prise en compte d’un Ces modèles sont principalement utilisés en image, do- nombre croissant de facteurs. Pourtant, malgré cette maines où leurs résultats sont les plus spectaculaires. prise en compte d’un vaste nombre d’informations et Dans le cas du texte, l’espace étant discret, il est l’amélioration constante de la précision les systèmes de plus compliqué d’apprendre des GAN. Néanmoins, cer- recommandations, ils sont encore souvent qualifiées de taines extensions existes [FGD18]. De plus, contraire- "boites noires" [BeK14]. ment aux modèles à base de réseaux de neurones récur- Pour expliciter les suggestions des systèmes de re- rents qui n’offrent aucunes garanties, l’intérêt principal commandation, une technique consiste à exploiter les des réseaux adverses est que, dans certaines + conditions, avis textuels en plus des notes. Concrètement, il s’agit, l’espace appris est non-ambiguë [LZU 17, CDH+ 16]. en plus des suggestions, de proposer un texte support, Cette propriété permet de retrouver certain facteurs détaillant – de manière personnalisée – les avantages latents, comme la présence où l’absence de lunettes par d’un produit. Une première approche consiste à sim- exemple, rendant l’interprétation directe. plement utiliser le texte comme un objectif auxiliaire. [AKCC15, NLVM17] proposent de directement prédire l’avis en plus de la note à l’aide d’un réseau de neurones Dans le cadre de ces travaux, c’est ces deux capaci- récurrents. En pratique, en plus de permettre de régu- tés de génération et de désambiguïsation qui nous inté- lariser les profils appris [AKCC15], cela permet d’expli- resse. Celles-ci permettraient respectivement de rendre citer les suggestions émises par le système. A l’inverse, les système de recommandation plus explicite et trans- [ZNY17, CC17, DGG16] proposent de construire di- parent. En effet, il serait à la fois possible de générer rectement chaque profils utilisateur/produit à partir des explications tout en pouvant interpréter pourquoi de l’ensemble de ses avis textuels tout en apprenant celles-ci ont été générées. 2
Biais notationel avantage de cette modélisation est que le modèle de gé- nération de texte, comme dans [NLVM17], représente Analyse de une manière intégrée d’interpréter les suggestions du u sentiment modèle. Recommandation i fs r^ ui Concrètement, nous proposons de décomposer la u tâche de filtrage collaboratif en deux sous-tâches : la ⎯⎯ prédiction d’un texte tu,i , puis de la note associée ru,i fr t t (fig. 3). Nous postulons que cette décomposition évi- i tera au modèle de se focaliser sur le problème dit de "complétion de matrice" et sur les biais de notation. Biais textuel Alignement En effet, à l’inverse, pour optimiser son objectif le mo- adverse dèle devra générer un texte fidèle à l’original il devrait plutôt encoder les biais d’écriture, ce qui nous intéresse Figure 1 – Représentation schématique du concept pour expliciter les suggestions. Les biais de notations d’analyse de sentiment à l’aveugle. Le modèle de re- seront eux captés par le modèle d’analyse de sentiment. commandation (fr , à gauche) a pour objectif de pré- dire l’avis t utilisé par le modèle d’analyse de sentiment fr fs (fs , à droite) dans la prédiction de la note rui de l’uti- (u, i) tu,i ru,i lisateur u sur le produit i. L’enjeu pour fr est d’arriver à générer un texte t qui soit le plus proche possible du Figure 2 – Décomposition du filtrage collaboratif en texte original t afin que fs prédise la bonne note rˆui . deux temps : prédiction de texte tu,i puis de note ru,i 3 Analyse de sentiment à l’aveugle Le modèle proposé en figure 1 est simplement conceptuel. En pratique, dans la formulation classique Ici, notre objectif est d’ancrer le filtrage dans un es- des réseau adverses, avoir un générateur paramétrique pace latent explicite et non-ambigu. Concrètement, il ne semble pas possible. De plus, la génération de texte s’agit d’obtenir à la fois des profils latents – d’utilisa- via les réseaux adverses – discret par nature – ne fonc- teurs et de produits – interprétables et des suggestions tionne pas aussi bien que celle des images et reste à explicites. Dans ce papier, pour atteindre cet objectif, l’état de concept. Cependant, dans la section suivante nous proposons de mettre en compétition analyse de nous proposons une instanciation particulière de ce mo- sentiments et filtrage collaboratif dans le cadre de l’ap- dèle qui permet de s’abstraire de ces problèmes. prentissage adverse. En effet, en plus de leurs capacités génératives [KLA18], les réseaux adverses permettent d’obtenir – en fonction de leurs formulations – des es- 4 Modèle adverse proposé paces non-ambigüs [CDH+ 16, LZU+ 17]. Formellement soit des tuples utilisateur, produit, Pour mettre le filtrage collaboratif dans un cadre note, texte (u, i, r, t) comme données. Nous avons deux d’apprentissage adverse nous le considérons comme de tâches : l’analyse de sentiment et le filtrage collabora- l’analyse de sentiments "à l’aveugle" (fig. 1). En pra- tif. L’objectif de la première tâche est de prédire r, à tique, la seule différence entre analyse de sentiment et l’aide du texte t mais aussi avec les profils u, i. Pour filtrage collaboratif est l’absence de texte, les avis uti- la seconde, l’objectif final est le même ; prédire la note lisateurs n’existant pas a priori. Nous proposons alors mais seulement avec les profils (u, i). Dans cette contri- d’utiliser – comme modèle de recommandation – un bution, nous proposons de mettre les deux tâches en modèle de prédiction de texte, l’apprentissage adverse compétitions : Au lieu de simplement prédire la note servant à aligner les textes prédits avec les textes réels. directement depuis les profils, nous inférons d’abord Le texte prédit sera utilisé par un modèle d’analyse un clone t du texte original t qui sera utilisé à sa place de sentiments qui devra, en plus de prédire de la pola- dans le prédicteur de sentiment. La prédiction d’une rité du texte, savoir si celui-ci est légitime. Le principal note rui se fera donc de la manière suivante : 3
Item 4 - User 6 ae modèle de What a great product ! Cheap langue t and Good, nothing to say ! C OR mlpae t̂ D Adv u ⎯⎯ i mlpg t v ∼ (0, 1) Generateur Discriminateur Figure 3 – (à gauche) Generateur : (a) Génère une représentation clone t à partir d’une paire de représentations (utilisateur,produit). (b) Auto-encode t ou t en t̂. (à droite) Discriminateur : Predit le sentiment et la source de t̂ fonctions de chaque réseau avant d’expliciter les coûts Recommandation z }| { optimisés. rui = fs ( fr (u, i) ) (1) | {z } Analyse de Sentiment Générateur : Le premier sous-réseau – fr – fait of- fice de générateur. Il est lui même composé de deux Par nature, le texte pose deux problème quant à modules : un auto-encodeur mlpae et un perceptrons l’utilisation des réseaux adverses tel que défini par multicouches mlpg qui génère un texte clone t à partir [GPAM+ 14]. Déjà, il n’est pas utilisable en l’état au d’un triplet (u, i, v) ; avec v est un vecteur de "bruit". sein d’un réseau de neurone et nécessite une vectori- Génerer de but en blanc du texte est complexe. Pour sation. De plus, la génération de données discrète em- aider mlpg , l’auto-encodeur apprend la distribution des pêche le bon apprentissage des générateur. Ici, afin de données en auto-encodant le texte réel t en une repré- nous abstraire de ces contrainte et par simplicité, nous sentation t̂r . De ce fait, mlpg est simplement entraîné à proposons dans un premier temps d’encoder le texte générer un texte "reconstructible" t̂f , indissociable de à l’aide de word2vec [MCCD13]. Concrètement, nous t̂r ; ce texte devant logiquement être t. apprenons dans un premier temps des représentations pour chaque mots de l’ensemble d’apprentissage. En- suite, chaque avis est représenté comme le barycentre u, i, v ∈ Rd , t = mlpg (u, i, v), t̂ = mlpae (t ∨ t) de ses représentation de mots : (3) n 1X Formellement, le générateur minimise trois coûts sé- t= wi (2) n i=1 parés : (Lae ) Tout d’abord, le générateur doit être capable avec wi ∈ Rd les représentations de mot issue de d’auto-encoder un texte originale t. Pour cela, word2vec. Par la suite, lorsque nous faisons référence il doit minimiser l’erreur de reconstruction. Ici, à t, il s’agit donc d’une représentation t ∈ Rd et non nous utilisons l’erreur quadratique comme erreur d’un texte brut. de reconstruction : M SE(t, t̂r ) 1 . En apprenant à auto-encoder les données réelles, le générateur apprend la distribution des données [GLTFS87]. Notre modèle adverse (fig. 3) est composé de deux En parallèle, les clones générés doivent égale- sous-reseaux – un générateur et un discriminateur – ment être "reconstructibles". Nous minimisons optimisés à tour de rôle dans un schéma d’apprentis- sage adverse. Nous détaillons d’abord séparément les 1. M SE(x, x̂) = (x − x̂)2 4
donc également l’erreur de leur reconstruction reconstruction issue d’un texte généré t et une is- M SE(t, t̂f ). De cette façon, nous garantissons sue d’un texte original t. Cette compétition entre que tous les t̂ proviennent de la distribution des générateur et discriminateur doit forcer le géné- données apprises. rateur à mêler t et t au sein d’une même recons- (LgAdv ) Cependant, rien ne garantie que les recons- truction t̂ et, donc, aligner t et t. tructions de texte généré t̂f , et celles de texte réel Finalement, avec LC l’entropie croisée et Ldadv la fonc- t̂r soit similaire. Pour contraindre le générateur tion de coût adverse, le coût minimisé est le suivant : à s’aligner sur les données réelles, les reconstruc- tions doivent être indissociables. Cette propriété Ld = LC + Ldadv . est apprise grâce à une optimisation min-max où (5) = CCE(c, r) + BCE(t̂f , 0) + BCE(t̂r , 1) le générateur et le discriminateur on des objectifs opposés Lgadv et Ldadv . Concrètement, le généra- teur, via l’auto-encodeur, va essayer de faire pas- 5 Données, prétraitements & hy- ser la reconstruction du texte réelle t̂r pour la re- construction du clone t̂f et vice-versa. Formelle- perparamètres ment, le coup minimisée est l’entropie croisée bi- Pour rappel, dans cette contribution nous cher- naire : BCE(mlpd (t̂r ), 0) et BCE(mlpd (t̂f ), 1) 2 chons à exploiter les techniques d’apprentissage ad- (LC ) Le sentiment r lié aux reconstuctions t̂r doit verses avec un double objectif : (a) Apprendre les pro- être correctement prédit. Cela ce fait dans le files utiles permettant des (b) recommandations com- cadre d’une minimisation simultanée de la log- préhensibles. Pour évaluer la faculté de notre modèle à vraisemblance par le générateur. atteindre ces deux objectifs, nous proposons plusieurs Finalement, la fonction de coût du générateur est la expériences. Après avoir détaillé les données que nous suivante : utilisons pour celles si, nous proposons une évaluation quantitative et qualitative des profils obtenus. Lg = Lae + Lgadv + LC = M SE(t, t̂r ) + M SE(t, t̂f ) Hyperparametres Lors de nos expériences, l’archi- (4) tecture de notre réseaux est resté constante. Les profils + BCE(mlpd (t̂f ), 1) + BCE(mlpd (t̂r ), 0) utilisateur, produit ainsi que le vecteur de bruit sont + CCE(mlpd (t̂r ), r) tous de taille identique : u, v, i ∈ R5 . Ils sont volon- tairement petit pour eviter le sur-apprentissage. Enfin, Où CCE et BCE veulent respectivement dire Cate- la taille des représentation des mots est aussi fixé : gorical et Binary Cross Entropy. emb_size = 100. Les deux fonctions de coûts Lg et Ld sont toutes deux optimisées séquentiellement en utili- Discriminateur : Le second sous-réseau – fs – est sant le schéma d’optimisation Adam. composé d’un perceptron multicouches mlpd à deux têtes. Il fait à la fois office de dicriminateur et de clas- Données et prétraitements Pour nos experiences, sifieur : Il doit arriver à prédire correctement les po- nous utilisons des avis consommateurs provenant larités associées aux reconstructions t̂ tout en arrivant d’Amazon [MPL15]. Nous choisissons cinq datasets à faire la différence entre celles provenant d’un texte aléatoirement, de différentes tailles, sur différents types légitime t ou d’un clone t. d’objets. Les propriétés des bases de données sont ré- pertoriés Table 1. Ici, n’évaluant pas le démarrage à froid, seul les utilisateurs et les produits avec un mini- Formellement, le discriminateur minimises donc mum de 5 avis sont conservés. Les représentations des deux fonctions de coût distinctes : 10 000 mots les plus fréquents apparaissant au mini- (LC ) Dans un premier temps, le discriminateur, qui mum cinq fois sont pré-apprises en utilisant word2vec. fait de l’analyse de sentiment, doit être capable Afin d’effectuer de la validation croisée, chaque base de prédire correctement de la polarité d’une re- de donnée est divisé en cinq parts égales. Quatre par- construction t̂ tie servent pour l’entraînement (80%) et une pour la (Ldadv ) Enfin, a l’inverse du générateur, le discrimi- validation (10%) et l’évaluation (10%). Ce schéma de nateur doit réussir à faire la différence entre une 80/10/10 est commun dans l’évaluation de système uti- 2. BCE(x, y) = − [y · log x + (1 − y) · log(1 − x)] lisant le texte [ML13, AKCC15]. 5
Dataset (#reviews) Mean (µ) w/offset MF HFT BSA Instant Video (37.126) 1.25 1.137 1.024 0.933 0.924 Digital Music (64,706) 1.19 0.965 0.903 0.844 0.832 Video Games (231,780) 1.45 1.281 1.267 1.097 1.082 CSJ (278,677) 1.215 1.323 1.365 1.107 1.101 Movie (1,697,533) 1.436 1.148 1.118 1.020 1.009 Table 1 – Erreur quadratique moyenne en prédiction de note. Les modèles de références sont : La moyenne globale de la base de donnée µ, le bias de notation utilisateur-item global et un algorithme de factorisation matricielle commun [KBV09]. Les valeurs présentées sont des moyennes obtenues par validation croisée sur 5 parties 6 Evaluation en prédiction de sentations des phrases pré-existantes sur l’item i. En utilisant la similarité cosinus (eq. 6) entre tui et toutes note les phrases t∗i , il est possible d’extraire celles les plus Nous évaluons dans un premier temps la tâche clas- proches de la représentation généré. sique de filtrage collaboratif : la prédiction de note. u.v Cela permet d’évaluer quantitativement les profils ap- cos(u, v) = ∈ [−1, 1] (6) ||u||.||v|| pris. Pour prédire la note d’un couple (utilisateur,item) Un exemple de génération d’avis par extraction est rui un texte clone t est d’abord généré par mlpg . En- donné Fig. 2. Bien qu’il soit impossible de tirer des suite, ce texte est auto-encodé puis classifié. Comme conclusions d’un seul exemple, celui-ci montre claire- algorithmes de références nous choisissons deux mo- ment qu’on est capable d’extraire des phrases perti- dèles commun : un algorithme de factorisation matri- nentes. cielle [KBV09] et un modèle enrichissant les profils ob- tenue par factorisation avec le texte - HFT [ML13]. Comme souvent, nous ajoutons les moyennes objet et 8 Visualisation des caractéris- utilisateur qui sont déjà de bonnes références. L’erreur quadratique moyenne est reportée Table 1. tiques apprises De façon surprenante, notre modèle, bien que non Certains réseaux adverses permettent d’obtenir des directement entrainé à optimiser la prédiction de note, espaces non-ambigus [CDH+ 16], où chaque dimen- obtient de meilleurs performance que les modèles de sion code pour une caractéristique particulière. Par références qui le sont. Cela confirme, a priori, l’intérêt exemple, [LZU+ 17] montre qu’il est possible d’ajou- de modéliser le texte au lieu des notes. Aussi, de tels ter des lunettes à quelqu’un en modifiant une compo- résultats montre que les profils appris contiennent des sante latente du réseaux adverse. Attester de la non- informations ambiguïté d’un espace latent repose principalement sur l’observation des exemples générés. Dans notre cas, 7 Explicitation des suggestions cette visualisation est moins évidente. En effet, nous gé- nérons un vecteur latent codant pour l’intégralité d’un Pour expliciter les suggestions, il est souvent pro- avis et récupérons des mots/phrases existantes par si- posé de générer des avis en plus des notes [NLVM17]. milarité cosinus. Ici, Le modèle présenté n’est pas explicitement entrainé pour cela et il n’est pas capable de générer des textes Pour essayer de visualiser l’effet d’une composante mots à mots. Cependant, il génère des représentations sur la génération, nous procédons de la sorte. Nous de mots qui devraient être similaire à la représenta- choisissons un couple (utilisateur,produit) au hasard et tion réelle (celle-ci étant une moyenne de mots). Il est fixons toutes les composantes du vecteur "bruit" v à 0. donc possible, en comparant la représentation générée A partir de cette entrée (u, i, v), nous générons un vec- t avec toutes les représentations de phrases existantes, teur latent généré t0 . Ce vecteur étant théoriquement de créer un avis par extraction. Formellement soit un dans le même espace que celui des mots, nous récupé- couple (u, i) cible de la recommandation, tui la repré- rons les n mots les plus proches de t0 . Nous considé- sentation généré et s∗i = {t∗i } l’ensemble des repré- rons cet ensemble {w0 } comme notre base. A partir de 6
Vérité Terrain Phrases les plus proches I already played Bioshock. Great sequel ! The game is more interesting. This game has a great storyline ! The levels are bigger and more beautiful. Great environment for an FPS. There are new characters, new weapons. For the most part this game is beautiful. Enemies are clever and hard to kill . Highly recommended for anyone that likes FPS games. In conclusion this game is fantastic and beautiful. I love the use of color and the art in general. Table 2 – Exemple de prédiction par extraction à l’aide de la similarité cosinus entre le texte généré t et des phrases existantes. là, nous répétons la procédure en modifiant une seule formances, d’extraire du texte support – des mots, des composante du vecteur de bruit, de 0 à 0.5 puis à 1 et phrases ou encore des avis entiers – pour aider l’utili- de 0 à -0.5 puis à -1. A chaque fois, nous récupérons sateur dans sa décisions. l’ensemble des mots les plus proches du vecteur gé- Remerciements : ce travail a été financé en partie néré : {w−0.5 }{w−1 }{w0.5 }{w1 }. Finalement, nous vi- par le projet FUI BInD. sualisons les différences entre notre ensemble base {w0 } et tous les autres. En effet, les mots ajoutés sont liées au vecteur de bruit. La figure 4 représente tous ces Références mots pour la quatrième composante. Bien que dur à [AKCC15] Amjad Almahairi, Kyle Kastner, Kyun- interpréter, changer la composante semble changer la ghyun Cho, and Aaron Courville. Lear- polarité globale des mots. ning distributed representations from re- views for collaborative filtering. In Pro- 9 Discussion ceedings of the 9th ACM Conference on Recommender Systems, RecSys ’15, 2015. Ici, nous nous sommes intéressés à rendre le filtrage [BeK14] Shay Ben-elazar and Noam Koenig- collaboratif plus explicite. En effet, pour être accepté, stein. A Hybrid Explanations Framework une suggestion se doit d’être accompagné d’une expli- for Collaborative Filtering Recommender cation. Seulement, si l’explication est purement générée Systems. In RecSys 2014, 2014. – et donc tout droit sortie d’une boite noire – elle néces- [BL07] James Bennett and Stan Lanning. The siterais elle-même une explication. En réalité, tout l’en- Netflix Prize. KDD Cup and Workshop, jeu est d’obtenir un système suffisamment transparent pages 3–6, 2007. et scrutable pour que l’utilisateur lui fasse confiance. [BPL18] Homanga Bharadhwaj, Homin Park, and Pour améliorer la transparence des systèmes de recom- Brian Y Lim. Recgan : recurrent genera- mandations tout en restant dans le cadre classique du tive adversarial networks for recommen- filtrage collaboratif, nous avons principalement proposé dation systems. In Proceedings of the 12th d’utiliser les réseaux adverses dans un cadre d’analyse ACM Conference on Recommender Sys- de sentiment à l’aveugle. tems, pages 372–376. ACM, 2018. Théoriquement, l’avantage d’un modèle adverse est qu’il peut combiner génération et espace latent non- [CC17] Rose Catherine and William Cohen. ambigu. Ici, pour des raisons pratiques, nous utilisons Transnets : Learning to transform for re- des représentation pré-apprise et n’avons pas utilisé un commendation. In Proceedings of the Ele- décodeur directement textuel. De plus, l’architecture venth ACM Conference on Recommender proposé, du fait de la personnalisation du générateur, Systems, RecSys ’17, pages 288–296, New ne permet probablement pas un apprentissage optimal York, NY, USA, 2017. ACM. de l’espace latent.Cependant, le modèle présenté ici, [CDH+ 16] Xi Chen, Yan Duan, Rein Houthooft, malgré ses défauts, fait figure de preuve de concept. John Schulman, Ilya Sutskever, and Pie- Bien qu’incapable de générer directement du texte, il ter Abbeel. Infogan : Interpretable repre- montre que l’exploitation de ces textes dans un cadre sentation learning by information maxi- adverse permet notamment, en plus d’améliorer les per- mizing generative adversarial nets. In Ad- 7
------------------------------------------------------------------------------------ (-1) (+1) ------------------------------------------------------------------------------------ Figure 4 – Nuage de mots changeant en fonction d’une seule dimension du vecteur de bruit v vances in neural information processing [GPAM+ 14] Ian Goodfellow, Jean Pouget-Abadie, systems, pages 2172–2180, 2016. Mehdi Mirza, Bing Xu, David Warde- Farley, Sherjil Ozair, Aaron Courville, [CST+ 16] Huimin Chen, Maosong Sun, Cunchao and Yoshua Bengio. Generative adversa- Tu, Yankai Lin, and Zhiyuan Liu. Neu- rial nets. In Advances in neural informa- ral sentiment classification with user and tion processing systems, pages 2672–2680, product attention. In Proceedings of the 2014. 2016 Conference on Empirical Methods in Natural Language Processing, pages [HHDC18] Xiangnan He, Zhankui He, Xiaoyu Du, 1650–1659, 2016. and Tat-Seng Chua. Adversarial per- sonalized ranking for recommendation. [DdGGG18] Charles-Emmanuel Dias, Clara Gainon In The 41st International ACM SIGIR de Forsan de Gabriac, Vincent Guigue, Conference on Research & Development and Patrick Gallinari. Rnn & modèle in Information Retrieval, pages 355–364. d’attention pour l’apprentissage de pro- ACM, 2018. fils textuels personnalisés. Proceedings of [HKBT15] Balázs Hidasi, Alexandros Karatzoglou, CORIA, 2018. Linas Baltrunas, and Domonkos Tikk. [DGG16] Charles-Emmanuel Dias, Vincent Session-based recommendations with re- Guigue, and Patrick Gallinari. Re- current neural networks. arXiv preprint commandation et analyse de sentiments arXiv :1511.06939, 2015. + dans un espace latent textuel. In [HLZ 17] Xiangnan He, Lizi Liao, Hanwang Zhang, CORIA-CIFED, pages 73–88, 2016. Liqiang Nie, Xia Hu, and Tat-Seng Chua. Neural collaborative filtering. [FGD18] William Fedus, Ian Goodfellow, and An- In Proceedings of the 26th International drew M Dai. Maskgan : Better text gene- Conference on World Wide Web, pages ration via filling in the _. arXiv preprint 173–182. International World Wide Web arXiv :1801.07736, 2018. Conferences Steering Committee, 2017. [GLTFS87] Patrick Gallinari, Yann LeCun, Sylvie [KBV09] Y. Koren, R. Bell, and C. Volinsky. Ma- Thiria, and Francoise Fogelman-Soulie. trix Factorization Techniques for Recom- Memoires associatives distribuees. Pro- mender Systems. Computer, 42 :42–49, ceedings of COGNITIVA, 87 :93, 1987. 2009. 8
[KLA18] Tero Karras, Samuli Laine, and Timo In Proceedings of the Tenth ACM Inter- Aila. A style-based generator architec- national Conference on Web Search and ture for generative adversarial networks. Data Mining, pages 425–434. ACM, 2017. arXiv preprint arXiv :1812.04948, 2018. [LZU+ 17] Guillaume Lample, Neil Zeghidour, Nico- las Usunier, Antoine Bordes, Ludovic De- noyer, et al. Fader networks : Manipula- ting images by sliding attributes. In Ad- vances in Neural Information Processing Systems, pages 5967–5976, 2017. [MCCD13] Tomas Mikolov, Kai Chen, Greg Corrado, and Jeffrey Dean. Distributed Represen- tations of Words and Phrases and their Compositionality. Nips, pages 1–9, 2013. [ML13] J McAuley and J Leskovec. Hidden fac- tors and hidden topics : understanding ra- ting dimensions with review text. Procee- dings of the 7th ACM conference on Re- commender systems - RecSys ’13, pages 165–172, 2013. [MPL15] Julian McAuley, Rahul Pandey, and Jure Leskovec. Inferring networks of substitu- table and complementary products. In Proceedings of the 21th ACM SIGKDD international conference on knowledge discovery and data mining, pages 785– 794. ACM, 2015. [NLVM17] Jianmo Ni, Zachary C Lipton, Sharad Vikram, and Julian McAuley. Estima- ting reactions and recommending pro- ducts with generative models of reviews. In Proceedings of the Eighth International Joint Conference on Natural Language Processing (Volume 1 : Long Papers), vo- lume 1, pages 783–791, 2017. [SMH07] Ruslan Salakhutdinov, Andriy Mnih, and Geoffrey Hinton. Restricted boltzmann machines for collaborative filtering. In Proceedings of the 24th international conference on Machine learning, pages 791–798. ACM, 2007. [TM07] Nava Tintarev and Judith Masthoff. A survey of explanations in recommender systems. Proceedings - International Conference on Data Engineering, pages 801–810, 2007. [ZNY17] Lei Zheng, Vahid Noroozi, and Philip S Yu. Joint deep modeling of users and items using reviews for recommendation. 9
Vous pouvez aussi lire