Lineární algebra v PCA

Lineární algebra pro datovou vědu v R

Eric Eager

Data Scientist at Pro Football Focus

Teorie

Matice $A^T$, transponovaná matice $A$, vznikne záměnou řádků a sloupců $A$.

Pokud jsou data uložena v matici $A$ a od každého prvku v daném sloupci byl odečten průměr tohoto sloupce, pak $i,j$-tý prvek matice

$$\frac{A^TA}{n - 1},$$

kde $n$ je počet řádků $A$, představuje kovarianci mezi proměnnými v $i$-tém a $j$-tém sloupci dat.

$i$-tý prvek diagonály $\frac{A^TA}{n - 1}$ je tedy rozptyl $i$-tého sloupce matice.

Lineární algebra pro datovou vědu v R

Teorie

print(A)
     [,1] [,2]
[1,]    1    2
[2,]    2    4
[3,]    3    6
[4,]    4    8
[5,]    5   10
A[, 1] <- A[, 1] - mean(A[, 1])
A[, 2] <- A[, 2] - mean(A[, 2]) 
print(A)
     [,1] [,2]
[1,]   -2   -4
[2,]   -1   -2
[3,]    0    0
[4,]    1    2
[5,]    2    4
Lineární algebra pro datovou vědu v R

Teorie

t(A)%*%A/(nrow(A) - 1)
     [,1] [,2]
[1,]  2.5    5
[2,]  5.0   10
cov(A[, 1], A[, 2])
5
var(A[, 1])
2.5
var(A[, 2])
10
Lineární algebra pro datovou vědu v R

PCA

  • Vlastní čísla $\lambda_1, \lambda_2, ... \lambda_n$ matice $\frac{A^TA}{n - 1}$ jsou reálná a jejich vlastní vektory jsou ortogonální, tj. míří v různých směrech.

  • Celkový rozptyl datové sady je součet vlastních čísel matice $\frac{A^TA}{n - 1}$.

  • Tyto vlastní vektory $v_1, v_2, ..., v_n$ se nazývají hlavní komponenty datové sady v matici $A$.

  • Směr $v_j$ vysvětluje $\lambda_j$ z celkového rozptylu datové sady. Pokud $\lambda_j$ nebo podmnožina $\lambda_1, \lambda_2, ... \lambda_n$ vysvětluje značnou část celkového rozptylu, je příležitost ke snížení dimenzionality.

Lineární algebra pro datovou vědu v R

Příklad

eigen(t(A)%*%A/(nrow(A) - 1))
eigen() decomposition
$`values`
[1] 12.5  0.0

$vectors
          [,1]       [,2]
[1,] 0.4472136 -0.8944272
[2,] 0.8944272  0.4472136
Lineární algebra pro datovou vědu v R

Pojďme procvičovat!

Lineární algebra pro datovou vědu v R

Preparing Video For Download...