• Aucun résultat trouvé

Etude de la stabilit´ ´ e et optimisation des param` etres

a envie d’´ecouter autre chose car cette musique lui a fait penser `a une autre musique qu’il sou-haite ´ecouter... Cependant, ces r´esultats ne sont en rien d´epr´eciatifs de notre mod`ele, nous avons juste souhait´e v´erifier si l’on pouvait d´etecter un autre type d’´ev´enement que les fins de sessions. Outre le fait que notre mod`ele offre de bonnes performances en terme de d´etection de contextes (explicites et implicites), il est int´eressant d’´etudier le moment o`u ont ´et´e r´ealis´ees les d´etections de contextes explicites. Les temps auxquels ont ´et´e r´ealis´ees les d´etections sont r´esum´es dans le tableau ci-dessous :

Moment d´etection t - 2 t - 1 t t + 1 t + 2 total Nombre d´etection 2 894 2 647 7 793 2 187 2 403 17 924

TAB. 3 – Type de d´etection

Dans le tableau 3, t+n signifie que nous regardons dans le futur d’un pas de temps de n et t-n signifie que nous regardons dans le pass´e d’un pas de temps de n. D´etecter une fin de session `

a t+n revient `a pouvoir l’anticiper alors que la d´etecter `a t-n revient `a le d´etecter avec n temps de retard. Nous pouvons constater que la majorit´e des d´etections se fait au moment t=0, c’est-`

a-dire que la fin de session est imm´ediatement d´etect´ee. Les fins de sessions peuvent ´egalement ˆ

etre anticip´ees. Cependant, les performances d’anticipations sont plus faibles que les d´etections `

a l’instant t. Cela peut s’expliquer par le fait que le comportement d’un utilisateur ne peut ˆ

etre anticip´e que dans une certaine mesure si l’on ne regarde que l’´evolution de la diversit´e. Inversement, notre mod`ele d´etecte ´egalement les changements de contexte a posteriori. Cela est dˆu au fait que la diversit´e apport´ee par le nouveau contexte n’est pas caract´eris´ee par le premier item de ce contexte mais par les suivants. Comme cela a ´et´e propos´e dans Castagnos et al. (2010), il y a d’avantage de diversit´e en d´ebut et en fin de session avec une ´evolution progressive. Si l’on n’est pas capable de d´etecter `a t=0, on peut alors d´etecter (anticiper ou mesurer apr`es coup) tr`es rapidement.

2.2.3 Discussion

Cette premi`ere approche du mod`ele DANCE nous a permis de d´emontrer qu’il est possible d’utiliser l’´evolution temporelle de la diversit´e afin de d´etecter certains ´ev´enements du compor-tement des utilisateurs. L’hypoth`ese H2 est donc valid´ee. En plus d’ˆetre en mesure de d´etecter les changements de contexte, l’´etude de l’´evolution de la diversit´e peut ˆetre utilis´ee dans une certaine mesure afin de pr´edire la fin d’une session de consultation. Cette capacit´e de d´etection et d’anticipation ´etait l’un des obstacles rencontr´es par Castagnos et al. (2010). Bien qu’ils aient propos´e un mod`ele d´ecrivant les diff´erentes phases de consultations et les variations de diversit´e souhaitables associ´ees dans un syst`eme de recommandation aux cours d’une session, il leur ´etait impossible de pr´edire les fins de sessions. A terme, notre mod`ele pourrait donc ˆetre utilis´e dans des cycles de recommandation, afin de r´epondre aux besoins en diversit´e des utilisateurs sans que ces derniers aient besoin de le demander explicitement et ce sans connaissance explicite du contexte courant des utilisateurs (ce qui n´ecessiterait de poss´eder des informations pouvant nuire `a la vie priv´ee des utilisateurs).

2.3 Etude de la stabilit´´ e et optimisation des param`etres

Nous avons montr´e qu’il est possible d’utiliser l’´evolution temporelle de la diversit´e pour d´etecter les changements de contexte. La configuration utilis´ee attribuait le mˆeme poids `a

chaque attribut dans le calcul de la RD. Or, certains attributs peuvent ˆetre plus discriminants que d’autres pour d´etecter un changement de contexte. Par exemple, le passage d’une musique tr`es ´energique `a une musique tr`es calme sera sans doute plus r´ev´elateur d’un changement de contexte que le passage d’une musique longue `a une musique courte. Si tel est le cas, le poids de l’attribut “´energie” devra ˆetre plus important que celui de la dur´ee. Les buts de cette partie sont donc multiples et peuvent ˆetre ´enum´er´es sous forme de questions de recherche qui sont les suivantes :

1. Peut-on privil´egier la d´etection de certains ´ev´enements en changeant les poids ?

2. L’algorithme est-il stable si on modifie le param´etrage (i.e les poids ´elev´es sont-ils toujours les mˆemes) ?

3. Y-a-t-il une configuration optimale (i.e toujours meilleur que les autres) ? 2.3.1 Utilisation d’un algorithme g´en´etique

Pour r´epondre `a ces questions de recherche, nous devons faire varier un grand nombre de pa-ram`etres. En consid´erant que les poids des attributs sont des nombres `a deux d´ecimales compris qu’entre 0 et 1 et sachant que nous disposons de 13 attributs, tester toutes les configurations possibles reviendrait `a tester 1.14*1026 configurations. ´Etant donn´e cet ordre de grandeur, il est impossible d’envisager de tester toutes les configurations possibles. Sachant que nous nous trouvons face `a un probl`eme d’exploration d’un espace de tr`es grande taille, utiliser un algo-rithme g´en´etique semble ˆetre une solution ad´equate afin d’optimiser les poids des attributs. Les algorithmes g´en´etiques ont ´et´e mis au point dans les ann´ees 60 pour r´epondre `a des pro-bl`emes similaires (notamment le probl`eme du voyageur de commerce Sonam and Puneet (2014)). Ce type d’algorithmes fait partie des algorithmes ´evolutionnistes, ce qui signifie que la solution est trouv´ee via la s´election des individus qui offrent les meilleures performances, tout comme la th´eorie de l’´evolution sur laquelle ces algorithmes sont bas´es.

Le principe des algorithmes g´en´etiques consiste `a initialiser al´eatoirement une population o`u chaque individu ou chromosome repr´esente une solution possible au probl`eme (phase d’initia-lisation). Dans notre cas, un chromosome repr´esente une combinaison des poids de nos treize attributs. Les poids des attributs correspondent aux g`enes des chromosomes. Ainsi, chaque chro-mosome poss`ede treize g`enes. Ensuite, chaque chromosome est ´evalu´e en fonction de son score par rapport au probl`eme (phase d’´evaluation). La phase d’´evaluation est r´ealis´ee `a l’aide d’une fonction de fitness dont le but est d’attribuer `a chaque chromosome un score en fonction de sa performance. Dans notre cas, la performance est la capacit´e `a d´etecter certains ´ev´enements. Les chromosomes les plus performants, c’est-`a-dire ceux ayant le meilleur score sont utilis´es pour cr´eer la g´en´eration suivante (phase de reproduction). Lors de la phase de reproduction, deux chromosomes vont ´echanger une partie de leurs g`enes selon un pourcentage d´efini par un seuil d’enjambement afin de cr´eer un nouveau chromosome. Enfin, chaque chromosome issu de la phase de reproduction peut muter ou non selon une probabilit´e d´efinie dans les param`etres du mod`ele. La mutation correspond au changement al´eatoire d’un g`ene d’un chromosome et permet d’introduire un g`ene qui n’´etait pas dans la population initiale. Une nouvelle g´en´eration de chromosomes sera donc cr´e´ee `a l’aide de la population de d´epart et ces derniers seront de nouveau ´evalu´es. Le processus est ensuite r´ep´et´e jusqu’`a convergence de la solution ou lorsque le nombre de g´en´erations maximum fix´e est atteint.

La figure 9 ci-dessous illustre les diff´erentes ´etapes de fonctionnement d’un algorithme g´en´etique que nous avons d´ecrit pr´ec´edemment :

FIG. 9 – Fonctionnement d’un algorithme g´en´etique

Bien qu’ils reposent sur des bases communes, il existe diff´erentes variantes au sein des m´ecanismes que nous venons de pr´esenter. Par exemple, certains algorithmes g´en´etiques ne vont utiliser que les individus ayant les meilleurs scores pour cr´eer la g´en´eration suivante, d’autres vont utiliser le principe de la roulette qui consiste en un tirage al´eatoire entre tous les individus mais o`u les individus ayant les meilleurs scores ont plus de chance d’ˆetre s´electionn´es. Cependant, ce m´emoire n’´etant pas destin´e `a pr´esenter les diff´erents mod`eles d’algorithmes g´en´etiques, nous ne rentrerons pas dans les d´etails et nous nous contenterons de pr´esenter les param`etres que nous avons utilis´es afin de concevoir notre propre algorithme g´en´etique.

2.3.2 Param`etres utilis´es

Les param`etres que nous avons utilis´es pour nos ´etudes sont les suivants :

– Initialisation de la population : la population initiale comporte 500 chromosomes dont les treize g`enes ont ´et´e choisis al´eatoirement entre une valeur minimale et maximale (qui correspondent aux poids des coefficients des attributs) ;

– ´Evaluation des chromosomes (fonction de fitness) : le score d’un chromosome est d´etermin´e par le nombre de d´etections effectu´ees sur l’´ev´enement choisi. Par exemple, dans le cas o`u l’on cherche `a maximiser les d´etections des sessions, le score du chromosome ´evalu´e correspond au nombre de changements de sessions que ce dernier aura permis de retrouver ;

– Formation des couples : les couples sont form´es al´eatoirement parmi la population de chromosomes et chaque couple poss`ede un score qui est la somme des scores des chromo-somes qui le composent (cf. figure 9). Ensuite, selon une loi de Poisson avec un coefficient de 2,1218, nous avons g´en´er´e une liste du nombre de fils devant ˆetre cr´e´es par chaque couple. Plus le score du couple est important et plus le nombre de fils qu’il devra g´ e-n´er´e sera grand. Ce m´ecanisme permet de privil´egier, au sein de la population ; les g`enes qui permettent d’obtenir de bons scores sans pour autant tomber dans une forme d’eug´ e-nisme qui serait n´efaste pour la convergence de l’algorithme (car l’algorithme convergerait rapidement mais sans pour autant offrir de bonnes performances).

18. Le coefficient 2,12 a ´et´e choisi de mani`ere `a perp´etuer la population sans pour autant qu’elle grandisse trop rapidement.

– Reproduction : Lors de la reproduction, les deux chromosomes vont s’´echanger une partie de leurs g`enes `a hauteur de 70 % et les parents ne seront pas inclus dans la g´en´eration suivante. Ainsi, seuls les nouveaux chromosomes issus de la g´en´eration pr´ec´edente sont conserv´es.

– Mutations : Chaque nouveau chromosome peut muter avec une probabilit´e de 1

13. Si un chromosome mute, alors un de ses g`enes sera de nouveau g´en´er´e al´eatoirement.

2.3.3 R´esultats

La premi`ere hypoth`ese que nous avons voulu v´erifier ´etait de savoir si l’attribution de coef-ficients diff´erents pouvait avoir un impact positif sur le nombre de sessions d´etect´ees (question de recherche no1 p.25). Pour ce faire, nous avons utilis´e l’algorithme g´en´etique que nous avons pr´ec´edemment pr´esent´e. Les poids des attributs ne sont plus fix´es `a 1 mais sont des chromo-somes dont les g`enes sont compris entre 0 et 1. Les tests ont ´et´e effectu´es pour diff´erents seuils de RD’. Les tableaux ci-dessous pr´esentes les r´esultats qui ont ´et´e obtenus sur 50 g´en´erations de chromosomes :

Seuil RD’ 0 0,05 0,10 0,15 0,20 Existants D´etect´es D´etect´es D´etect´es D´etect´es D´etect´es Fins de sessions 18 412 17 737 16 288 15 776 14450 12877 Contextes implicites - 22 104 17 412 15776 14533 11075 Musiques pass´ees 15 008 3 915 3 137 2 807 2448 2050

TAB. 4 – R´esultats avec des coefficients compris entre 0 et 1

Nous pouvons constater dans un premier temps qu’un param´etrage des coefficients augmente les performances de d´etections de notre mod`ele. En effet, le nombre de sessions d´etect´ees passe de 14 253 (supra, p.27) pour des poids de 1 `a 16 228 (tableau 4 ci-dessus) pour des poids compris entre 0 et 1. Cela confirme l’hypoth`ese selon laquelle la d´etection de certains ´ev´enements peut ˆ

etre privil´egi´e et que certains attributs sont plus d´eterminants que d’autres pour d´etecter les contextes (question de recherche no1, p.25).

D’autre part, nous avons choisi de modifier notre fonction de fitness afin de voir si il ´etait possible d’augmenter les capacit´es de pr´ediction de notre mod`ele. Nous avons donc modifi´e la fonction de fitness afin d’am´eliorer l’anticipation des d´etections des sessions. Pour ce faire, la fonction fitness ´etait la fonction qui maximisait le nombre de d´etections effectu´ees `a t+1 et t+2. Le seuil de RD’ est fix´e `a 0,05 et les poids sont compris entre 0 et 1. Les r´esultats obtenus sont pr´esent´es dans le tableau 5 ci-dessous.

Moment d´etection t - 2 t - 1 t t + 1 t + 2 total Nombre d´etection 3168 4036 6333 4249 4123 21909 TAB. 5 – Maximisation de la d´etection sessions `a t+1 et t+2

Nous pouvons constater que notre mod`ele peut effectivement ˆetre param´etr´e afin d’augmen-ter ses capacit´es `a anticiper les fins de sessions, car les nombres de sessions d´etect´ees `a t+1 et t+2 passent respectivement de 3 356 et 3 900 (infra, p.28) `a 4249 et 4123. Ces chiffres renforcent l’hypoth`ese selon laquelle le changement des poids peut permettre de privil´egier la d´etection de certains ´ev´enements (question de recherche no1, p.25).

Nous avons ´egalement essay´e de param´etr´e notre mod`ele afin de privil´egier la d´etection des mu-siques ayant ´et´e pass´ees. Cependant, comme nous l’avons pr´ec´edemment expliqu´e les musiques

qui ont ´et´e pass´ees sont difficilement d´etectables `a l’aide de l’´evolution de la diversit´e et les d´etections de ces derni`eres n’ont pas pu ˆetre am´elior´ees.

Le tableau 6 ci-dessous, r´esume les positions des d´etections effectu´ees pour diff´erents seuil de RD’ pour des poids compris entre 0 et 1.

hhh hhhhhh hhh hhhhh h Moment d´etection seuil RD’ 0 0,05 0,1 0,15 0,20 t-2 4 448 3 506 3 021 2 591 1 921 t-1 4 397 3 461 2 911 2 810 1 978 t 9 220 8 174 7 861 6 531 6 668 t+1 3 877 3 356 2 989 3 080 2 221 t+2 4 893 3 900 3 405 3 077 2 356 total 26 835 22 047 20 187 18 089 15 153

TAB. 6 – Positions des d´etections

Le seuil de RD’ impacte ´egalement significativement les performances de d´etection, comme le montrent les r´esultats du tableau 4 et du tableau 6, plus ce dernier est petit et plus les faibles variations de contexte sont d´etect´ees . Inversement, plus ce seuil est important, plus les chan-gements de contexte doivent ˆetre marqu´es par une diversit´e importante. C’est pourquoi dans un cas le nombre de contextes d´etect´es augmente et dans l’autre cas le nombre de contextes d´etect´es diminue. A l’heure actuelle, nous ne pouvons pas encore dire qu’une valeur de ce seuil est plus adapt´ee qu’une autre. Parmi les perspectives, nous envisageons de tester notre mod`ele en situation r´eelle sur des recommandations et de regarder si l’on peut augmenter la satisfaction des utilisateurs en pr´edisant leur besoin de diversit´e.

Afin de v´erifier la stabilit´e de notre mod`ele (question de recherche no2, p.25), nous avons choisi de lancer plusieurs fois notre algorithme g´en´etique. Pour ce faire, nous avons v´erifi´e si la configuration des poids des attributs `a la fin des 50 g´en´erations n’´etait pas due `a l’initialisation de notre population. A l’issue de chaque lancement, nous avons class´e les poids des attributs par ordre croissant et nous avons r´ecup´er´e la position de chaque attribut. Le but est de v´erifier si les attributs qui ont les poids les plus importants sont les mˆemes apr`es chaque ex´ecution.

Seuil 0 0,05 0,10

Attribut Moyenne Ecart type´ Moyenne Ecart type´ Moyenne Ecart type´

Mode 2,95 0,39 1 0 1 0

Artistes similaires 3,95 0,22 2,35 0,49 2 0 ´

Energie (musique) 5,05 0,22 2,65 0,49 7,3 2,29 Ann´ees d’activit´es 7,25 0,44 4,75 1,74 3 0

Termes (artiste) 8,45 2,25 7,35 2,6 5,1 2,04 Familiarity (artiste) 9,75 1,57 7,95 1,67 8,4 2,8 Tempo 1,05 0,22 8,7 2.83 10,05 2,64 Danceability (musique) 10,5 1,76 8,75 3,04 9,25 2,46 Loudness 7,8 2,41 9,15 2.6 9,55 2,25 Hotttness (musique) 2,05 0,22 9,20 2,74 8 2,99 Coordonn´ees 10,75 1,94 9,30 2,90 7,85 2,78 Dur´ee 10,2 2,50 9,7 2,2 10,5 2,63 Hotttness (artiste) 11,25 1,41 10,15 2.6 8 2,99

Le tableau 7 ci-dessus nous renseigne sur les statistiques des positions des treize attributs sur 20 initialisations. Les poids sont compris entre 0 et 1 et le tableau pr´esente les moyennes et les ´ecarts types des rangs des attributs sur 20 ex´ecutions.

Il convient de constater que quel que soit le seuil de RD’ utilis´e, les attributs “Mode” et “Artistes similaires” sont les attributs ayant les poids les plus importants. Inversement, la “po-pularit´e” de l’artiste ainsi que ses coordonn´ees sont les attributs les moins discriminants dans la d´etection d’´ev´enements. Les attributs avec des poids ´elev´es sont souvent les mˆemes malgr´e de petites variations dans le classement de tˆete, d’o`u un ´ecart type faible (cf. Tab.7). Par ailleurs, les attributs avec des poids faibles sont ´egalement souvent les mˆemes. Cela tend `a conforter l’hypoth`ese selon laquelle le mod`ele DANCE est stable (question de recherche no2, p.25) et qu’il existe une configuration optimale consistant `a maximiser certains poids.

2.3.4 Discussion

La conception d’un mod`ele `a base d’un algorithme g´en´etique nous a permis de pouvoir tester de nombreuses combinaisons de poids des attributs. Dans un premier temps, nous avons pu confirmer l’hypoth`ese de recherche no1 car les performances de d´etections obtenues ont ´et´e am´elior´ees. Pour un mˆeme seuil de RD’ (0,05) 2 000 sessions suppl´ementaires ont pu ˆetre ainsi d´etect´ees. De plus, dans un second temps, nous avons ´egalement constat´e qu’il est possible d’am´eliorer les capacit´es de pr´edictions de notre mod`ele.

Nous avons ´egalement d´emontr´e que l’hypoth`ese de recherche no2 est valide puisqu’il existe une stabilit´e dans les configurations des poids des attributs et ce, mˆeme apr`es plusieurs ex´ecutions de notre algorithme. Au fil de l’´etude sur la stabilit´e de notre mod`ele, nous avons ´egalement mis en ´evidence le fait qu’il existe une configuration optimale de certains poids tels que le ‘mode’ et les ‘artistes similaires’. Ce dernier constat nous a donc permis de valider notre hypoth`ese de recherche no3.

3 Conclusion et perspectives

3.1 Conclusion

Alors que l’impact positif de la diversit´e dans les syst`emes de recommandation n’est plus `

a d´emontrer, de nombreuses probl´ematiques se posent autour de cette dimension. Parmi les probl´ematiques dominantes, la prise en compte du besoin en diversit´e chez les utilisateurs a r´ecemment ´et´e ´etudi´ee par Castagnos et al. (2010). Ces derniers ont d´emontr´e que le besoin en diversit´e chez les utilisateurs n’est pas le mˆeme au cours du temps. Cependant, bien qu’ils aient propos´e un mod`ele indiquant dans quel contexte la diversit´e des items recommand´es de-vait ˆetre maximis´ee ou minimis´ee, d´etecter et caract´eriser ces contextes constituait un obstacle majeur. Dans ce m´emoire, nous avons pr´esent´e le mod`ele DANCE et ce dernier permettra `a terme d’outrepasser cet obstacle. Comme nous l’avons montr´e, le mod`ele DANCE permet d’une part, de mod´eliser l’´evolution de la diversit´e au cours du temps avec une complexit´e algorithmique moindre et d’autre part, d’ˆetre utilis´e afin de d´etecter les changements de contexte des utilisa-teurs. La force de notre mod`ele r´eside dans sa capacit´e `a pouvoir d´etecter les similarit´es et les dissimilarit´es qui existent entre les diff´erents contextes. En plus d’offrir de bonnes performances, notre mod`ele poss`ede l’avantage d’ˆetre respectueux de la vie priv´ee des utilisateurs. En effet, seules une connaissance des items et de l’heure `a laquelle ces derniers ont ´et´e consult´es suffisent `

a notre mod`ele, sur un historique de petite taille.

Dans ce m´emoire, nous avons donc propos´e un mod`ele formel, innovant et g´en´erique pour com-prendre le contexte de l’utilisateur en observant le niveau de diversit´e au sein de la s´equence de consultation. Il est consid´er´e comme g´en´erique car applicable `a tous les domaines, d`es lors qu’il est possible de caract´eriser les items sous forme d’attributs. Nous avons ´eprouv´e ce mod`ele sur la base d’un corpus musical de grande taille. En outre, nous avons propos´e un algorithme g´en´etique permettant `a la fois d’optimiser les performances de notre mod`ele, et de v´erifier sa stabilit´e. Nous avons ´egalement d´emontr´e la capacit´e de notre mod`ele `a pr´edire des ´ev´enements tels que les fins de sessions. Enfin, nous avons propos´e deux nouveaux concepts qui sont le contexte explicite et implicite, en nous inspirant des d´efinitions de l’´etat de l’art autour des

Documents relatifs