Supp-1: Linear Algebra - 3
2021-1ํ๊ธฐ, ๋ํ์์ โํต๊ณ์ ๋ฐ์ดํฐ๋ง์ด๋โ ์์ ์ ๋ฃ๊ณ ๊ณต๋ถํ ๋ฐ๋ฅผ ์ ๋ฆฌํ ๊ธ์ ๋๋ค. ์ง์ ์ ์ธ์ ๋ ํ์์ ๋๋ค :)
Set-up
formulas.
1. $\displaystyle UU^T = \sum^n_{i=1} \mathbf{u}_i \mathbf{u}_i^T$, where $U = \left( \mathbf{u}_1, \dots, \mathbf{u}_n \right) \in \mathbb{R}^{n \times n}$
2. $\displaystyle UDU^T = \sum^n_{i=1} d_i \mathbf{u}_i \mathbf{u}_i^T$, where $D = \text{diag}(d_i)$
ํ๋ ฌ๊ณฑ์ ํํํ๋ ์ ์ฉํ ๋ฐฉ์์ด๋ ์ต์ํด์ง๋ฉด ์ข๋ค! ์์ผ๋ก ๋์ค๋ ๋ด์ฉ์์ ์์ฃผ ๋ฑ์ฅํ๋ค!
Definition. Orthogonal Matrix
An <orthogonal matrix> $U$ is a matrix such that $UU^T = U^TU = I_n$.
Spectral Decomposition
Theorem. Spectral Decomposition; Eigen Decomposition
For a real symmetric matrix $A \in \mathbb{R}^{n\times n}$, there exists a diagonal matrix $D = \text{diag}(d_1, \dots, d_n)$ and an orthogonal matrix $U$ s.t. $A = UDU^T$.
์ฆ, ๋ชจ๋ symmetric matrix๋ $UDU^T$์ ํํ๋ก decompose ๊ฐ๋ฅํจ์ ๋งํ๋ค!
Note.
- Each $d_i$ is an real eigenvalue of $A$.
- $\mathbf{u}_i$ is the eigenvector associated with $d_i$, where $U = \left( \mathbf{u}_1, \dots, \mathbf{u}_n \right)$.
- $\displaystyle A = UDU^T = \sum^n_{i=1} d_i \mathbf{u}_i \mathbf{u}_i^T$
<Spectral Decomposition>์ ๊ธฐํํ์ ์ดํด๊ฐ ์๋ฐ๋์ด์ผ ํ๋ค.
๋จผ์ , orthogonal matrix $U$์ ๋ํด $U$๋ ์ ํ๋ณํ์์ ์ผ์ข ์ rotation matrix์ ์ญํ ์ ํ๋ค.
\[\mathbf{x} \longrightarrow U \mathbf{x}\]์ด์ $A\mathbf{x}$๋ฅผ ํด์ํ๊ธฐ ์ํด $UDU^T\mathbf{x}$๋ฅผ ๋จ๊ณ๋ณ๋ก ํด์ํด๋ณด์.
1. $U^T \mathbf{x}$; ํ์ ์ ํตํด ์ขํ์ถ ๋ณํ
$U^T$๋ ํ์ ๋ณํ์ ์ํํ๋ค. ๋ฐ๋ผ์, $e_1$, $e_2$ ์ขํ๊ณ ์์ ์๋ $\mathbf{x}$๋ฅผ $u_1$, $u_2$ ์ขํ๊ณ๋ก ํ์ ๋ณํํ๋ค.
์ด๋, $u_1$, $u_2$๋ $U^T$์ ๊ฐ ์ด์ผ๋ก์จ $A$์ eigen vector์ด๋ค.
๊ทธ๋ฆฌ๊ณ $U^T \mathbf{x}$๋ฅผ ๊ณ์ฐํด๋ณด๋ฉด,
\[U^T \mathbf{x} = \left(u_1, u_2 \right) \cdot \mathbf{x} = \begin{pmatrix} (\mathbf{x}^T u_1) \cdot u_1 \\ (\mathbf{x}^T u_2) \cdot u_2 \end{pmatrix}\]๊ฐ ๋๊ณ , ์ด๊ฒ์ $\mathbf{x}$๋ฅผ $u_1$, $u_2$ ์ถ์ผ๋ก <projection>ํ ๊ฒ๊ณผ ๊ฐ๋ค.
2. $D \left( U^T \mathbf{x} \right)$; ์ค์นผ๋ผ ๊ณฑ
$D$๋ diagnomal matrix์ด๊ธฐ ๋๋ฌธ์ $u_1$, $u_2$ ๋ฐฉํฅ์ ๋ฒกํฐ์ ๋ํ ์ค์นผ๋ผ ๊ณฑ์ ํ๋ ์ญํ ์ด๋ค.
3. $U \left( D U^T \mathbf{x} \right)$; ์๋์ ์ขํ์ถ์ผ๋ก ์ญ-ํ์
๋ง์ง๋ง์ผ๋ก ์ฒ์์ ๊ณฑํ $U^T$์ ์ญ-ํ์ ๋ณํ์ธ $U$๋ฅผ ์ ์ฉํด ๋ค์ $e_1$, $e_2$์ ์ขํ๊ณ๋ก ๋๋๋ ค ์ค๋ค.
๊ทธ๋์ ์์ ์ ๋ฆฌํ๋ฉด, ์๋์ ๊ฐ๋ค.
\[UDU^T \mathbf{x} = UD \begin{pmatrix} u_1^T \mathbf{x} \\ \vdots \\ u_n^T \mathbf{x} \end{pmatrix} = U \begin{pmatrix} d_1 u_1^T \mathbf{x} \\ \vdots \\ d_n u_n^T \mathbf{x} \end{pmatrix} = d_1 u_1 u_1^T \mathbf{x} + \cdots + d_n u_n u_n^T \mathbf{x}\]Singular Value Decomposition
<Sepctral Theorem>์ ๋์นญ ํ๋ ฌ์ ๋ํด์ ๊ธฐ์ ํ ์ ๋ฆฌ์๋ค. ์ด๊ฒ์ ์ผ๋ฐ์ ์ธ ํํ์ ํ๋ ฌ๋ก ์ผ๋ฐํํ ๊ฒ์ด ๋ฐ๋ก <ํน์ด๊ฐ ๋ถํด Singular Value Decomposition>์ด๋ค. ๐
Theorem. Singular Value Decomposition
For any $n \times p$ matrix $A$, there exist matrices $U \in \mathbb{R}^{n\times n}$, $D \in \mathbb{R}^{n\times p}$, and $V \in \mathbb{R}^{p\times p}$ s.t.
\[A = UDV^T\]where
- $D = \text{diag}(d_1, \dots, d_p)$ with $d_i \ge 0$
- $d_j$s are called <singular value> of $A$.
- $U$ is an orthogonal matrix from $AA^T = U(\Sigma\Sigma^T)U^T$
- $V$ is an orthogonal matrix from $A^T A = V(\Sigma^T \Sigma)V^T$
Low Rank Approximation
SVD๋ฅผ ์ ์ด์ฉํ๋ฉด, ํ๋ ฌ $A$์ ๋ํ <Low Rank Approximation> $A_k$๋ฅผ ์ ๋ํ ์ ์๋ค.
Let $A = UDV^T$ and assume that $n \gg p$, then
\[A = \begin{bmatrix} \vert & & \vert \\ \mathbf{u}_1 & \cdots & \mathbf{u}_n \\ \vert & & \vert \\ \end{bmatrix} \begin{bmatrix} d_1 & & \\ & \ddots \\ & & d_p \\ & O & \end{bmatrix} \begin{bmatrix} - & \mathbf{v}_1^T & - \\ & \vdots & \\ - & \mathbf{v}_p^T & - \\ \end{bmatrix} = d_1 \mathbf{u}_1 \mathbf{v}_1^T + \cdots + d_p \mathbf{u}_p \mathbf{v}_p^T\]์ด๋, ํ๊ธฐ์ ํธ์๋ฅผ ์ํด singular value $d_i$์ ๋ํด descending order๋ก ํ๊ธฐ๋ฅผ ํ๋ค.
\[\text{where} \quad d_1 \ge d_2 \cdots \ge d_p\]์ฃผ๋ชฉํ ์ ์ ์์ ์ฐ๋ณ์ $\mathbf{u}_i \mathbf{v}_i^T$์ rank-1 matrix๋ผ๋ ์ ์ด๋ค. ์ฆ, SVD๋ฅผ ํ๊ฒ ๋๋ฉด ํ๋ ฌ $A$๋ฅผ rank-1์ matrix๋ก ๋ถํดํ ๊ฒ์ด ๋๋ค.
์ด์ ์์ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ง๊ณ Approximation $A_k$๋ฅผ ์ ๋ํ ์ ์๋ค.
\[A_k = \begin{bmatrix} \vert & & \vert \\ \mathbf{u}_1 & \cdots & \mathbf{u}_k \\ \vert & & \vert \\ \end{bmatrix} \begin{bmatrix} d_1 & & \\ & \ddots & \\ & & d_k \\ & O & \end{bmatrix} \begin{bmatrix} - & \mathbf{v}_1^T & - \\ & \vdots & \\ - & \mathbf{v}_k^T & - \\ \end{bmatrix} = d_1 \mathbf{u}_1 \mathbf{v}_1^T + \cdots + d_k \mathbf{u}_k \mathbf{v}_k^T\]์ฆ, $A_k$๋ $A$๋ฅผ SVD๋ก ๋ถํดํด ํํํ ๊ฒ์์ ์์ $k$๊ฐ์ rank-1 matrix๋ฅผ ๋ชจ์ ๊ฒ์ด๋ค! ์ฐ๋ฆฌ๊ฐ $d_i$๋ฅผ ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌํด ํํํ๊ธฐ ๋๋ฌธ์, ๋ค๋ก ๊ฐ์๋ก ์์ $d_j$๋ฅผ ์ป๊ฒ ๋์ด ์๋ค. ๊ทธ๋์ $A_k$๋ ์์ $k$๊ฐ $d_i$๋ง์ ์ ํํด $A$๋ฅผ ๊ทผ์ฌํ ๊ฒ์ด๋ค!
์ด๋, <Low Rank Approximation>์ error๋ ์๋์ ๊ฐ์ด <Frobenius norm>์ผ๋ก ์ ์ํ๋ค.
\[\begin{aligned} \| A - A_k \|^2_F &= \text{tr}\left( (A-A_k)^T (A-A_k) \right) \\ &= d_{k+1}^2 + d_{k+2}^2 + \cdots + d_p^2 \end{aligned}\]๊ทธ๋์, ๋ง์ฝ ๋ท๋ถ๋ถ์ $d_{k+1}, \cdots d_p$์ ํฌ๊ธฐ๊ฐ ์๋ค๋ฉด, Low Rank Approx๋ ์ถฉ๋ถํ ์ ํํ ๊ทผ์ฌ๋ฅผ ์ํํจ์ ๋ณด์ฅํ ์ ์๋ค!!
ps. ์ด๋ฐ Low Rank Approx๋ ์๊ฐ๋ณด๋ค ์์ฃผ ์ฌ์ฉ๋๋ ๊ธฐ๋ฒ์ด๋ผ๊ณ ํ๋ค.
ps. Netflix์ ์ถ์ฒ ์๊ณ ๋ฆฌ์ฆ Contest์์ ์ด SVD๋ฅผ ํ์ฉํด Low Rank Approx๋ฅผ ํ๋ ์ถ์ฒ ์๊ณ ๋ฆฌ์ฆ์ ๊ตฌํํ ํ์ด ์ฐ์น์ ์ฐจ์งํ๋ค๊ณ ํ๋ค.
์ง๊ธ๊น์ง ํ๋ ฌ์ ๋ถํดํ๋ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ธ <Spectral Decomposition>๊ณผ <Singular Value Decomposition>๋ฅผ ์ดํด๋ดค๋ค. ์ด ๋ ๊ฐ๋ ์ ์ด์ด์ง๋ ๋ด์ฉ์ธ ํ๋ ฌ์ <Nonnegative Definite>, <Positive Definite>๋ฅผ ์ ์ํ ๋ ๋ฐํ์ด ๋๋ค.