Laboratoire 2 Extraction des caractéristiques



Documents pareils
L ANALYSE EN COMPOSANTES PRINCIPALES (A.C.P.) Pierre-Louis GONZALEZ

Extraction d informations stratégiques par Analyse en Composantes Principales

1 Complément sur la projection du nuage des individus

Analyse en Composantes Principales

Déroulement d un projet en DATA MINING, préparation et analyse des données. Walid AYADI

Laboratoire 4 Développement d un système intelligent

BASE. Vous avez alors accès à un ensemble de fonctionnalités explicitées ci-dessous :

La structure de la base de données et l utilisation de PAST. Musée Royal de l Afrique Centrale (MRAC Tervuren)

La classification automatique de données quantitatives

Analyse de la vidéo. Chapitre La modélisation pour le suivi d objet. 10 mars Chapitre La modélisation d objet 1 / 57

Introduction à MATLAB R

INTRODUCTION À L ANALYSE FACTORIELLE DES CORRESPONDANCES

Exercice : la frontière des portefeuilles optimaux sans actif certain

Projet Matlab/Octave : segmentation d'un ballon de couleur dans une image couleur et insertion d'un logo

Chapitre 3. Les distributions à deux variables

IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB

Introduction au Data-Mining

Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies

Projet Matlab : un logiciel de cryptage

Analyses multivariées avec R Commander (via le package FactoMineR) Qu est ce que R? Introduction à R Qu est ce que R?

21 mars Simulations et Méthodes de Monte Carlo. DADI Charles-Abner. Objectifs et intérêt de ce T.E.R. Générer l'aléatoire.

INF6304 Interfaces Intelligentes

Dossier I Découverte de Base d Open Office

Projet SINF2275 «Data mining and decision making» Projet classification et credit scoring

Chapitre 7. Statistique des échantillons gaussiens. 7.1 Projection de vecteurs gaussiens

Une comparaison de méthodes de discrimination des masses de véhicules automobiles

Introduction. Préambule. Le contexte

Lecture critique et pratique de la médecine

Business-Insight Company Presentation

Traitement bas-niveau

Revue des algorithmes PCA, LDA et EBGM utilisés en reconnaissance 2D du visage pour la biométrie

Programmation linéaire

Statistiques Descriptives à une dimension

Analyse d images. Edmond.Boyer@imag.fr. Edmond Boyer UFRIMA 1

Ne cherchez plus, soyez informés! Robert van Kommer

Les bases de données

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar

Vérification audiovisuelle de l identité

2 Serveurs OLAP et introduction au Data Mining

L'analyse des données à l usage des non mathématiciens

L'analyse de données. Polycopié de cours ENSIETA - Réf. : Arnaud MARTIN

Trépier avec règle, ressort à boudin, chronomètre, 5 masses de 50 g.

Séries Statistiques Simples

GROUPE DE TRAVAIL «ARTICLE 29» SUR LA PROTECTION DES DONNÉES

= 1 si n = m& où n et m sont souvent des indices entiers, par exemple, n, m = 0, 1, 2, 3, 4... En fait,! n m

Franck VAUTIER, Jean-Pierre TOUMAZET, Erwan ROUSSEL, Marlène FAURE, Mohamed ABADI, Marta FLOREZ, Bertrand DOUSTEYSSIER

Relation entre deux variables : estimation de la corrélation linéaire

Cours d analyse numérique SMI-S4

La segmentation à l aide de EG-SAS. A.Bouhia Analyste principal à la Banque Nationale du Canada. Chargé de cours à l UQAM

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1

Calcul Formel et Numérique, Partie I

Reconnaissance et suivi de visages et implémentation en robotique temps-réel

Optimisation de la compression fractale D images basée sur les réseaux de neurones

Séance 0 : Linux + Octave : le compromis idéal

Initiation à l analyse en composantes principales

FORMULAIRE DE STATISTIQUES

Première partie. Préliminaires : noyaux itérés. MPSI B 6 juin 2015

Arbres binaires de décision

Enjeux mathématiques et Statistiques du Big Data

Travaux pratiques avec RapidMiner

Apprentissage Automatique

Introduction: 1. définition d un ETL 2. importance et diversité des données spatiales utilitédes ETL géographiques

aux différences est appelé équation aux différences d ordre n en forme normale.

ACP Voitures 1- Méthode

3. Conditionnement P (B)

Introduction au Data-Mining

L analyse d images regroupe plusieurs disciplines que l on classe en deux catégories :

Modèles pour données répétées

Excel Avancé. Plan. Outils de résolution. Interactivité dans les feuilles. Outils de simulation. La valeur cible Le solveur

PRÉSENTATION PRODUIT. Plus qu un logiciel, la méthode plus efficace de réconcilier.

LA NOTATION STATISTIQUE DES EMPRUNTEURS OU «SCORING»

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007

Classification non supervisée

Introduction au datamining

AICp. Vincent Vandewalle. To cite this version: HAL Id: inria

Optimisation, traitement d image et éclipse de Soleil

Importation de fichiers Eagle

LA PHYSIQUE DES MATERIAUX. Chapitre 1 LES RESEAUX DIRECT ET RECIPROQUE

Fonctions de plusieurs variables

Sillage Météo. Notion de sillage

Programmation linéaire

Simulation d'un examen anthropomorphique en imagerie TEMP à l iode 131 par simulation Monte Carlo GATE

Avant-après, amont-aval : les couples de tableaux totalement appariés

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.

Aide-mémoire de statistique appliquée à la biologie

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées

Introduction à la Visualisation Scientifique

IMPORTATION, CRÉATION, MANIPULATION, EXPORTATION DE DONNÉES STATISTIQUES

Business Intelligence avec Excel, Power BI et Office 365

Manuel d utilisation NETexcom

Cours de méthodes de scoring

MODULES 3D TAG CLOUD. Par GENIUS AOM

TRAITEMENT DES DONNEES MANQUANTES AU MOYEN DE L ALGORITHME DE KOHONEN

Python - introduction à la programmation et calcul scientifique

Recherche d Information(RI): Fondements et illustration avec Apache Lucene. par Majirus

Impact du mobile banking sur les comportements d épargne et de transferts à Madagascar. Florence Arestoff Baptiste Venet

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

Comparaison de Relevés 3D issus de plusieurs Systèmes de Numérisation

UNE EXPERIENCE, EN COURS PREPARATOIRE, POUR FAIRE ORGANISER DE L INFORMATION EN TABLEAU

Transcription:

Laboratoire 2 Extraction des caractéristiques L objectif de l extraction et de la sélection de caractéristiques est d identifier les caractéristiques importantes pour la discrimination entre classes. Après avoir choisi le meilleur ensemble de caractéristiques, il s agit de réduire la dimensionnalité de l ensemble des caractéristiques en trouvant un nouvel ensemble, plus petit que l ensemble original, qui néanmoins, contient la plupart de l information. Contrairement à ce que l intuition peut laisser penser, la performance des classificateurs n augmente pas indéfiniment avec la taille du vecteur de caractéristiques. Après avoir augmenté en fonction du nombre de caractéristiques, l efficacité atteint un plateau et quelquefois se met à décroître au-delà d un certain nombre de caractéristiques. Ce phénomène est appelé malédiction de la dimensionnalité. En plus, le coût (temps + mémoire) de la classification augmente avec la taille de ce vecteur. On a toujours intérêt à réduire le nombre de caractéristiques pour qu il corresponde à la dimensionnalité intrinsèque du problème ou pour de simples raisons pratiques. Les méthodes d extraction de caractéristiques à partir de l intensité d une image du visage peuvent être divisées en trois catégories : les méthodes globales (exploitant toute la région visage), les méthodes locales (exploitant des caractéristiques locales : yeux, nez, etc.), et les méthodes hybrides. On se limite principalement aux méthodes globales où l image du visage au complet peut être vue comme un vecteur dans un espace ayant autant de dimensions que de pixels dans l image, et représentant la variation d intensité (en niveau de gris). L image du visage, une matrice de pixel M, peut être représentée, par concaténation de colonnes, comme un vecteur x de dimension I = largeur hauteur. Chaque visage peut donc être considéré comme un vecteur à I composantes dans un espace R I. L ensemble des visages forme alors la matrice d images X, où chaque vecteur colonne x j représente un visage dont chaque élément x ij est l intensité du pixel i. Dans notre cas, la dimension (I = 92 112 = 10304 pixels) du vecteur de caractéristiques est très grande, mais la vraie dimension de l espace dans laquelle les visages observés sont situés peut être plus petite. En plus, le nombre d échantillons réservés à l apprentissage est considérablement inférieur au nombre de caractéristiques. Parmi les techniques de réduction de dimensionnalité, les analyses statistiques linéaires consistent à transformer les données originales par une transformation linéaire (changement de base) optimisant un critère géométrique ou statistique. Pour J images, on cherche une matrice de transformation W pour obtenir la projection R I R K de la matrice d images X : où Y est la matrice résultante de la projection telle que K < I. Y K J = W T I KX I J, (1) 2.1 Analyse en composantes principales (Eigenfaces) L analyse en composantes principales (PCA pour Principal Component Analysis ) 1 est une méthode classique de réduction de dimension Cette méthode permet de représenter le nuage des points originel dans un sous-espace orthogonale de dimension inférieure, tout en limitant au maximum la perte d information. Les axes principaux sont ceux qui contiennent le plus d information 1. Également connue sous le nom de transformée de Karhunen-Loève ou de transformée de Hotelling. 1

(a) (b) Figure 1 Représentation d une image de visage. (a) Un vecteur image formé par concaténation de colonnes. (b) Illustration d un visage représenté par un point dans l espace de visages de K dimensions (en supposant K = 3) pertinente c est-à-dire qui maximisent l inertie 2 du nuage projeté. Les composantes principales sont les vecteurs ayant pour coordonnées celles des projections orthogonales des points du nuage sur les axes principaux. La PCA fournit donc une base de représentation dans laquelle les composantes sont simplement dé-corrélées et rendant compte de la variation maximale, ce qui permet : une réduction des données de D à K nouvelles caractéristiques une visualisation des données à 2 ou 3 dimensions (si K = 2 ou 3) une interprétation des données Soit J images en format de vecteur colonne x j (j = 1,..., J) dans R I, l objectif est de transformer l espace initial R I des images à un espace visage de dimensions R K (K < I) de manière à ce que la variance observée dans chacune de ces nouvelles dimensions soit décroissante. Le calcul des composantes principales consiste à : A) Calculer la valeur moyenne des visages (visage moyen) : µ = 1 J J x j (2) j=1 B) Centrer les images de manière à avoir une matrice de données D dont la moyenne est de zéro : D = [x 1 µ, x 2 µ,..., x J µ] (3) C) Calculer la matrice de covariance de la matrice centrée A : J C = (x j µ)(x j µ) T = DD T (4) j=1 2. La moyenne pondérée des carrés des distances des points projetés à leur centre de gravité. 2

D) Décomposer C en vecteurs propres v i et leurs valeurs propres λ i : Sv i = λ i v i, j = 1,..., I (5) où, Λ = diag(λ k ) et V = [v 1,, v I ] est la matrice de tous les I vecteurs propres. Cette opération revient à poser S = VΛV T. E) Trier les valeurs propres et les vecteurs propres correspondants : λ 1 λ 2... λ I 0 v 1 v 2... v I 0 (6) F) Choisir les K premiers vecteurs propres (composantes principales) : G) Finalement, projeter les données sur les K < I nouveaux axes : W = [v 1,..., v K ] (7) Y = W T (X µ), X R I, Y R K (8) Les vecteurs propres d un visage (Eigenfaces) associées aux plus fortes valeurs propres sont les plus pertinentes et représentent dans l espace des images les fortes variations d un visage. Le nombre possible de visages propres peut être donc approximé en utilisant seulement les meilleurs visages propres qui correspondent aux plus grandes valeurs propres. 2.2 Analyse en composantes principales avec noyau L analyse par composante principale avec noyau (kpca, pour kernel PCA ) est une variation de la méthode précédente avec l utilisation de la technique du noyau. Soit J vecteurs x d image centrée (voir éq. 3) dans un espace R I, ces données ne seront généralement pas linéairement séparables si I < J. Par contre, si nous effectuons la projection Φ : R I R I, où I J, les données seront alors pratiquement toujours linéairement séparable et il sera facile de construire des hyperplans séparant les données en sous-groupes de données (dans notre cas des classes). Contrairement à PCA, la projection Φ créée des vecteurs linéairement indépendants et il est donc impossible d obtenir des vecteurs propres à partir d un matrice de covariance. À la place, une fonction arbitraire Φ, de dimension I J, est utilisée pour créer un noyau (en anglais, kernel ) J J défini par le produit scalaire N ij = k(x i, x j ) = Φ(x i ) Φ(x j ) = Φ(x i ) T Φ(x j ). (9) Notons que la matrice N est le résultat d un produit scalaire effectué avec la fonction Φ(x). Chaque élément du noyau N est donc le résultat de la projection des données sur les vecteurs propres v k et non les vecteurs propres en tant que tels, comme la matrice W obtenu avec PCA. Puisque les opérations avec la projection Φ(x) ne sont jamais calculée explicitement, ceci nous permet donc de travailler dans un espace R D de très haute dimensionnalité et de satisfaire D J. 3

Pour évaluer la projection d un vecteur x 3 sur le k ième vecteur propre (v k ), il suffit d exécuter l opération I v k Φ(x) = α ik Φ(x i ) T Φ(x) (10) i=1 où les produit scalaires Φ(x i ) T Φ(x) sont les éléments de la matrice N, αi k est le i ième élément du k ième vecteur propre de la matrice N. Il reste alors à calculer et normaliser les vecteurs propres de N, α k. Étant donné que les visage ont été centrés, le calcul des α k se fait en solutionnant l équation de vecteurs propres JλA = NA, (11) où A est la matrice des vecteurs propres de N, A = [α 1,..., α J, et λ est le vecteur des valeurs propres. La normalisation des vecteurs propres α k est effectuée de manière à satisfaire l équation 1 = λ k (α k α k ). (12) Le principal désavantage de cette démarche est que les vecteurs propres v k ne sont jamais calculés et, contrairement à PCA, il n est donc pas possible de trouver les K meilleurs vecteurs explicitement. Ceci entraîne que pour de grandes bases de données, l utilisation de kpca nécessitera l utilisation de très grandes matrices N, ce qui peut s avérer problématique. Il est alors nécessaire de faire une première catégorisation ( clustering ) des données et d utiliser le centre des catégories pour remplir la matrice N. 2.3 Expérimentations Utiliser le script exp2_dimensions.m pour expérimenter avec PCA et kpca sur des données synthétiques afin de voir les avantages et les inconvénients des deux méthodes. Voir help pca, kernel_pca et compute_mapping pour bien comprendre les fonctions. 2.4 Préparation de la base de donnée de visages Vous pouvez télécharger la base de visage de AT&T 4 du site web : http://www.cl.cam.ac. uk/research/dtg/attarchive/pub/data/att_faces.zip, puis l extraire (par exemple dans un répertoire nommé : att ). Les images sont organisées dans 40 répertoires (un pour chaque individu) nommé : s1,..., s40. Dans chacun de ces répertoires, il y a dix images de visage différentes pour chaque individu numérotées de 1 à 10. Les fichiers sont en format PGM. La taille de chaque image est de 92x112 pixels, avec 256 niveaux de gris par pixel. Écrire un script pour : faces_to_prtools_data.m Charger les images de chaque individu, les transformer en PRTools datasets, et les sauvegarder en format.mat. Par exemple, face1.mat : (les images du premier individu dans le répertoire s1) doit être une dataset de : 10 images par 10304 caractéristiques de classe 1. 3. Les vecteurs x proviennent des données utilisées pour construire la matrice N 4. http ://www.cl.cam.ac.uk/research/dtg/attarchive/facedatabase.html 4

(a) (b) Figure 2 Les 5 premières images appartenant au 10 premiers individus de la base AT&T (2a), avec les 3 premiers Eigenfaces (2b) read_faces(path,subject,photo) Charger (dans une même dataset ) les images déjà sauvegardées (facexx.mat) en choisissant le numéro de l individu (subject) et le nombre des images (bien sur en gardant les étiquettes). Il est préférable si la fonction accepte des vecteurs en entrée pour faciliter la division des données en apprentissage et test (pour les séances prochaines). Par exemple, Train = read_faces(./att,1:10,1:5); % charge les 5 premières images pour les 10 premier individus dans Train Test = read_faces(./att,1:10,6:10); % charge les 5 dernières images pour les 10 premier individus dans Test Fonctions utiles : Matlab : imread, imshow, sprintf, save, load. PRTools : show, im2obj. 2.5 Application de PCA/kPCA sur notre problème On va appliquer et comparer PCA et kpca sur notre problème d identification de visage. Dans le cadre de cette séance on ne va pas aller au-delà de la réduction de dimensions. Charger les images, par exemple (figure 2a) : Train = read_faces(./att,1:10,1:5) Appliquer la PCA et la LDA sur la base Train Reconstruire quelques images (projetées dans le nouvel espace) pour visualiser l effet de chaque méthode. Par exemple, pour les 3 premiers vectteur pour Eigenfaces, vous devriez obtenir des images similaires à la figure 2b Comparer les dispersions de données en utilisant les 2 (ou 3) premières caractéristiques (avec la fonction scatterd) provenant des données brutes, de PCA et de kpca. Choisir et comparer aussi autres vecteurs caractéristiques (e.g., les derniers, etc.) Expérimenter en variant le nombre : de composantes retenues des individus 5