[๋จธ์‹ ๋Ÿฌ๋‹][์ฐจ์›์ถ•์†Œ] ๋ณ€์ˆ˜ ์ถ”์ถœ๋ฒ• - Multi-Dimensional Scaling (MDS)

Posted by Euisuk's Dev Log on December 28, 2021

[๋จธ์‹ ๋Ÿฌ๋‹][์ฐจ์›์ถ•์†Œ] ๋ณ€์ˆ˜ ์ถ”์ถœ๋ฒ• - Multi-Dimensional Scaling (MDS)

์›๋ณธ ๊ฒŒ์‹œ๊ธ€: https://velog.io/@euisuk-chung/๋จธ์‹ ๋Ÿฌ๋‹์ฐจ์›์ถ•์†Œ-๋ณ€์ˆ˜-์ถ”์ถœ๋ฒ•-Multi-Dimensional-Scaling-MDS

๋ณธ ํฌ์ŠคํŠธ๋Š” ๊ณ ๋ ค๋Œ€ํ•™๊ต ๊ฐ•ํ•„์„ฑ ๊ต์ˆ˜๋‹˜์˜ ๊ฐ•์˜๋ฅผ ์ˆ˜๊ฐ• ํ›„ ์ •๋ฆฌ๋ฅผ ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ž‘์„ฑ ๋ฐ ์„ค๋ช…์˜ ํŽธ์˜๋ฅผ ์œ„ํ•ด ์•„๋ž˜๋Š” ํŽธํ•˜๊ฒŒ ์ž‘์„ฑํ•œ ์  ์–‘ํ•ด๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

Dimensionality Reduction

Supervised Variable Extraction

์ฐจ์›์ถ•์†Œ๋Š”, ๋ชจ๋ธ๋ง์„ ํ•˜๊ธฐ ์œ„ํ•ด ๋‚ด๊ฐ€ ๊ฐ€์ง„ ๋ฐ์ดํ„ฐ์˜ ์ •๋ณด๋ฅผ ์ตœ๋Œ€ํ•œ ๋ณด์กดํ•˜๋ฉด์„œ, ํ›จ์”ฌ ๋” compactํ•˜๊ฒŒ ๋ฐ์ดํ„ฐ์…‹์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ฒƒ์„ ๋ชฉ์ ์œผ๋กœ ํ•˜๋ฉฐ, ํฌ๊ฒŒ ๋ณ€์ˆ˜์„ ํƒ(Variable Selection, ๋ณ€์ˆ˜๋“ค์˜ ๋ถ€๋ถ„ ์ง‘ํ•ฉ ์„ ํƒ)๊ณผ ๋ณ€์ˆ˜์ถ”์ถœ(Variable Extraction, ๋ณ€์ˆ˜๋“ค์„ ์š”์•ฝํ•˜๋Š” ์ƒˆ๋กœ์šด ๋ณ€์ˆ˜ ์ƒ์„ฑ)์ด ์žˆ๋‹ค.

์ด์ „ ํฌ์ŠคํŠธ์—์„œ๋Š” ์•„๋ž˜ ํ‘œ์—์„œ Supervised Variable Selection์„ ์‚ดํŽด๋ณด์•˜๋‹ค. ์˜ค๋Š˜์€ Supervised Variable Extraction์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐ๋ฅผ ํ’€์–ด๋ณด๋„๋ก ํ•˜๊ฒ ๋‹ค.

Supervised Variable Selection

MDS๋ž€

Multi-Dimensional Scaling(MDS), ๋‹ค์ฐจ์›์ฒ™๋„๋ฒ•์ด๋ž€, D-์ฐจ์› ๊ณต๊ฐ„ ์ƒ์˜ ๊ฐ์ฒด๋“ค์ด ์žˆ์„ ๋•Œ ๊ทธ ๊ฐ์ฒด๋“ค์˜ ๊ฑฐ๋ฆฌ(between object distance)๊ฐ€ ์ €-์ฐจ์› ๊ณต๊ฐ„ ์ƒ์—๋„ ์ตœ๋Œ€ํ•œ ๋งŽ์ด ๋ณด์กด๋˜๋„๋ก ํ•˜๋Š” ์ขŒํ‘œ๊ณ„๋ฅผ ์ฐพ๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.

MDS

Distance matrix๋ฅผ ํ†ตํ•ด์„œ ์ €-์ฐจ์› ์ƒ์˜ ๊ฐ๊ฐ์˜ ๊ฐ์ฒด๋“ค์ด ๊ฐ–๋Š” ์ขŒํ‘œ ์‹œ์Šคํ…œ์„ ์ฐพ๋Š” ๊ฒƒ์ด ๋ชฉ์ 

์ง€๋‚œ๋ฒˆ์— ๋‹ค๋ฃจ์—ˆ๋˜ PCA(๋งํฌ)์™€ MDS๋ฅผ ๋น„๊ตํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ‘œ๋กœ ์ •๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.

PCA-MDS

์ถ”๊ฐ€์ ์œผ๋กœ PCA๋ฅผ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋Š” ๊ฑฐ๋ฆฌ์— ๋Œ€ํ•œ ๊ฐ’์œผ๋กœ ํ‘œ๊ธฐ ๋ฐ MDS ์ ์šฉ์ด ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, ์—ญ์€ ์„ฑ๋ฆฝํ•˜์ง€ ์•Š๋Š”๋‹ค.

MDS ํ”„๋กœ์„ธ์Šค

[1] Construct Proximity/Distance Matrix ๋‹จ๊ณ„

  • ๊ทผ์ ‘/๊ฑฐ๋ฆฌ ํ–‰๋ ฌ(D, distance matrix) ๊ตฌ์ถ• ๋‹จ๊ณ„์ด๋‹ค.
  • ๊ฑฐ๋ฆฌ-ํ–‰๋ ฌ์ด ๊ฐ€์ ธ์•ผํ•  ํŠน์ง•์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค:

    1. dijโ‰ฅ0d_{ij}โ‰ฅ0dijโ€‹โ‰ฅ0

    2. dii=0d_{ii}=0diiโ€‹=0

    3. dij=djid_{ij}= d_{ji}dijโ€‹=djiโ€‹

    4. dijโ‰คdik+djkd_{ij}โ‰คd_{ik}+d_{jk}dijโ€‹โ‰คdikโ€‹+djkโ€‹ (โˆต ์‚ผ๊ฐ๋ถ€๋“ฑ์‹)

  • Distance Measure: Euclidean, Manhattan, etc.
  • Similarity Measure: Correlation, Jaccard, etc.
  • (์ฐธ๊ณ ) MDS์˜ ์ตœ์ข…๋ชฉ์ 

    • ์•„๋ž˜ drsd_{rs}drsโ€‹ ์‹์„ ๋ฐ”ํƒ•์œผ๋กœ xrx_{r}xrโ€‹, xsx_{s}xsโ€‹๋ฅผ ์ฐพ์•„๋‚ด๋Š” ๊ฒƒ

drs2=(xrโˆ’xs)T(xrโˆ’xs)d_{rs}^2=(x_r-x_s )^T (x_r-x_s)drs2โ€‹=(xrโ€‹โˆ’xsโ€‹)T(xrโ€‹โˆ’xsโ€‹)

[2] Extract the coordinates that preserve the distance information ๋‹จ๊ณ„

  • ๊ฑฐ๋ฆฌ ์ •๋ณด๋ฅผ ๋ณด์กดํ•˜๋Š” ์ขŒํ‘œ ์‹œ์Šคํ…œ์„ ์ฐพ๋Š” ๋‹จ๊ณ„์ด๋‹ค.
  • D๋ผ๋Š” distance matrix์—์„œ ํ•œ ๋ฒˆ์— x๋ฅผ ๊ตฌํ•˜๊ธฐ ์–ด๋ ค์šฐ๋ฏ€๋กœ, B๋ผ๋Š” ๋งค๊ฐœ์ฒด์ธ ๋‚ด์  Matrix๋ฅผ ๋„์ถœํ•˜๊ณ  ๊ทธ ๋‹ค์Œ์— X๋ฅผ ๊ตฌํ•œ๋‹ค.

D(nร—n)โ†’B(nร—n)โ†’X(dร—n)โ‡”Dโ‰”(Xrโˆ’Xs)T(Xrโˆ’Xs)โ†’Bโ‰”XrTXsโ†’Xโ‰”XD_{(nร—n)} โ†’ B_{(nร—n)} โ†’ X_{(dร—n)} โ‡” D โ‰” (X_r-X_s )^T (X_r-X_s ) โ†’ B โ‰” X_r^T X_s โ†’ X โ‰” XD(nร—n)โ€‹โ†’B(nร—n)โ€‹โ†’X(dร—n)โ€‹โ‡”D:=(Xrโ€‹โˆ’Xsโ€‹)T(Xrโ€‹โˆ’Xsโ€‹)โ†’B:=XrTโ€‹Xsโ€‹โ†’X:=X

  • B๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜๋œ๋ฉฐ ๋ช‡ ๊ฐ€์ง€ ๊ฐ€์ •์„ ๋”ฐ๋ฅธ๋‹ค.

[B]rs=brs=XrTXs[B]_rs=b_rs=X_r^T X_s[B]rโ€‹s=brโ€‹s=XrTโ€‹Xsโ€‹

  • ๊ฐ€์ •

    1. โˆ‘r=1nxri=0(i=1,2,โ€ฆ,p)โˆ‘_{r=1}^{n}x_{ri}=0 (i=1,2,โ€ฆ,p)โˆ‘r=1nโ€‹xriโ€‹=0(i=1,2,โ€ฆ,p), ๋ชจ๋“  ๋ณ€์ˆ˜์˜ ํ•ฉ์€ 0์ด๋‹ค.

    2. drs2=(Xrโˆ’Xs)T(Xrโˆ’Xs)=XrTXr+XsTXSโˆ’2XrTXsd_{rs}^{2}=(X_r-X_s )^T (X_r-X_s )=X_r^T X_r+X_s^T X_S-2X_r^T X_sdrs2โ€‹=(Xrโ€‹โˆ’Xsโ€‹)T(Xrโ€‹โˆ’Xsโ€‹)=XrTโ€‹Xrโ€‹+XsTโ€‹XSโ€‹โˆ’2XrTโ€‹Xsโ€‹

  • r์— ๋Œ€ํ•œ ํ•ฉ (1):

    R

  • s์— ๋Œ€ํ•œ ํ•ฉ (2):

    S

  • r๊ณผ s์— ๋Œ€ํ•œ ํ•ฉ (3):

    R-S

  • B(inner product matrix)๋ฅผ ๊ตฌํ•ด๋ณด์ž

    B(inner product matrix)

  • ์ขŒํ‘œ์‹œ์Šคํ…œ X๋ฅผ ๊ตฌํ•ด๋ณด์ž. B๋Š” ์ด๋ฏธ ์•ž์—์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜๋  ์ˆ˜ ์žˆ๋‹ค.

B(nร—n)=XXTB_{(nร—n)}=XX^TB(nร—n)โ€‹=XXT

rank(B)=rank(XXT)=rank(X)=prank(B)=rank(XX^T )=rank(X)=prank(B)=rank(XXT)=rank(X)=p

(X(nร—p)X_{(nร—p)}X(nร—p)โ€‹, rank๋Š” ์„ ํ˜•๋…๋ฆฝ์ธ ์—ด๋“ค์˜ ์ตœ๋Œ€์˜ ๊ฐœ์ˆ˜๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ, p<n์กฐ๊ฑด์„ ๋งŒ์กฑํ•œ๋‹ค.)

  • ์ด๋•Œ ํ–‰๋ ฌ B๋Š” inner product matrix ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์„ฑ์งˆ์„ ๋งŒ์กฑํ•˜๊ณ , 0์ธ eigenvalue๊ฐ’๋“ค์„ ์ œ๊ฑฐํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.

eigenvalue

  • B=XXTB = XX^TB=XXT์ด๋ฏ€๋กœ, X=V1ฮ›11/2X = V_{1} ฮ›_{1}^{1/2}X=V1โ€‹ฮ›11/2โ€‹์ž„์„ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

๊ธด ๊ธ€ ์ฝ์–ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค ^~^



-->