HAL Id: tel-02658677
https://tel.archives-ouvertes.fr/tel-02658677
Submitted on 3 Jun 2020HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come from teaching and research institutions in France or
L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires
séries temporelles
Maël Guilleme
To cite this version:
Maël Guilleme. Extraction de connaissances interprétables dans des séries temporelles. Informatique [cs]. Université de Rennes 1, 2019. Français. �tel-02658677�
T
HÈSE DE DOCTORAT DE
L’UNIVERSITÉ DE RENNES 1
COMUEUNIVERSITÉ BRETAGNE LOIRE
ÉCOLEDOCTORALEN° 601
Mathématiques et Sciences et Technologies de l’Information et de la Communication Spécialité : Informatique
Par
« Maël GUILLEMÉ »
« Extraction de connaissances interprétables dans des séries
temporelles »
Thèse présentée et soutenue à Rennes, le 16 décembre 2019 Unité de recherche : UMR 6074 IRISA
Rapporteurs avant soutenance :
Anne LAURENT Professeur, Université de Montpellier Bruno CRÉMILLEUX Professeur, Université de Caen-Normandie
Composition du Jury :
Président : Jacques NICOLAS Directeur de Recherche INRIA, INRIA RBA Examinateurs : Benoît FRENAY Professeur associé, Université de Namur
Benjamin NÉGREVERGNE Maître de conférences, Université de Paris-Dauphine Véronique MASSON Maître de conférences, Université de Rennes 1 Laurence ROZÉ Maître de conférences, INSA Rennes
Dir. de thèse : Alexandre TERMIER Professeur, Université de Rennes 1
R
EMERCIEMENTS
Je remercie d’abord Arnaud et Energiency sans qui cette thèse n’aurait jamais pu exister. Je remercie Arnaud pour la confiance qu’il m’a accordé dans ce projet et de son écoute tout au long de ces 3 années. Je remercie tous les collègues que j’ai côtoyé à Energiency au fil de cette thèse.
Je remercie l’ensemble de mes encadrant.e.s de Energiency. Erwan qui m’a guidé durant ma première année de thèse. Cérès dont le soutien et les conseils durant mes deux premières années m’ont été d’une aide incommensurable. Enfin, Aymeric qui m’a suivi sur l’ensemble de cette thèse et dont je remercie la bienveillance et l’écoute.
Je remercie les rapporteurs et les membres de mon jury d’avoir pris de leur temps pour évaluer ma thèse. Je remercie aussi l’ensemble des chercheurs extérieurs avec qui j’ai collaboré durant cette thèse. En particulier, Romain et Simon qui m’ont intégrer et accompagner dans leur travaux, et Esther qui a toujours été de très bon conseil sur ma recherche.
Je remercie l’ensemble des membres de l’équipe de recherche LACODAM, qui m’ont accueilli au cours de ces trois ans (et plus si je compte les multiples stages). Les permanents qui ont toujours été là pour répondre à mes questions. Les doctorants avec qui j’ai passé de très bons moments.
Je remercie en particulier les membres dont j’ai côtoyé le bureau tout au long de cette thèse. Yann qui m’a initié au végétarisme. Clément qui a toujours su m’aider quand j’avais une question. Grégory avec qui j’ai adoré discuter de politique et dont je dédie le titre de mon dernier travail. Anne-Isabelle dont la bonne humeur a toujours été rafraichissante. Enfin, Johanne dont le sourire, l’écoute et les histoires m’ont permis de tenir ma dernière année de thèse.
Je remercie mes encadrant.e.s de l’équipe. René dont les connaissances bibliogra-phiques m’ont bien aidé durant ma première année. Mon directeur Alexandre, pour son écoute et ses encouragements tout au long de ma thèse.
Je remercie particulièrement Véronique et Laurence, le meilleure duo d’encadrantes que j’aurais pu souhaiter avoir pour cette aventure. Elles ont toujours été là pour moi. Elles ont su me rassurer qu’en j’étais au plus bas et me pousser quand j’en avais
cette thèse.
Enfin, je souhaite remercier ma famille, ma mère Marie-Odile, mon petit frère Co-rentin et mon père Michel, qui ont été à mes côtés tout au long de cette thèse.
T
ABLE DES MATIÈRES
1 Introduction 9
1.1 Contributions . . . 10
1.2 Axes de la thèse . . . 12
I
État de l’art
15
2 Séries temporelles et fouille de données 16 2.1 Les séries temporelles . . . 162.1.1 Définitions d’une série temporelle . . . 17
2.1.2 Représentation des séries temporelles . . . 18
2.1.3 Mesure de distance entre des séries temporelles . . . 20
2.1.4 Tâches d’apprentissage automatique dans les séries temporelles 22 2.2 La découverte de régularités . . . 24
2.2.1 Découverte de motifs . . . 25
2.2.2 Découverte de règles temporelles . . . 27
2.3 La classification de séries temporelles . . . 30
2.3.1 Classification par similarité . . . 32
2.3.2 Classification par changement de représentation . . . 34
2.3.3 Classification par ensemble de classifieurs . . . 36
2.3.4 Classification par réseaux de neurones profonds . . . 37
3 Interprétabilité 39 3.1 Interprétabilité dans la classification . . . 40
3.1.1 Modèle interprétable . . . 41
3.1.2 Méthode d’explication par proxy . . . 42
3.2 Interprétabilité et classification de séries temporelles . . . 44
3.2.1 Classifieurs interprétables de séries temporelles . . . 45
3.2.3 Méthode d’explication par proxy de classifieur de séries
temporelles . . . 49
3.3 Évaluation de l’interprétabilité . . . 50
II
Recherche d’occurrences de règles temporelles dans des
sé-ries temporelles
51
4 Recherche d’occurrences élastiques de règles temporelles 52 4.1 Motivations . . . 524.2 Recherche d’occurrences élastiques de règles temporelles . . . 55
4.2.1 Mesures de distance élastiques . . . 55
4.2.2 Algorithme de recherche d’occurrences de règles temporelles . 59 4.3 Expérimentations . . . 65
4.3.1 Protocole expérimental . . . 65
4.3.2 Résultats . . . 66
4.4 Conclusion . . . 69
III
Classification de séries temporelles et interprétabilité
71
5 Classification de séries temporelles par shapelets aléatoires et localisées 72 5.1 Motivations . . . 72 5.2 Modèle LRS . . . 73 5.2.1 Modèle LRS . . . 74 5.2.2 Apprentissage du classifieur . . . 75 5.3 Du modèle LRS à l’explication . . . 79 5.4 Expérimentations . . . 84 5.4.1 Protocole expérimental . . . 845.4.2 Performance contre les méthodes de l’état de l’art . . . 86
5.4.3 Analyse de l’impact de la position des shapelets dans la classifi-cation . . . 87
5.5 Conclusion . . . 91
6 Explication locale et agnostique pour la classification de séries
TABLE DES MATIÈRES
6.1 Motivations . . . 93
6.2 Proxy interprétable et agnostique pour explication locale . . . 95
6.2.1 Fonctionnement général . . . 95
6.2.2 Parties communes de LIME et SHAP . . . 100
6.2.3 Parties spécifiques à LIME . . . 102
6.2.4 Parties spécifiques à SHAP . . . 103
6.3 Méthode LEFTIST . . . 105
6.3.1 Extraction de composants interprétables dans une série temporelle106 6.3.2 Transformation des voisins en séries temporelles . . . 107
6.4 Évaluation quantitative . . . 110
6.4.1 Protocole expérimental global . . . 110
6.4.2 Fidélité avec des classifieurs interprétables . . . 112
6.4.3 Fidélité avec des classifieurs non-interprétables . . . 116
6.5 Évaluation utilisateur . . . 125 6.5.1 Construction du questionnaire . . . 125 6.5.2 Résultats . . . 129 6.6 Conclusion . . . 130 7 Conclusion 133 7.1 Perspectives . . . 135
7.1.1 Seuil de distance guidé par l’utilisateur . . . 135
7.1.2 Composants interprétables et séries temporelles . . . 136
7.1.3 Évaluation de l’interprétabilité des explications . . . 137
CHAPITRE 1
I
NTRODUCTION
Ces dernières années ont vu l’émergence d’une nouvelle révolution dans l’industrie avec l’arrivée des objets connectés dans les systèmes de production [HPO16]. En ef-fet, les usines s’équipent progressivement de capteurs pour enregistrer en temps réel des informations sur le fonctionnement de leurs machines et de leurs infrastructures. Les informations récoltées couvrent un large panel de variables (ex : température, consommation d’électricité, état de fonctionnement, etc) et peuvent être numériques ou catégoriques (ex : "en marche"/"en panne"). Si les variables stockées sont numé-riques (comme c’est souvent le cas), alors elles sont représentées sous la forme de séries temporelles, c’est-à-dire une liste de valeurs horodatées. Toutes les données considérées dans cette thèse sont de ce type.
Le simple accès en temps réel à la valeur d’une variable et à son historique peut être suffisant pour certains usages. Cependant, les données contiennent de très nom-breuses informations qui peuvent être exploitées à différentes fins. Par exemple, si un capteur enregistre une anomalie dans un système (ex : un pic de température élevée dans une machine), alors l’historique des données peut avoir enregistré des signes précurseurs de cette anomalie. Cette information peut être utilisée pour construire un outil informatique capable, à partir des valeurs de ce capteur, de prédire l’anomalie. En informatique, le domaine de recherche qui s’intéresse à l’extraction de telles connais-sances s’appelle l’apprentissage automatique et consiste en l’apprentissage de mo-dèles informatiques à partir d’un ensemble de données pour réaliser une tâche définie. De très nombreuses applications dans d’autres domaines que l’industrie existent pour extraire des connaissances à partir des séries temporelles issues de capteurs. Il peut s’agir de la détection d’une anomalie dans un rythme cardiaque, la prédiction de la consommation d’un moteur, etc.
Energiency est une entreprise qui propose à des clients industriels une plate-forme accessible par internet qui récupère, met en forme, présente et analyse leur données industrielles issues de capteurs placés dans leurs infrastructures et leurs machines.
Ces données sont majoritairement des données d’énergie (eau, gaz, électricité) mais il peut aussi s’agir de données de production (ex : la vapeur produite par une chaudière). L’objectif d’Energiency est de proposer des solutions à leurs clients pour optimiser leur consommation d’énergie ou leur productivité à partir de connaissances extraites à partir de ces données. Par exemple, des machines défectueuses sont identifiées ou bien un nouveau planning est proposé pour améliorer la production. La plate-forme développée par Energiency s’adapte aux besoins des clients. Ainsi Energiency a déjà intégré dans sa plate-forme des modèles d’apprentissage automatique pour prédire la consommation d’énergie ou détecter des anomalies.
En général, l’application de modèles d’apprentissage automatique sur des sys-tèmes réels, utilisés par des utilisateurs non-experts en apprentissage automatique, fait face à deux problèmes importants :
— l’adaptation du modèle au cas d’application. En effet, un modèle utilisé pour prédire la consommation électrique d’une machine ne donnera pas les mêmes performances de prédiction s’il est utilisé pour prédire la consommation d’une autre machine ou la température dans une usine. Bien que la tâche soit la même et consiste à prédire une valeur numérique, le modèle doit prendre en compte les caractéristiques de la série temporelle considérée.
— l’interprétabilité du modèle, c’est-à-dire la capacité d’un modèle à expliquer ses résultats. En effet, les utilisateurs finaux peuvent prendre des décisions impor-tantes à partir des résultats du modèle. Sans explication, l’utilisateur est obligé d’accorder une confiance aveugle dans le modèle. Ce problème peut freiner son utilisation.
Dans cette thèse, nous explorons séparément ces deux problèmes sur deux tâches différentes d’apprentissage automatique sur des séries temporelles : la première sur la recherche d’occurrences de règles temporelles, et la seconde sur la classification.
1.1
Contributions
La premier problème qui nous intéresse est l’adaptation de la recherche d’occur-rences de règles temporelles dans des séries temporelles de consommation d’énergie d’infrastructures industrielles. Une règle temporelle est une connaissance qui permet de capturer des relations de succession entre des comportements répétés dans les séries temporelles (ex : plusieurs observations de la même suite de valeurs dans une
Introduction
série). Il s’agit en général de comportements réguliers de la source des séries tempo-relles (ex : l’observation des cycles de fonctionnement d’une machine dans sa courbe de consommation électrique). Le fait de découvrir des relations de succession entre ces comportements réguliers peut mettre en évidence des relations inconnues ou être utilisé pour prédire un comportement. Une des étapes essentielles à la découverte de règles temporelles est la recherche d’occurrences de règles temporelles.
Un système industriel (et réel en général) et ses capteurs sont affectés par de nombreux facteurs environnementaux (température, humidité, etc), matériels (défaut de conception, usure, etc) ou bien humains (mauvaise manipulation, etc) qui peuvent introduire des variations dans les valeurs capturées dans les séries temporelles. Ainsi, deux occurrences du même comportement produisent deux suites de valeurs légère-ment différentes. Par conséquent, la recherche des occurrences d’un comportelégère-ment régulier dans les séries temporelles nécessite de la flexibilité pour capturer cette va-riabilité. La première contribution de cette thèse est la proposition d’une méthode de recherche d’occurrences de règles temporelles capable de résister à cette variabilité dans des séries temporelles industrielles.
La second problème concerne l’interprétabilité des modèles de classification de sé-ries temporelles. Cette tâche implique que les sésé-ries temporelles tirées d’une source soient catégorisées, par exemple, les séries de consommation électrique d’une ma-chine peuvent être catégorisée selon les états de fonctionnement de cette mama-chine. La classification est la tâche consistant à associer à une nouvelle série temporelle sa catégorie. Notons que la problématique de l’interprétabilité de la classification de sé-ries temporelles s’étend au delà de l’application à des sésé-ries temporelles industrielles et concernent toutes les sources de séries temporelles (ex : électrocardiogramme, spectrogramme, capteur de position, etc).
Deux approches existent pour expliquer les résultats d’un classifieur de séries tem-porelles : les explications peuvent être extraites directement du classifieur (celui-ci est considéré comme interprétable), ou une méthode a posteriori est utilisée pour expli-quer les résultats du classifieur. Cependant, chaque approche fait face à une difficulté. Les classifieurs interprétables de séries temporelles existants ne font pas partie des meilleurs classifieurs. Les méthodes d’explication a posteriori de classifieurs de séries temporelles sont peu nombreuses et spécifiques à un type particulier de classifieur (ex : les réseaux de neurones). Cela limite leur utilisation car les types de classifieurs les plus performants ne sont pas les mêmes selon les types de jeux de séries
tempo-relles.
La seconde contribution de cette thèse est un classifieur interprétable LRS (Lo-calized Random Shapelet) dont l’objectif est d’être plus efficace que les classifieurs interprétables de l’état de l’art. Notre méthode repose sur la présence ou l’absence de sous-séries discriminantes dans les séries temporelles pour les classifier. Cette ap-proche est utilisée dans de nombreux classifieurs, mais jusqu’à présent celle-ci s’était contentée d’utiliser seulement la présence comme attribut de classification. Dans LRS, nous proposons d’utiliser la position des sous-séries discriminantes comme nouvel attribut de classification.
Enfin, le dernier travail de cette thèse comprend deux contributions. La troisième contribution est un processus pour expliquer a posteriori le résultat de n’importe quel classifieur pour une donnée spécifique. Ce processus, appelé PIAEL (Proxy Interpré-table et Agnostique pour Explication Locale), repose sur l’apprentissage d’un classi-fieur interprétable, nommé proxy, dont l’objectif est de retourner les mêmes résultats que le classifieur à expliquer. Les explications des résultats sont ensuite extraites à partir du proxy. Ce processus a été extrait à partir de deux méthodes d’explications a posteriori existantes LIME [RSG16] et SHAP [LL17]. La quatrième contribution de cette thèse définit, grâce au processus PIAEL, la première méthode capable d’expliquer, a posteriori, les résultats de n’importe quel classifieur de séries temporelles. Nous avons appelé cette méthode, LEFTIST (agnostic Local Explanation For TIme Series classifi-caTion).
Ces travaux ont donné lieu à trois publications [Gui+17 ; Gui+19b ; Gui+19c].
1.2
Axes de la thèse
La suite de ce manuscrit est organisée de la façon suivante. La première partie présente l’état de l’art en deux chapitres. Le chapitre 2 est dédié à la présentation
des séries temporelles, à la tâche de découverte de régularités (dont les règles tem-porelles) et à celle de classification de séries temporelles. Lechapitre 3 est consacré
à la présentation de l’interprétabilité, en particulier dans le cadre de la classification de données.
Puis, la seconde partie composée du chapitre 4 présente notre méthode de
re-cherche d’occurrences de règles temporelles dans des séries industrielles.
Introduction
classification de séries temporelles. Lechapitre 5 présente notre classifieur de séries
temporelles interprétable LRS, et lechapitre 6 présente le processus PIAEL et notre
méthode d’explication de résultats LEFTIST applicable sur n’importe quel classifieur de séries temporelles.
PREMIÈRE PARTIE
S
ÉRIES TEMPORELLES ET FOUILLE DE
DONNÉES
Les travaux présentés dans cette thèse traitent de l’apprentissage automatique dans des séries temporelles. Ce chapitre est consacré à la présentation des définitions concernant les séries temporelles et à l’état de l’art des méthodes d’apprentissage au-tomatique explorées dans cette thèse. La section 2.1 introduit les définitions et leurs utilisations dans la fouille de données. Puis la section 2.2 présente l’état de l’art des méthodes de découverte de régularités. Enfin, la section 2.3 est consacrée à l’état de l’art des méthodes de classification de séries temporelles.
2.1
Les séries temporelles
Une série temporelle se définit comme une séquence de valeurs continues ordon-nées, qui représente l’évolution d’une variable numérique dans le temps. Elle est la mesure d’un système évoluant dans le temps avec des attributs numériques : par exemple, les fonctions vitales d’un être humain ou animal (ECG, EEG, etc), les dé-placements d’un véhicule ou bien la valeur de l’action d’une entreprise. Une série tem-porelle est porteuse de nombreuses informations sur le système mesuré. Ces informa-tions peuvent être utilisées pour extraire des connaissances utiles à un utilisateur. La première partie de ce chapitre présente les définitions de base et les outils essentiels à la manipulation des séries temporelles.
En informatique, l’apprentissage automatique est la tâche qui consiste à extraire et à exploiter des connaissances à partir d’un ensemble de données (des séries tempo-relles dans notre cas). Cette tâche peut être divisée en différentes catégories selon la nature et l’utilisation des connaissances extraites. La seconde partie de cette section est consacrée à la présentation de ces catégories.
2.1. Les séries temporelles
2.1.1
Définitions d’une série temporelle
Il existe de nombreuses références dans la littérature qui définissent les notions de bases des séries temporelles. Dans notre cas, nous utilisons les définitions données dans [EA12] et dans lesquelles une série temporelle est définie de la manière suivante.
Definition 2.1.1. Série temporelle
Une série temporelle T est une séquence ordonnée de n valeurs réelles. T = (t1, . . . , tn),
avec ti ∈ R pour 1 ≤ i ≤ n.
Les valeurs des séries temporelles sont ordonnées selon une unité. Dans la grande majorité des cas, l’unité est le temps (les valeurs sont associées à des dates qui sont espacées uniformément dans le temps), mais il en existe d’autres (ex : la longueur d’onde dans les spectrogrammes). Une série temporelle peut être univariée (Défini-tion 6.3.1) ou multivariée quand nous disposons de plusieurs séries temporelles qui se déroulent sur le même intervalle de temps, chacune associée à une variable. Dans cette thèse, nous nous intéressons uniquement aux séries temporelles univariées.
Dans certaines tâches d’apprentissage automatique, il est nécessaire de considé-rer seulement une partie de la série temporelle, c’est-à-dire une sous-série.
Definition 2.1.2. Sous-série temporelle
Soit une série temporelle T = (t1, . . . , tn) de taille n. Une sous-série temporelle S de T est une série temporelle de taille m ≤ n composée de m valeurs consécutives de T
S = (ti, ti+1, . . . , ti+m−1)
avec 1 ≤ i ≤ n − m + 1. Nous notons Sm
T , l’ensemble de toutes les sous-séries de
taille m issues de T , ces sous-séries peuvent se superposer.
Les méthodes d’apprentissage automatique dans des séries temporelles sont gé-néralement confrontées à deux obstacles : la haute dimension des séries temporelles (une série peut être composée de millions de valeurs) et la mesure de similarité entre les séries temporelles. La solution pour le premier consiste à simplifier la représen-tation des séries temporelles sans perdre trop d’informations. Dans le second cas, il s’agit de trouver une mesure de distance capable d’approximer la similarité entre des séries temporelles souhaitée par l’utilisateur.
2.1.2
Représentation des séries temporelles
Nous appelons séries temporelles brutes, les séries issues directement des cap-teurs sans traitement. La haute dimension de séries temporelles brutes a des consé-quences négatives pour les méthodes d’apprentissage automatique : un temps de cal-cul prohibitif, une baisse des performances et une impossibilité d’expliquer les résul-tats. La solution pour résoudre ce problème consiste à réduire la dimensionalité des séries temporelles, en changeant la représentation des séries temporelles.
Nous distinguons trois types de changement de représentation d’une série tempo-relle (illustrés dans la Figure 2.1) : changement en une autre série tempotempo-relle, en une séquence symbolique, et en un vecteur numérique.
FIGURE2.1 – Les différents types de représentation de séries temporelles.
Représentation par une série temporelle
La représentation par une nouvelle série temporelle consiste à sélectionner ou cal-culer un sous-ensemble de points tout en conservant l’ordre des valeurs dans la nou-velle série.
La méthode la plus simple est sans doute l’échantillonage [Åst69] qui consiste à sélectionner les valeurs tous les n points dans la série temporelle. Il peut s’agir aussi de sélectionner seulement les points importants dans la série temporelle tels que les valeurs extrêmes [FG11] ou bien des valeurs pivots [Per+00].
Une autre approche consiste à découper les séries temporelles en intervalles consé-cutifs et à encoder chaque intervalle par la moyenne des valeurs de l’intervalle. Cette méthode a été introduite en même temps dans deux papiers sous le nom de Piecewise Aggregate Approximation (PAA) [KP00] et Segmented Means [YF00].
2.1. Les séries temporelles
Représentation par une séquence symbolique
Dans cette famille de changement de représentation, il s’agit de projeter le domaine des valeurs de la série temporelle dans un domaine discret, c’est la raison pour laquelle elles sont nommées discrétisation. Une série temporelle discrétisée est une séquence.
Definition 2.1.3. Séquence
Soit A = {a1, .., ak} un alphabet de k symboles. Une séquence Seq est une suite
or-donnée de m valeurs symboliques Seq = (seq1, ..., seqm), avec seqi ∈ A pour 1 ≤ i ≤ m.
Une discrétisation peut être réalisée point par point, comme par exemple dans [Bag+06] où chaque point est encodé par zéro ou par un selon si sa valeur est supérieure ou inférieure à la moyenne de la série.
Dans [Das+98], l’ensemble Sm
T de toutes les sous-séries possibles (cf. Définition 2.1.2)
de taille m est extrait de la série temporelle T . Les sous-séries sont ensuite regroupées dans K groupes de façon à ce que la similarité calculée entre les éléments d’un groupe soit faible et que celle calculée entre les éléments de groupes différents soit élevée. Chaque groupe est associé à un symbole qui est utilisé pour encoder l’ensemble des sous-séries présentes dans le groupe.
Une autre approche appelée SAX (introduite la première fois dans [Lin+02] puis formalisée dans [Lin+07]), découpe la série temporelle en intervalles successifs de même taille et non-superposés. La moyenne des valeurs de chaque intervalle est cal-culée (méthode PAA). La distribution des moyennes est divisée en K quantiles, chacun associé à un symbole. Les intervalles sont encodés par le symbole du quantile auquel appartient leur moyenne. Cette méthode suppose que la distribution des moyennes est gaussienne.
Enfin, dans [HS05 ; PC01], le domaine des valeurs à représenter est divisé en K intervalles successifs (ex : groupe 1 les valeurs de 0 à 3, groupe 2 les valeurs de 4 à 6, etc). Chaque intervalle est associé à un symbole qui encode les valeurs présentes dans l’intervalle. Cette représentation n’assure pas que les intervalles soient équipro-bablement répartis dans les groupes (à la différence de SAX).
Représentation par un vecteur numérique
Dans cette représentation, un ensemble de valeurs numériques est calculé à partir de la série temporelle pour la représenter. Ces valeurs ne sont pas obligatoirement
corrélées dans le temps. Différentes approches ont été proposées, certaines se basent sur la série temporelle initiale, d’autres sur une transformation préalable de la série temporelle.
Une approche issue du traitement du signal, consiste à passer les séries tempo-relles dans le domaine fréquentiel et à représenter les séries tempotempo-relles selon les coefficients issus de la transformation. Nous pouvons citer dans ce domaine la trans-formation de Fourier discrète [FRM94], la transtrans-formation en ondelettes [CF99 ; PM02 ; CFY03] ou la transformation en cosinus discrète [KJF97].
Une description plus complète de ces méthodes de changement de représentation, ainsi que d’autres propositions figurent dans [EA12 ; Fu11]. Nous présentons d’autres approches de représentation dans la section 2.3 et la section 2.2.
Dans cette thèse, les méthodes que nous proposons dans le chapitre 5 et le cha-pitre 6 utilisent des représentations en vecteurs numériques pour extraire à partir des séries temporelles des attributs compréhensibles pour l’utilisateur. Ces attributs sont ensuite utilisés pour fournir des explications sur les résultats de classifieurs de séries temporelles. Ces méthodes de changement de représentation sont présentées plus en détail dans la section 3.2 consacrée à l’explication des résultats de classifieurs de séries temporelles.
2.1.3
Mesure de distance entre des séries temporelles
La similarité entre des séries temporelles est une des propriétés les plus utilisées en apprentissage automatique sur des séries temporelles. Pour évaluer cette similarité, les méthodes utilisent une mesure de distance.
Definition 2.1.4. Mesure de distance
Soit ET un ensemble non-ordonné de séries temporelles. Une mesure de distance
D est une fonction D : ET × ET → R+ qui calcule la distance D entre deux séries
temporelles. Une distance vérifie trois propriétés :
— l’identité : ∀U, T des séries temporelles, D(U, T ) = 0 ⇔ U = T — la symétrie : ∀U, T des séries temporelles, D(U, T ) = D(T, U )
— l’inégalité triangulaire : ∀U, T, Q des séries temporelles, D(U, Q) ≤ D(U, T ) + D(T, Q)
2.1. Les séries temporelles
Definition 2.1.5. Distance euclidienne
Soit T et U deux séries temporelles de même taille n, la distance euclidienne se calcule de la manière suivante. Deuclidienne(T, U ) = v u u t n X i=1 (Ti− Ui)2
Avec Ti et Ui les valeurs respectives de T et de U à la date i.
consommation électrique (MWh)
temps (x 10 minutes)
(a) première série temporelle
consommation électrique (MWh)
temps (x 10 minutes)
(b) seconde série temporelle
FIGURE 2.2 – Deux séries temporelles qui se ressemblent fortement mais avec des
légères déformations.
Certaines mesures de distance peuvent être trop rigides pour évaluer la simila-rité entre deux séries temporelles. Prenons pour exemple les deux séries temporelles illustrées dans la Figure 2.2. Nous pouvons considérer que ces séries temporelles sont similaires car la variable évolue de la même manière mais avec de légers décalages temporels. De nombreux facteurs peuvent être la cause de ces décalages : une action de l’utilisateur sur la source des séries temporelles, l’environnement qui perturbe le capteur dont est extrait la série temporelle, etc. Par conséquent, il est rare que deux séries représentant le même phénomène soient parfaitement identiques. Ce sont ces perturbations qui pénalisent en particulier les mesures qui somment l’écart des valeurs entre des points à la même position dans les séries temporelles. En effet, il suffit de dé-caler, entre deux séries similaires, toutes les valeurs d’une des séries de deux ou trois
positions pour que la distance calculée soit élevée alors que les séries se ressemblent mais avec un décalage.
Pour règler ce problème, des mesures de distance élastiques ont été créées, dont la plus réputée est la déformation temporelle dynamique (Dynamic T ime W arping ou DTW). Introduite dans le domaine de la fouille de donnée par Berndt et Clifford [BC94], cette mesure est issue de travaux plus anciens en traitement du langage [Ita75 ; SC78]. DTW calcule l’alignement optimal, entre deux séries temporelles, qui minimise la dis-tance euclidienne calculée entre les points alignés. En réalité, DTW n’est pas réelle-ment une distance car elle ne respecte pas les propriétés de symétrie et d’inégalité triangulaire.
Des variations de DTW ont été proposées telle WDTW [JJO11] qui pondère les ali-gnements de DTW pour éviter des aliali-gnements anormaux (ex : aligner tous les points d’une série sur un unique point de l’autre série), ou DDTW [GL13] qui applique DTW sur les séries temporelles différenciées (c’est-à-dire des séries temporelles où chaque point est remplacé par sa dérivée locale). Enfin des approches alternatives de mesures de distance élastiques ont été proposées, en particulier celles basées sur la distance d’édition largement utilisée dans la comparaison de séquences génétiques. Cette me-sure introduit des décalages (des points sans valeurs) dans les séries temporelles pour décaler les points et aligner les séries temporelles de façon plus favorable. Comme mesures de distance à base de distance d’édition nous pouvons citer LCSS [Hir77], ERP [CN04], TWED [Mar07] ou MSM [SAD13].
Une description plus complète de ces mesures de distance ainsi que la présentation d’autres mesures de distance sont présentées dans [EA12 ; LB15].
2.1.4
Tâches d’apprentissage automatique dans les séries
tempo-relles
La partie précédente a introduit les définitions et concepts essentiels à la tâche d’apprentissage automatique dans des séries temporelles. Selon la nature et l’objectif de la tâche effectuée, nous la rangeons dans une des sept catégories suivantes :
— Description de séries temporelles
Cette tâche consiste à trouver une représentation des séries temporelles qui simplifie les séries temporelles tout en minimisant l’erreur de reconstruction de la représentation vers la série initiale.
2.1. Les séries temporelles
— Recherche de séries temporelles similaires à une série donnée
Cette tâche consiste à identifier les k séries temporelles les plus similaires à une série temporelle fournie par l’utilisateur. La similarité est calculée via une me-sure de distance (cf. section 2.1.3) appliquée sur les données brutes ou bien sur la représentation des données (cf. section 2.1.2). Les k séries temporelles dont la distance est la plus faible avec la série temporelle fournie sont retournées.
— Regroupement de séries temporelles
Le regroupement de séries temporelles (ou clustering en anglais) consiste à identifier K sous-ensembles dans un ensemble de séries temporelles. En gé-néral, un sous-ensemble est un groupe de séries temporelles dont les éléments sont similaires les uns avec les autres et dissimilaires avec les éléments des autres groupes.
— La prédiction
La prédiction consiste à prévoir les k futures valeurs d’une série temporelle à partir d’un instant t. Pour cela, les méthodes de régression s’appuient sur les valeurs passées de la série temporelle, ainsi que sur ses comportements régu-liers et périodiques tels que la saisonnalité ou la tendance.
— La détection d’anomalie
La détection d’anomalie consiste à identifier dans une série temporelle des sous-séries ou des points dont le comportement est différent du reste de la série temporelle. Il peut s’agir, par exemple, de valeurs aberrantes ou d’un décalage des valeurs sur un des axes.
— Découverte de régularités
La découverte de régularités consiste à découvrir des sous-séries qui sont re-dondantes dans les séries temporelles ou des relations rere-dondantes entre ces sous-séries.
— La classification
Un ensemble de séries temporelles peut être divisé en catégories, ou classes, connues. La classification d’une série temporelle consiste à associer une caté-gorie à une nouvelle série temporelle.
Les travaux dans cette thèse s’inscrivent dans les tâches de découverte de régula-rités et de classification dans des séries temporelles. La suite de ce chapitre, présente plus en détail ces deux tâches ainsi que leur état de l’art. La section 2.2 est dédiée à la tâche de découverte de régularités dont fait partie la découverte de règles
tempo-relles, et dans laquelle s’inscrit notre méthode de recherche d’occurrences élastiques de règles temporelles présentée de la Partie II. La section 2.3 est consacrée à la clas-sification de séries temporelles qui est le sujet de la Partie III.
2.2
La découverte de régularités
Cette section est consacrée à la présentation de l’état de l’art de la tâche de dé-couverte de régularités dans des séries temporelles. Les régularités dans les séries temporelles sont en général représentatives de comportements intéressants pour l’uti-lisateur.
Différentes régularités peuvent être découvertes dans une série temporelle. La pre-mière prend la forme d’une sous-série qui apparaît plusieurs fois dans la série tempo-relle (de façon périodique ou non). Nous la désignons par le terme motif. La seconde régularité, se construit à partir de motifs et représente la relation temporelle régulière entre les occurrences de deux motifs. Nous la désignons par le terme règle temporelle. Pour illustrer ces deux types de connaissances, imaginons que nous ayons à notre disposition la courbe de consommation électrique d’un foyer. Dans ce foyer, un four est régulièrement utilisé. En général, l’utilisation d’un appareil produit une sous-série particulière dans la courbe de consommation électrique. Et l’utilisation régulière fait que cette sous-série particulière apparait plusieurs fois et à différents moments dans la courbe de consommation globale. Ce comportement peut être capturé par un motif. Dans le cas des règles temporelles, imaginons cette fois que le foyer de notre exemple dispose d’une machine à laver et d’un séchoir électrique. Tout comme le four, ces deux appareils sont utilisés régulièrement et leurs fonctionnements peuvent être capturés par des motifs. Cependant, une connaissance supplémentaire peut être dé-couverte. En effet, le séchoir est en principe toujours utilisé après la machine à laver dans un laps de temps relativement court. Cette relation temporelle de succession des deux motifs est capturée par une règle temporelle.
La découverte de règles temporelles est donc indissociable de la découverte de motifs. La section 2.2.1 présente les méthodes pour découvrir des motifs dans des séries temporelles. La section 2.2.2 quant à elle a pour but de présenter les méthodes de découverte de règles temporelles dans des séries temporelles.
2.2. La découverte de régularités
2.2.1
Découverte de motifs
La définition d’un motif nécessite de définir deux éléments : l’occurrence d’une sous-série et son support.
Definition 2.2.1. Occurrence d’une sous-série
Soit une série temporelle T , une sous-série S issue de T et une mesure de distance D. Une occurrence O de S dans T est un triplet O = (Socc, d, f ). Socc est une sous-série de T telle que la distance D(S, Socc) ≤ thocc avec un seuil fixé thocc ∈ R. d, f ∈ N désignent
respectivement la date de début et la date de fin de l’occurrence Socc dans T . Definition 2.2.2. Support
Soit ES
T l’ensemble des occurrences de S dans T . Le support de S est suppS = |ETS|.
A présent, nous pouvons définir ce qu’est un motif.
Definition 2.2.3. Motif
Un motif de T est une sous-série S de T telle que le suppS ≥ thsupp où suppS est le
support des occurrences de S dans T , et thsupp ∈ N est un seuil donné.
En général, la taille des motifs à découvrir est fixée. Soit n la taille des motifs re-cherchés, la méthode naïve pour découvrir des motifs consiste à extraire toutes les sous-séries possibles de taille n dans la série temporelle, puis à calculer la matrice des distances entre toutes les paires possibles de sous-séries. Les colonnes et les lignes de la matrice sont les sous-séries, et les éléments de la matrice, les distances calcu-lées entre deux sous-séries. Pour une sous-série (une ligne de la matrice), le nombre de sous-séries dont la distance est inférieure au seuil donné thocc est déterminé
(sup-port de la sous-série). Les sous-séries dont le sup(sup-port est supérieur au seuil donné
thsupp sont conservées. Cependant, cette méthode n’est pas réaliste car l’espace de
recherche devient conséquent quand le nombre de sous-séries est grand.
Une première approche [Mue+09] restreint le problème en cherchant seulement les K paires dont les sous-séries sont les plus similaires. La méthode commence par sélectionner un sous-ensemble de sous-séries Estr, dites référentes. Pour toute
sous-série str appartenant à Estr, les distances entre str et toutes les autres sous-séries
sont calculées (calcul d’une ligne de la matrice). Si deux sous-séries st1 et st2 sont similaires alors pour toute série de référence str, la distance entre st1 et str est proche de celle entre st2 et str. L’heuristique utilisée dans [Mue+09] consiste à trouver les K paires qui vérifient au mieux cette propriété.
D’autres méthodes [Lin+02 ; CKL03 ; RT04 ; TIU05] découpent la série temporelle en sous-séries de taille fixe, représentées par des séquences à l’aide de la méthode SAX [Lin+02] (cf. section 2.1.2). Nous nommons cet ensemble de séquences Eseq. La
recherche est limitée aux K motifs avec les plus grands supports. Les méthodes se différencient ensuite sur l’heuristique pour extraire les motifs à partir de Eseq.
— Dans [Lin+02], une heuristique est utilisée pour calculer uniquement des parties de la matrice des distances entre séquences de Eseq;
— Dans [TIU05], la recherche des motifs les plus fréquents repose sur le principe MDL [BRY98] et consiste à trouver les séquences dans Eseq dont l’encodage
en bits n’est pas trop conséquent et permet de compresser au mieux la série temporelle ;
— Dans [RT04], un symbole supplémentaire X est ajouté à l’alphabet utilisé pour la transformation par SAX. Ce symbole a pour particularité de pouvoir remplacer n’importe quel autre symbole (une sorte de joker) dans une séquence de Eseq.
Un arbre est construit pour compter les occurrences des séquences de Eseq.
L’algorithme étend l’espace des séquences en s’autorisant le remplacement de tout symbole par le symbole joker X (cf. Figure 2.3). Les K séquences les plus fréquentes sont retournées comme résultat.
— Dans [CKL03], les séquences de Eseq sont d’abord comparées entre elles sur
certaines positions de symboles. La distance entre séquences est calculée uni-quement pour les paires de séquences qui ont statistiuni-quement le plus de sym-boles en commun.
ensemble des motifs possibles : 10 10 5 2 10 0 0 10 5 5 0 0 ... ... 27 ... ... ... ... ... ... ... ... ...... ... nombres d’occurrences
FIGURE 2.3 – Arbre utilisé pour compter toutes les sous-séries possibles de taille 3 à
partir de l’alphabet A = {A, B, C, D} ∪ {X} où X est le symbole joker, et A, B, C et D les symboles utilisés pour la représentation par SAX. Image extraite de [CKL03]
2.2. La découverte de régularités
Récemment, Zhu et al. [Zhu+17] déterminent pour toute sous-série st de la série temporelle, la sous-série stp la plus similaire précédant st et la sous-série sts la plus
similaire suivant st. Deux paires de valeurs sont associées à st :
— la position et la distance de la sous-série, parmi toutes celles qui précédent st dont la distance avec st est minimum ;
— parmi toutes les sous-séries qui suivent une sous-série, la position et la distance de la sous-série dont la distance est minimum avec la sous-série ;
Cette connaissance offre la possibilité de découvrir des ensembles de sous-séries similaires les unes des autres. En effet, en partant d’une sous-série nous connaissons la sous-série suivante la plus similaire, dont elle même nous connaissons la sous-série la plus similaire qui la suit, etc. Si les différences de distances entre les sous-séries sont petites, alors nous pouvons estimer que la première sous-série est assez similaire de la dernière sous-série de la chaîne. Cet enchaînement est nommé Time Series Chain et les auteurs étendent la définition d’un motif de cette sorte. À la différence de notre définition, une sous-série candidate en tant que motif n’est pas comparée à un ensemble de sous-séries dans le but d’y trouver ses occurrences, à la place les occurrences sont retrouvées en remontant la chaîne dans laquelle la sous-série candidate est présente. Comme la similarité est seulement évalué paire à paire, nous n’avons pas l’assurance que les sous-séries en bouts de chaîne soient similaires à la sous-série candidate.
Cette section a présenté la découverte de motifs dans des séries temporelles. La section suivante présente la découverte de règles temporelles à partir de la notion de motifs.
2.2.2
Découverte de règles temporelles
Une règle temporelle exprime une relation de succession, bornée dans le temps, entre deux motifs. Elle permet de décrire une nouvelle connaissance dans une série temporelle.
Initialement, la découverte de règles a été appliquée sur des bases de transac-tions [AIS93]. Une base de transactransac-tions est un ensemble de transactransac-tions, où chacune est un ensemble d’objets associé à un identifiant. L’exemple le plus connu est un en-semble de tickets de caisse de supermarché, où chaque transaction correspond à un ticket de caisse et à la liste d’achats associée. Les règles dites d’association
dé-couvrent des achats corrélés entre des ensembles de produits, mais ne prennent pas en compte l’aspect temporel. Les premières méthodes n’ont considéré cet aspect que sur des séquences [AS95 ; MTV97]. La découverte de règles temporelles dans des séries temporelles est apparue ensuite [Das+98].
Nous définissons une règle temporelle dans une série temporelle de la manière suivante.
Definition 2.2.4. Règle temporelle
Soit une série temporelle T . Une règle temporelle R est un triplet R = (A, C, p) où : — A est un motif, avec Oi
A= (SAi , di, fi)une occurrence de A dans T ;
— C est un motif, avec OjC = (SCj, dj, fj)une occurrence de C dans T ;
— p est une contrainte de temps.
R est une règle temporelle si : ∃ER
T = {(OiA, O j
C) | (dj− fi) vérif ie p}tel que |ETR| ≥ thRoù un thR∈ N
Le motif A est appelé l’antécédent, le motif C le conséquent et ER
T l’ensemble des
occurrences de la règle temporelle R. Une règle se note de la façon suivante :
A−→ Cp
Par conséquent, deux paramètres sont nécessaires pour trouver un ensemble de règles temporelles : p, une contrainte de temps entre l’antécédent et le conséquent, et
thR, le seuil minimum d’occurrences des règles. La contrainte de temps peut être la
durée minimum ou bien la durée maximum entre l’antécédent et le conséquent.
En général, l’utilisation de ces deux paramètres seuls retourne un très grand nombre de règles, sans fournir d’information sur leur pertinence. Cela a pour conséquence de laisser à l’utilisateur la tâche de trouver les règles qui sont intéressantes. Pour résoudre ce problème, les méthodes de découverte de règles temporelles ont introduit des me-sures d’intérêt pour trier et restituer les règles les plus intéressantes à l’utilisateur. La mesure d’intérêt la plus connue est la confiance [AIS93].
Definition 2.2.5. Confiance
Soit une règle temporelle R = (A, C, p) de T , l’ensemble ETRde ses occurrences dans
T et EA
T l’ensemble des occurrences du motif A dans T . La confiance de R se calcule
de la manière suivante : conf ianceR= |ER T| |EA T|
2.2. La découverte de régularités
La confiance permet d’éliminer les règles dont la découverte est due à un motif antécédent surreprésenté dans la série temporelle (qui a donc plus de chance d’être associé avec les autres motifs). Elle est utilisée dans de nombreuses méthodes de découverte de règles temporelles [Höp01 ; JLS02 ; CS02].
Dans [Das+98], la mesure d’intérêt est la J-mesure [SG91] qui se base sur les probabilités d’apparition de l’antécédent et du conséquent. Un ensemble de mesures d’intérêt est présenté dans [GH06].
Différentes stratégies ont été proposées pour la découverte de règles temporelles dans une série temporelle. La toute première, définie dans [Das+98], extrait des règles temporelles à partir de la série temporelle discrétisée en une séquence. Dans cette discrétisation, l’ensemble des sous-séries de taille n sont extraites à partir de la série temporelle. Chaque sous-série est ensuite associée à un symbole via une méthode de regroupement (cf. section 2.1.2). La recherche de règles temporelles consiste à énu-mérer toutes les paires de symboles possibles dans la série discrétisée. Si le nombre de leurs occurrences vérifiant la contrainte de temps p est supérieur au seuil thR, alors
la paire est considérée comme une règle temporelle. Les paramètres sont fixés par l’utilisateur.
Une autre stratégie de découverte de règles, repose sur la construction d’un arbre à partir de la série temporelle discrétisée. En effet, un arbre est une connaissance qui peut représenter un ensemble de règles (un chemin dans un arbre peut être écrit sous la forme d’une règle). Dans [PC01], le domaine des valeurs de la série temporelle est divisé en un nombre fini d’intervalles, chaque intervalle étant associé à un symbole. La série temporelle est discrétisée en remplaçant chaque valeur par le symbole de l’intervalle auquel elle appartient. La séquence est ensuite compressée en remplaçant les sous-séquences de même symbole (ex : une suite de A) par une seule occurrence du symbole (ex : (A, A, A, B, B, C) devient (A, B, C)). À partir de cette séquence un arbre est appris pour stocker et compter toutes les sous-séquences de taille n (de la même façon que la méthode illustrée dans la Figure 2.3). Pour chaque nœud de l’arbre, les règles associées ont toutes pour antécédent la suite de symboles de la racine au nœud. Le conséquent de chaque règle correspond à la suite de symboles du nœud à l’une des feuilles. L’arbre est utilisé pour calculer la confiance de chaque règle.
Dans [LKK01], la série temporelle est segmentée en intervalles selon ses ten-dances successives. Pour chaque intervalle, un ensemble de variables est calculé (pente, fluctuation et durée). Un modèle est ensuite appris pour prédire la durée d’un
intervalle à partir de l’intervalle précédent. Pour finir, un ensemble de règles tempo-relles est tiré du modèle.
Une dernière approche de découverte de règles temporelles consiste à générer un ensemble de règles et à les évaluer a posteriori. Dans [HS05], la série tempo-relle est discrétisée puis un algorithme génétique est utilisé pour générer un ensemble de règles. Les occurrences des règles sont ensuite cherchées dans la série discré-tisée pour les évaluer. Dans [Sho+15], un motif est extrait de la série temporelle par une préroutine (MK algorithm [Mue+09]) et est utilisé pour générer un ensemble de règles candidates. La génération d’une règle temporelle consiste à séparer le motif en deux parties, à une position donnée. Le sous-motif gauche devient l’antécédent et le sous-motif droit le conséquent. Un ensemble de règles temporelles est généré en découpant le motif à différentes positions uniformément réparties. L’évaluation d’une règle consiste à rechercher les occurrences de la règle dans la série temporelle et à calculer un score inspiré de MDL [BRY98] à partir des occurrences. La règle avec le score le plus élevé est retournée. Il s’agit d’une des rares méthodes qui découvre des règles temporelles sans changer la représentation des séries temporelles.
Le chapitre 4 présente une amélioration de la recherche d’occurrences de règles dans cette dernière méthode.
2.3
La classification de séries temporelles
La classification de séries temporelles consiste à associer à une série temporelle une classe.
Definition 2.3.1. Ensemble de classes
Un ensemble de classes correspond à une partition d’un ensemble de données se-lon une propriété cible. Chaque sous-ensemble de données est associé à une valeur particulière de cette propriété cible, appelée classe. Le nombre de classes est fini.
L’association d’une classe à une nouvelle donnée est confiée à un classifieur qui a été appris sur un ensemble de séries temporelles donné, appelé aussi ensemble d’apprentissage.
Definition 2.3.2. Classifieur
2.3. La classification de séries temporelles
fonction f : X → [0, 1]|Y | qui associe à une donnée les probabilités d’appartenir à chaque classe. La somme des probabilités doit être égale à 1. Selon les modèles, le résultat retourné est le vecteur des probabilités d’appartenance à chaque classe, ou bien la classe majoritaire.
Un classifieur est généralement évalué sur sa précision.
Definition 2.3.3. Précision
Soit f un classifieur déjà appris et D un ensemble de données dont nous connaissons la classe. La précision de f sur T se calcule de la manière suivante :
précision(f, D) = T P
|D|
avec T P le nombre de données dans D dont la classe retournée par f est la même que celle associée la donnée.
Il existe deux approches pour apprendre un classifieur. La première approche, dite supervisée, apprend le classifieur sur un ensemble de données dont la classe de chaque élément est connue. La seconde, dite non-supervisée, raisonne sur un en-semble de données de classe inconnue. L’apprentissage a la tâche supplémentaire de définir lui-même l’ensemble des classes. Dans le cadre de cette thèse, nous nous intéressons uniquement aux méthodes supervisées de classification de séries tempo-relles.
La classification de séries temporelles est un domaine de recherche vaste et diver-sifié. Nous identifions quatre grandes familles de classification de séries temporelles :
— la classification par similarité, qui repose sur le calcul d’une distance entre des séries temporelles ;
— la classification par changement de représentation, qui repose sur la projection des séries temporelles dans un nouvel espace de représentation où la classifi-cation est réalisée ;
— la classification par ensemble, qui repose sur l’apprentissage d’un ensemble de classifieurs dont les résultats sont combinés pour obtenir une classe ;
— la classification par réseaux profonds, qui utilise les dernières avancées dans l’apprentissage par réseaux de neurones.
La suite est consacrée à la présentation de chaque famille de méthodes de classi-fication de séries temporelles.
2.3.1
Classification par similarité
Dans certains jeux de données, les séries temporelles brutes sont suffisamment caractéristiques pour permettre d’identifier leur classe. Ainsi, deux séries temporelles qui se ressemblent ont de grande chance de partager la même classe. Cette informa-tion peut être utilisée pour classifier une nouvelle série temporelle en lui associant la classe de la série temporelle qui lui ressemble le plus. Nous identifions deux approches dans cette famille selon la portée de la similarité : globale (les séries temporelles sont comparées entièrement) ou locale (la ressemblance concerne uniquement une ou plu-sieurs sous-séries dans les séries temporelles).
Classification par similarité globale
Les méthodes de classification par similarité globale reposent sur la méthode des plus proches voisins. L’algorithme consiste à utiliser une mesure de distance pour cal-culer les distances entre la nouvelle série à classifier et l’ensemble des séries d’ap-prentissage. Les k séries dont les distances sont les plus faibles avec la nouvelle série sont sélectionnées. La classe retournée pour la nouvelle série est la classe majoritaire associée aux k séries. Comme l’algorithme est le même pour toutes, les méthodes de classification se distinguent par la mesure de distance utilisée. Toutes les mesures de distances que nous avons présentées dans la section 2.1.3 ont été proposées dans le contexte de la classification par la méthode des plus proches voisins.
Classification par similarité locale
Dans certains jeux de données l’information pour discriminer une série temporelle peut se réduire à la présence ou l’absence d’une ou plusieurs sous-séries caractéris-tiques. Par exemple, une machine peut être classée défectueuse quand nous obser-vons la présence de pics de consommation électrique anormaux dans sa courbe de consommation. Ces perturbations peuvent passer inaperçues pour les méthodes de classification par similarité globale, car leur impact sur les distances calculées avec la série temporelle entière peut être minime. Cependant si nous prenons en compte uniquement la présence ou l’absence de ces sous-séries caractéristiques, il est alors possible de les classifier. Ces sous-séries caractéristiques ont été nommées shapelet et introduites pour la première fois dans [YK09].
2.3. La classification de séries temporelles
Une shapelet S = (s1, . . . , sl) est une sous-série de taille l qui est extraite (ou
ap-prise [Gra+14]) à partir d’un ensemble de séries temporelles. Soit une série temporelle
T = (t1, . . . , tL) de taille L, la distance entre S et T se calcule de la manière suivante :
dST = min 1≤j≤L−l+1 v u u t l X i=1 (si− ti+j−1)2. (2.1)
Il s’agit de calculer la distance euclidienne entre S et toutes les sous-séries (de taille l) dans T et de conserver la distance minimale (qui correspond à la sous-série qui ressemble le plus à S).
Il existe deux approches de classification de séries temporelles à l’aide de sha-pelets. La première consiste à construire un arbre de décision en partitionant itérati-vement les séries temporelles d’apprentissage selon leur distance avec un ensemble de shapelets. À chaque nouvelle partition, l’algorithme énumère toutes les sous-séries possibles dans les séries d’apprentissage et conserve la sous-série qui discrimine le mieux les séries d’apprentissage en utilisant l’entropie [YK09]. Dans [KR13], ce pro-cessus est accéléré en changeant la représentation des sous-séries explorées en mots via la méthode SAX [Lin+07]. La sous-série trouvée est enregistrée en tant que sha-pelet ainsi que le seuil de distance avec cette shasha-pelet qui permet de discriminer les séries temporelles. Ces informations sont utilisées pour permettre la classification des futures séries temporelles. Le partitionnement continue jusqu’à ce que toutes les sé-ries temporelles d’une partition soient de la même classe. Cette classe est associée à cette partition et à toutes les futures séries temporelles classifiées dans cette partition. La seconde approche consiste à représenter les séries temporelles via leurs dis-tances avec K shapelets. Soit un ensemble D = {S1, . . . , SK} de K shapelets, la
transformation à base de shapelets a été introduite pour la première fois dans [Lin+12]. Cette technique consiste à représenter T en un vecteur vT = (dST1, . . . , d
SK
T ) avec d Si
T
la distance entre la shapelet Si et T , pour tout 1 ≤ i ≤ K. Cette représentation est
ensuite utilisée pour apprendre des classifieurs classiques telles que une machine à vecteur de supports ou une forêt d’arbre de décisions aléatoire [Lin+12 ; Gra+14 ; BB15 ; KPB16]. Plusieurs stratégies ont été proposées pour identifier les K meilleures shapelets :
— énumérer toutes les sous-séries possibles dans les séries d’apprentissage, et conserver les shapelets qui discriminent le mieux les séries d’apprentissage selon leur distance (celles avec la meilleure entropie, par exemple [Lin+12]) ;
— créer les shapelets optimales pendant l’apprentissage du classifieur [Gra+14] ; — tirer un grand nombre aléatoire de shapelets dans toutes les sous-séries
pos-sibles issues des séries de l’ensemble d’apprentissage. Un classifieur qui in-tègre une phase de sélection d’attributs est utilisé pour conserver les shapelets les plus utiles [Ren+15 ; KPB16].
L’intérêt de cette dernière stratégie est d’être moins coûteuse en ressources (en par-ticulier sur les gros jeux de données) car la sélection des shapelets est intégrée dans l’apprentissage du classifieur. Dans [Ren+15], il a été montré que quelques milliers de shapelets suffisent pour atteindre les performances de classification des méthodes de l’état de l’art sur les jeux de données standards.
2.3.2
Classification par changement de représentation
Dans cette partie, nous présentons les classifieurs de séries temporelles qui re-posent principalement sur le changement de représentation des séries temporelles pour les classifier. Nous avons vu dans la partie précédente que la transformation à base de shapelets est une approche parmi ces méthodes. Nous identifions deux autres approches parmi les classifieurs avec changement de représentation. La première uti-lise un dictionnaire de sous-séries pour encoder les séries temporelles. La seconde représente les séries temporelles par des attributs calculés sur un ensemble d’inter-valles extraits des séries temporelles.
Changement de représentation par dictionnaire
La classification à base de dictionnaire s’inspire d’une méthode utilisée en traite-ment de texte, appelée sac de mots. Elle consiste à représenter un texte selon le nombre d’occurrences des mots présents dans un dictionnaire. Cette représentation prend la forme d’un histogramme qui est ensuite utilisé pour indexer, regrouper ou classer les documents.
L’application de cette technique sur les séries temporelles repose sur la transfor-mation des séries temporelles en ensembles de mots. Pour cela les séries tempo-relles sont découpées en intervalles réguliers et consécutifs. Chaque intervalle est ensuite encodé en un mot. Dans toutes les méthodes, les séries temporelles sont découpées en intervalles via une fenêtre glissante dont la taille est fixée par l’utili-sateur. Les méthodes se différencient ensuite sur la façon de représenter les
inter-2.3. La classification de séries temporelles
valles en mots et la façon de classifier les histogrammes. Dans [LKL12 ; SM13], les intervalles sont transformés en chaînes de caractères via la méthode de discrétisa-tion SAX [Lin+02]. Dans [Sch15], les auteurs ont développé leur propre méthode de discrétisation reposant sur la transformation de Fourier discrète. Enfin dans [Bai+15], la méthode SIFT [Low99] utilisée pour la description d’images est adaptée aux séries temporelles pour décrire les intervalles.
Une fois les séries temporelles transformées en séquences de mots, un diction-naire est extrait en listant l’ensemble des mots utilisés dans les séries temporelles. Chaque série temporelle est ensuite représentée en histogramme du nombre d’occur-rences de chaque mot du dictionnaire dans la série temporelle. Cette représentation est utilisée pour la classification des séries temporelles. Dans [LKL12 ; Sch15], une sé-rie temporelle est classifiée par la classe de la sésé-rie temporelle dont l’histogramme est le plus similaire à celui de la série classifiée. Dans [SM13], un histogramme est calculé par classe, une série est classfiée par la classe dont l’histogramme est le plus simi-laire au sien. Les mesures de distance utilisées sont la distance Euclidienne [LKL12], la distance cosinus [SM13] ou une mesure de distance personnalisée [Sch15]. À la différence des autres méthodes, un classifieur SVM est appris sur les histogrammes dans [Bai+15].
Changement de représentation par intervalles de temps fixe
Dans certains jeux de données, l’information pour discriminer les séries tempo-relles peut s’extraire dans un intervalle de temps fixe dans les séries tempotempo-relles. Par exemple, nous pouvons différencier les courbes de consommation électrique journa-lière d’une machine à café avec celle d’un four en observant uniquement la consom-mation le matin. En effet, la machine à café est régulièrement utilisée le matin alors que le four l’est beaucoup moins. Les méthodes présentées dans cette partie repré-sentent les séries temporelles via des attributs extraits à partir d’intervalles de temps fixes (ex : la sous-série du matin dans notre exemple précédent). Ces représentations sont ensuite utilisées pour classifier les séries temporelles.
Le premier obstacle dans cette technique est d’identifier les intervalles de temps pertinents pour représenter les séries temporelles. Pour résoudre ce problème, les mé-thodes présentées [Den+13 ; BRT13 ; BR16] sélectionnent aléatoirement les bornes de
kd’intervalles de temps. Puis, un classifieur intègre une phase de sélection d’attributs pour conserver les intervalles de temps les plus utiles.
Une fois les bornes des k intervalles de temps extraits, le changement de repré-sentation et la classification des séries temporelles peut commencer.
Dans [Den+13], chaque série temporelle est représentée par la concaténation d’at-tributs calculés sur ses valeurs présentes dans chaque intervalle de temps. Les attri-buts calculés sont la moyenne, l’écart type et la pente. Un classifieur est appris pour chaque attribut de chaque intervalle sur les représentations des séries temporelles de l’apprentissage. Lors de la classification d’une nouvelle série temporelle, cette dernière est transformée de la même façon que précédemment. Pour chaque valeur d’attribut une classe est retournée et la classe majoritaire est retournée pour la série temporelle. D’autres propositions [BRT13 ; BR16], extraient toutes les sous-séries dans les séries d’apprentissage correspondant aux k intervalles de temps sélectionnés. Pour chaque intervalle de temps, un arbre de décision [BRT13] ou un arbre de régres-sion [BR16] est appris sur les sous-séries de l’intervalle. Ces arbres sont utilisés pour définir un nouvel ensemble d’attributs pour chaque intervalle. Chaque série est ensuite représentée en concaténant les attributs de ses sous-séries. Enfin, une forêt aléatoire d’arbres décisionnels est apprise sur les représentations des séries d’apprentissage.
2.3.3
Classification par ensemble de classifieurs
Les méthodes de classification par ensemble reposent sur l’idée de combiner plu-sieurs classifieurs pour créer un unique classifieur plus performant. Selon les mé-thodes, les classifieurs utilisés sont les mêmes mais appris sur différents sous-ensembles des données d’apprentissage, ou bien sont des classifieurs différents appris sur l’en-semble des données d’apprentissage. La combinaison des classifieurs repose sur la mise en commun des résultats de chaque classifieur pour obtenir un unique résul-tat. Différentes approches sont proposées telles que retourner la classe majoritaire ou apprendre une pondération des résultats de chaque classifieur.
Il existe des méthodes ensemblistes dans toutes les grandes familles de classifica-tion de séries temporelles présentées précédemment. La méthode proposée dans [LB15] combine 11 classifieurs par similarité globale qui sont tous des classifieurs du type le plus proche voisin avec une mesure de distance différente. Dans [BB15], une mé-thode transformant les séries temporelles par des shapelets combine les résultats de 7 classifieurs différents appris sur la représentation des séries d’apprentissage. Dans [Sch15], plusieurs classifieurs sont appris sur différentes représentations par
dic-2.3. La classification de séries temporelles
tionnaire des séries d’apprentissage. Les dictionnaires se différencient selon la taille des intervalles utilisée pour segmenter les séries temporelles.
D’autres propositions de méthodes ensemblistes combinent les classifieurs issus de différentes familles de classifieurs. Dans [LB15], les auteurs combinent un clas-sifieur par similarité globale utilisant DTW et un clasclas-sifieur à base de dictionnaire. Dans [Bag+15] une méthode ensembliste par similarité globale est combinée avec des classifieurs qui utilisent différentes représentations des séries temporelles. Cette méthode est étendue dans [LTB18] par l’ajout de méthodes de classification avec chan-gement de représentation par dictionnaire et par intervalle.
2.3.4
Classification par réseaux de neurones profonds
Un réseau de neurones est un modèle qui s’inspire du fonctionnement du cerveau. Il s’agit de l’interconnexion en couches successives de plusieurs fonctions mathéma-tiques simples (symbolisant les neurones). La première couche reçoit en entrée les données et la dernière retourne le résultat. Chaque connexion entre les neurones est pondérée et l’apprentissage du modèle consiste à optimiser les poids sur l’ensemble du réseau. Ce qui différencie un réseau de neurones d’un autre est la structure du réseau, la méthode d’apprentissage des poids et les fonctions utilisées dans les neu-rones. En classification de séries temporelles, le réseau prend en entrées des séries temporelles entières et retourne des probabilités de classification.
Récemment, Fawaz et al. [Faw+19] ont montré que différentes architectures de réseaux neurones pouvaient atteindre la même performance que les classifieurs de séries temporelles de l’état de l’art (par exemple, RESNET [WYO17]).