Analyse numérique – TP 4 – Corrigé

Analyse num´erique – TP 4 – Corrig´e
1
Exercice
1.1
Introduction
Un site Internet a e´ t´e pirat´e : la base de donn´ees du site a e´ t´e modifi´ee par le pirate et le webmaster vous a fait parvenir
un e´ chantillon pour que vous tentiez de r´eparer les d´egats.
Le site permet aux utilisateurs de noter des dessins anim´es en donnant une valeur de 1 a` 10 a` 6 crit`eres (animation,
son, sc´enario, personnages, qualit´e globale de la r´ealisation et plaisir a` regarder le dessin anim´e).
Le pirate a ajout´e deux colonnes (crit`eres) a` la base de donn´ees et il est impossible de les reconnaitre de visu.
1.2
Mode op´eratoire
T´el´echargez le fichier “tp4.m” a` l’adresse “ http://liris.cnrs.fr/loris.eynard ”. Cette fonction ne prend pas
de param`etres et renvoie un vecteur 160 × 8 (160 observations, 8 variables dont vous devrez en supprimer 2).
En r´ealisant l’ACP des donn´ees fournies, vous allez pouvoir d´eterminer quelles variables n’ont aucune signification
dans le contexte, c’est a` dire, les deux qui sont d´ecorr´el´ees des autres. Pour cela :
1. centrer les donn´ees (il est conseill´e de cr´eer une fonction),
function Matc=centre(M)
% fonction centrant une matrice
mc=0;
for i=1:size(M,2),
mc=0;
for j=1:size(M,1),
mc=mc+M(j,i);
end;
mc=mc/size(M,1)
for j=1:size(M,1),
Matc(j,i)=M(j,i)-mc;
end;
end;
endfunction;
2. r´eduire les donn´ees centr´ees (idem),
function Mat=centre(M)
% cette fonction va centrer une matrice deja normee
s=0;
for i=1:size(M,2),
s=0;
for j= 1:size(M,1),
s=s+M(j,i)*M(j,i);
end;
s=s/(size(M,1)-1);
s=sqrt(s)
for j=1:size(M,1),
Mat(j,i)=M(j,i)/s;
end;
end;
1
3. calculer la matrice de covariance des donn´ees centr´ees-r´eduites (avec la fonction M ATLAB cov),
Matcov=cov(M)
Matcov =
Columns 1 through 7:
1.000000
0.819179
0.110147
0.742065
-0.056551
0.795693
0.729566
0.739648
0.819179
1.000000
0.067617
0.761597
-0.032315
0.791951
0.726003
0.730176
0.110147
0.067617
1.000000
0.057977
0.080368
0.116941
0.077618
0.079374
0.742065
0.761597
0.057977
1.000000
-0.018445
0.847399
0.840710
0.828370
Column 8:
0.739648
0.730176
0.079374
0.828370
-0.077886
0.811265
0.829208
1.000000
2
-0.056551
-0.032315
0.080368
-0.018445
1.000000
-0.105161
-0.048586
-0.077886
0.795693
0.791951
0.116941
0.847399
-0.105161
1.000000
0.788944
0.811265
0.729566
0.726003
0.077618
0.840710
-0.048586
0.788944
1.000000
0.829208
4. calculer les vecteurs et valeurs propres de la matrice de covariance (avec la fonction M ATLAB eig),
[V,Lambdas]=eig(Matcov)
V =
Columns 1 through 6:
-0.2043741
0.0404966
-0.0398616
-0.7041479
0.0614204
0.5772225
0.3462012
-0.0486263
0.3596053
-0.4121538
-0.0174295
0.2220935
-0.0102496
0.1381414
0.3839326
-0.6961261
0.4143870
-0.5877381
-0.0502116
-0.0936419
0.0620426
0.3669086
-0.4559168
0.3538729
-0.4445741
0.1347131
0.0045872
0.4228568
0.0048857
0.5798663
-0.4267283
-0.2949772
0.5478797
0.5502740
-0.0332803
-0.2952109
-0.0021231
0.0138747
-0.4191616
-0.3645213
-0.0083146
0.0582639
-0.7189781
0.0890529
0.6837067
-0.0461129
0.0439849
0.0126632
Columns 7 and 8:
-0.0181463
-0.0055235
-0.6890775
-0.0026139
-0.7236226
0.0191546
0.0056359
0.0278793
0.3987254
0.3983452
0.0519626
0.4149540
-0.0340640
0.4173470
0.4063502
0.4086476
Lambdas =
0.12568
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.16846
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.18211
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.19865
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.38632
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.91354
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
1.08096
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
4.94428
5. observer et conclure.
On observe grˆ
ace aux valeurs propres que les deux axes les plus repr´
esentatifs
sont les deux derniers (7 et 8).
En se reportant dans la matrice des vecteurs propres, on constate que les
lignes 3 et 5 diff`
erent des autres dans les colonnes 7 et 8.
Ce sont donc ces deux colonnes qui ont ´
et´
e fauss´
ees et qu’il va falloir enlever.
` des fins de v´erification, vous supprimerez les deux colonnes et r´ealiserez une nouvelle ACP. Que pouvez-vous en
A
conclure ?
3