Updated:

ํŠน์ด๊ฐ’ ๋ถ„ํ•ด๋Š” ๊ณ ์œ ๊ฐ’ ๋ถ„ํ•ด๋ฅผ ์ผ๋ฐ˜์ ์ธ ์ƒํ™ฉ์œผ๋กœ ํ™•์žฅ์‹œํ‚จ ๊ฐœ๋…์œผ๋กœ LSA(Latent Semantic Anaylsis), Collaborative Filtering๊ณผ ๊ฐ™์€ ๋จธ์‹ ๋Ÿฌ๋‹ ๊ธฐ๋ฒ•์— ์‚ฌ์šฉ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ž์—ฐ์–ด์ฒ˜๋ฆฌ, ์ถ”์ฒœ์‹œ์Šคํ…œ์— ๊ด€์‹ฌ์ด ์žˆ๋‹ค๋ฉด ๋ฐ˜๋“œ์‹œ ์ดํ•ดํ•˜๊ณ  ๋„˜์–ด๊ฐ€์•ผ ํ•˜๋Š” ์ค‘์š”ํ•œ ๋ฐฉ๋ฒ•๋ก ์ด๋‹ค. ํ˜ํŽœํ•˜์ž„๋‹˜์˜ ์„ ํ˜•๋Œ€์ˆ˜ํ•™ ๊ฐ•์˜์™€ ๊ณต๋Œ์ด์˜ ์ˆ˜ํ•™์ •๋ฆฌ๋‹˜์˜ ๊ฐ•์˜ ๋ฐ ํฌ์ŠคํŠธ ๊ทธ๋ฆฌ๊ณ  ๋”ฅ๋Ÿฌ๋‹์„ ์œ„ํ•œ ์„ ํ˜•๋Œ€์ˆ˜ํ•™ ๊ต์žฌ์„ ์ฐธ๊ณ ํ•˜๊ณ  ๊ฐœ์ธ์ ์ธ ํ•ด์„์„ ๋”ํ•ด ์ •๋ฆฌํ–ˆ๋‹ค.

๐ŸŒŸย Concept of SVD

\[A = UฮฃV^T\]

ํฌ๊ธฐ๊ฐ€ mxn์ธ ์ž„์˜์˜ ํ–‰๋ ฌ $A$๋ฅผ ์œ„ ์ˆ˜์‹์˜ ์šฐ๋ณ€์ฒ˜๋Ÿผ ์—ฌ๋Ÿฌ ๋‹ค๋ฅธ ํ–‰๋ ฌ๋กœ ๋ถ„ํ•ดํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋งํ•œ๋‹ค. ํ–‰๋ ฌ ๋ถ„ํ•ด ๊ธฐ๋ฒ•์ด๋ผ๋Š” ์ ์—์„œ ๊ณ ์œ ๊ฐ’ ๋ถ„ํ•ด์™€ ๊ถค๋ฅผ ๊ฐ™์ดํ•˜์ง€๋งŒ ์ข€ ๋” ์‹ค์šฉ์ ์ธ ํ˜•ํƒœ๋กœ ๋ณ€ํ™”ํ–ˆ๋‹ค. ๊ณ ์œ ๊ฐ’ ๋ถ„ํ•ด๋Š” ํ–‰๋ ฌ $A$๊ฐ€ ์ •์‚ฌ๊ฐํ–‰๋ ฌ ์ผ ๋•Œ๋งŒ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ํ•œ๊ณ„๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ์‹ค์ƒํ™œ์—์„œ ๋‹ค๋ฃจ๋Š” ํ–‰๋ ฌ ๋ชจํ˜•์˜ ํ…Œ์ด๋ธ” ๋ฐ์ดํ„ฐ๋Š” 99.9999999%์˜ ํ™•๋ฅ ๋กœ ์ง์‚ฌ๊ฐํ–‰๋ ฌ์ด๋‹ค. ํ•„์ž๋Š” ์‚ด๋ฉด์„œ ํ•œ ๋ฒˆ๋„ ์ •์‚ฌ๊ฐํ–‰๋ ฌ ํ˜•ํƒœ์˜ ํ…Œ์ด๋ธ” ๋ฐ์ดํ„ฐ๋ฅผ ๋ณธ์ ์ด ์—†๋‹ค. ์ฆ‰ ์‹ค์ƒํ™œ์˜ ๋ฐ์ดํ„ฐ์— ๊ณ ์œ ๊ฐ’ ๋ถ„ํ•ด๋ฅผ ์ ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ง์‚ฌ๊ฐํ–‰๋ ฌ ํ˜•ํƒœ๋กœ ํ™•์žฅํ•œ ๊ฒƒ์ด ๋ฐ”๋กœ ํŠน์ด๊ฐ’ ๋ถ„ํ•ด๋‹ค.

์„ ํ˜•๋ณ€ํ™˜ $A$ ๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๊ณ  ๊ตฌ์ฒด์ ์ธ ์˜ˆ์‹œ์™€ ํ•จ๊ป˜ ์šฐ๋ณ€์˜ ํ•ญ๋“ค์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์‚ดํŽด๋ณด์ž.

\[A = \begin{pmatrix} 1 & 2 \\ 3 & 4 \\ 5 & 6 \end{pmatrix}\]

๋จผ์ € ํ–‰๋ ฌ $U$๋Š” ํฌ๊ธฐ๊ฐ€ mxm์ธ ์ •์‚ฌ๊ฐํ–‰๋ ฌ์ด๋‹ค.

\[U = \begin{pmatrix}-0.2298 & 0.8835 & 0.4082 \\-0.5247 & 0.2408 & -0.8165 \\-0.8196 & -0.4019 & 0.4082\end{pmatrix}\]

๊ณ ์œ ๊ฐ’ ๋ถ„ํ•ด์—์„œ ๊ณ ์œ ๋ฒกํ„ฐ๋ฅผ ์Œ“์•„ ๋งŒ๋“  ํ–‰๋ ฌ $V$์™€ ๋น„์Šทํ•œ ์—ญํ• ์„ ํ•˜๋ฉด์„œ ํŠน์ด๊ฐ’ ํ–‰๋ ฌ์˜ ์™ผ์กฑ์— ์žˆ๋‹ค๋Š” ์˜๋ฏธ์—์„œ Left Singular Vector๋ผ๊ณ ๋„ ๋ถ€๋ฅธ๋‹ค. ํ–‰๋ ฌ์˜ ๊ฐœ๋ณ„ ์—ด์ฐจ์›์˜ ๋ฒกํ„ฐ๋Š” ๊ณ ์œ ํ•œ ํŠน์ด๋ฒกํ„ฐ๊ฐ€ ๋œ๋‹ค. ๋”ฐ๋ผ์„œ ๊ฐœ๋ณ„ ๊ณ ์œ ๋ฒกํ„ฐ๋Š” ์„œ๋กœ์—๊ฒŒ ๋…๋ฆฝ์ด๋ฉฐ ์ง๊ตํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ์ „์ฒด ํ–‰๋ ฌ $U$๋Š” Orthogonal Matrix๊ฐ€ ๋œ๋‹ค.

ํ•œํŽธ, $ฮฃ$๋Š” ๊ฐœ๋ณ„ ํŠน์ด๋ฒกํ„ฐ์— ํ•ด๋‹น๋˜๋Š” ํŠน์ด๊ฐ’๋“ค์„ ์ €์žฅํ•œ ํ–‰๋ ฌ๋กœ ํฌ๊ธฐ๋Š” mxn์ด๋‹ค.

\[\Sigma = \begin{pmatrix} \sigma_1 & 0 \\ 0 & \sigma_2 \\ 0 & 0 \end{pmatrix}\]

ํ˜„์žฌ ์ œ์‹œ๋œ ์˜ˆ์‹œ ํ–‰๋ ฌ์˜ ํฌ๊ธฐ๊ฐ€ m>n์ด๊ธฐ ๋•Œ๋ฌธ์— $ฮฃ$์˜ ๋ชจ์–‘ ์—ญ์‹œ ํ–‰ ๋ฐฉํ–ฅ์œผ๋กœ ๋” ๊ธธ๊ฒŒ ๋†“์ธ ์ง์‚ฌ๊ฐํ–‰๋ ฌ์ด ๋œ๋‹ค. ๋ฐ˜๋Œ€์˜ ์ƒํ™ฉ์ด๋ผ๋ฉด ์—ด๋ฐฉํ–ฅ์œผ๋กœ ๊ธธ๊ฒŒ ๋ˆ„์ ๋œ ์ง์‚ฌ๊ฐํ–‰๋ ฌ์ด ๋  ๊ฒƒ์ด๋‹ค. ๋˜ํ•œ $ฮฃ$์€ ์ง์‚ฌ๊ฐํ–‰๋ ฌ์ด์ง€๋งŒ ๋Œ€๊ฐํ–‰๋ ฌ์ด๋ผ์„œ, ์ฃผ๋Œ€๊ฐ์„ฑ๋ถ„ ์›์†Œ๋ฅผ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ ์›์†Œ๋Š” ๋ชจ๋‘ ๋ฐ˜๋“œ์‹œ 0์ด ๋œ๋‹ค.

๋งˆ์ง€๋ง‰์œผ๋กœ ํ–‰๋ ฌ $V^T$๋Š” ํฌ๊ธฐ๊ฐ€ nxn์ธ ์ •์‚ฌ๊ฐํ–‰๋ ฌ์ด๋‹ค.

\[V^T = \begin{pmatrix}-0.6196 & -0.7849 \\-0.7849 & 0.6196\end{pmatrix}\]

ํ–‰๋ ฌ $U$๋•Œ์™€ ๊ฐ™์€ ๋…ผ๋ฆฌ์™€ ๋”๋ถˆ์–ด ํŠน์ด๊ฐ’ ํ–‰๋ ฌ์˜ ์˜ค๋ฅธ์กฑ์— ๋ฐฐ์น˜๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— Right singular Vector ๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค. ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๊ฐœ๋ณ„ ๊ณ ์œ ๋ฒกํ„ฐ๋Š” ์„œ๋กœ์—๊ฒŒ ๋…๋ฆฝ์ด๋ฉฐ ์ง๊ตํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ์ „์ฒด ํ–‰๋ ฌ $V^T$์—ญ์‹œ Orthogonal Matrix๊ฐ€ ๋œ๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด ํŠน์ด๊ฐ’ ๋ถ„ํ•ด๋Š” ์–ด๋–ป๊ฒŒ ๊ณ ์œ ๊ฐ’ ๋ถ„ํ•ด์˜ ์ œ์•ฝ์กฐ๊ฑด์„ ํƒˆํ”ผํ–ˆ๋Š”์ง€ ์‚ดํŽด๋ณด์ž. ๋ฐ”๋กœ ํฌ๊ธฐ๊ฐ€ mxn์ธ ํ–‰๋ ฌ $A$์™€ ๊ทธ๊ฒƒ์˜ ์ „์น˜ ํ–‰๋ ฌ $A^T$ ์‚ฌ์ด์˜ ๊ณฑ์€ ํ•ญ์ƒ ๋Œ€์นญ ํ–‰๋ ฌ์ด ๋˜๊ณ , ๋Œ€์นญํ–‰๋ ฌ์€ ๋Œ€๊ฐํ™”-๊ฐ€๋Šฅ ํ–‰๋ ฌ์ด๋ผ๋Š” ์ ์„ ์ด์šฉํ•œ๋‹ค.

\[Aโ€ขA^T = UฮฃV^Tโ€ขVฮฃ^TU^T = Uฮฃฮฃ^TU^T \\ A^Tโ€ขA = Vฮฃ^TU^Tโ€ขUฮฃV^T = Vฮฃ^TฮฃV^T\]

์ƒˆ๋กญ๊ฒŒ ์ •์˜๋œ ํ–‰๋ ฌ $Aโ€ขA^T$์€ ํฌ๊ธฐ๊ฐ€ mxm์ธ ์ •์‚ฌ๊ฐโ€ข๋Œ€์นญํ–‰๋ ฌ์ด ๋˜๊ณ , ํ–‰๋ ฌ $A^Tโ€ขA$์€ ํฌ๊ธฐ๊ฐ€ nxn์ธ ์ •์‚ฌ๊ฐโ€ข๋Œ€์นญํ–‰๋ ฌ์ด ๋œ๋‹ค. ํ–‰๋ ฌ $U,V$ ๋ชจ๋‘ Orthogonal Matrix ๋ผ๋Š” ์ ์„ ์ด์šฉํ•˜๋ฉด ์šฐ๋ฆฌ๋Š” ์ƒˆ๋กญ๊ฒŒ ์ •์˜๋œ ๋‘ ํ–‰๋ ฌ์„ ๊ณ ์œ ๊ฐ’๋ถ„ํ•ด ๊ฒฐ๊ณผ์™€ ์œ ์‚ฌํ•˜๊ฒŒ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค.

\[Aโ€ขA^T = Q_m \Lambda_m Q^T_m \\ A^Tโ€ขA = Q_n \Lambda_n Q^T_n\]

์ˆ˜์‹ ์šฐ๋ณ€์— ๋†“์ธ $\Lambda_m, \Lambda_n$ ์˜ ๊ตฌ์ฒด์ ์ธ ์˜ˆ์‹œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

\[\Lambda_m = \Sigma\Sigma^T = \begin{pmatrix} \sigma_1^2 & 0 & 0 \\ 0 & \sigma_2^2 & 0 \\ 0 & 0 & 0 \\ \end{pmatrix} \\ \Lambda_n = \Sigma^T\Sigma = \begin{pmatrix} \sigma_1^2 & 0 \\ 0 & \sigma_2^2 \\ \end{pmatrix}\]

์ด์ œ ๋‘ ํ–‰๋ ฌ์— ๊ฐ๊ฐ ์–‘์˜ ์ œ๊ณฑ๊ทผ์„ ์‚ฌ์šฉํ•ด $\sigma_1, \sigma_2$(ํŠน์ด๊ฐ’)๋ฅผ ๊ตฌํ•˜๊ณ  ์›๋ž˜ ์ˆ˜์‹($A = UฮฃV^T$)์˜ $ฮฃ$์— ๋Œ€์ž…ํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์„ ํ˜•๋ณ€ํ™˜ $A$์— ๋Œ€ํ•œ ํŠน์ด๊ฐ’ ๋ถ„ํ•ด๋ฅผ ๋ชจ๋‘ ๋๋งˆ์นœ ์…ˆ์ด๋‹ค. ์ง€๊ธˆ๊นŒ์ง€ ์‚ดํŽด๋ณธ ๋‚ด์šฉ์„ ์š”์•ฝ ์ •๋ฆฌํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

  • 1) $AA^T, A^TA$ ๊ณ„์‚ฐ
  • 2) $AA^T, A^TA$์˜ ๊ณ ์œ ๊ฐ’, ๊ณ ์œ ๋ฒกํ„ฐ ๊ณ„์‚ฐ
  • 3) $A^TA$๋กœ Right Singular Vector $V$๋ฅผ, $AA^T$๋กœ Left Singular Vector $U$๋ฅผ ๋„์ถœ
  • 4) ๊ณ ์œ ๊ฐ’($\Sigma\Sigma^T$)์˜ ์ œ๊ณฑ๊ทผ์—์„œ ๋‚˜์˜จ ๊ฐ’๋“ค์„ $\Sigma$์˜ ๋Œ€๊ฐ์„ ์— ๋ฐฐ์น˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฐ’๋“ค์ด ํŠน์ด๊ฐ’์— ํ•ด๋‹น

๐Ÿ’กย Insight of SVD

\[A\vec x = \sigma_1u_1v_1^T\vec x + \sigma_2u_2v_2^T\vec x + ... +\sigma_n u_nv_n^T\vec x\]

๊ณ ์œ ๊ฐ’ ๋ถ„ํ•ด์˜ ํ™œ์šฉ๊ณผ ์‚ฌ์‹ค์ƒ ๋‹ค๋ฅธ๊ฒŒ ์—†๋‹ค. ์—ญ์‹œ ๋ฐ์ดํ„ฐ ์••์ถ•โ€ข๋ณต์› ํ˜น์€ PCA ๊ฐ™์€ ์ฐจ์› ์ถ•์†Œ ๊ธฐ๋ฒ•์— ์‚ฌ์šฉ๋œ๋‹ค. ๊ณ ์œ ๊ฐ’ ๋ถ„ํ•ด์™€ ๋‹ค๋ฅธ๊ฒŒ ์žˆ๋‹ค๋ฉด ์„ ํ˜•๋ณ€ํ™˜ $A$๊ฐ€ ๋ฐ˜๋“œ์‹œ ์ •์‚ฌ๊ฐํ–‰๋ ฌ์ผ ํ•„์š”๊ฐ€ ์—†๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ณ ์œ ๊ฐ’ ๋ถ„ํ•ด๋ฅผ ๋ฐ์ดํ„ฐ ์••์ถ•์ด๋‚˜ ์ฐจ์› ์ถ•์†Œ์— ๊ฐ„ํŽธํžˆ ์‚ฌ์šฉํ•˜๋ ค๋ฉด, ์„ ํ˜•๋ณ€ํ™˜ $A$๊ฐ€ ๋Œ€์นญํ–‰๋ ฌ์ด์—ฌ์•ผ ํ•œ๋‹ค๋Š” ์กฐ๊ฑด๋„ ๋ถ™๊ณ  ์ƒ๋‹นํžˆ ์‚ฌ์šฉํ•˜๊ฒŒ ๊นŒ๋‹ค๋กœ์› ๋Š”๋ฐ ํŠน์ด๊ฐ’ ๋ถ„ํ•ด์—์„œ๋Š” ๊ทธ๋Ÿฐ ๋ฒˆ๊ฑฐ๋กœ์šด ์ œ์•ฝ ์กฐ๊ฑด์ด ๋ชจ๋‘ ์‚ฌ๋ผ์ง„๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค.

ํŠนํžˆ ํŠน์ด๊ฐ’ ๋ถ„ํ•ด๋Š” ๋ถ„ํ•ด๋˜๋Š” ๊ณผ์ • ์ž์ฒด๋ณด๋‹ค ๋ถ„ํ•ด๋˜๋Š” ํ–‰๋ ฌ์„ ๊ฐœ๋ณ„ ํŠน์ด๋ฒกํ„ฐ์— ๋Œ€ํ•œ ํŠน์ด๊ฐ’์˜ ๊ฐ€์ค‘ํ•ฉ ๋ฐฉ์‹์œผ๋กœ ์กฐํ•ฉํ•˜๋Š” ๊ณผ์ •์—์„œ ๊ทธ ๋น›์„ ๋ฐœํ•œ๋‹ค. ํŠน์ด๊ฐ’์— $argmax$๋ฅผ ์ ์šฉํ•ด ์ƒ์œ„ p๊ฐœ์˜ ํŠน์ด๋ฒกํ„ฐ๋งŒ ๋ฐ˜์˜ํ•œ ๋ถ€๋ถ„ ํ–‰๋ ฌ $A$๋ฅผ ์ด์šฉํ•  ์ˆ˜๋„ ์žˆ๊ณ , ํ•„์š”์— ๋”ฐ๋ผ์„œ ๋‹ค์‹œ p๊ฐœ์˜ ๊ฐœ์ˆ˜๋ฅผ ๋Š˜๋ ค ์›๋ณธ์œผ๋กœ ๋ณต์›ํ•˜๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅํ•ด์ง„๋‹ค. ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ์ด ๊ฐ€์žฅ ๋น›์„ ๋ฐœํ•˜๋Š” ๋ถ„์•ผ๊ฐ€ ์ด๋ฏธ์ง€ ํ•ด์ƒ๋„ ์••์ถ•โ€ข๋ณต์› ๋ถ„์•ผ๋‹ค. ํ˜„์žฌ ๋‚ด๊ฐ€ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์ด๋ฏธ์ง€์˜ ํ•ด์ƒ๋„๊ฐ€ ๋„ˆ๋ฌด ๋†’์•„์„œ ์šฉ๋Ÿ‰์ด ์ปค์ ธ ์‚ฌ์šฉํ•˜๊ธฐ ์–ด๋ ต๋‹ค๋ฉด SVD๋ฅผ ์ด์šฉํ•ด ํ•„์ˆ˜์ ์ธ ํŠน์ด๋ฒกํ„ฐ ๋ช‡๊ฐœ๋งŒ ๋‚จ๊ฒจ๋†“๋Š” ๋ฐฉ์‹์œผ๋กœ ํ•ด์ƒ๋„ ์••์ถ•์„ ์ˆ˜ํ–‰ํ•ด ์šฉ๋Ÿ‰์„ ์ค„์ผ ์ˆ˜ ๋„ ์žˆ๋‹ค. ๊ณต๋Œ์ด์˜ ์ˆ˜ํ•™์ •๋ฆฌ๋‹˜์˜ ํฌ์ŠคํŠธ ํ•˜๋‹จ๋ถ€์— ์ •๋ง ์ง๊ด€์ ์œผ๋กœ ์ž˜ ๋งŒ๋“ค์–ด์ง„ ์‚ฌ๋ก€๊ฐ€ ์žˆ์œผ๋‹ˆ ๊ผญ ํ•œ ๋ฒˆ์”ฉ ๋ณด๊ณ  ์˜ค์‹œ๊ธธ ๊ถŒ์žฅํ•œ๋‹ค.

Leave a comment