MIT820: Entrepôts de données et intelligence artificielle Introduction aux outils BI de SQL Server 2014 Fouille de données avec SQL Server Analysis Services (SSAS) Description générale Ce tutoriel a pour objectif de vous familiariser avec les fonctionnalités de fouille de données offertes dans l'outil SQL Server Analysis Services (SSAS). Dans le cadre du tutoriel, vous aurez à créer un modèle de fouille de données permettant de prédire quels clients sont les plus susceptibles d'acheter une bicyclette (afin de maximiser le retour d'une campagne ciblée de marketing). Ce faisant, vous apprendrez à définir et utiliser des approches de fouille de données, tels que la classification bayésienne, les arbres de décision et le clustering. Pour plus d informations sur ce tutoriel, consultez le lien suivant : https://msdn.microsoft.com/en-us/library/ms167167.aspx Créer un nouveau projet SSAS 1. Si nécessaire, configurer la machine virtuelle telle que spécifié dans les tutoriels précédents; 2. Démarrer la machine virtuelle MTI820, et se connecter avec l information suivante : Nom utilisateur : sqladmin Mot de passe : Tempo123 3. À partir du menu Démarrer, lancer l application SQL Visual Studio 2013 4. Dans le menu File créer un projet de type Analysis Services Multidimensional and Data Mining Project 5. Renommer le projet TutorielDatamining Créer une Data Source 1. Dans le Solution Explorer (à droite), cliquer-droit sur Data Sources New Data Source 2. Dans Data Connections, choisir AdventureWorksDW2014 sur le serveur MTI820 3. Cliquer sur Test connection; 4. Dans le Data Source Wizard, cliquer sur Next; 5. Dans Impersonation Information, choisir: Use the service account ;
6. Cliquer sur Next, et nommer la Data Source: Adventure Works DW2014. Créer une Data Source View (DSV) Les DSV permettent d'avoir les méta-données (e.g., schéma des tables) localement, sans avoir à maintenir de connexion avec la source. 1. Dans Solution Explorer, cliquer-droit sur Data Source Views New Data Source View; 2. Dans Select a Data Source, choisir Adventure Works DW2014, et cliquer sur Next; 3. Choisir les tables suivantes : ProspectiveBuyers: clients prospectifs pour la prédiction des modèles; vtargetmail: données historiques utilisées pour entraîner les modèles. 4. Cliquer sur Next et renommer la DSV : Targeted Mailing. Créer une Data Mining Structure 1. Dans Solution Explorer, cliquer-droit sur Mining Structures New Mining Structures; 2. Dans Creation Method, choisir From existing relational database; 3. Dans Data mining technique, choisir Microsoft Decision Trees et cliquer sur Next; 4. Dans le menu Select Data Source View, choisir Targeted Mailing et cliquer sur Next; 5. Dans le menu Specify Table Types, sélectionner vtargetmail dans la colonne Case. Cela identifie la table vtargetmail comme la source des données d entraînement; 6. Dans le menu Specify Training Data: a. Sélectionner BikeBuyer dans la colonne Predictable (valeur de sortie à prédire); b. Cliquer sur Suggest (les valeurs obtenues représentent la corrélations à la colonne BikeBuyer; les colonnes ayant plus de 95% de corrélation sont ajoutées automatiquement). Cliquer sur OK (la colonne Age sera ajoutée comme attribut du modèle); c. Dans le menu Input, sélectionner les colonnes suivantes (attributs du modèle): Age, CommuteDistance, EnglishEducation, EnglishOccupation, Gender, GeographyKey, HouseOwnerFlag, MaritalStatus, NumberCarsOwned, NumberChildrenAtHome, Region, TotalChildren, YearlyIncome d. Dans la colonne la plus à gauche, rajouter les colonnes suivantes afin de pouvoir les utiliser pour l analyse drill-through (ces colonnes ne serviront
pas d attributs au modèle) : AddressLine1, AddressLine2, DateFirstPurchase, EmailAdress, FirstName, LastName e. S assurer que la colonne Key est cochée pour CustomerKey et cliquer sur Next; 7. Dans le menu Specify Columns Content and Data Type: a. Faire Detect pour avoir des types recommandés b. Changer GeographyKey pour Content Type : Discrete Data Type : Text Changer GeographyKey pour c. Cliquer sur Next 8. Dans Create Testing Set: Percentage testing : 30% Maximum number of cases : 1000 Note : 30% des données d entraînement seront mises de coté pour mesurer la performance des modèles entraînés. 9. Cliquer sur Next et dans Completing the Wizard: a. Mining structure name : Targeted Mailing b. Mining model name : TM_Decision_Tree c. Selectionner Allow drill through d. Observer le Review Pane (en bas) et cliquer sur Finish. Ajout de nouveaux modèles et entraînement 1. Sélectionner l onglet Mining Models (2 ème dans la barre du haut) 2. Cliquer-droit la colonne Structure New Mining Model. 3. Entrer TM_Clustering dans Model name et choisir Microsoft Clustering dans Algorithm name. 4. Répéter la même opération avec TM_Naive_Bayes pour Model name et Microsoft Naive Bayes dans Algorithm name. Un message mentionnant que les colonnes numériques Age and Yearly Income ont été ignorées. Cliquer sur Yes. Note : deux modèles de fouilles de données ont été ajoutés, un modèle de clustering et un modèle de classification bayésienne. 5. Dans l onglet Mining Structures (1 er dans le barre du haut), TargetedMining Properties 6. Mettre le HoldoutSeed à 12. C est la graine aléatoire (random seed) qui permettra de reproduire les résultats ultérieurement
7. Dans le menu Mining model (en haut complètement), choisir Process Mining Structure All Models et cliquer sur Yes pour construire et déployer le modèle. 8. Dans le menu Process Mining Structure, faire Run, et attendre Analyse des données : Arbre de décision 1. Choisir l onglet Mining Model Viewer (3 ème dans la barre du haut) 2. Dans Mining model (en haut), choisir le TM_Decision_Tree 3. Mettre la valeur de Background à 1 (classe des acheteurs potentiels). Avec cette option, plus un noeud est foncé, plus la probabilité d être un acheteur potentiel est grande; 4. Observer que Age est l'attribut le plus important (utilisé au premier niveau), et que les clients ayant le plus grand potentiel (i.e., noeud le plus foncé) sont âgés entre 37 et 44 ans et n ont pas de voitures. 5. Mettre le pointeur de la souris au dessus d un noeud (ex : le plus foncé) et observer la distribution des exemples dans le noeuds. 6. Cliquer-droit sur le noeud et faire Drill through Model Columns Only. Observer la liste des clients. 7. Choisir l onglet Dependency Network, et sélectionner le noeud Bike Buyer au centre. 8. Déplacer le slider et observer les attributs ayant le plus grand impact sur Bike Buyer. Le noeud âge devrait être le dernier à disparaître en glissant le slider vers le bas : c est l attribut ayant le plus d impact sur la variable Bike Buyer. Analyse des données : Clustering 1. Dans Mining model, sélectionner TM_Clustering 2. Dans l onglet Cluster Diagram : a. Mettre Shading variable à Bike Buyer, et State à 1. La couleur du noeud représente maintenant la proportion des acheteurs de bicyclette dans le groupe; b. Cliquer-droit le noeud le plus foncé et le renommer BikeBuyersHigh c. Cliquer-droit le noeud le plus pâle et le renommer BikeBuyersLow 3. Dans l onglet Cluster Profile: a. Déplacer (glisser-coller) les colonnes BikeBuyersHigh/Low à gauche b. Cliquer la colonne pour trier les variables en ordre d'importance c. Observer la distribution des attributs dans le groupe High et Low 4. Dans l onglet Cluster Characteristics : a. Choisir le cluster BikeBuyersHigh b. Observer la probabilité de chaque attribut/valeur.
5. Dans l onglet Cluster Discriminant: a. Dans Cluster 1, choisir BikeBuyersHigh b. Dans Cluster 2, choisir Complement of BikeBuyersHigh c. Observer la différence au niveau de la distribution des attributs dans le groupe à fort potentiel d achat, versus les autres groupes. Analyse des données : modèle bayésien naïf 1. Dans Mining model, sélectionner TM_Naive_Bayes 2. Observer rapidement les onglets disponibles. Tester les modèles 1. Sélectionner l onglet Mining Accuracy Chart (4 ème dans la barre en haut) 2. Dans le menu Select data to be used for accuracy chart, choisir Use mining structure test cases 3. Choisir Bike Buyer dans la colonne Predictable Column Name 4. Choisir 1 dans la colonne Predict Value. Note : la valeur 1 correspond aux acheteurs. 5. Sélectionner l'onglet Lift Chart. 6. Analyser le lift chart: a. Chaque courbe montre le pourcentage d'acheteurs rejoints par rapport au pourcentage des clients ciblés. b. Supposons que l on puisse seulement envoyer la publicité à 30% des clients. Déplacer la ligne verticale grise à la valeur 30% de l axe horizontal. Le croisement de chaque courbe avec la ligne grise montre le pourcentage des clients intéressants (ceux susceptibles d acheter des bicyclettes) qui seront rejoints. c. Observer que l arbre de décision est le meilleur modèle avec un taux d environ 47%. Un algorithme idéal aurait un taux de 60%. d. Observer les valeurs dans le menu Mining Legend à droite.