Lineární algebra pro datovou vědu v R
Eric Eager
Data Scientist at Pro Football Focus
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.
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
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
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.
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