Tps Data Mining(Matlab)

Embed Size (px)

Citation preview

  • 8/20/2019 Tps Data Mining(Matlab)

    1/14

     

    UNIVERSITE ABDELMALEKESSAÂDI

    ECOLE NATIONALE DES SCIENCESAPPLIQUEES - TANGER 

    TP DATA MINING

  • 8/20/2019 Tps Data Mining(Matlab)

    2/14

    A.  Partie théorique : Data mining

    1. Introduction :

    La fouille de données (Data mining) est un domaine pluridisciplinaire permettant, à partir

    d’une très importante quantité de données brutes, d’en extraire de façon automatique ou semi-

    automatique des informations cachées, pertinentes et inconnues auparavant en vue d’une

    utilisation industrielle ou opérationnelle de ce savoir. Il peut également mettre en avant les

    associations et les tendances et donc servir d’outil de prévisions au service de l’organe

    décisionnel.

    On distingue le data mining supervisé qui sert essentiellement à la classification des données

    et le data mining non supervisé qui est utilisé dans la recherche d’associations ou de groupes

    d’individus. 

    Le champ d’action du data mining s’étend du chargement et du nettoyage des données dans

    les bases de données, à la mise en forme des résultats, en passant par le plus important : la

    classification et la mise en relation de différentes données.

    2. Apprentissage non supervisé (Clustering)

    On parle d’apprentissage non supervisé lorsque l’on cherche à extraire des informations

    nouvelles et originales d’un ensemble de données dont aucun attribut n’est plus important

    qu’un autre. Le résultat des algorithmes de data mining non supervisé doit être analysé afin

    d’être retenu pour un usage ou tout simplement rejeté. 

    3. Apprentissage supervisé

    3-1. Définition :En sciences cognitives, l’apprentissage supervisé est une technique d’apprentissage

    automatique plus connu sous le terme anglais de machine Learning qui permet à une machine

    d’apprendre à réaliser des tâches à partir d’une base d’apprentissage contenant des exemples

    déjà traités. Chaque élément (item) de l’ensemble d’apprentissage (training set) étant un

    couple entrée-sortie.

  • 8/20/2019 Tps Data Mining(Matlab)

    3/14

    L'objectif de la classification supervisée est principalement de définir des règles permettant de

    classer des objets dans des classes à partir de variables qualitatives ou quantitatives

    caractérisant ces objets.

    3-2. Méthodes d’apprentissage :

    La plupart des algorithmes d'apprentissage supervisés tentent donc de trouver un modèle - une

    fonction mathématique - qui explique le lien entre des données d'entrée et les classes de sortie.

    Ces jeux d’exemples sont donc utilisés par l’algorithme. Cette méthode de raisonnement est

    appelée inductive car on induit de la connaissance (le modèle) à partir des données d'entrée et

    des sorties. Grâce à ce modèle, on peut alors déduire les classes de nouvelles données : le

    modèle est utilisé pour prédire. Le modèle est bon s'il permet de bien prédire.

    Il existe de nombreuses méthodes d'apprentissage supervisé parmi lesquelles on peut citer :la

    méthode Bayésienne et les Réseaux de neurones.

      Méthode bayésienne :

    Théorème de Bayes

    Le théorème de Bayes fournit un cadre théorique pour la problématique de la classification à

    deux classes Si l'on considère un problème à deux classes C1 et C2, le théorème de Bayes

     permet de calculer les probabilités a posteriori connaissant les distributions des observations a

     priori.

    P(C1|x) est la probabilité a posteriori d'appartenir à la classe C1 connaissant le vecteur des

    descripteurs x, p(x|C1) est la densité de probabilité du vecteur x dans la classe C1, P(C1) est

    la probabilité a priori de la classe C1 et p(x) est la densité de probabilité non conditionnelle

    définie par :

  • 8/20/2019 Tps Data Mining(Matlab)

    4/14

     

    Dans le cas d'un problème de classification, cette formule définit une règle de décision : la

     probabilité de mauvaise classification est minimisée en sélectionnant la classe qui a la plus

    grande probabilité a posteriori MAP (classe qui a le maximum de vraisemblance).

    La méthode de la classification bayésienne est une méthode paramétrique qui essaye de

    modéliser les densités de probabilités pour calculer la probabilité a posteriori en supposant

    que la densité de probabilité suit une loi (estimation des paramètres de la loi moyenne, écart

    type…) et en estimant la probabilité a priori par une approche fréquentielle.

      Les réseaux de neurones

    Un réseau de neurones est un modèle de calcul dont le fonctionnement schématique est

    inspiré du fonctionnement des neurones biologiques. Chaque neurone fait une somme

     pondérée de ses entrées (ou synapses) et retourne une valeur en fonction de sa fonction

    d’activation. Cette valeur peut être utilisée soit comme une des entrées d’une nouvelle couche

    de neurones, soit comme un résultat qu’il appartient à l’utilisateur d’interpréter (classe,

    résultat d’un calcul, etc.). 

    Figure1 : Structure d’un neurone artificiel 

    La phase d’apprentissage d’un réseau de neurones permet de régler le poids associé à chaque

    synapse d’entrée (on parle également de coefficient synaptique). C’est un processus long qui

    doit être réitéré à chaque modification structurelle de la base de données traitée. 

    Les principales applications des réseaux de neurones sont l'o ptimisation et l’apprentissage

    (supervisé et non supervisé).

     Nous nous limitons à l’apprentissage supervisé à partir d'une base d'exemples.

    Dans ce mode d’apprentissage, le réseau de neurones essaye de modéliser directement les

     probabilités a posteriori par changement de poids des coefficients synoptiques.

  • 8/20/2019 Tps Data Mining(Matlab)

    5/14

    Perceptron linéaire à seuil :

    Modèle de réseau de neurones qui prend en entrée n valeurs x1,..., xn et calcule une sortie o.

    Il est défini par la donnée de n+1 constantes : les coefficients synaptiques w1, ..., wn et

    le seuil (ou le biais)  La sortie o est calculée par la formule :

    Figure2 : Le perceptron avec seuil

    On ajoute une entrée supplémentaire x0 (le biais), avec le coefficient synaptique suivant :

    w0 = − θ On associe comme fonction de transfert la fonction de Heaviside : f(x) = 1 si x > 0

    f(x) = 0 sinon

    Figure3 : Le perceptron avec entrée supplémentaire

  • 8/20/2019 Tps Data Mining(Matlab)

    6/14

    B.  Partie pratique :

    Objectif :

    Dans cette partie on va créer des modèles décisionnels pour classifier des données de

    dimension 2. Nous construisons dans un premier lieu un classifieur qui se base sur le

    maximum de vraisemblance(ML), ensuite on va programmer un classifieur basé sur le

    maximum à postériori et on va comparer la précision de ces deux classifieurs. Nous

     programmons en dernier lieu un réseau de neurones basé sur l’algorithme de perception. 

    Programme1 : classiffieur ML

  • 8/20/2019 Tps Data Mining(Matlab)

    7/14

     

    Figure4 : Frontière linéaire

  • 8/20/2019 Tps Data Mining(Matlab)

    8/14

     

    Programme2 : Comparaison de la précision des

    classifieurs ML et MAP

  • 8/20/2019 Tps Data Mining(Matlab)

    9/14

     

  • 8/20/2019 Tps Data Mining(Matlab)

    10/14

    Ce programme calcul la probabilite d’erreur des classifieurs ML et MAP pour les cinq

     populations

    Alpha 2 4 6 10 100

    ML PE 0.6933 0.8160 0.8657 0.9136 0.9824

    Tr 30.67% 18.4% 13.43% 8.64% 1.76%

    MAP PE 0.0433 0.0480 0.0314 0.0264 0.0052

    Tr 95.67% 95.2% 96.86% 97.36% 99.48%

    PE : probabilité d’erreur  Tr : Taux de transmission

    Tracé des frontières de décision :On prend alpha=2 donc N1=100 et N2=100

  • 8/20/2019 Tps Data Mining(Matlab)

    11/14

     

    Figure5 : Frontière de décision pour le classifieur ML

  • 8/20/2019 Tps Data Mining(Matlab)

    12/14

     

    Figure6 : Frontière de décision pour le classifieur MAP

    Les probabilités d’erreur calculées pour chaque population démontrent que le classifieur

    MAP est plus précis parce que ce dernier prend en considération les probabilités a priori.

    On peut même remarquer que la frontière de décision pour le classifieur MAP s’approche

    et regroupe de plus les individus de la deuxième distribution.

  • 8/20/2019 Tps Data Mining(Matlab)

    13/14

     

    Programme 3 : Perceptron linéaire à seuil

  • 8/20/2019 Tps Data Mining(Matlab)

    14/14