La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Concepts avancés en mathématiques et informatique appliquées MAP-6014.

Présentations similaires


Présentation au sujet: "Concepts avancés en mathématiques et informatique appliquées MAP-6014."— Transcription de la présentation:

1 Concepts avancés en mathématiques et informatique appliquées MAP-6014

2 Extraction des caractéristiques u Introduction u Extraction des caractéristiques –Transformation en composantes principales –Approche SVD –Exemples d’applications u Séparation de sources de données –Approche ICA

3 Introduction u L’extraction consiste à trouver un espace des caractéristiques de dimension d à partir d’un espace original de D caractéristiques u La compression de l’information est accomplie par la projection des caractéristiques originales dans un espace de dimension inférieure et ce en éliminant la redondance de l’information u Cette projection prend la forme: x = A(y)

4 Introduction u Processus de projection de l’ensemble des caractéristiques originales dans un autre espace de caractéristiques de dimension inférieure

5 Introduction u Si la fonction de projection A est linéaire, nous cherchons alors un extracteur de caractéristiques où A est une matrice D X d, permettant la projec- tion d’un vecteur y (dimension D) sur un vecteur x (dimension d) et dont la forme est:

6 Extraction des caractéristiques u Analyse en composante principale –Ce type de méthode est aussi appelée Transformée discrète de Karhunen-Loève Transformée de Hotelling Transformée en vecteurs propres –Cette méthode permet de déduire une transforma- tion linéaire permettant d’éliminer la corrélation entre les composantes d’un vecteur de variables aléatoires

7 Extraction des caractéristiques u Analyse en composante principale –Si nous avons une population (n observations) de vecteurs aléatoires (D dimensions) de la forme: Avec comme vecteur moyenne Avec une matrice de covariance Matrice D X D Vecteurs D dimensions

8 Extraction des caractéristiques u Analyse en composante principale –Si nous avons une matrice A définissant une trans- formation linéaire pouvant générer un nouveau vecteur x à partir d’un vecteur y par: – A est construite de telle façon que ses rangées sont les vecteurs propres de C y

9 Extraction des caractéristiques u Analyse en composante principale –Le vecteur x est aléatoire de moyenne 0 (m x = 0) –La matrice de covariance de x découle de: Le vecteur x est donc composé de variables aléatoires non corrélées – La transformation A élimine donc la corrélation entre les composantes du vecteur y k est la variance de x k

10 Extraction des caractéristiques u Analyse en composante principale –Cette transformation est aussi réversible: A est symétrique

11 Extraction des caractéristiques u Diminution de la dimension du vecteur y –Nous pouvons réduire la dimension du vecteur y de D-M (nombre de caractéristiques) en ignorant les vecteurs propres correspondant aux D-M plus faibles valeurs propres –Si nous avons la matrice B de M X D (M < D) découlant de l’élimination des D-M rangées inféri- eures (classée en ordre croissant d’importance) de A

12 Extraction des caractéristiques u Réduction de la dimension du vecteur y –En guise de simplification nous supposons que m = 0 –Le vecteur x transformé est alors donné par: – Le vecteur y est reconstitué approximativement par:

13 Extraction des caractéristiques u Réduction de la dimension du vecteur y –L’erreur quadratique moyenne de l’approximation est:

14 Extraction des caractéristiques u Recherche des valeurs et vecteurs propres –Cherchons les valeurs et les vecteurs propres associés à une matrice C y (matrice variance-covariance) –Si nous avons une matrice C y de D x D nous pouvons écrire – Où v est un vecteur propre de C y et une valeur propre de C y

15 Extraction des caractéristiques u Recherche des valeurs et vecteurs propres –Si nous avons une matrice C y de D x D nous pouvons écrire – Par définition, pour que soit une valeur propre il faut que la solution v de la dernière équation soit non nulle. Pour que v soit non nulle il faut que

16 Extraction des caractéristiques u Recherche des valeurs et vecteurs propres –Si nous considérons un cas d’ordre 3, nous obtenons – Le déterminant donne

17 Extraction des caractéristiques u Recherche des valeurs et vecteurs propres –Lorsque nous avons les valeurs propres, nous les substituons une à une dans (C y - I) v = 0 pour trouver les vecteurs propres v

18 Extraction des caractéristiques u Recherche des valeurs et vecteurs propres –Exemple

19 Extraction des caractéristiques (principes)

20 Extraction des caractéristiques: Approche S ingular V alue D ecomposition u Cette approche permet d’éliminer les faiblesses notées dans les approches de résolutions de Gauss. u L’approche SVD permet de résoudre divers types de problèmes: résolution de systèmes d’équations linéaires par moindres carrés (cas d’approximation de données), résolution de système mal conditionné.

21 Approche S ingular V alue D ecomposition u Système à résoudre:

22 Approche SVD (suite) u L’approche SVD permet d’exprimer la matrice A par la décomposition A = U W V T. u Cette décomposition en matrices est obtenue par la fonction svdcmp() de Numerical Recipes in C. u Les matrices U, W et V T permettent de calculer l’inverse de A, A -1 ayant la forme A -1 = (V T ) -1 W -1 U -1 = V W -1 U T u V et U étant orthonormales, leur inverse est donc donnée par leur transposée. u W étant diagonale, donc W -1 est aussi diagonale avec les éléments sur la diagonale (valeurs propres de A) donnés par 1/w i.

23 Approche SVD (suite) u Quand certaines valeurs w i  0 (proche de 0), la matrice A est dite singulière. u Dans ce cas, A -1  (V T ) -1 W -1 U -1  V W -1 U T. u Donc pour estimer la matrice A -1 (pseudoinverse de A), nous remplaçons les valeurs 1/w i dans la matrice W -1 par 0 quand w i est petit (proche de 0). u Donc, x = A -1 b est obtenue dans les cas de singularité par x = pseudoinverse (A) b

24 Approche SVD (suite) u Forme de x = A -1 b A -1

25 Approche SVD (suite) u Avant d’appeler la fonction svdksb() qui permet de déduire les sol’n d’un système d’équations linéaires, il faut vérifier si A est singulière. u Après l’exécution de la fonction svdcmp(), les w i < MAX(w i ) * 1.0e-6 sont fixés à 0 dans la matrice W.

26 Approche SVD (exemple: Étalonnage de caméras) u Système d’équations linéaires de la forme Ax = b : Vecteur des sol’n recherchées Coordonnées des points de contrôle 3D. Coordonnées des points de contrôle dans l’image de la scène Axb

27 Approche SVD (exemple: Étalonnage de caméras) u Algorithme de résolution: étalonnage de caméra int X[20],Y[20], Z[20],U[20],V[20]; float wmax, wmin, **a,**u,*w,**v,*b,*x int i,j,minPos; // selectionner un minimum de 6 points de contrôle ….// selectionner un maximum de 20 points de contrôle ….// correspondance en chaque pixel (u,v) et point dans l’espace 3D (X,Y,Z) a = matrix(1,2*m,1,12); // matrice A de 2mX12 u = matrix(1,2*m,1,12); // m: nombre de points de contrôle w = matrix(1,12,1,12); v = matrix(1,12,1,12); b = vector(1,2*m); x = vector(1,12); // vecteur des sol’n ….. // mise à 0 de A

28 Approche SVD (exemple: Étalonnage de caméras) u Algorithme de résolution: étalonnage de caméra (suite …) for(i=1;i<=2*m;i+=2) {// initialiser A a[i][1] = a[i+1][4] = X[i/2+1]; a[i][2] = a[i+1][5] = Y[i/2+1]; a[i][3] = a[i+1][6] = Z[i/2+1]; a[i][7] = -X[i/2+1]* u[i/2+1]; a[i+1][7] = -X[i/2+1]* v[i/2+1]; a[i][8] = -Y[i/2+1]* u[i/2+1]; a[i+1][8] = -Y[i/2+1]* v[i/2+1]; a[i][9] = -Z[i/2+1]* u[i/2+1]; a[i+1][9] = -Z[i/2+1]* v[i/2+1]; a[i][10] = - u[i/2+1]; a[i+1][10] = - v[i/2+1]; a[i][11] = a[i+1][12] = 1.0;}

29 Approche SVD (exemple: Étalonnage de caméras) u Algorithme de résolution: étalonnage de caméra (suite …) for(i=1;i<=2*m;i+=2) // initialiser b { b[i] = b[i+1] = 0; }

30 Approche SVD (exemple: Étalonnage de caméras) u Algorithme de résolution: étalonnage de caméra (suite …) for(i=1;i<=2*m;i++) for(j=1;j<=12;j++) u[i][j] = a[i][j]; svdcmp(u,2*m,12,w,v); wmax = 0.0; for(j=1;j wmax) wmax = w[j]; wmin = wmax; // trouver la valeur propre min. dans w for(j=2;j<=12;j++) if((w[j] < wmin) && w[j] != 0.0) {wmin = w[j]; minPos = j;} for(j=1;j<=12;j++) x[j]=v[j][minPos]; // x contient la solution

31 Approche SVD (exemple: Étalonnage de caméras) u Avec le vecteur des sol’n x dont les éléments correspondent aux coefficients des équations de transformation 3D/2D (points dans l’espace vers pixels). (x[1]  m 11, x[2]  m 12, x[3]  m 13, x[4]  m 21, x[5]  m 22, x[6]  m 23, x[7]  m 31, x[8]  m 32, x[9]  m 33, x[10]  m 34, x[11]  m 14, x[12]  m 24 ), nous pouvons déduire la position la position 3D d’un point dans l’espace à partir de sa projection u,v dans le plan image.

32 Extraction des caractéristiques (exemple en télédétection: Images aéroportées)

33 Extraction des caractéristiques (exemple en télédétection)

34 Les 2 premières composantes contribuent pour 94 % de la variance totale

35 Extraction des caractéristiques (exemple en télédétection) Images multispectrales: B, V, R Images multispectrales : NIR, MIR, TIR

36 Extraction des caractéristiques (exemple en télédétection) Les 2 premières composantes contribuent pour plus de 90 % de la variance totale

37 Extraction des caractéristiques (exemple en télédétection) Images spectrales reconstruites à partir des 2 premières composantes principales

38 Extraction des caractéristiques (exemple en télédétection) Différence entre les images spectrales originales et celles reconstruites à partir des 2 premières composantes principales

39 Extraction des caractéristiques (exemple en télédétection: Images LandSat) Colonne de gauche: Bandes spectrales diverses (Bandes 4, 5, 6, 7 de LandSat MSS) Colonne de droite: Images des composantes principales 1 et 2 (coin supérieur droit) Images des composantes principales associées à de plus faibles valeurs propres (coin inférieur droit PC3 et PC4)

40 Extraction des caractéristiques (exemple en télédétection)

41 Composantes principales

42 Extraction des caractéristiques (exemple reconnaissance de visages) Exemples d’images pouvant servir à déduire les Eigen images Permet de déduire la transfor- mation pour projeter une image vers ses Eigen images A: matrice [p, NXN] y: vecteur [NXN, 1] Image originale x: vecteur [p, 1] Eigen image

43 Extraction des caractéristiques (exemple reconnaissance de visages) Vingt premières Eigen images Correspond aux 20 plus grandes valeurs propres de C y

44 Extraction des caractéristiques (exemple reconnaissance de visages) Valeurs propres de C y Les 100 premières valeurs propres sont celles correspondant aux vecteurs propres qui constituent les axes de l’espace de variance maximale donc comportant le plus d’information

45 Extraction des caractéristiques (exemple reconnaissance de visages) Reconstruction d’image à partir des Eigan face images

46 Extraction des caractéristiques (exemple reconnaissance de visages) Reconstruction d’image à partir des Eigen face images

47 Extraction des caractéristiques (exemple reconnaissance de visages) Entraînement du système par l’extraction d’une matrice  kXd ou k est NXN et d le nombre de composantes retenues (eigan face) Calcul des vecteurs caractéristiques de chaque personnes:  i =  T  i T ou  i est l’image d’une personne Pour une personne inconnue avec une image  calculer le vecteur  et ensuite comparer aux  i pour déterminer celui le plus proche

48 Séparation de sources de données (Approche ICA) u Tant l’approche PCA que ICA sont utilisées pour réduire les données originales en composantes de dimensions plus petites u PCA utilise le premier et second moments des données mesurées et s’appuie sur des caractéristiques gaussiennes u ICA exploitent des caractéristiques tirées des données qui sont non-gaussienne, donc réfèrent à des moments d’ordre supérieur u Voir le site: http://www.cis.hut.fi/projects/ica/fastica/

49 Séparation de sources de données (Approche ICA) u PCA (rappel) –Large ensemble de données –Centrage des données

50 Séparation de sources de données (Approche ICA) u PCA (rappel) –Calcul de la matrice Variance/Covariance –Maximisation de la variance et Minimisation de la covariance. Recherche des valeurs propres et vecteurs propres de C x

51 Séparation de sources de données (Approche ICA) u ICA –L’approche PCA est valide quand les données sont gaussiennes, linéaires et stationnaires –ICA est préconisée quand les données brutes sont très bruitées, quand des données capturées (ex: enregistrées) proviennent de plusieurs sources –PCA minimise la covariance des données/ICA minimise les statistiques d’ordre supérieures (ex: kurtose), minimisant l’information mutuelle des sorties –PCA produits un espace orthonormé dont les axes correspondent aux directions d’énergies élevées en terme de la variance des signaux, ICA identifie les composantes indépendantes des signaux non-gaussiens

52 Séparation de sources de données (Approche ICA) u Avec des mesures x, trouver les composantes s, et la matrice de transformation (mixing) A. u Trouver w j qui maximise la non-gaussiennité de u Les composantes indépendantes s sont déduites par:

53 Séparation de sources de données (Approche ICA) u Algorithme Fast ICA 1) Centrer x (déduire la moyenne de x) 2) Décorréler x (composantes non-corrélées) 3) Pour i = 1 à n w = vecteur aléatoire Orthogonaliser w en terme des autres composantes Normaliser w TTQ (w ! Converge) w = approximation de la negentropie de w T x Orthogonaliser w en terme des autres composantes Normaliser w FINTTQ W(i,: ) = w FINPOUR 4) s = W * x décorrélé; return s;

54 Séparation de sources de données (Approche ICA) u Algorithme Fast ICA 1. Centrer les données, x, telle que la moyenne = 0 (voir PCA): x <= x – x’, x’ = E{x} 2. Décorréler x pour maximiser les caractéristiques non-Gaussian (voir PCA avec filtrage): z = V Λ −1/2 V T x, V Λ V T = E{xx T } 3. Initialiser w, tel que ||w|| =1 4. MAJ de w (direction maximale non-Gaussienne ) w = E{z * g’(w T z)} - E{g ’’ (w T z)}w, g(y) = tanh(a 1 y) ou = y*exp(-y 2 /2), 1<a 1 <2 w = w/||w|| 5. Si non convergence, go to step 4. 6. Obtenir les composantes indépendantes, s: 7. s = [ w 1 w 2 … w n ] x

55 Séparation de sources de données (Approche ICA) u Algorithme Fast ICA expliqué (Step 4) Décorrélation => Orthogonalisation de Gram-Schmidt

56 Séparation de sources de données (Approche ICA) u Algorithme Fast ICA exemple: Signaux sources

57 Séparation de sources de données (Approche ICA) u Algorithme Fast ICA exemple: Signaux mixés

58 Séparation de sources de données (Approche ICA) u Algorithme Fast ICA exemple: Signaux séparés


Télécharger ppt "Concepts avancés en mathématiques et informatique appliquées MAP-6014."

Présentations similaires


Annonces Google