1 Partie 2 : Présentation de la plateforme SPSS Modeler : Comment transformer vos données en connaissance et en actions?
SPSS Modeler : l atelier de data mining Large gamme de techniques d analyse (algorithmes) : Propose différentes techniques pour découvrir des relations, structures, associations, etc. pertinentes dans des données complexes. Méthodes de segmentation, classification, associations Différents types de graphiques pour l exploration des données. Des méthodes de déploiement pour utiliser les travaux d analyse pour alerter, anticiper, etc. Modules complémentaires de Text Mining et de Web Mining. Interface, aide en ligne et manuels en Français. 2
Programmation visuelle Pasw Modeler Visualisation Accès aux données Transformation Modélisation Flux, sorties, modèles Programmation visuelle Déploiement Projet Clementine Evaluation Nœuds Clementine 3
Visualisation Exploration des données. Découverte de structures, de relations : Aide à la compréhension. Guide pour la préparation des données. Arbre de décision Analyse et exploration des résultats des modèles. Les graphiques sont interactifs. Segment ation 4
Les nœuds de manipulation Sources de données : Opérations sur les lignes : Opérations sur les champs : Graphiques : 5
Les nœuds de modélisation Modélisation : Automatisation Classification Association Segmentation 6
Les nœuds de restitution Sortie : Exporter : Text Mining (module complémentaire) : 7
Déploiement Application du modèle sur la base de données directement depuis Clementine : Scoring l utilisation d un modèle (le résultat de l analyse) pour prédire est l élément principal à déployer. Clementine propose également d autres méthodes de déploiement : SPSS Predictive Enterprise Services (déploiement via une plate-forme d entreprise). Clementine Solution Publisher (exécution autonome de flux). Cleo (exécution en ligne via un navigateur internet). Mode batch (automatisation par un mode batch). PMML (standard XML d échange de modèles entre produits). Smartscore (bibliothèque Java permettant l appel de PMML). SQL (génération SQL, compris les modèles). 8
9 Partie 3 : Ateliers Introduction à Modeler
Atelier 1 : Introduction à Modeler Travail pratique 1 : Accès aux Données Travail pratique 2 : Exploration des données Travail pratique 3 : Manipulation des données Travail pratique 4 : Examen des relations entre les champs 10
Atelier 2 : Modélisation Travail pratique 5 : Mise en œuvre de Réseaux de Neurones Travail pratique 6 : Induction de Règles avec Clementine Travail pratique 7 : Combiner l Induction de Règles et les Réseaux de Neurones Travail pratique 8 : Algorithmes de Classification 11
12 Travail pratique 1 : Accès aux Données Délimité
13 Nœud délimité (Noeud source) Importe les fichiers plats Avec délimiteur Formats, champs, nom, etc. Contrôle le stockage Sélection des champs (formatage) type Standard Délimité
Nœud fixe (Noeud source) ID 1 6 AGE 7 2 SALAIRE 10 5 SEXE 15 1 MARITAL 16 1 NBENFANT 18 1 NBCARTE 20 1 REMUN 21 7 EMPLOIGT 28 1 CARTEFID 30 1 EMPRUNT 32 1 RISQUE 33 1 14
Fichiers Excel ou Classeur Importation par index ou par nom (feuilles du classeur) Possibilité d extraire un intervalle de données : (A1:D150) Contrôler l arrêt de lecture dès détection d une ligne non renseignée 15
Sources de données Noeud SGBD SGBD Accès à l ODBC-Connecteur de base de données Toute la table ou SQL seulement Sélection des champs (filtrer tab) Examiner & manipuler la meta-donnée (types tab) 16
Sources de données Autres sources Fichier de données SPSS Fichier de données SAS Données définie par l utilisateur Fichiers de Excel 17
Champs Typer Typer Le nœud Typer permet de spécifier trois grandes catégories de propriétés : le type, la direction, les valeurs manquantes. Utilisé dans les modèles pour spécifier le rôle des champs Que prédire? Direction : IN, OUT ou Aucun 18
Champs Typer 21 Typer L auto-typage dans Modeler
22 Champs - Direction In Le champ est un input or variable indépendante pour un modèle Out Le champ est un ouput or variable dépendante pour un modèle Les deux Le champ est à la fois input et output Approprié seulement pour les règles d association Aucun Le champs n est pas à inclure dans le modèle
Travail pratique 2 Exploration des données SPSS Maghreb 23
Définir des données Manquantes Définir des données Manquantes Vérifier la qualité des données Utiliser un noeud Remplacer pour remplacer des valeurs Même lorsque les données sont complètes, les problèmes peuvent subsister Il existe deux types de valeur manquante dans Modeler Valeurs manquantes système. Également appelées valeurs nulles: ce sont des valeurs «non-chaîne» non renseignées. Les valeurs manquantes système sont affichées sous la forme $null$ dans Modeler. Valeurs manquantes utilisateur. Également appelées blancs, ce sont des valeurs, telles que inconnu, 99 ou 1 Vous pouvez déterminer comme blancs les valeurs système nulles et les blancs (valeurs sans caractère visible). Par défaut, si vous sélectionnez Définir les blancs, vous activez la vérification des valeurs nulles dans les champs, et des blancs dans les champs de type chaîne. SPSS Maghreb 24
Définir des données Manquantes Charger le fichier Exemple.sav et connectez-le avec un noeud Typer Editer le noeud Typer Sélectionner spécifier dans la colonne Manquant pour le champ Age SPSS Maghreb 25
Définir des données Manquantes Puisque nous utilisons un champ numérique, nous définissons des valeurs Blancs. La valeur Blanc est 99 D autres valeurs Blanc peuvent être ajoutées en dessous de la première ligne. SPSS Maghreb 26
Nœud Audit Attacher un noeud Audit au noeud Typer Editer le noeud Audit données SPSS Maghreb 27
Sortie du nœud AUDIT SPSS Maghreb 28
Vérification des Distributions Champ symbolique Proportion Présenter la proportion des données catégorielles Utilisation des couleurs pour la présentation de plusieurs variables Trier par ordre alphabétique ou par effectif Interactive sélectionner les valeurs & générer un noeud sélection SPSS Maghreb 29
30 Vérification des Distributions Champ symbolique Proportion
Vérification des Distributions Champ numérique 31
Noeud statistique Champ numérique (Noeud sortie) 32
33 Comparaison de moyennes de groupes indépendants : Moyennes Entre groupes au sein d un champs Entre paires de champs. Ces champs doivent être liés (ex: revenus avant et après une promotion)
34 Comparaison de moyennes de groupes indépendants : Moyennes Pour effectuer un test de comparaison de moyenne, il faudrait activer : Option avancée dans affichage Le test F est basé sur le rapport entre la variation inter groupes et la variation intra groupes. Plus le rapport est élevé et proche de 1 plus la variation entre les groupe est grande et plus la probabilité d une différence significative est forte. L importance = 1- P_value Ex: Puisque l importance de l age est grande, on rejette l égalité des moyenne des âges par tranche de risque. La différence est significative
Relation entre les Champs numériques Visualisation Nuage Nuage graphe de dispersion X/Y aussi en 3D Superposions des couleurs et autres options Créer les régions & générer les nœuds de sélection ou de calcul 35
Relation entre Champs numériques Visualisation Nuage Supposons vouloir visualiser la relation entre le nombre de cartes et Cartes de fidélité en prenant en considération la variable Risque Attacher un noeud Nuage après le noeud Typer Spécifier: Champ X = NBCARTS Champ Y = CARTFID Couleur = RISQUE 36
Relation entre un Champs numérique et symbolique histogramme 37
Corrélations Attacher le noeud Statistiques au noeud Typer 38
Gestion des données manquantes
40 Atelier 3 : Gestion des données manquantes Utilisation du nœud Audit des données pour générer les nœuds Filtrer et Sélectionner afin d inclure ou d exclure les enregistrements ou les champs présentant des informations manquantes ; Estimer les données manquantes avec le noeud Audit des données. Suppression des blancs grâce au nœud Remplacer ; Utilisation du nœud Typer pour rechercher automatiquement les blancs. Fournir une méthode pour la manipulation des données manquantes Data : customer_offers.sav qui contient des informations de clients d une société de télécommunications. Il contient des informations démographiques, les services de télécommunications utilisés, style de vie et des réponses pour trois types d offres de la compagnie.
41 Atelier 3 : Gestion des données manquantes : AUDIT 90% des champs sont complets et uniquement 51,78% des observations qui sont complètes pour chaque champ (total de 120).
42 Valeurs éloignées et extrêmes dans le nœud Qualité
43 Valeurs manquantes pour sexe et âge Sexe + 10% Age + 10% Ceci peut poser problème lors du développement de modèles : exemple régression linéaire ou logistique. Alors que les arbres de décision traitent les données MQ comme catégorie à part.
Valeurs manquantes pour sexe et âge 44
45 Sélection ou suppression de toutes les données manquantes Supprimer inclure
Utilisation de la sortie du nœud n AUDIT pour le remplacement des Manquants 6 champs dont le % invalides est sup. à 5% Copyright SPSS Maghreb 46
Utilisation de la sortie du nœud n AUDIT pour le remplacement des Manquants 6 champs dont le % invalides est sup. à 5% Le fichier de données ne contient pas de données manquantes Copyright SPSS Maghreb 47
Estimation des données manquantes : cas de variable qualitative Plusieurs méthodes permettent de faire ceci : une substitution par une valeur constante ou la création d un modèle pour prédire les valeurs manquantes. Le noeud Audit des données fournit plusieurs méthodes qu on testera dans cette partie. Q1 : à quel moment les données manquantes pourront être estimées? Réponse 1 : Quand les champs présentent plusieurs valeurs manquantes dans le fichier courant des données. Ex: on considère le champ gender. Q2 : Pouvons nous estimer le sexe d une personne lorsqu il est manquant en remplaçant ce champ par une constante (Male or Female)? Réponse 2 : Cette substitution serait une valeur incorrecte pour un bon nombre de clients. Néanmoins, il est possible de prédire le sexe d une personne en se basant sur le comportement des hommes et des femmes tenant compte d autres variables prédicatrices à l aide d un modèle de prévision ayant un degré de précision élevé. Copyright SPSS Maghreb 48
49 Estimation des données manquantes : cas de variable quantitative Q3 : Pouvons nous estimer le champ numérique income? Réponse 3 : la prédiction est possible partir d un ensemble de données démographiques tel que education, age, gender, homeownership, etc. Statistiquement, on arrive à substituer les données manquantes pour les champs numériques par : une moyenne, le mode ou des valeurs obtenues à partir d une distribution normale basée sur la moyenne et standard déviation des données non manquantes. Néanmoins, si une large proportion de données est manquante, l estimation des données manquantes n est pas garantie. Par exemple supposons que income est manquant pour 60% des observations ; plus que la moitié des données sont manquantes donc l estimation ne serait pas la méthode idéale. Il faut être vigilant. Lorsqu on substitue par la moyenne ou la médiane, la variance va être réduite artificiellement pour ce champ, ce qui peut interférer avec la construction du modèle en utilisant ce champ, donc vous devez utiliser une méthode qui aura moins d impact sur la variance.
50 Options d imputation d dans le nœud n Qualité Dans la colonne Attribuer une donnée manquante, plusieurs conditions de substitution sont offertes :
Options d imputation d dans le nœud n Qualité : Substitution uniforme de l âgel Estimation par une distribution uniforme plutôt que par la moyenne ou la médiane Copyright SPSS Maghreb 51
Pour garder les mêmes calculs, il faudrait rajouter un cache au super noeud 52 Estimation de l âge l par une distribution uniforme La distribution de l âge n est plus uniforme comme avant
53 Estimation du revenu par l algorithme l CART
54 Vérification automatique des valeurs manquantes du nœud n TYPER On remarque que le forçage a remplacé le champ income. Les valeurs qui sont supérieures à 100 sont exactement à 100. Peut être qu on n a pas fait de remplacement pour les observations avec des valeurs income $null$, car L option Définir les blancs est sélectionnée pour le champ income avec la case à cocher Null (par défaut). Ceci signifie que Clementine reconnaît la valeur $null comme une valeur définie et ainsi il ne l aperçoit pas comme valeur illégale non numérique. Pour observer ceci, vous pouvez décocher Définir les Blancs et exécuter la table par la suite.
Travail pratique 3 Manipulation des données 55
Manipulation des données Génération automatique d une sélection 56
Le langage CLEM Clementine Langage for Expression Manipulation Standard d écriture des expressions sous Clementine Générateur de formules Noms de champs, nom de champs composé, chaîne de caractères, nombre, [liste de valeurs] Fonctions: Arithmétique, comparaison, logique, types & conversions, trigonométriques, sur les bits, aléatoire, chaîne & caractère manipulation, nul et non renseigné Dates & heures: expression et valeur de temps Séquence pour manipuler les données ordonnées N est pas supportée par SQL 57
Le langage CLEM : les opérateurs 58
59 Générateur de Formules CLEM est utilisé dans les noeuds Calculer, Sélectionner, Equilibrer, Filtrer et Rapport Générateur de Formules évite le besoin d écrire les expressions CLEM.
Générateur de Formules 60
Manipulation des données Nœud Calculer Permet de créer six types différents de nouveaux champs Type 1 : Le nouveau champ est une formule Type 2 : le nouveau champ fait partie d un ensemble précis Type 3 : la valeur d 1 des 2 expressions, dépendante de la valeur de la condition. Type 4 : le champ résultant est Vrai ou Faux : une expression Type 5 : Le passage d 1 état à l autre est déclenché par des conditions spécifiques. Type 6 : Le nombre de fois où une condition spécifiée est vraie. Type 1 Type 2 Type 3 61
Manipulation des données Nœud Calculer Permet de créer six types différents de nouveaux champs Type 1 : Le nouveau champ est une formule Type 2 : le nouveau champ fait partie d un ensemble précis Type 3 : la valeur d 1 des 2 expressions, dépendante de la valeur de la condition. Type 4 : le champ résultant est Vrai ou Faux : une expression Type 5 : Le passage d 1 état à l autre est déclenché par des conditions spécifiques. Type 6 : Le nombre de fois où une condition spécifiée est vraie. Type 4 Type 5 Type 6 62
63 Manipulation des données Observation Filtrer Renommer des champs Sélectionner des champs pour l analyse
64 Manipulation des données Observation Echantillonnage Générer un échantillon de données (ou observations) Premiers N, 1-en-N, % aléatoire, taille maximal, graine aléatoire Echantionner
Manipulation des données Observation Agréger ger Agréger Agréger sur une ou plusieurs clés Somme, moyenne, max, min, et/ou écarttype de n importe quel champ numérique Comptage du nombre d observation dans un champs agrégé Cdr.dat : contient des données sur les appels mensuels des abonnés Custinfo.dat : contient des informations basiques sur les abonnés 65
Manipulation des données Observation Fusionner Fusionner Fusion des données Jointure dans la terminologie SQL Jointure Interne, complète, externe partielle ou/et anti-jointure 66
Manipulation des données Observation Autres nœuds Ajouter Ajouter 2 tables ou plus Traite la consistance du metadata Trier multiple clés Équilibrer copier ou supprimer aléatoirement selon des conditions utiliser pour corriger les déséquilibres dans les données Distinguer sélectionner une combinaison unique de clés 67
Manipulation des données Champs Autres nœuds Remplace les valeurs dans le/les champs sélectionner à partir d une condition Reclasser transforme un ensemble de valeurs discrètes en un autre Discrétiser Discrétiser une variable continue en variable catégorielle Binariser transformer des valeurs catégorielles en variable booléen Re-trier changer l ordre des champs 68
Travail pratique 4 Examen des relations entre les champs 69
Relation entre les Champs Matrice 70 Le test de Khi2 indique la probabilité pour que les modalités des deux variables ne soient pas liés. Puisque probabilité= 0,224 > 0,05 (donc grand écart) alors on ne rejette pas l hypothèse d indépendance au niveau 5%. Attention, le Khi2 n est pas fourni
71 Relation entre les Champs symboliques Visualisation Relations Relations Illustre la forces des relations entre les valeurs catégorielles Interactive sélectionner les observations à partir des liens, ou réarranger le graphe Relations orientées Plusieurs autres options i.e. Apparence du réseau : Connexions fortes (plus de 600 occurrences) apparaissent en trait fort.
Relation entre les Champs symboliques Visualisation Relations Relations Connexions fortes (plus de 600 occurrences) apparaissent en trait fort. 72
73 Relation entre les Champs symboliques Visualisation Relations Relations Le nœud Relations est un excellent outil d exploration des liaisons entre champs symboliques mais il ne peut être utilisé seul. Son utilisation est renforcée avec le nœud proportion. On pouvait croire, à partir du graphique relations qu il existait une forte liaison entre le risque et le sexe, alors que le nœud proportion montre qu il n existe aucune différence de distribution confirmée aussi par le test.
Comparaison de moyennes de groupes indépendants : Moyennes Entre groupes au sein d un champs Entre paires de champs. Ces champs doivent être liés (ex: revenus avant et après une promotion) 74
75 Comparaison de moyennes de groupes indépendants : Moyennes Pour effectuer un test de comparaison de moyenne, il faudrait activer : Option avancée dans affichage Le test F est basé sur le rapport entre la variation inter groupes et la variation intra groupes. Plus le rapport est élevé et proche de 1 plus la variation entre les groupe est grande et plus la probabilité d une différence significative est forte. L importance = 1- P_value Ex: Puisque l importance de l age est grande, on rejette l égalité des moyenne des âges par tranche de risque. La différence est significative
76 Relation entre les Champs numériques Visualisation Nuage graphe de dispersion X/Y aussi en 3D Superposions des couleurs et autres options Créer les régions & générer les nœuds de sélection ou de calcul Nuage
77 Relation entre Champs numériques Visualisation Nuage (Suite) Onglet Options Spécifier Agiter Spécifier Utiliser toutes les données Exécuter On sélectionne la région que vous estimez utile
78 Relation entre un Champs numérique et symbolique histogramme
Corrélations 79 Attacher le noeud Statistiques au noeud Typer