• Aucun résultat trouvé

Les relations de distance au sein des données (PS4)

3.3 Les données séquentielles : bruit, distance et influence pour la prédiction et la recomman-

3.3.2 Les relations de distance au sein des données (PS4)

Très rares sont les modèles permettant de modéliser explicitement les relations distantes au sein des données. La raison principale est la complexité des modèles permettant une telle modélisation. C’est d’ailleurs pour cette raison que ce sont des modèles n-grammes ou de Markov qui sont exploités dans la littérature, de même que des contraintes temporelles sont ajoutées dans les approches de fouille de données.

J’ai souhaité m’intéresser à la modélisation de relations distantes, à la fois dans des séquences de données, mais également dans une unique séquence de données.

Dans des séquences de données

Rappelons que dans le modèle SBR introduit ci-dessus, un historique de taille k d’un utilisateur est approché par un ensemble de n-grammes (skip-grammes) (avec n < k), et la taille de cet ensemble grandit lorsque n << k. Par conséquent, pour évaluer la probabilité d’items futurs (puis recommander ces derniers), les n-grammes composant l’historique et présents dans le modèle doivent être combinés.

Dans le cas où n << k, SBR permet de modéliser des relations distantes (dans la limite de k) entre items d’une séquence-type, tout en ayant une complexité limitée. Cependant, certains n-grammes identifiés dans l’historique peuvent être plus significatifs que d’autres. En particulier, nous pensons que le modèle n-grammes exploitant des items éloignés (en terme de distance dans l’historique) de l’item à prédire, ces derniers doivent avoir une importance moindre par rapport à celle de n-grammes plus proches. Nous avons pensé que tenir compte de cet éloignement, notamment lors de la combinaison des n-grammes, pourrait permettre d’améliorer la qualité de la prédiction.

Nous avons proposé plusieurs schémas de pondération, dont un schéma de décroissance linéaire et un schéma de décroissance exponentielle, fonction de la distance entre chaque élément qui compose les n-grammes et l’item à prédire [Bonnin et al., 2008a]. Nous avons par ailleurs proposé d’apprendre automatiquement les paramètres de ces deux schémas [Bonnin et al., 2009a]. Le schéma de décroissance exponentielle est celui qui améliore le plus, et significativement, les performances de l’état de l’art.

Le modèle SBR permet donc, en plus d’être résistant au bruit, de prendre en compte les relations distantes entre éléments de données séquentielles. Son avantage le plus prépondé-rant est sa faible complexité.

Dans une unique séquence de données

Plus récemment, je me suis de nouveau intéressée aux relations distantes au sein de données, mais dans un tout autre cadre. Ici, les données sont toujours des données séquentielles, mais se présentent sous la forme d’une unique séquence de données.

Dans le cas d’une séquence unique, on parle de fouille d’épisodes et de fouille de règles d’épisodes [Mannila et al., 1997], et les élements composant la séquence sont en général appelés des événements. La fouille d’épisodes a des difficultés qui lui sont propres, telle que la définition d’une mesure de fréquence. En effet, dans le cas de séquences de données, la fréquence est définie comme le nombre de séquences contenant le motif. Dans le cas d’une séquence unique, la fréquence correspond au nombre d’occurrences du motif dans la séquence. Des problèmes liés à l’entrelacement et à la superposition d’occurrences complexifient la tâche de fouille [Achar et al., 2012].

Par ailleurs, dans les séquences de données, la distance entre les éléments des données est naturellement limitée par la taille de la séquence. Dans le cas de séquences trop longues, une contrainte de span peut être exploitée. Dans le cas d’une unique séquence de données, par définition très longue, voire infinie (dans le cas de flux), il est impossible de fouiller des épisodes (ou des règles d’épisodes) dans la séquence entière. Non seulement le temps de fouille serait infini, de même que le nombre d’épisodes/règles fouillés. De plus, la significativé des épisodes/règles fouillés serait mise en doute. Par conséquent, les algorithmes de fouille d’épisodes/règles reposent systématiquement sur l’exploitation d’une contrainte de span. Plus la valeur du span est petite, plus l’algorithme sera rapide et moins il identifiera d’épisodes, mais plus la représentativité des épisodes et du modèle associé seront limitées. Par conséquent, la valeur du span exploité est généralement réduite, mais dans une certaine limite.

Dans certains phénomènes représentés par une unique séquence de données, certaines relations peuvent être distantes, même largement au delà de la valeur traditionnelle du span. Ces relations ne peuvent donc pas être identifiées par les algorithmes traditionnels.

J’ai souhaité travailler sur un algorithme de fouille de règles d’épisodes permettant de modéliser les relations distantes entre événements. En particulier, c’est une grande distance entre l’antécédent et la conséquence de la règle qui m’intéresse. Cette caractéristique permet, en terme de prédiction, de prédire des événements dont l’occurrence est lointaine.

Les algorithmes classiques de fouille de règles d’épisodes procèdent tous en deux étapes : 1) la fouille des épisodes, puis 2) la construction des règles. Les mesures de support et de confiance sont également utilisées pour la construction des épisodes et des règles d’épisodes, tout comme pour la fouille de motifs et de règles d’association. Le fait que ces algorithmes reposent sur une première étape de fouille d’épisodes a pour conséquence qu’ils ne sont pas adaptés à la fouille de règles avec une conséquence distante. En effet, lors de la construction des épisodes, qui se fait en post-fixant itérativement un événement à l’épisode en cours de construction, l’algorithme ne peut pas savoir si cet événement fera partie de la conséquence ou de l’antécédent de la règle formée dans une seconde étape. Par conséquent, l’algorithme ne peut pas décider s’il doit contraindre la distance entre l’événement ajouté à l’épisode et le reste de l’épisode. Le seul moyen pour ces algorithmes de fouiller des règles avec une conséquence distante nécessite de (1) fouiller tous les épisodes en utilisant un large span, (2) former toutes les règles confiantes, (3) filtrer les occurrences de ces règles en éliminant celles qui ne respectent pas la distance minimale. En raison du large span et du post-traitement, ce processus est très gourmand en temps d’exécution.

L’algorithme que j’ai conçu, en collaboration avec Lina Fahed, DEER (Distant and Essential Episode Rules) permet de fouiller de telles règles. Cela est rendu possible grâce à l’originalité de cet algorithme qui fouille les règles d’épisodes sans passer par une première étape de fouille d’épisodes, caractéristique qui permet également de limiter la complexité de la fouille de telles règles. Pour ne pas reposer sur la fouille d’épisodes, DEER fixe la conséquence de la règle très tôt dans le processus, et par conséquent, maîtrise sa distance à l’antécédent. C’est la connaissance de la conséquence pendant le processus de fouille qui permet de diminuer la complexité de l’algorithme. En effet, un très grand nombre d’élagages de règles candidates se fait lors du processus, diminuant ainsi de façon significative le temps d’exécution.

L’approche consistant à fixer la conséquence tôt dans le processus permet également de fouiller des règles dites essentielles. Une règle essentielle est une règle dont l’antécédent est minimal, c’est-à-dire, non seulement le plus petit possible en nombre d’événements le constituant, mais aussi en durée.

D’un point de vue applicatif, la fouille de règles avec une conséquence distante permet de prédire des éléments dans une séquence de données, très tôt avant leur occurrence, ce qui permet à des tiers de pouvoir réagir en cas de prédictions d’événements non souhaités. Les règles essentielles permettent de prédire la conséquence lorsqu’un nombre minimal d’éléments est apparu, impactant d’autant plus la distance entre l’antécédent et la conséquence.

Les données sur lesquelles nous avons travaillé ne sont plus des données de navigation Web, mais des données de publications sur le Web, et notamment de blogs. Les données, dans ce cadre, sont plus proches des données traditionnelles utilisées dans le cadre de la fouille de données séquentielles : un en-semble d’items à chaque pas de temps (le message posté). Les expérimentations menées ont confirmé que le temps d’exécution de DEER est très significativement inférieur à celui de l’état de l’art.

Des expérimentations supplémentaires ont été conduites, dans lesquelles DEER a été exploité mais pour former des règles dont la conséquence n’est pas distante de l’antécédent. DEER a également montré une amélioration significative du temps d’exécution, en raison d’un très grand nombre d’élagages au sein du processus. Nous en avons donc conclu qu’identifier la conséquence tôt dans le processus de fouille est un moyen de réduire significativement le temps de fouille requis.

Ce travail a été mené en collaboration avec Lina Fahed, durant sa thèse que j’ai co-encadrée, et a été publié en conférence internationale [Fahed et al., 2014a] et en journal international [Fahed et al., 2018].

L’algorithme DEER a une double originalité : DEER est le premier algorithme de l’état de l’art permettant de fouiller des règles sans passer par l’étape de fouille d’épisodes, ce qui a pour conséquence une diminution de la complexité en temps grâce au grand nombre d’élagages que cette caractéristique permet. Il est, par ailleurs, le premier algorithme de fouille de règles avec une conséquence distante.

Récemment, des travaux sur la fouille de règles d’épisodes composées d’éléments distants ont été proposés. Notamment [Ao et al., 2017], qui propose une distance fixe entre chaque élément des épisodes composant la règle, et notamment entre l’antécédent et la conséquence.