Partager :

Concepts Fondamentaux en Statistique


Data Mining :

Règles d'Association ou la Problématique du Panier de la Ménagère



Sommaire :


Introduction

L'objectif des techniques décrites dans cette section consiste à détecter des relations ou des associations entre des modalités spécifiques de variables catégorielles dans des fichiers de données volumineux. Il s'agit d'une tâche courante dans de nombreux projets de data mining et notamment, dans l'une de ses applications particulières, le text mining. Ces techniques exploratoires puissantes possèdent toute une gamme d'applications dans de nombreux secteurs commerciaux mais également dans la recherche - depuis l'analyse des habitudes de consommation ou la gestion des ressources humaines, jusqu'à l'historique du langage. Ces techniques permettent aux analystes et aux chercheurs de mettre en évidence des structures cachées dans des fichiers de données volumineux, comme par exemple "les clients qui ont acheté le produit A ont également acheté en grande majorité le produit B ou le produit C" ou encore "les individus qui ont une bonne opinion de l'initiative X se plaignent généralement du problème Y mais sont satisfaits de la mise en place de Z."  L'utilisation de l'algorithme dit a priori (voir Agrawal et Swami, 1993 ; Agrawal et Srikant, 1994 ; Han et Lakshmanan, 2001 ; voir aussi Witten et Frank, 2000) dans STATISTICA vous permet de rechercher ces associations rapidement dans de grosses volumétries de données, en utilisant des "seuils" de détection prédéfinis.

Comment fonctionnent les règles d'association. Utilisons un petit exemple pour montrer l'intérêt de cette technique dans la résolution de problématiques propres au data mining. Supposons que nous ayons collecté des données aux caisses de sortie d'une grande librairie. Chaque transaction est enregistrée dans une base de données ; elle est constituée des titres d'ouvrages achetés par le client respectif, éventuellement d'autres titres de magazines, de petits cadeaux-gadgets, etc... Par conséquent, chaque enregistrement de la base de données représente un achat réalisé par le client (une transaction), et peut être constitué d'un seul livre ou de plusieurs (voire plusieurs centaines) éléments différents, classés dans un ordre arbitraire en fonction de l'ordre dans lequel les différents éléments (livres, magazines, etc...) ont été présentés au caissier ou à la caissière sur le tapis roulant. L'objectif de l'analyse consiste à trouver des associations entre les différents éléments qui ont été achetés, c'est-à-dire de trouver des règles d'association permettant d'identifier des articles (éléments) et des combinaisons fréquentes d'articles (éléments). Par exemple, vous pouvez chercher à connaître les ouvrages susceptibles d'intéresser les clients qui ont déjà acheté (ou qui sont sur le point de le faire) un livre particulier. Vous serez alors en mesure d'exploiter rapidement cette information et de proposer ces autres titres à vos clients. Les résultats de ces analyses vous seront sans doute familiers si vous êtes déjà client(e) de différents magasins en ligne (sur Internet) ; dans la plupart des achats en ligne, le site vous propose différents objets similaires (à ceux que vous êtes sur le point d'acheter) au moment du paiement, en utilisant des règles du type "les clients qui ont acheté le titre A ont également acheté le titre B" et ainsi que suite.

Spécificités et exigences de l'analyse des données. En principe, STATISTICA contient déjà tous les outils nécessaires pour analyser les données telles que celles que nous venons de décrire précédemment, et pour calculer les résultats (tableaux) qui nous intéressent. Par exemple, vous pouvez utiliser des Tableaux croisées, et notamment les Tables de Réponses Multiples du module Statistiques Élémentaires pour analyser des données de ce type (voir toutefois la rubrique Note Technique sur la Codification des Variables à Réponses Multiples). En revanche, lorsque le nombre d'éléments distincts (catégories) devient très important dans les données (et qu'il n'est pas connu à l'avance), et lorsque le "degré factoriel" des règles d'association importantes n'est pas connu à l'avance, le module Statistiques Élémentaires peut devenir extrêmement lourd à utiliser, voire être simplement inutilisable : Revenons un instant à notre petit exemple précédent sur les achats de livres dans une librairie. Tout d'abord, le nombre de titres d'ouvrage est quasiment illimité. En d'autres termes, si nous devions produire un tableau dans lequel chaque ouvrage représenterait une dimension, et que l'achat de l'ouvrage (oui/non) constituait les classes ou catégories de chaque dimension, le tableau croisé complet serait à la fois immense et clairsemé (avec la plupart des cellules qui seraient vides). Vous pourriez également construire toutes les tables possibles d'ordre deux à partir de tous les éléments disponibles dans le magasin ; nous pourrions alors détecter les associations (règles d'association) d'ordre deux entre les éléments. Toutefois, le nombre de tables à construire serait à nouveau gigantesque, et la plupart des tables d'ordre deux seraient clairsemées ; pire, si'il existait des règles d'association d'ordre trois, "cachées" dans les données, elles nous échapperaient complètement. L'algorithme a priori du module STATISTICA Règles d'Association permet non seulement de détecter automatiquement les relations ("tableaux croisés") importantes (c'est-à-dire les tableaux croisés qui ne sont pas clairsemés, avec autre chose que des zéros), mais également de déterminer le degré factoriel des tableaux qui contiennent les règles d'association importantes.

Pour résumer, vous pouvez utiliser le module Règles d'Association de STATISTICA pour trouver des règles du type Si X alors (vraisemblablement) YX et Y peuvent être des valeurs, des articles, des mots, etc..., ou des combinaisons de valeurs, articles, mots, etc... (par exemple, Si (Voiture=Porsche et Sexe=Homme et Âge<20) alors (Risque=Fort et Assurance=Élevée)). Le programme permet d'analyser des variables catégorielles simples, des variables dichotomiques, et/ou des variables à réponses multiples. L'algorithme va alors déterminer les règles d'association sans que l'utilisateur n'ait à spécifier le nombre de catégories distinctes dans les données, ni qu'aucune connaissance a priori ne soit nécessaire quant au degré factoriel maximal ou à la complexité des associations importantes. D'une certaine manière, l'algorithme va construire des tableaux croisés sans que vous n'ayez à spécifier le nombre de dimensions des tableaux, ni le nombre de catégories pour chaque dimension. Par conséquent, cette technique est particulièrement bien adaptée aux tâches de data mining et de text mining sur des bases de données gigantesques.

Procédures de Calcul et Terminologie

STATISTICA Règles d'Association utilise le puissant algorithme a priori (voir Agrawal et Swami, 1993 ; Agrawal et Srikant, 1994 ; Han et Lakshmanan, 2001 ; voir aussi Witten et Frank, 2000) ; cet algorithme, ainsi que les différents types de données que vous pouvez analyser à l'aide de cet algorithme dans STATISTICA sont décrits ci-après.

Variables Catégorielles, Variables à Réponses Multiples, Dichotomies Multiples. STATISTICA Règles d'Association reconnaît la plupart des types de variables ou de formats dans lesquels les catégories, articles ou transactions (par exemple, des informations relatives aux achats de biens de consommation) sont généralement stockés.

Variables catégorielles ou de classement. Les variables catégorielles sont de simples variables qui contiennent des codes ou des valeurs-texte représentant des classes (catégories) distinctes ; par exemple, une variable Sexe regrouperait les deux catégories (modalités) Homme et Femme.

Variables à réponses multiples. Les variables à réponses multiples sont généralement constituées de plusieurs variables (c'est-à-dire une liste de variables) qui peuvent contenir, pour chaque observation, des codes ou valeurs-texte décrivant une "dimension" ou une transaction. Prenons un exemple de variable à réponses multiples : un commerçant qui enregistrerait les achats d'un client dans un même enregistrement (ligne) d'une base de données, chaque enregistrement pouvant contenir un ou plusieurs articles, dans n'importe quel ordre. C'est généralement le format dans lequel les données de transactions sont enregistrées. Ce type de format de données est également présenté en détail dans le module Statistiques Élémentaires (voir la rubrique Dichotomies/Réponses Multiples - Variables à Réponses Multiples).

Dichotomies multiples. Dans ce type de format, chaque variable représente un élément (article) ou une catégorie distincte, et les données dichotomiques contenues dans chaque variable indiquent si l'élément (article) ou la catégorie respective s'appliquent à l'observation correspondante. Par exemple, imaginons qu'un commerçant ait créé une feuille de données dans laquelle chaque colonne représente l'un des articles disponibles dans sa boutique. Chaque transaction (ligne de la feuille de données) va nous indiquer si le client respectif a acheté ou non l'article correspondant, c'est-à-dire si la transaction respective portait ou non sur chacun des articles. Ce type de format de données est également présenté en détail dans le module Statistiques Élémentaires (voir la rubrique Dichotomies/Réponses Multiples - Dichotomies Multiples).

Règles d'Association : Si 'Condition' alors 'Conclusion'. L'algorithme a priori va chercher à trouver des règles d'association de la forme : Si "Condition" alors "Conclusion"Condition et Conclusion représentent des codes ou des valeurs-texte (articles) individuels, ou une combinaison de codes ou valeurs-texte (articles ; par exemple, Si (Voiture=Porsche et Age<20) alors (Risque=Fort et Assurance=Élevée) ; ici, la condition logique qui précède le terme 'alors' est considéré comme la Condition, et la condition logique qui suit le terme 'alors' représente la Conclusion de la règle d'association).

Balayage Initial des Données : La Valeur de Support. STATISTICA va tout d'abord balayer l'ensemble des variables afin de déterminer les codes ou valeurs-texte (articles) distincts dans les variables sélectionnées pour l'analyse. Au cours de cette étape préliminaire, le programme va également calculer les fréquences relatives d'apparition des différents codes ou valeurs-texte individuels dans chaque transaction. La probabilité qu'une transaction contienne un code ou une valeur-texte particulière est appelée Support ; la valeur de Support est également calculée au cours des balayages successifs, sous forme de probabilité conjointe (fréquence relative des co-occurrences) des couples, triplets, etc... de codes ou valeurs-texte (articles), c'est-à-dire séparément pour la Condition et la Conclusion de chaque règle d'association.

Second Balayage des Données : la Valeur de Confiance ; la Valeur de Corrélation. À l'issue du balayage préliminaire des données, tous les éléments dont la valeur de support est supérieure à une valeur de support minimum prédéterminée sont "conservés en mémoire" pour les balayages suivants des données : Plus précisément, STATISTICA va calculer les probabilités conditionnelles de tous les couples de codes ou valeurs-texte dont les valeurs de support sont supérieures à la valeur de support minimum. Cette probabilité conditionnelle - qu'une observation (transaction) contenant un code ou une valeur-texte X contienne également un code ou une valeur-texte Y - est appelée Valeur de Confiance. D'une manière générale (au cours des balayages ultérieurs des données), la valeur de confiance représente la probabilité conditionnelle de la Conclusion de la règle d'association, étant donnée la Condition de la règle d'association.

En outre, STATISTICA va calculer la valeur de support de chaque couple de codes ou de valeurs-texte, ainsi qu'une valeur de Corrélation basée sur les valeurs de support. La valeur de corrélation d'un couple de codes ou de valeurs-texte {X, Y} se calcule comme la valeur de support de ce couple, rapportée à la racine carrée du produit des valeurs de support de X et de Y. Le programme va alors retenir à l'issue de ce second balayage des données, les couples de codes ou de valeurs-texte qui 1) possèdent une valeur de confiance supérieure à une certaine valeur de confiance minimum prédéterminée, 2) possèdent une valeur de support supérieure à une certaine valeur de support minimum prédéterminée, et 3) possèdent une corrélation supérieure à une certaine valeur de corrélation minimum prédéterminée.

Balayages Suivants des Données : Taille Maximum des Combinaisons dans les Conditions, Conclusions. STATISTICA va continuer à balayer les données au cours des étapes suivantes, en calculant le support, la confiance et les corrélations pour les couples de codes ou de valeurs-texte (associations entre des codes ou valeurs-texte élémentaires), pour les triplets de codes ou de valeurs-texte, et ainsi de suite. Pour réitérer, le programme va chercher d'une manière générale, à chaque itération, des règles d'association de la forme Si "Condition" alors "Conclusion", où Condition et Conclusion représentent des codes ou valeurs-texte (articles) individuels, ou une combinaison de codes et de valeurs-texte (articles).

Hormis dans les cas où le processus s'arrête faute d'association supplémentaire en mesure de satisfaire les critères de support, confiance et corrélation minimum, le processus peut se poursuivre pour construire des règles d'association extrêmement complexes (par exemple, Si X1 et X2 .. et X20 alors Y1 et Y2 ... et Y20). Pour éviter une complexité excessive, vous pouvez également spécifier le nombre maximum de codes ou de valeurs-texte (articles) dans les Conditions et les Conclusions des règles d'association ; cette valeur s'appelle taille maximum des combinaisons dans les Conditions et les Conclusions d'une règle d'association.

Descriptif des Associations

Comme indiqué dans la rubrique Procédures de Calcul et Terminologie, les règles d'association sont produites sous la forme générale Si "Condition" alors "Conclusion", où Condition et Conclusion représentent des codes ou valeurs-texte (articles) individuels, ou une combinaison de codes et valeurs-texte (articles ; par exemple, Si (Voiture=Porsche et Âge<20) alors (Risque=Fort et Assurance=Élevée)). Les principales statistiques calculées pour les règles d'association sont le Support (fréquence relative de la Condition ou de la Conclusion de la règle), la Confiance (probabilité conditionnelle de la Conclusion, sachant la Condition de la règle), et la Corrélation (support de la Condition et de la Conclusion, rapporté à la racine carrée du produit entre le support de la Condition et le support de la Conclusion ; voir la rubrique Procédures de Calcul et Terminologie). Ces statistiques sont reportées dans une feuille de données, comme illustré ci-dessous.

Cet exemple illustre l'application des règles d'association à des tâches de text mining. Cette analyse porte sur les dialogues de la pièce de théâtre L'Avare de Molière, après suppression des mots (vides) les plus fréquents du type est, de, à, etc... Les valeurs de support, de confiance et de corrélation sont exprimées en pourcentages. Remarque : les règles reportées dans la feuille de données ci-dessus ont été préalablement triées selon la colonne Corrélation, à l'aide des fonctionnalités classiques Données - Trier de STATISTICA.

Représentation Graphique des Associations

Les techniques de Règles d'Association appliquées sur des jeux de données volumineux en data mining, permettent d'établir des règles de la forme Si "Condition" alors "Conclusion", où Condition et Conclusion représentent des codes ou valeurs-texte (articles) individuels, ou une combinaison de codes et valeurs-texte (articles ; par exemple, Si (Voiture=Porsche et Âge<20) alors (Risque=Fort et Assurance=Élevée)). Voir aussi la rubrique Procédures de Calcul et Terminologie pour plus d'informations. Vous pouvez visualiser ces règles sous la forme de texte ou de tableaux (voir la rubrique Représentation des Associations sous Forme de Tableaux), ou sous forme de graphiques (voir ci-dessous).

Réseaux de Règles d'Association, en 2D. Par exemple, considérons les données présentées dans l'Exemple 3 et dans l'Exemple 4 du module Statistiques Élémentaires. Ces données sont les résultats d'une enquête (fictive) réalisée auprès de 100 gérants de PMU concernant leurs préférences pour la retransmission télévisée de différents sports. Nous avons ici différentes variables catégorielles, chacune représentant un sport particulier (voir aussi la rubrique Procédures de Calcul et Terminologie pour une présentation des notions de Variables Catégorielles, de Variables de Réponse Multiple et de Dichotomies Multiple). Pour chacun des sport, chaque personne interrogée a indiqué la fréquence à laquelle il regardait le sport correspondant à la télévision ; vous trouverez ces données dans le fichier d'exemple Sports.sta. Les règles d'association issues de ces données pourraient être synthétisées de la manière suivante :

Dans le graphique ci-dessus, les valeurs de support des parties Condition et Conclusion de chaque règle d'association sont représentées par la taille et la couleur de chaque cercle (voir aussi la rubrique Procédures de Calcul et Terminologie). L'épaisseur des traits représente la valeur de confiance (probabilité conditionnelle de la Conclusion sachant la Condition) de la règle d'association respective ; la taille et la couleur des cercles centraux, au dessus de l'intitulé Implique, représentent le support conjoint (des co-occurrences) des composantes respectives Condition et Conclusion des règles d'association respectives. Par conséquent, dans cette représentation graphique, la valeur de support la plus forte se retrouve pour la modalité Natation=Parfois, associée aux modalités Patinage=Parfois, Gymnastq=Parfois, Formule1=Parfois et Tennis=Parfois. Vous pouvez également comparer ces règles d'association avec les résultats de la section Exemples du module Statistiques Élémentaires : Contrairement aux tables de fréquence élémentaires et aux tableaux croisés, la fréquence d'apparition des codes individuels ou des valeurs-texte (articles) dans les données n'est généralement pas retranscrite dans les règles d'association ; en revanche, seuls les codes ou valeurs-texte (articles) qui atteignent des valeurs de support, de confiance et de corrélation suffisantes apparaissent dans les règles d'association, c'est-à-dire qui apparaissent simultanément avec d'autres codes ou valeurs-texte (articles) à une fréquence (conjointe) suffisante. Voir aussi la rubrique Interpréter et Comparer les Résultats.

Les résultats représentés dans les réseaux de Règles d'Association en 2D peuvent être assez simple, mais également beaucoup plus complexes, comme illustré dans le réseau ci-dessous.

Cet exemple illustre l'application des règles d'association à des tâches de text mining. Cette analyse porte sur les dialogues de la pièce de théâtre L'Avare de Molière, après suppression des mots (vides) les plus fréquents du type est, de, à, etc... Bien entendu, les mots et expressions spécifiques que nous retirons lors de la phase de préparation des données dans le cadre de projets de text mining (ou de data mining) dépendent de l'objectif de l'étude.

Réseaux de Règles d'Association, en 3D. Vous pouvez synthétiser graphiquement les règles d'association dans des Réseaux d'Association en 2D ou en 3D. Ci-dessous, les résultats (très parlants) d'une analyse réalisée sur les données du fichier de données Fastfood.sta, également présentés dans le cadre des tableaux de Réponses Multiples, dans le module Statistiques Élémentaires (Exemple 6 : Tableaux de Réponses et Dichotomies Multiples). Dans cette étude, les personnes interrogées devaient citer (au maximum) les 3 chaînes de restauration rapide qu'ils fréquentaient le plus souvent. Les règles d'association issues de ces données sont représentées dans le Réseau d'Association en 3D ci-dessous.  

Comme dans le cas du Réseau d'Association en 2D, les valeurs de support des parties Condition et Conclusion de chaque règle d'association sont représentées par la taille et la couleur de chaque cercle du plan en 2D (voir aussi la rubrique Procédures de Calcul et Terminologie). L'épaisseur des traits représente la valeur de confiance (probabilité conjointe) de la règle d'association respective ; la taille et la couleur des cercles "en suspension" représentés le long de l'axe z (vertical) représentent le support conjoint (des occurrences simultanées) des composantes respectives de Condition et de Conclusion des règles d'association. La position des cercles dans le tracé le long de l'axe vertical z représente la valeur de confiance respective. Par conséquent, cette synthèse graphique met très clairement en évidence deux règles simples : les personnes qui ont déclaré préférer des restaurants de type Pizza rapide ont également cité des restaurants de type Hamburger, et réciproquement.

Interpréter et Comparer les Résultats

Lorsque vous comparez les résultats des règles d'association (par exemple, Réseaux d'Association en 2D, en 3D ; voir aussi la rubrique Procédures de Calcul et Terminologie) à ceux  des tables de fréquences individuelles ou des tableaux croisés (voir le module Statistiques Élémentaires), vous pourrez constater dans certains cas que certains codes ou valeurs-texte (articles) particulièrement fréquents n'apparaissent pas dans les règles d'association. Cette situation peut parfois laisser perplexe...

Pour illustrer les situations dans lesquelles nous pouvons constater ces divergences, prenons un petit exemple : Imaginons que vous analysez des données issues d'une enquête sur les taux d'assurances pour différents constructeurs automobiles en France. Une simple tabulation révélerait sans doute que la plupart des individus conduisent des véhicules construits par Renault, Peugeot et Citroën ; toutefois, il n'est pas évident que ces marques soient associées à des structures particulières de taux d'assurance, c'est-à-dire qu'aucune de ces marques n'apparaît dans des règles d'association, avec une confiance et une corrélation élevées, qui les lieraient à des catégories particulières de taux d'assurance. En revanche, lorsque vous appliquez des méthodes de règles d'association, il se peut que certaines marques d'automobiles présentes dans l'échantillon avec une fréquence relativement faible (par exemple, Porsche) se trouvent associées à des taux d'assurance élevés (ce qui vous permet d'en déduire, par exemple, une règle du type Si Voiture=Porsche alors Assurance=Élévée). Si vous n'aviez examiné qu'un simple tableau croisé (constructeur automobile en fonction du taux d'assurance), cette règle d'association avec une confiance élevée aurait tout à fait pu vous échapper.

Note Technique sur la Codification des Variables à Réponses Multiples

La rubrique Procédures de Calcul et Terminologie présente la nature des variables de réponse multiple ; les variables de ce type sont également présentées en détail dans le module Statistiques Élémentaires (voir la rubrique Dichotomies/Réponses Multiples). Pour éviter toute confusion lors de l'analyse de valeurs-texte ou de codes, vérifiez attentivement la codification utilisée lors de la préparation des données pour les analyses. Comme indiqué dans la rubrique Remarques sur les Valeurs-Texte et les Valeurs Textuelles, les valeurs-texte dans STATISTICA sont toujours associées à des codes ou des valeurs numériques, et il est donc possible d'analyser tous les types de variables (y compris les variables textuelles) en utilisant des techniques d'analyse numérique (par exemple, vous pouvez calculer les moyennes de valeurs et des variables textuelles).

Dans la mesure où les règles d'association s'appliquent généralement à des tâches de text mining, le module STATISTICA Règles d'Association va mettre en tableau et comparer la représentation textuelle des valeurs entre les colonnes (variables) du fichier de données constituant une variable de réponse multiple. Ainsi, par exemple, si vous avez deux variables qui constituent une même variable de réponse multiple, et que les deux variables contiennent le code ou la valeur-texte Homme, STATISTICA va considérer que ces valeurs sont identiques dans les deux variables (colonnes) de la feuille de données d'entrée, même si les équivalents numériques de la valeur-texte Homme sont différents dans les deux variables (par exemple, Homme peut être associé à la valeur numérique 1 dans la première variable, et à la valeur numérique 2 dans la seconde variable).

Par conséquent, lorsque vous appliquez des règles d'association à des tâches de text mining, vous pouvez simplement importer le fichier texte "en l'état" (à l'aide des fonctionnalités conviviales d'importation de texte disponibles dans STATISTICA), qui produisent généralement une affectation différente des valeurs numériques aux valeurs-texte rencontrées dans le texte importé ; malgré tout, le module Règles d'Association va correctement identifier et traiter les valeurs-texte identiques, quelles que soient les valeurs numériques associées. Ce ne sera en revanche pas le cas dans les autres modules de STATISTICA, qui ne considèrent les valeurs textuelles que comme des libellés, et qui utilisent les valeurs numériques correspondantes comme source première pour les calculs.

Règles d'Association Appliquées aux Habitudes de Consommation

Cet exemple repose sur le fichier de données FastFood.sta, également utilisé dans le cadre de l'Tableaux de Réponses et Dichotomies Multiples du module Statistiques Élémentaires.

Description du fichier de données. Imaginons que nous avons conduit une étude concernant les préférences de jeunes adultes en matière de consommation. Plus précisément, nous nous intéressons (1) à leurs préférences en terme de restauration rapide (fast food favori), (2) à leurs préférences au niveau automobile, et (3) à leur véritable préférence (question ouverte dont la réponse a été donnée spontanément) pour des chaînes de restauration rapide particulières. Nous avons également enregistré le sexe de la personne interrogée. Ces préférences ont été mesurées et enregistrées dans le fichier de données Fastfood.sta.

Pour illustrer l'application des règles d'association, et l'interprétation des résultats, nous ne nous intéresserons qu'au sexe des personnes interrogées et à leurs préférences en matière alimentaire. Chaque variable de ce fichier de données est décrite ci-dessous :

Sexe (variable catégorielle simple). Le sexe de la personne interrogée a été enregistré comme une variable catégorielle (Sexe) dans le fichier de données (c'est-à-dire, Homme, Femme).

Fast food favori (variable à réponses multiples). Le questionnaire utilisé dans l'étude demandait aux personnes interrogées de sélectionner, au maximum, trois restaurants rapides dans une liste de 8 propositions. Les 8 types de restaurants proposés aux personnes interrogées étaient les suivants :

(1) Hamburger

(2) Sandwiches

(3) Poulet

(4) Pizza

(5) Fast food Mexicain

(6) Fast food Chinois

(7) Fruits de mer

(8) Autres ethnies/Régional

Les trois choix ont été enregistrés, pour chaque personne interrogée, dans le fichier de données sous forme d'une variable à réponses multiples, c'est-à-dire que leur premier choix a été entré dans la variable FastF_1 (premier choix ou restaurant favori), leur second choix (s'il existe) a été entré dans la variable FastF_2, et leur troisième choix dans la variable FastF_3 (voir aussi les paragraphes Variables Catégorielles, Variables à Réponses Multiples et Dichotomies Multiples dans la rubrique Procédures de Calcul et Terminologie pour une présentation de ces types de variables).

Spécifier l'Analyse. Ouvrez le fichier de données FastFood.sta à l'aide de la commande Ouvrir des Exemples du menu Fichier ; ce fichier se situe dans le répertoire Fichiers de données. Sélectionnez la commande Règles d'Association dans le menu Data Mining afin d'accéder à la boîte de dialogue Règles d'Association (Panneau de Démarrage) puis cliquez sur l'onglet Base. Cliquez sur le bouton Variables et sélectionnez les variables Fastf_1 à Fastf_3 comme Variables à réponses multiples ; sélectionnez la variable Sexe comme Dichotomie multiple/vars catégorielles.

Vous n'avez pas besoin de sélectionner manuellement les codes dans la mesure où l'analyse va automatiquement utiliser toutes les valeurs distinctes rencontrées dans les variables sélectionnées.

Cliquez ensuite sur l'onglet Avancé afin de spécifier les paramètres qui vont permettre à l'algorithme a priori d'identifier les règles d'association (voir Agrawal et Swami, 1993 ; Agrawal et Srikant, 1994 ; Han et Lakshmanan, 2001 ; voir aussi Witten et Frank, 2000) ; pour plus d'informations concernant ces paramètres, veuillez vous reporter à la rubrique Procédures de Calcul et Terminologie.

Dans cet exemple, modifiez la valeur du Support minimum à 0,4, et conservez toutes les autres options à leurs valeurs par défaut. D'une manière générale, il est toujours conseillé de démarrer avec les paramètres par défaut pour ces paramètres. Si aucune règle d'association ne correspond à ces critères (c'est-à-dire avec les valeurs spécifiées pour le Support minimum, la Confiance minimale, la Corrélation minimale, etc...), STATISTICA produira un message d'alerte pour vous en avertir. Vous pourrez alors assouplir graduellement ces conditions, c'est-à-dire spécifier des valeurs plus faibles pour le Support minimum, la Confiance minimale, la Corrélation minimale, jusqu'à ce que vous soyez en mesure d'obtenir un nombre satisfaisant de règles d'association.

Les deux derniers paramètres, Taille max. des combinaisons en condition/conclusion permettent de contrôler la complexité maximum des règles issues des données. D'une manière générale, gardez à l'esprit que les règles d'association sont de la forme Si Condition alors Conclusion (voir le paragraphe Règles d'Association : Si 'Condition' alors 'Conclusion' dans la rubrique Procédures de Calcul et Terminologie) ; ainsi, une règle d'association impliquant 10 éléments de chaque côté de la règle est relativement complexe (Si X1 et X2 et ... X10 alors Y1 et Y2 et ... Y10).

Cliquez à présent sur le bouton OK afin d'accéder à la boîte de dialogue des Résultats.

Étude des Résultats. Dans un premier temps, vous pouvez examiner les règles d'association dans un tableau (voir la rubrique Représentation des Associations sous Forme de Tableaux). Cliquez sur le bouton Règles d'association dans l'onglet Base afin de produire cette feuille de données. Remarque : vous pouvez utiliser les options classiques Données - Trier, ici comme sur toutes les feuilles de données, afin de trier les lignes de cette feuille de données selon une colonne numérique particulière (Support, Confiance, Corrélation).

Nous avons ici quatre règles qui associent les hommes (Sexe=Homme) à certaines préférences alimentaires :

  • Si Sexe=Homme alors Pizza

  • Si Sexe=Homme alors Hamburger

  • Si Pizza alors Sexe=Homme

  • Si Hamburger alors Sexe=Homme

L'interprétation de ces résultats - et il s'agit de l'un des atouts majeurs de la méthode des règles d'association - est assez simple : les Hommes aiment la Pizza et les Hamburgers (dans cet échantillon).

Réseau de règles en 2D. Cliquons à présent sur le bouton Réseau de règles afin de produire une synthèse graphique des règles d'association.

Comme évoqué dans la rubrique Représentation Graphique des Associations, le réseau des règles d'association en 2D nous donne une information synthétique intéressante quant aux règles contenues dans les données. D'une manière générale, les règles d'association sont de la forme Si "Condition" alors "Conclusion"Condition et Conclusion représentent des catégories, des articles, des éléments, des valeurs-texte, ou une combinaison de catégories, d'articles, d'éléments, de valeurs-texte. Dans ce graphique, les éléments représentant la Condition de chaque règle apparaissent dans la partie gauche du graphique, et ceux qui représentent la Conclusion de chaque règle apparaissent à droite. Les traits qui relient les Conditions aux Conclusions représentent les règles d'association.

Les valeurs de support des parties Condition et Conclusion de chaque règle d'association sont représentées par la taille et la couleur de chaque cercle (voir aussi la rubrique Procédures de Calcul et Terminologie). L'épaisseur des traits représente la valeur de confiance (probabilité conditionnelle de la Conclusion sachant la Condition) de la règle d'association respective ; la taille et la couleur des cercles centraux, au dessus de l'intitulé Implique, représentent le support conjoint (des co-occurrences) des composantes respectives Condition et Conclusion des règles d'association respectives.

Vous pouvez constater que toutes les statistiques qui décrivent ces règles d'association apparaissent de façon évidente au travers de la taille des cercles, des traits et des couleurs dans ce graphique (voir aussi la section relative aux Réseaux de Règles d'Association, en 2D dans la rubrique Représentation Graphique des Associations pour un exemple plus complexe de graphique dans le cadre d'un projet de text mining).

Réseau de règles en 3D. Cliquons à présent sur le bouton Réseau de règles, 3D. La même information apparaît maintenant dans une représentation en 3 dimensions.

Comme dans le cas des réseaux d'association en 2D, les valeurs de support des parties Condition et Conclusion de chaque règle d'association sont représentées par la taille et la couleur de chaque cercle du plan en 2D (voir aussi la rubrique Procédures de Calcul et Terminologie). L'épaisseur des traits représente la valeur de confiance (probabilité conjointe) de la règle d'association respective ; la taille et la couleur des cercles "en suspension" représentés le long de l'axe z (vertical) représentent le support conjoint (des occurrences simultanées) des composantes respectives de Condition et de Conclusion des règles d'association. La position des cercles dans le tracé le long de l'axe vertical z représente la valeur de confiance respective. À nouveau, les règles qui relient Sexe=Homme à Pizza et Hamburger ressortent clairement dans ce graphique.

Histogrammes en 3D du Support, de la Confiance et des Corrélations. Vous pouvez également produire des histogrammes en 3D pour représenter les valeurs de Support, de Confiance et de Corrélation. Ci-dessous, le graphique de la Confiance. Pour produire ce graphique, cliquez sur le bouton Confiance dans l'onglet Avancé.

Ce graphique nous indique, par exemple, que la valeur de confiance (probabilité conditionnelle) de la règle Si Pizza alors Sexe=Homme est relativement faible (par rapport aux autres règles).

Synthèse. Cet exemple nous a permis d'illustrer les "mécanismes" élémentaires des règles d'association pour identifier les relations entre des variables, éléments, articles, réponses, etc... Cette méthode est particulièrement bien adaptée aux tâches de data mining et de text mining sur de grosses volumétries de données. Les résultats, lorsqu'ils permettent d'en tirer des conclusions (c'est-à-dire, lorsqu'il existe véritablement des associations dans les données), sont toujours faciles à interpréter, à comprendre et à déployer, dans la mesure où il font appel à des règles simples de la forme Si - Alors.

Didacticiels

Vous pouvez visionner l'intégralité de la série de tutoriels Le Data Mining en 35 Leçons avec STATISTICA en remplissant le formulaire d'inscription. Vous serez alors notifié(e) automatiquement de la disponibilité des nouveaux épisodes et recevrez d'autres informations utiles.

StatSoft propose par ailleurs une série de didacticiels et présentations interactives décrivant pas-à-pas différentes opérations que vous pouvez réaliser à l'aide de STATISTICA. Si vous souhaitez voir aborder un thème particulier, merci de nous écrire.