Le principe de la chaîne de traitements

Chaîne de traitements

Introduite dans l'analyse de données par SPAD au début des années 90, à une époque où on ne parlait pas encore de Data Mining, la chaîne de traitements (filière, diagramme de traitements, etc.) matérialise la succession des opérations effectuées sur les données par un graphe où (1) les sommets (un opérateur, un composant, un noeud, etc.) représentent des analyses effectuées sur les données ; (2) les liens entre les sommets, le flux des données traitées.

Le principal attrait de cette représentation est sa clarté, il réside aussi dans la possibilité d'enchaîner facilement des traitements sur des données générées par certaines méthodes : par exemple, effectuer un clustering en utilisant les axes factoriels issus d'une analyse des correspondances. Bien entendu, avec les logiciels gérant un langage de script, ce type d'analyse est très facilement réalisable, encore faut-il que le chargé d'étude ait le temps et l'envie de se plonger dans un nouveau langage informatique. Certains d'ailleurs qualifient la représentation en chaîne de traitements de programmation visuelle, terminologie un peu pompeuse dans la mesure où, mise à part la succession d'opérations, aucune structure algorithmique usuelle (boucles avec contrôle, branchements conditionnels) n'est réellement mise en oeuvre. En tous les cas, ce mode de représentation est aujourd'hui devenu un paradigme incontournable, la plupart des éditeurs de logiciels l'ont adopté (cf. STATISTICA DATA MINER, INSIGHTFULL MINER, SAS EM, SPSS CLEMENTINE, etc.).

Dans TANAGRA, la structure du graphe a été simplifiée, nous avons choisi une forme arborescente. Une seule source de données est donc possible, l'utilisateur doit les préparer convenablement avant de les importer. Ce choix a pour principale conséquence : pour les utilisateurs, une lecture facilitée des traitements réellement effectués ; pour les programmeurs, des classes plus simples avec des contrôles d'intégrité des données réduits.

La structure arborescente permet de procéder en parallèle à plusieurs analyses concomitantes sur le même ensemble de données. Cela peut se révéler très utile si l'on veut par exemple comparer les performances de plusieurs algorithmes de prédiction.

Opérateur(s)

L'opérateur (composant) est donc un élément clé du dispositif, il représente un traitement effectué sur les données. Le premier opérateur est toujours une connexion à un ensemble de données, de type individus-variables. Celui-ci est placé automatiquement au sommet de la chaîne par un wizard d'importation.

Plusieurs types de résultats sont alors possibles lorsque l'on place les opérateurs suivants, chaque opérateur est bien entendu paramétrable :
(a) des résultats analytiques qui décrivent les données, ou encore une modélisation ;
(b) une restriction ou un élargissement des individus actifs dans la chaîne de traitements ;
(c) une restriction ou un élargissement des variables actives dans la chaîne de traitements ;
(d) la production de nouvelles variables, ajoutées à l'ensemble de données.


Compatibilités des opérateurs

De manière générale, les opérateurs se placent les uns à la suite des autres dans une chaîne de traitements, il y a deux niveaux de contrôle : lors du placement d'un opérateur, lors de l'exécution de la chaîne.

Deux familles d'opérateurs ont un comportement un peu différent des autres : apprentissage supervisé et méta-apprentissage supervisé. Vu les spécificités de ces méthodes, le mode de fonctionnement est le suivant : on doit d'abord placer sur la chaîne un composant " méta ", qui sert de support en quelque sorte (apprentissage simple ou encore méthodes d'agrégation), ensuite on y intègre l'opérateur " apprentissage " (analyse discriminante, arbre de décision, etc.). Cela permet de démultiplier les combinaisons, il est par exemple possible de procéder à un boosting sur un perceptron multicouches, ce n'est pas trop conseillé mais en tous les cas, on peut le faire.


Dernière modification : 12 janvier 2004.