• Aucun résultat trouvé

M ÉTHODES EN  M  D ATA ATRICIELLES   MINING

N/A
N/A
Protected

Academic year: 2022

Partager "M ÉTHODES EN  M  D ATA ATRICIELLES   MINING"

Copied!
120
0
0

Texte intégral

(1)

M ÉTHODES  M ATRICIELLES  

EN  D ATA   MINING  

M ATRIX  M ETHODS   IN  D ATA  M INING  

Younès  Bennani  

Professeur  des  Universités  

Master  d’InformaGque  

Master  of  Science  in  Informa:cs  

Année  M1  

(2)
(3)

Université Paris 13/Younès Bennani Traitement Numérique des Données 1

Younès BENNANI

Professeur des Universités

Méthodes Matricielles en Data Mining

Matrix Methods in Data Mining

Master Informatique

Année M1

Université Paris 13/Younès Bennani Traitement Numérique des Données 2

•  Partie I

•  Introduction

•  Matrices et vecteurs

•  Opérations matricielles de base

•  Propriétés

•  Partie II

•  Factorisations liées à la résolution de systèmes d'équations linéaires!

•  Factorisation LU

•  Factorisation QR

•  Factorisation de Cholesky

•  Factorisation SVD

•  Factorisations basées sur valeurs propres et concepts connexes!

•  Factorisation spectrale!

•  Factorisation de Jordan

•  Factorisation de Schur!

•  Factorisation QZ!

•  Factorisation de Takagi

•  Partie III

•  Factorisation NMF

•  Factorisation Semi-NMF

•  Factorisation Convex-NMF

•  Factorisation Tri-NMF

•  Partie IV

•  Applications en Data Mining

Programme!

(4)
(5)

Université Paris 13/Younès Bennani Traitement Numérique des Données 3

Partie I

•  Partie I •  Introduction

•  Matrices et vecteurs

•  Opérations matricielles de base

•  Propriétés

Université Paris 13/Younès Bennani Traitement Numérique des Données 4

(6)
(7)

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining 5

Bibliographie!

6

Introduction !

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(8)

12 millions SMS/minute en 2010, 20 millions SMS/minute en 2013.

L’évolution du téléphone mobile en smartphone multiplie par 10 la quantité d’informations émises, même progression entre un smartphone et une tablette.

Avec ses 800 millions de membres, Facebook génère 30 milliards de documents nouveaux chaque mois.

Les « tweets », micro-messages diffusés à tout un réseau via Twitter sont estimés à 140 millions d'unités/jour.

Près de 294 milliards de courriels seraient échangés chaque jour via nos boîtes mails.

Sources de Données

1,2 zettaoctet d’informations a été crée en 2010 : soit 1021

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining 7

Vottabyte (1024) Zettabyte (1021) Exabyte (1018) Petabyte (1015) Terabyte (1012) Gigabyte (109) Megabyte (106)

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining 8

Nature des données!

(9)

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining 9

Nature des données!

Une croissance estimée à 44%

par an jusqu’en 2020, aidée par le prochain boum des objets connectés.

Les quantités d’informations générées par les outils numériques donnent le vertige

« l'humanité a créé plus d'informations au cours des deux dernières années que pendant toute son histoire ».

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining 10

Evolution des données!

(10)

11

Données - Data!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

12

A

Représentation des données!

a b d c

e

f g h

=[x1, x2, …, xn]

= b b b h h h a a

=[x1, x2, …, xn]

= 0000000 …1100111000...

x

x

Représentation Structurelle Représentation Numérique

Méthodes syntaxiques - Grammaires et automates - Arbres et graphes

Méthodes statistiques

- Méthodes paramétriques+ non-paramétriques - Extraction et sélection de traits

- Classification automatique

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(11)

13

A

Codage numérique des formes!

t x(t)

t1 t2 t3 tn-1 tn

x= x1

x2 M

xn

⎛

⎝

⎜

⎜ ⎜

⎜

⎞

⎠

⎟

⎟ ⎟

⎟

= x t

( )

1

x t

( )

2

M x t

( )

n

⎛

⎝

⎜

⎜

⎜ ⎜

⎜

⎞

⎠

⎟

⎟

⎟ ⎟

⎟

x= x1

x2 M

xn

⎛

⎝

⎜ ⎜

⎜

⎜

⎞

⎠

⎟ ⎟

⎟

⎟

= x

( )

1 x

( )

2 M

x n

( )

⎛

⎝

⎜

⎜ ⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

⎟ ⎟

Pixel #1

Pixel #n

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

14 Représentation

numérique

Un exemple :

Chernoff faces of the speaker data

!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(12)

Université Paris 13/Younès Bennani Traitement Numérique des Données 15

Classification (automatique) :

« Clustering »!

Espace des formes

regroupement

ω3

ω4 ω2

ω1

Espace des « clusters »

Université Paris 13/Younès Bennani Traitement Numérique des Données 16

Classement/Discrimination!

Espace des formes

identification

Espace de décision

ω1

ω2

ω3

ω4

?

(13)

Université Paris 13/Younès Bennani Traitement Numérique des Données 17

Classement/Discrimination!

*

?

Université Paris 13/Younès Bennani Traitement Numérique des Données 18

Chaîne de traitement!

Codage Prétraitement Analyse Décision

Apprentissage

fréquenc e(Hz)

Monde Physique Espace des Formes

Analogique --> Numérique Espace de Représentation Microphone

Caméra

Sélection de l'info. nécessaire Elimination du bruit Suppression de la redondance

Calcul de paramètres Espace des Paramètres

Modélisation Espace des Noms Reconnaissance Calcul de distance ou

de probabilité

(14)

19

Opérations sur les Vecteurs/Matrices !

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

20

Vecteurs et Matrices!

Dans de nombreuses applications, une matrice est juste un tableau rectangulaire de données, et ses éléments sont des scalaires, des nombres réels :

Pour traiter les données par des méthodes mathématiques, une structure mathématique doit être ajoutée. Dans le cas le plus simple, les colonnes de la matrice sont considérées comme des vecteurs dans Rm.

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(15)

21

Vecteurs et Matrices!

Matrices de documents, sont utilisées dans la recherche d'information.

Considérons la sélection suivante de cinq documents. Mots clés, que nous appelons termes, sont indiqués en gras.

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

22

Vecteurs et Matrices!

Si l'on compte la fréquence des termes dans chaque document, nous obtenons le résultat suivant :

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(16)

23

Vecteurs et Matrices!

 Maintenant, supposons que nous voulons trouver tous les documents qui sont pertinents à la requête 

« ranking of Web pages »

Ceci est représenté par un vecteur requête, construit de manière analogue à la matrice terme-document :

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Ainsi, la requête elle-même est considérée comme un document.

La tâche de recherche d'information peut maintenant être formulée comme un problème mathématique : trouvez les colonnes de A qui sont proches du vecteur q.

Pour résoudre ce problème, nous devons utiliser une mesure de distance dans R10.

24

Vecteurs et Matrices!

La classification des caractères manuscrits est un problème de reconnaissance de formes.

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(17)

25

Vecteurs et Matrices!

Matrices d’achats ou de votes.

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

26

Vecteurs et Matrices!

Le cœur du moteur de recherche Google est un calcul matriciel.

La Google matrice P est construite sur la base de la structure de liens du Web, et l'élément Pij est non nulle si il y a un lien d'une page Web j à i.

Le graphique ci-dessous illustre un ensemble de pages Web avec outlinks et inlinks :

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Pour que le moteur de recherche soit utile, il faut utiliser une mesure de la qualité des pages Web.

La matrice Google est utilisé pour classer les pages. Le classement se fait en résolvant un problème de valeurs propres pour P.

(18)

27

Addition de Matrices!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

28

Addition de Matrices!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Exemple en Matlab :

>> A =!

8 1 6!

3 5 7!

4 9 2!

2 3 1!

>> B =!

8 1 6!

3 5 7!

4 9 2!

1 2 6!

>> C=A+B!

C =!

16 2 12!

6 10 14!

8 18 4!

3 5 7!

(19)

29

Multiplication de Matrices!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

30

Multiplication de Matrices!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Exemple en Matlab :

>> A =!

8 1 6!

3 5 7!

4 9 2!

2 3 1!

>> B =!

8 1 6!

3 5 7!

4 9 2!

1 2 6!

>> M=-2*A!

M =!

-16 -2 -12!

-6 -10 -14!

-8 -18 -4!

-4 -6 -2!

>> N=3*B!

N =!

24 3 18!

9 15 21!

12 27 6!

3 6 18!

(20)

31

Multiplication de Matrices!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

32

Multiplication de Matrices!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(21)

33

Multiplication de Matrices!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Exemple en Matlab :

>> A =!

8 1 6!

3 5 7!

4 9 2!

2 3 1!

>> B =!

8 1 6!

3 5 7!

4 9 2!

1 2 6!

>> D=A*B’!

D =!

101 71 53 46!

71 83 71 55!

53 71 101 34!

25 28 37 14!

Produit terme à terme :!

>> H=A.*B!

H =!

64 1 36!

9 25 49!

16 81 4!

2 6 6

34

Propriétés : Multiplication de Matrices!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(22)

35

Propriétés : Multiplication de Matrices!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Exemple en Matlab :

>> A =!

8 1 6!

3 5 7!

4 9 2!

2 3 1!

>> B =!

8 1 6!

3 5 7!

4 9 2!

1 2 6!

>> C=A-2!

C =!

6 -1 4!

1 3 5!

2 7 0!

0 1 -1!

>>B=B’!

>>AB =A*B!

AB=!

101 71 53 46!

71 83 71 55!

53 71 101 34!

25 28 37 14!

>> BC=B*C!

BC =!

59 30 46!

29 79 27!

47 35 53!

>> P1=A*BC!

P1=!

783 529 713!

651 730 644!

591 901 533!

252 332 226!

>> P2=AB*C!

P2=!

783 529 713!

651 730 644!

591 901 533!

252 332 226!

36

Transposée de Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(23)

37

Propriétés de la transposée!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

38

Propriétés de la transposée!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Exemple en Matlab :

A =!

8 1 6!

3 5 7!

4 9 2!

2 3 1!

>> At=A’!

At =!

8 3 4 2!

1 5 9 3!

6 7 2 1!

>> AAt=A*At!

AAt =!

101 71 53 25!

71 83 71 28!

53 71 101 37!

25 28 37 14!

>> AtA=At*A!

AtA =!

93 65 79!

65 116 62!

79 62 90!

>> B!

B =!

8 3 4 1!

1 5 9 2!

6 7 2 6!

>> (A*B)’!

ans =!

101 71 53 25!

71 83 71 28!

53 71 101 37!

46 55 34 14!

>> B'*A’!

ans =!

101 71 53 25!

71 83 71 28!

53 71 101 37!

46 55 34 14!

(24)

39

Déterminant d’une Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

40

Déterminant d’une Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Définition d’un mineur :

(25)

41

Déterminant d’une Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Définition d’un cofacteur :

42

Déterminant d’une Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Calcul des déterminants par expansion cofacteurs :

(26)

43

Déterminant d’une Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

44

Déterminant d’une Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(27)

45

Déterminant d’une Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Méthode alternative pour le calcul des déterminants :

46

Déterminant d’une Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(28)

47

Déterminant d’une Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Exemple en Matlab :

>> M=magic(3)!

M =!

8 1 6!

3 5 7!

4 9 2!

>> det(M)!

ans =!

-360!

>> M=magic(2)!

M =!

1 3!

4 2!

>> det(M)!

ans =!

-10!

48

Inverse de Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(29)

49

Inverse de Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

50

Inverse de Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(30)

51

Inverse de Matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Exemple en Matlab :

>> M=magic(3)!

M =!

8 1 6!

3 5 7!

4 9 2!

>> inv(M)!

ans =!

0.1472 -0.1444 0.0639!

-0.0611 0.0222 0.1056!

-0.0194 0.1889 -0.1028!

>> M*inv(M)!

ans =!

1.0000 0.0000 0.0000!

0.0000 1.0000 0.0000!

0.0000 0.0000 1.0000!

52

Produit scalaire & norme!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Comment mesurer la «taille» d'un vecteur.

Les normes de vecteurs les plus courantes sont :

Les trois normes définies ici sont des cas particuliers de la

p-norme :

(31)

53

Produit scalaire & norme!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Le produit scalaire entre deux vecteurs x et y dans R

n

, est défini par :

En règle générale, une norme vectorielle est une application R

n

R avec les propriétés :

54

Norme de matrice !

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Pour toute norme vectorielle, nous pouvons définir une

norme de l'opérateur correspondant définie comme

étant :

(32)

55

Norme de matrice !

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

56

Norme de matrice !

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Soit A

∈ Rm × n

. Dans certains cas, nous allons traiter la matrice non pas comme un opérateur linéaire mais plutôt comme un point dans un espace de dimension mxn, soit R

mxn

.

Nous pouvons utiliser la norme de Frobenius, qui est définie par :

La norme de Frobenius ne correspond pas à une norme de vecteur, de sorte qu'il n'est pas un opérateur.

Cette norme a l'avantage qu'il est plus facile à calculer que la norme 2.

La norme de Frobenius est en fait étroitement liée à la norme euclidienne dans le sens où les matrices sont identifiés par des éléments de Rmn.

(33)

57

Dépendance linéaire!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

58

Rang de matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Le rang d'une matrice est défini comme le nombre m a x i m u m d e v e c t e u r s - c o l o n n e s l i n é a i r e m e n t indépendants.

C'est un résultat standard en algèbre linéaire que le nombre de vecteurs-colonnes linéairement indépendants = au nombre de vecteurs-lignes linéairement indépendants.

calculer la forme échelonnée réduite A’

de cette matrice A.

A’ a le même rang que A, et le rang correspond au nombre de lignes qui sont non nulles. Dans ce cas, nous avons deux lignes qui correspondent à ce critère.

Rang(A)=2

(34)

59

Rang d’une matrice!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani Traitement Numérique des Données 60

(35)

Université Paris 13/Younès Bennani Traitement Numérique des Données 61

Partie II

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

-1.5 -1 -0.5 0 0.5 1

•  Partie II

•  Factorisations liées à la résolution de systèmes d'équations linéaires!

•  Factorisation LU

•  Factorisation QR

•  Factorisation de Cholesky

•  Factorisation SVD

•  Factorisations basées sur valeurs propres et concepts connexes!

•  Factorisation spectrale!

•  Factorisation de Jordan

•  Factorisation de Schur!

•  Factorisation QZ!

•  Factorisation de Takagi

Université Paris 13/Younès Bennani Traitement Numérique des Données 62

Factorisations liées à la résolution de systèmes d'équations linéaires

(36)

63

Factorisation matricielle LU!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

La factorisation LU a été proposée comme une décomposition des formes quadratiques et bilinéaires. Lagrange, dans le tout premier papier dans ses œuvres complètes (1759) tire l'algorithme que nous appelons élimination de Gauss.

Plus tard, Turing a introduit la factorisation LU d'une matrice en 1948 qui est utilisé pour résoudre le système d'équations linéaires.

J-L Lagrange

(1736 –1813) A. M. Turing

(1912-1954)

A = L U

Applicable : A carrée

64

Factorisation matricielle LU!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Soit A une matrice carrée. On dit que A admet une factorisation LU s'il existe une matrice triangulaire inférieure formée de 1 sur la diagonale, notée L, et une matrice triangulaire supérieure, notée U, qui vérifient l'égalité :

A = L x! U

(37)

65

Factorisation matricielle LU!

Université Paris 13/Younès Bennani

Méthodes Matricielles pour le Data Mining

A = L U

Il n'est pas toujours vrai qu'une matrice A admette une factorisation LU. Cependant dans certains cas, en permutant des lignes de A, la factorisation devient possible. On obtient alors une factorisation de la forme :

où P est une matrice de permutation.

A = P L U

66

Exemple de factorisation LU!

Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

(38)

67

Algorithme de factorisation LU!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

68

Algorithme de factorisation LU!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

Exemple en Matlab :

>> M=magic(3)!

M =!

8 1 6!

3 5 7!

4 9 2!

>> [L,U]=lu(M)!

L =!

1.0000 0 0!

0.3750 0.5441 1.0000!

0.5000 1.0000 0!

U =!

8.0000 1.0000 6.0000!

0 8.5000 -1.0000!

0 0 5.2941!

>> L*U!

ans =!

8 1 6!

3 5 7!

4 9 2!

>> [L,U,P]=lu(M)!

L =!

1.0000 0 0!

0.5000 1.0000 0!

0.3750 0.5441 1.0000!

U =!

8.0000 1.0000 6.0000!

0 8.5000 -1.0000!

0 0 5.2941!

P =!

1 0 0!

0 0 1!

0 1 0!

>> P*L*U!

ans =!

8 1 6!

3 5 7!

4 9 2!

(39)

69

Orthogonalité!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

Deux vecteurs x et y non nuls sont orthogonaux si : x

T

y = 0

Si une matrice Q est orthogonale alors : Q

T

Q = I

Le produit de deux matrices Q et P orthogonales est orthogonale.

Soit X=PQ alors X

T

X = (PQ)

T

PQ= Q

T

P

T

P Q = Q

T

Q = I

70

Factorisation QR!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

Tout d'abord la factorisation QR a été proposée par Gram (1883).

Plus tard, Erhard Schmidt (1907) a prouvé le théorème de la factorisation QR.

A = Q R

Jørgen Pedersen Gram

(1850 –1916) Erhard Schmidt

(1876-1959) Applicable : A( mxn)

(40)

71

Factorisation QR!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

Si A est une matrice m × n avec des colonnes linéairement indépendantes, alors A peut être décomposée sous forme d’un produit de deux matrices : Q une matrice m × m dont les colonnes forment une base orthonormée de l'espace de colonne de A et R une matrice triangulaire supérieure inversible.

A = Q R

72

Factorisation QR!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

• 

Factorisation QR obtenue en général par application successives de transformations orthogonales sur les données :

Q=Q1 … Qn

où Q

i

matrices orthogonales simples telles que :

QT A = R

• 

Transformations utilisées :

• 

Réflexions de Householder

• 

Rotations de Givens

• 

Procédé de Gram-Schmidt (auquel cas Q est de taille

mxn et R est de taille nxn)

(41)

73

Réflexions de Householder!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

74 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Réflexions de Householder!

(42)

75 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Réflexions de Householder!

76

Rotations de Givens!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

(43)

77 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Méthode de Gram-Schmidt!

78 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Méthode de Gram-Schmidt!

(44)

79 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Méthode de Gram-Schmidt!

Exemple en Matlab :

M =!

8 1 6!

3 5 7!

4 9 2!

>> [Q,R]=qr(M)!

Q =!

-0.8480 0.5223 0.0901!

-0.3180 -0.3655 -0.8748!

-0.4240 -0.7705 0.4760!

R =!

-9.4340 -6.2540 -8.1620!

0 -8.2394 -0.9655!

0 0 -4.6314!

>> Q*R!

ans =!

8.0000 1.0000 6.0000!

3.0000 5.0000 7.0000!

4.0000 9.0000 2.0000!

80 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation de Cholesky!

Théorème: Si A est une matrice réelle, symétrique et définie positive, alors il existe une unique matrice triangulaire inférieure L avec des éléments diagonaux positifs telle que :

A = L L

T

Andre-Louis Cholesky 1875-1918

A = L x! L

T

Applicable : A carrée, symétrique, définie positive

(45)

81 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation de Cholesky!

Supposons :

Résoudre l’équation :

82 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation de Cholesky!

Supposons Alors

La factorisation de Cholesky

Pour A nous avons,

For k from 1 to n

For j from k+1 to n

(46)

83 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation de Cholesky!

Exemple en Matlab :

M =!

4 2 -2!

2 10 2!

-2 2 5!

>> L=chol(M)!

L =!

2.0000 1.0000 -1.0000!

0 3.0000 1.0000!

0 0 1.7321!

>> L=chol(M,'lower’)!

L =!

2.0000 0 0!

1.0000 3.0000 0!

-1.0000 1.0000 1.7321!

>> L*L’!

ans =!

4 2 -2!

2 10 2!

-2 2 5!

84

Factorisation en valeurs singulières (S

ingular

V

alue

D

ecomposition

)!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

Ils sont 5 mathématiciens qui ont établi l’existence de la Factorisation SVD :

Eugenio Beltrami (1835-1899)

Camille Jordan (1838-1921)

James Joseph Sylvester (1814-1897)

Erhard Schmidt (1876-1959)

Hermann Weyl (1885-1955)

•  La SVD a été développée originalement par deux mathématiciens au milieu des années 1800 : Eugenio Beltrami et Camille Jordan

•  D’autres mathématiciens ont finalisé par la suite la SVD dont James Joseph Sylvester, Erhard Schmidt et Hermann Weyl qui ont étudié la SVD au milieu des années1900.

•  C.Eckart et G. Young ont prouvé :

“low rank approximation of SVD” (1936).

C.Eckart Applicable : A (mxn)

(47)

85

Factorisation en valeurs singulières (S

ingular

V

alue

D

ecomposition

)!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

Théorème : Toute matrice X (m×n), de Rang(X)=r, où (r≤n≤ m), peut être factorisée sous la forme :

X = UΛV

T

•  U est une matrice (colonnes) orthonormale (m×n) (UTU=I), contenant les vecteurs propres de la matrice symétrique XXT.

•  Λ une matrice diagonale (n×n ), contenant les valeurs singulières de X. Le nombre d’éléments diagonaux non nuls de Λcorrespond au Rang(X).

•  VT est une matrice (lignes) orthonormale (n×n ) (VTV=I), contenant les vecteurs propres de la matrice symétrique XTX.

86

Factorisation en valeurs singulières (S

ingular

V

alue

D

ecomposition

)!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

Exemple en Matlab :

>> M =!

8 1 6!

3 5 7!

4 9 2!

>> [U,G,V]=svd(M)!

U =!

-0.5774 0.7071 0.4082!

-0.5774 0.0000 -0.8165!

-0.5774 -0.7071 0.4082!

G =!

15.0000 0 0!

0 6.9282 0!

0 0 3.4641!

V =!

-0.5774 0.4082 0.7071!

-0.5774 -0.8165 -0.0000!

-0.5774 0.4082 -0.7071!

>> U*G*V’!

ans =!

8.0000 1.0000 6.0000!

3.0000 5.0000 7.0000!

4.0000 9.0000 2.0000!

X = UΛVT

(48)

87 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Karl Pearson (1901)

Pearson, K. (1901). On Lines and Planes of Closest Fit to Systems of Points in Space.

Philosophical Magazine 2 (6) : 559-572. http ://stat.smmu.edu.cn/history/pearson1901.pdf.

Original Variable A

Original Variable B

PC 1 PC 2

SVD et ACP

(Analyse en Composantes Principales)!

(PCA : Principal Component Analysis)

88 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

SVD et ACP

(Analyse en Composantes Principales)!

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

-1.5 -1 -0.5 0 0.5 1

-1.23,-1.56,-1.75,-0.28,0.60,2.22,0.85,0.21,-0.20,0.89,1.08,4.20,2.89,7.75,4.59,3.15,5.12,3.32,1.20,0.24,-0.56,2!

-0.69,2.43,0.61,2.08,2.30,3.25,5.52,4.55,2.97,2.22,2.81,1.61,1.24,1.89,1.88,-1.34,0.83,1.41,1.78,0.60,2.42,1!

-0.12,-0.94,1.29,2.59,2.42,3.55,4.94,3.25,1.90,2.07,0.51,1.45,2.50,0.12,1.41,2.78,0.64,0.62,-0.01,-0.79,-0.12,0!

0.86,0.29,2.19,-0.02,1.13,2.51,2.37,5.45,5.45,4.84,4.65,4.05,2.58,1.40,1.24,1.41,1.07,-1.43,2.84,-1.18,1.12,1!

1.16,0.37,0.40,-0.59,2.66,1.00,2.69,4.06,5.34,3.53,4.82,4.79,4.30,1.84,1.73,0.21,-0.18,0.13,-0.21,-0.80,-0.68,1!

-0.00,0.77,1.32,0.29,-1.28,0.84,1.60,1.55,2.93,4.76,5.55,4.30,4.89,2.81,2.37,3.68,-0.98,0.69,0.91,-1.80,0.39,2!

0.87,1.07,-0.65,1.46,0.84,2.70,3.67,2.94,3.81,5.20,8.16,3.29,4.24,2.43,0.40,1.60,0.72,0.66,0.05,-0.24,0.67,1!

-0.22,-0.91,-1.18,0.35,-1.92,-1.59,1.91,0.75,1.72,2.02,3.63,3.91,2.73,4.29,4.89,2.04,1.13,-0.66,-1.33,0.41,-0.75,2!

-1.11,-1.14,-0.89,0.00,0.53,0.44,0.24,2.15,1.64,1.75,3.92,5.68,3.39,4.24,3.81,4.56,3.18,1.51,2.90,0.14,-0.12,2!

-0.75,1.10,-1.90,1.43,0.47,0.40,0.86,3.51,2.62,4.50,6.83,6.94,0.75,3.23,1.08,-0.25,0.73,-0.41,-1.50,0.46,1.47,2!

0.14,-1.18,1.42,2.28,3.10,3.15,3.49,4.54,1.40,3.41,3.40,2.83,0.06,0.60,3.61,2.08,-0.83,0.55,-0.55,-0.43,-1.05,0!

….!

1.32,-0.40,-0.69,4.17,3.66,4.00,5.24,3.88,2.17,1.82,3.65,1.01,1.82,1.13,-0.07,0.26,0.50,1.38,1.25,-1.34,0.53,0!

-0.93,2.48,1.20,2.97,2.91,3.57,3.68,4.19,3.22,3.53,2.46,2.17,0.77,0.52,2.42,-0.89,0.51,-0.39,0.82,0.14,-0.63,1!

-1.06,0.59,1.01,3.33,2.05,3.20,4.70,4.21,4.73,2.22,2.67,2.79,2.05,-1.53,-1.54,0.37,-0.09,1.04,-0.08,-0.27,0.47,1!

1.86,0.37,-0.35,0.74,0.84,0.21,1.97,1.52,1.85,2.39,3.92,3.76,3.27,1.61,3.08,2.78,1.58,1.68,2.61,-0.91,-0.27,2!

-0.51,-0.48,0.35,-1.67,0.26,2.45,-0.09,2.03,0.79,1.42,1.13,2.52,2.06,4.50,4.28,4.66,3.30,0.38,0.75,1.76,0.37,0!

1.16,-1.19,-2.26,0.63,0.32,1.51,2.11,2.58,1.03,2.01,4.04,4.55,5.65,2.74,3.12,2.67,2.01,4.12,-0.81,0.07,-0.96,2!

-0.09,2.30,-0.43,0.36,0.11,-1.20,1.47,2.25,3.50,2.14,6.68,5.45,2.22,2.79,2.61,1.87,0.48,1.98,1.64,1.32,0.71,2!

-1.43,-0.46,-0.52,1.45,-0.00,1.35,1.39,0.81,0.03,1.39,2.55,2.42,3.07,5.46,6.29,6.50,4.60,3.77,1.62,1.01,-1.86,0!

A C P

21 → ℜ 2

Waveform de Breiman

(49)

89

SVD et ACP

(Analyse en Composantes Principales)!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

Principe :

•  Procédé de projection linéaire pour réduire le nombre de variables (dimension).

•  Le transfert d'un ensemble de variables corrélées dans un nouvel ensemble de variables non corrélées.

•  Projeter les données dans un espace de dimension inférieure

•  Forme d'apprentissage non supervisé Propriétés :

•  ACP peut être considérée comme une rotation des axes existants à de nouvelles positions dans l'espace défini par les variables d'origine.

•  Nouveaux axes sont orthogonaux et représentent les directions avec une variabilité maximale.

90

SVD et ACP

(Analyse en Composantes Principales)!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

•  X : matrice des données centrées

•  C=XXT : matrice de correlations (similarités)

•  La factorisation de C= XXT = UΣUT

où U = [u1, u2, …, um] et Σ = diag[λ 1, λ 2, …, λ m]

•  La Factorisation de XXT = VΣVT

•  La relation entre la SVD et les deux autres factorisations :

X=U Σ1/2 VT

•  vecteurs propres U, les vecteurs propres V,

•  Valeurs singulières = racines carrées des valeurs propres.

(50)

91

SVD et ACP

(Analyse en Composantes Principales)!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

Composantes principales

Calcul des coordonnées des points sur les axes principaux : Les composantes principales sont obtenues par :

ck =Fk(xi)= uk,xi = ukj xij

j=1 d

kème Composante principale

Facteur principal de rang k associé à xi

Les composantes principales peuvent être considérées comme denouvelles variables, combinaisons linéaires des variables initiales, non corrélées entre elles et de variance maximale.

Université Paris 13/Younès Bennani Traitement Numérique des Données 92

(51)

Université Paris 13/Younès Bennani Traitement Numérique des Données 93

Factorisations basées sur valeurs propres et concepts connexes

94 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation spectrale!

Soit A une matrice m × m réelle et symétrique, alors il existe une matrice orthogonale P telle que :

ou où Λ est une matrice diagonale.

A.L. Cauchy (1789-1857)

A. L. Cauchy a proposé la factorisation spectrale en 1829.

Applicable : A carrée

(52)

95 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation de Jordan!

Soit A une matrice n×n alors il existe une matrice non singulière P et une matrice JK(λ) de dimension k×k de la forme :

tel que :

P−1AP =

Jk1(

λ

1) 0 L 0 0 Jk2(

λ

2) L 0

M M O M

0 0 0 Jk

r(

λ

r)

⎡

⎣

⎢

⎢

⎢

⎢

⎤

⎦

⎥

⎥

⎥

⎥

•  Factorisation de Jordan est utilisée en équations différentielles et en analyse des séries temporelles.

Camille Jordan (1838-1921) Applicable : A carrée

96 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation de Jordan!

Exemple en Matlab :

>> M=magic(3)!

M =!

8 1 6!

3 5 7!

4 9 2!

>> [P,J]=jordan(M)!

P =!

-0.4202 -2.3798 1.0000!

-0.5798 1.3798 1.0000!

1.0000 1.0000 1.0000!

J =!

-4.8990 0 0!

0 4.8990 0!

0 0 15.0000!

>> inv(P)*M*P!

ans =!

-4.8990 0.0000 0!

-0.0000 4.8990 0.0000!

0.0000 0 15.0000!

P−1AP=

Jk11) 0 L 0 0 Jk

22) L 0

M M O M

0 0 0 Jk

rr)

⎡

⎣

⎢

⎢

⎢

⎢

⎤

⎦

⎥

⎥

⎥

⎥

(53)

97 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation de Schur!

Applicable : A carrée

Il existe deux versions de cette décomposition : la décomposition de Schur complexe et la décomposition de Schur réelle.

Une matrice complexe a toujours une décomposition de Schur complexe.

Une matrice réelle admet une décomposition de Schur si et seulement si toutes ses valeurs propres sont réelles.

Version complexe :

A = U T U

H

où U est une matrice unitaire, UH est la transposée conjuguée de U, et T est une matrice triangulaire supérieure appelée la forme de Schur complexe qui représente les valeurs propres de A le long de sa diagonale .

98 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation de Schur!

Version réelle :

A = V S V

T

A, V, S et VT sont des matrices qui contiennent des nombres réels seulement.

Dans ce cas, V est une matrice orthogonale, VT est la transposée de V, et S est une matrice triangulaire supérieure de bloc appelé la forme de Schur réelle.

Les blocs sur la diagonale de S sont de taille :

- (1 × 1) : dans ce cas, elles constituent de véritables valeurs propres

ou

- (2 × 2) : dans ce cas, ils sont dérivés de paires de valeurs propres complexes conjuguées.

(54)

99 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation de Schur!

Exemple en Matlab :

A =!

4 2 -2!

2 10 2!

-2 2 5!

>> [U,T]=schur(A)!

U =!

0.7348 -0.6481 0.2003!

-0.3146 -0.0640 0.9471!

0.6010 0.7589 0.2509!

T =!

1.5079 0 0!

0 6.5394 0!

0 0 10.9528!

>> U*T*U’!

ans =!

4.0000 2.0000 -2.0000!

2.0000 10.0000 2.0000!

-2.0000 2.0000 5.0000!

100 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation QZ!

Applicable : A,B carrées

Aussi appelé : décomposition de Schur généralisée

Il existe deux versions de cette décomposition : complexe et réelle.

Version complexe :

A = Q S Z

H

et B = Q T Z

H

Q et Z sont des matrices unitaires, l’indice supérieur H représente transposé conjugué, et S et T sont des matrices triangulaires supérieures.

Dans la décomposition QZ complexe, les rapports entre les éléments diagonaux de S vers les éléments diagonaux correspondants de T,

λi= S ii / Tii

sont les valeurs propres généralisées qui résolvent le problème généralisé des valeurs propres Av = λBv (où λ est un scalaire inconnu et v est un vecteur non nul inconnu).

(55)

101 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation QZ!

Applicable : A,B carrées

Version réelle :

A = Q S Z

T

et B = Q T Z

T

A, B, Q, Z, S et T sont des matrices contenant des nombres réels seulement .

Dans ce cas, Q et Z sont des matrices orthogonales, l’exposant T représente la transposition, et S et T sont des matrices blocs triangulaires supérieures.

Les blocs sur la diagonale de S et T sont de taille (1 × 1) ou (2 × 2).

102 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation QZ!

Exemple en Matlab :

A =!

4 2 -2!

2 10 2!

-2 2 5!

>> [S,T,Q,Z]=qz(A,B)!

S =!

2.5132 -0.6353 8.5018!

0 6.5587 -0.2329!

0 0 6.5520!

T =!

9.0755 -1.0283 14.6485!

0 6.5587 -0.2329!

0 0 6.5520!

>> S=Q*A*Z!

ans =!

2.5132 -0.6353 8.5018!

-0.0000 6.5587 -0.2329!

0.0000 0.0000 6.5520!

B =!

7 5 1!

5 13 5!

1 5 8!

Q =!

-0.5774 -0.5774 -0.5774!

0.6172 0.1543 -0.7715!

0.5345 -0.8018 0.2673!

Z =!

-0.7524 0.6587 0!

0.1344 0.1534 -0.9790!

-0.6449 -0.7366 -0.2040

>> T=Q*B*Z!

ans =!

9.0755 -1.0283 14.6485!

-0.0000 6.5587 -0.2329!

0.0000 0.0000 6.5520!

(56)

103 Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani

Factorisation de Takagi!

Applicable : A carrée, complex, symétrique

Décomposition:

A = V D V

T

D est une matrice diagonale réelle positive ou nulle, et V est unitaire. VT désigne la matrice transposée de V.

Les éléments diagonaux de D sont les racines carrées non négatives des valeurs propres de AAH.

V peut être complexe, même si A est réelle.

Il s'agit d'un cas particulier de la factorisation spectrale (voir ci- dessus)

104

Factorisation matricielle!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

Matrice A Factorisation LU

pas toujours unique Factorisation QR

Carrée Rectangulaire

Symétrique Asymétrique SVD

Factorisation

Cholesky Factorisation Spectrale

Factorisation Jordan

Diagonalisation P-1AP=Λ

(57)

105

Exercices!

Méthodes Matricielles pour le Data Mining Université Paris 13/Younès Bennani

106

(58)

107 Université Paris 13/Younès Bennani Méthodes Matricielles pour le Data Mining

Université Paris 13/Younès Bennani Traitement Numérique des Données 108

Références

Documents relatifs

This book is about the tools and techniques of machine learning used in practical data mining for finding, and describing, structural patterns in data.. As with any burgeoning

« Le Data Mining est une discipline née en dehors de la statistique, dans la communauté des bases de données et de l’IA dans le but de valoriser les bases de données. Le Data

La pente indique les distributions de classes et les coûts de faux classement pour lesquels le classificateur rouge est le même que le bleu... Université Paris 13/Younès

Université Paris 13/Younès Bennani Traitement Informatique des Données 7. Formes

Université Paris 13/Younès Bennani Traitement Informatique des Données 1.. 5

- on lui présente un exemple en entrée et le réseau calcule une sortie qui dépend de l’architecture et des poids appris. A

« Si un ensemble de formes est linéairement séparable, alors l’algorithme d’apprentissage du Perceptron converge vers une solution correcte en un nombre fini

Université Paris 13/Younès Bennani Traitement Informatique des Données 1.. 9