DPARTEMENT DE GNIE LOGICIEL ET DES TI LOG

  • Slides: 11
Download presentation
DÉPARTEMENT DE GÉNIE LOGICIEL ET DES TI LOG 770 - SYSTÈMES INTELLIGENTS ÉTÉ 2012

DÉPARTEMENT DE GÉNIE LOGICIEL ET DES TI LOG 770 - SYSTÈMES INTELLIGENTS ÉTÉ 2012 Laboratoire 3 Implémentation d’un classifieur bayésien Enseignant : Christian Desrosiers Chargée de laboratoire : Faten M’hiri

Tâche 1: Réduction de la dimensionnalité • Lire le fichier de données: Classe 1

Tâche 1: Réduction de la dimensionnalité • Lire le fichier de données: Classe 1 Attribut 2 Attribut 3 Attribut 4 Attribut 5 Matrice X x 11 x 21 x 31 x 41 x 51 …. X= x 1 N x 2 N x 3 N x 4 N x 5 N moy (x 1) moy (x 2) moy (x 3) moy (x 4) moy (x 5)

Tâche 1: Réduction de la dimensionnalité (2) Implémenter la fonction Z =reduire. Dimensions(X, α):

Tâche 1: Réduction de la dimensionnalité (2) Implémenter la fonction Z =reduire. Dimensions(X, α): 1. Calculer la matrice centrée x 11 -moy(x 1) x 21 -moy(x 2) x 31 -moy(x 3) x 41 -moy(x 4) x 51 -moy(x 5) …. x 1 N-moy(x 1) x 2 N-moy(x 2) x 3 N-moy(x 3) x 4 N-moy(x 4) x 5 N-moy(x 5) 2. Calculer la matrice de covariance Σ :

Tâche 1: Réduction de la dimensionnalité (3) 3. Décomposer la matrice Σ en valeurs

Tâche 1: Réduction de la dimensionnalité (3) 3. Décomposer la matrice Σ en valeurs propres : Σ = V D VT Matrice diagonale : les valeurs propres de Σ 1 colonne = 1 vecteur propre v 11 v 21 v 31 … xd 1 …. v 1 N v 2 N v 3 N … xd N λ 1 0 0 … 0 0 λ 2 0 … 0 0 0 λ 3 … 0 0 λd …. . 0 0 0 Note: pour le calcul des valeurs et vecteurs propres, voir la fonction eig

Tâche 1: Réduction de la dimensionnalité (4) 4. Extraire les k principaux vecteurs propres

Tâche 1: Réduction de la dimensionnalité (4) 4. Extraire les k principaux vecteurs propres avec α=0. 9 Σ = V D VT 1 colonne = 1 vecteur propre xd v 11 v 21 v 31 … 1 …. v 1 N v 2 N v 3 N … xd N Sélectionner les k principaux vecteurs propres NOTE : s’assurer que les λ sont ordonnées par ordre décroissant �

Tâche 1: Réduction de la dimensionnalité (5) 5. Projeter les exemples dans le sous

Tâche 1: Réduction de la dimensionnalité (5) 5. Projeter les exemples dans le sous espace de k dimensions: • Répondre aux questions de la partie 1 dans l’énoncé

Tâche 2: Classification Bayésienne • • Visualiser les données Z : une couleur différente

Tâche 2: Classification Bayésienne • • Visualiser les données Z : une couleur différente pour chaque classe Choisir les modèles pour les distributions de vraisemblance P(z|Cj) et à priori P(Cj) : 1. Pour choisir P(z|C): visualiser la distribution des données pour chacune des classes (voir Partie 1. 5): 1. 2. 3. Distribution : asymétrique � ou non � Distribution : à une seule bosse � ou non � Attributs : discrets �ou continues � 2. Pour choisir P(C): l’attribution d’une classe à un exemple: Événement discret ayant 2 résultats • Calculer les paramètres de chacun des modèles

Tâche 2: Classification Bayésienne (2) • Implémenter la fonction: θj = entrainer. Modele(Z, j):

Tâche 2: Classification Bayésienne (2) • Implémenter la fonction: θj = entrainer. Modele(Z, j): – – • Entrée : • les données d’entraînement Z de la classe Cj et l’indice de la classe Cj Sortie: • les paramètres de la classe θj Exemple: cas d’une distribution normale (gaussienne) pour une classe j: – – – Les paramètre θj : la moyenne μj et la covariance Σj μj = la moyenne de chaque colonne de Z ( si Z contient 3 colonnes, μj est un vecteur de 3 éléments) Σj = la covariance

Tâche 2: Classification Bayésienne (3) • Implémenter la fonction: j* = classifier. Exemple(z, θ

Tâche 2: Classification Bayésienne (3) • Implémenter la fonction: j* = classifier. Exemple(z, θ 1, θ 2) – – • Entrée: • Un exemple à classifier z Sortie: • Le numéro de la classe j Pour classifier un exemple z: – Calculer la fonction discriminante gj pour chaque classe j=1 et 2: Determinant de Σ – Retourner le numéro de la classe la plus probable: j* = max(gj)

Validation croisée Utiliser les deux fonctions précédentes pour implémenter la fonction: E = validation.

Validation croisée Utiliser les deux fonctions précédentes pour implémenter la fonction: E = validation. Croisee(Z, K) : Évaluer l’approche K-fois avec des ensembles d’entrainement et de tests différents : Diviser l’ensemble de données Z en K groupes Zi=1. . k – Pour i = 1 à K • Ztest = Z i • Ztrain = Uj≠i Zj • Entrainer classifieur gi sur Ztrain (avec la fonction entrainer. Modele) • Calculer l’erreur ei de généralisation de gi (calssifier les Ztest avec la fonction classifier. Exemple et calculer le nombre de fois où le classifieur s’est trompé) – Calculer l’erreur moyenne : E = moyenne des ei

Validation croisée (2) • Répondre aux questions de la partie 2 dans l’énoncé

Validation croisée (2) • Répondre aux questions de la partie 2 dans l’énoncé