UMAP

๊ตฌ๋งยท2024๋…„ 11์›” 22์ผ

๐Ÿ“Œ์ฐธ๊ณ  ์˜์ƒ

UMAP?

  • Uniform Manifold Approximation and Projection
  • 2018๋…„์— ์†Œ๊ฐœ๋œ ๊ฐ•๋ ฅํ•œ ์ˆ˜ํ•™์  ๊ธฐ์ดˆ๋ฅผ ๊ฐ–๊ณ  ์žˆ๋Š” ์ฐจ์› ์ถ•์†Œ ๊ธฐ๋ฒ•
  • ๊ณ ์ฐจ์› ๋ฐ์ดํ„ฐ๋ฅผ ์ €์ฐจ์› ๊ณต๊ฐ„์—์„œ ํ‘œํ˜„ํ•˜๋Š” ๋ฐ ๋›ฐ์–ด๋‚œ ์„ฑ๋Šฅ์„ ๋ณด์ž„

Main Algorithm

์ด ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ํ•ต์‹ฌ์€ t-SNE์™€ ๋‹ค์†Œ ์œ ์‚ฌํ•˜๋‹ค.

๋ชจ๋“  ๊ณ ์ฐจ์› ์ƒ˜ํ”Œ์˜ ๊ฐ ์ด์›ƒ๊นŒ์ง€์˜ ๊ฑฐ๋ฆฌ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ, ๊ณ ์ฐจ์› ๊ณต๊ฐ„์—์„œ ๊ฑฐ๋ฆฌ๋ฅผ ์ €์ฐจ์› ๊ณต๊ฐ„์—์„œ๋„ ์ตœ๋Œ€ํ•œ ์ผ์น˜ํ•˜๊ฒŒ ํ‘œํ˜„ํ•˜๋ ค๊ณ  ํ•œ๋‹ค.

ํ•˜์ง€๋งŒ t-SNE๊ฐ€ ๊ฐ€์šฐ์‹œ์•ˆ ๋ถ„ํฌ์™€ ํ™•๋ฅ  ๋ถ„ํฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๊ณผ ๋‹ฌ๋ฆฌ,UMAP์€ ๋Œ€์‹  ๊ทธ๋ž˜ํ”„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ ์ฐจ์› ๋ฐ์ดํ„ฐ์™€ ์ €์ฐจ์› ๋ฐ์ดํ„ฐ๋ฅผ ๋ชจ๋‘ ํ‘œํ˜„ํ•œ๋‹ค.

์ด์ œ ์ž‘๋™๋ฐฉ์‹์„ ๋ณด๋ฉด ๋จผ์ €, ๊ฐ ์ƒ˜ํ”Œ์˜ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด k๊ฐœ์˜ ์ด์›ƒ์„ ์ฐพ์•„์•ผ ํ•œ๋‹ค.

์ด์›ƒ ํƒ์ƒ‰์€ ์—ฌ๋Ÿฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์žˆ์œผ๋ฉฐ, ์ง€์  ๊ฐ„ ๊ฑฐ๋ฆฌ ๋น„๊ต๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ด๋ฃจ์–ด์ง€๋ฉฐ, ์„ค์ •๋œ k ๊ฐ’์— ๋”ฐ๋ผ ์ด์›ƒ์˜ ๊ฐœ์ˆ˜๋ฅผ ์กฐ์ •ํ•œ๋‹ค.

์ด ๊ณผ์ •์—์„œ ๊ฐ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ์™€ ์ด์›ƒ ๊ฐ„ ๊ฐ€์žฅ์ž๋ฆฌ๊ฐ€ ๊ตฌ์„ฑ๋˜๋ฉฐ, ์ด๋ฅผ ํ†ตํ•ด ์ดˆ๊ธฐ ์ด์ง„ ๊ทธ๋ž˜ํ”„๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค.

์ด์ œ ๊ฐ€์ค‘์น˜ ๊ทธ๋ž˜ํ”„๋ฅผ ์ƒ์„ฑํ•˜๋Š”๋ฐ, ๊ฐ ํฌ์ธํŠธ์™€ ์ด์›ƒ ๊ฐ„์˜ ๊ฑฐ๋ฆฌ์— ๋Œ€ํ•ด ์ง€์ˆ˜์  ๊ฐ์‡ (exponential decay)๋ฅผ ์ ์šฉํ•ด ๊ฐ€์ค‘์น˜๋ฅผ ๊ณ„์‚ฐํ•œ๋‹ค.

๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ด์›ƒ์—๋Š” ์ตœ๋Œ€ ๊ฐ€์ค‘์น˜(1)๋ฅผ ํ• ๋‹นํ•˜๋ฉฐ, ๊ฑฐ๋ฆฌ์™€ ๋ฐ˜๋น„๋ก€ํ•ด ๊ฐ€์ค‘์น˜๊ฐ€ ๊ฐ์†Œํ•œ๋‹ค. ์ด๋Š” t-SNE์™€ ์œ ์‚ฌํ•œ ๊ณต์‹์ด์ง€๋งŒ, UMAP์€ ๊ฐ’์„ ์ •๊ทœํ™”ํ•˜์ง€ ์•Š์•„ ๊ณ„์‚ฐ ์†๋„๊ฐ€ ๋” ๋น ๋ฅด๋‹ค.

์ด์ œ ์ด ์ƒ˜ํ”Œ์— ๋Œ€ํ•œ ๊ฐ€์ค‘์น˜๊ฐ€ ์žˆ์œผ๋ฏ€๋กœ ๋‹ค๋ฅธ ์ƒ˜ํ”Œ ๊ฐ๊ฐ์— ๋Œ€ํ•ด ๋™์ผํ•œ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ฐ˜๋ณตํ•œ๋‹ค.

์—ฌ๊ธฐ์— 3๊ฐœ์˜ ๊ทธ๋ž˜ํ”„๋งŒ ํ‘œ์‹œ๋ผ ์žˆ์ง€๋งŒ, ๊ฒฐ๊ณผ์ ์œผ๋กœ ์ƒ˜ํ”Œ๋‹น ํ•˜๋‚˜์˜ ๊ฐ€์ค‘์น˜ ๊ทธ๋ž˜ํ”„๊ฐ€ ์ƒ์„ฑ๋˜๋ฏ€๋กœ ๊ฐ ์ƒ˜ํ”Œ๋ณ„๋กœ ์ƒ์„ฑ๋œ ๊ฐ€์ค‘์น˜ ๊ทธ๋ž˜ํ”„๋ฅผ ํ•˜๋‚˜์˜ ๋Œ€์นญํ™”๋œ ๋‹จ์ผ ๊ฐ€์ค‘์น˜ ๊ทธ๋ž˜ํ”„๋กœ ๊ฒฐํ•ฉํ•œ๋‹ค.


๋Œ€์นญํ™”๋Š” ๋‘ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ ๊ฐ„ ํ•˜๋‚˜์˜ ๊ฐ„์„ ๋งŒ ๋‚จ๋„๋ก ์„ค์ •ํ•˜๋ฉฐ, ๊ฐ€์ค‘์น˜๋ฅผ 0๊ณผ 1 ์‚ฌ์ด๋กœ ์œ ์ง€ํ•œ๋‹ค.
์ด์ œ ์ตœ์ข… ๊ทธ๋ž˜ํ”Œ ๊ตฌ์„ฑ์ด ์™„๋ฃŒ๋์œผ๋ฏ€๋กœ, ์ดˆ๊ธฐ ์ €์ฐจ์› ํ‘œํ˜„์— ๋Œ€ํ•ด ๋™์ผํ•œ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ฐ˜๋ณตํ•˜์—ฌ ์ €์ฐจ์› ๊ณต๊ฐ„์—์„œ ๋˜๋‹ค๋ฅธ ๊ฐ€์ค‘์น˜ ์ด์ง„ ๊ทธ๋ž˜ํ”„๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

๋‹ค์Œ ๋‹จ๊ณ„๋กœ, ๋‘ ๊ทธ๋ž˜ํ”„ ๊ฐ„์˜ ์œ ์‚ฌ์„ฑ์„ ํ‰๊ฐ€ํ•˜๊ธฐ ์œ„ํ•ด ์ธ์ ‘ ํ–‰๋ ฌ(adjacency matrix)์„ ์‚ฌ์šฉํ•˜๊ณ , ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ต์ฐจ ์—”ํŠธ๋กœํ”ผ(cross-entropy) ์†์‹ค ํ•จ์ˆ˜๋ฅผ ์ตœ์†Œํ™”ํ•œ๋‹ค.

์ตœ์ ํ™”๋Š” ํ™•๋ฅ ์  ๊ฒฝ์‚ฌ ํ•˜๊ฐ•๋ฒ•(SGD)์„ ํ†ตํ•ด ์ด๋ฃจ์–ด์ง€๋ฉฐ, ์ด ๊ณผ์ •์—์„œ ์ €์ฐจ์› ํ‘œํ˜„์ด ๋ฐ˜๋ณต์ ์œผ๋กœ ์กฐ์ •๋œ๋‹ค.

์ด์ œ MNIST ๋ฐ์ดํ„ฐ์…‹์„ UMAP์„ ์‚ฌ์šฉํ•œ ์‹œ๊ฐํ™”๋ฅผ ์‚ดํŽด๋ณด๋ฉด ํด๋ž˜์Šค๊ฐ€ ์ž˜ ํด๋Ÿฌ์Šคํ„ฐ๋˜์–ด ์žˆ๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

UMAP์€ ํŠนํžˆ ์‹œ๊ฐํ™” ํ’ˆ์งˆ๊ณผ ์†๋„ ์ธก๋ฉด์—์„œ ๊ฐ•๋ ฅํ•˜๋‹ค. t-SNE๋Š” MNIST๋ฅผ ์ฐจ์›์ถ•์†Œํ•˜์—ฌ ์‹œ๊ฐํ™”ํ•˜๋Š” ๋ฐ 40์ดˆ๊ฐ€ ๊ฑธ๋ ธ์ง€๋งŒ UMAP์€ ๋‹จ 5์ดˆ๊ฐ€ ๊ฑธ๋ ธ๋‹ค.

UMAP์€ ๋ฐ์ดํ„ฐ ํฌ๊ธฐ์— ๋”ฐ๋ผ ๋Ÿฐํƒ€์ž„ ์ฆ๊ฐ€์œจ์ด t-SNE๋ณด๋‹ค ํ›จ์”ฌ ๋А๋ฆฌ๋ฉฐ, ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ์…‹์—์„œ๋„ ํšจ์œจ์ ์œผ๋กœ ์ž‘๋™ํ•˜๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

UMAP์˜ ๋˜ ๋‹ค๋ฅธ ์žฅ์ ์€ ์ดˆ๊ธฐ ๊ทธ๋ž˜ํ”„ ๊ตฌ์„ฑ์—์„œ ์ฃผ์š” ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ์ธ number of nearest neighbors์ด๋‹ค.
์ด์›ƒ ์ˆ˜๊ฐ€ ์ฆ๊ฐ€ํ•จ์— ๋”ฐ๋ผ ์ด ๋งค๋จธ๋“œ ๋ชจ์–‘์˜ projection์ด ์–ด๋–ป๊ฒŒ ๋ฐ”๋€Œ๋Š”์ง€ ์‚ดํŽด๋ณด๋ฉด, ์ฒ˜์Œ์—๋Š” ํ•˜๋‚˜์˜ ํฐ fuzzy ์…‹๋งŒ ์žˆ์ง€๋งŒ ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฐ’์ด ์ปค์งˆ์ˆ˜๋ก ์ ์  ๋” ๋งŽ์€ ์„ธ๋ถ€์ •๋ณด๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค.

์ฃผ์š” ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋ณ€๊ฒฝํ–ˆ์„ ๋•Œ, UMAP์€ t-SNE๋ณด๋‹ค ๊ฒฐ๊ณผ์˜ ๋ณ€ํ™”๋ฅผ ๋” ์˜ˆ์ธกํ•˜๊ธฐ ์‰ฝ๋‹ค. ๋ฐ˜๋ฉด, t-SNE์—์„œ perplexity ๊ฐ’์„ ์กฐ์ •ํ–ˆ์„ ๊ฒฝ์šฐ, ๊ฒฐ๊ณผ๊ฐ€ ์‹ค์ œ๋กœ ๊ฐœ์„ ๋˜์—ˆ๋Š”์ง€ ํŒ๋‹จํ•˜๊ธฐ๊ฐ€ ์–ด๋ ต๋‹ค. ๋˜ํ•œ, UMAP์€ ๋ฐ์ดํ„ฐ์˜ ์ „์—ญ์ ์ธ ๊ตฌ์กฐ๋ฅผ ๋ณด์กดํ•˜๋Š” ๋ฐ ๋งค์šฐ ํšจ๊ณผ์ ์ด๋‹ค.

UMAP Hyperparameter

  1. n_neighbors : UMAP์ด ๋ฐ์ดํ„ฐ๋ฅผ ํ•™์Šตํ•  ๋•Œ, ๊ฐ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ์˜ ๋กœ์ปฌ(neighborhood) ๊ตฌ์กฐ๋ฅผ ์ •์˜ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ
  • ํŠน์ • ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๊ฐ€ โ€œ์ด์›ƒโ€์œผ๋กœ ๊ฐ„์ฃผ๋˜๋Š” ๊ธฐ์ค€์„ ๊ฒฐ์ •ํ•˜๋ฉฐ, ์ด๋Š” ์ €์ฐจ์› ์ž„๋ฒ ๋”ฉ์—์„œ ๊ตญ์†Œ ๊ตฌ์กฐ๋ฅผ ์–ผ๋งˆ๋‚˜ ์ž˜ ๋ณด์กดํ• ์ง€์— ์˜ํ–ฅ์„ ๋ฏธ์นจ
  • ๊ฐ’์ด ๋‚ฎ์œผ๋ฉด ๋งค์šฐ ๋กœ์ปฌํ•œ ๊ตฌ์กฐ์— ์ง‘์ค‘ํ•˜๋„๋ก ๊ฐ•์ œํ•˜๋ฉฐ, ์ด๋Š” ์ „์ฒด์ ์ธ ๊ตฌ์กฐ๋ฅผ ํ•ด์น˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Œ
  • ๋ฐ˜๋Œ€๋กœ n_neighbors ๊ฐ’์ด ๋†’์œผ๋ฉด ๋งค๋‹ˆํด๋“œ ๊ตฌ์กฐ๋ฅผ ์ถ”์ •ํ•  ๋•Œ ๊ฐ ์ ์˜ ๋” ํฐ ์ด์›ƒ์„ ์‚ดํŽด๋ณด๊ฒŒ ๋˜์–ด, ์„ธ๋ถ€์ ์ธ ๊ตฌ์กฐ๋ฅผ ์žƒ๋Š” ๋Œ€์‹  ๋ฐ์ดํ„ฐ์˜ ์ „๋ฐ˜์ ์ธ ๊ตฌ์กฐ๋ฅผ ๋” ์ž˜ ๋ฐ˜์˜ํ•จ
  • default : 15
  1. min_dist : UMAP์ด ๋ฐ์ดํ„ฐ๋ฅผ ์–ผ๋งˆ๋‚˜ ๋ฐ€์ง‘๋˜๊ฒŒ ๋ฐฐ์น˜ํ•  ์ˆ˜ ์žˆ๋Š”์ง€๋ฅผ ์ œ์–ด
  • ์ €์ฐจ์› ์ž„๋ฒ ๋”ฉ์—์„œ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ ์‚ฌ์ด์˜ ์ตœ์†Œ ๊ฑฐ๋ฆฌ(๋ฐ€๋„)๋ฅผ ์„ค์ •
  • ์ €์ฐจ์› ๊ณต๊ฐ„์—์„œ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ ๊ฐ„์˜ โ€œ๋ญ‰์นจโ€ ์ •๋„๋ฅผ ์กฐ์ •ํ•˜๋Š” ์—ญํ• 
  • ๊ฐ’์ด ๋‚ฎ์œผ๋ฉด ๋” ๋ญ‰์ณ์ง„ ํ˜•ํƒœ์˜ ์ž„๋ฒ ๋”ฉ์ด ์ƒ์„ฑ๋˜๋ฉฐ ํด๋Ÿฌ์Šคํ„ฐ๋ง์ด๋‚˜ ๋” ์„ธ๋ฐ€ํ•œ ์œ„์ƒ ๊ตฌ์กฐ ๋ถ„์„์— ์œ ์šฉํ•จ
  • ๊ฐ’์ด ๋†’์œผ๋ฉด ์ ๋“ค์„ ์„œ๋กœ ๋ฐ€์ง‘์‹œํ‚ค์ง€ ์•Š๊ณ , ๋Œ€์‹  ์ „์ฒด์  ์œ„์ƒ ๊ตฌ์กฐ ๋ณด์กดํ•˜๋Š” ๋ฐ ์ดˆ์ ์„ ๋งž์ถค
  • default : 0.1
  1. n_components : ์ž„๋ฒ ๋”ฉ ์ฐจ์›์„ ์„ค์ •
  • ์ผ๋ฐ˜์ ์œผ๋กœ 2D ๋˜๋Š” 3D ์‹œ๊ฐํ™”๋ฅผ ์œ„ํ•ด 2 ๋˜๋Š” 3์œผ๋กœ ์„ค์ •
  • ์ž‘์€ ๊ฐ’(์˜ˆ:2)์€ ๋ฐ์ดํ„ฐ๋ฅผ ์‹œ๊ฐํ™”ํ•˜๊ธฐ์— ์ ํ•ฉํ•จ
  • ํฐ ๊ฐ’(์˜ˆ:10 ์ด์ƒ)์€๊ณ ์ฐจ์› ์ž„๋ฒ ๋”ฉ์œผ๋กœ ๋” ์ •๊ตํ•œ ๋ถ„์„์— ํ™œ์šฉ ๊ฐ€๋Šฅ
  • default : 2
  1. metric : ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ ๊ฐ„ ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ •์˜
  • ์ข…๋ฅ˜๋Š” euclidean, cosine, manhattan ๊ฑฐ๋ฆฌ๊ฐ€ ์กด์žฌ
  • euclidean๋Š” ์—ฐ์†ํ˜• ์ˆ˜์น˜ ๋ฐ์ดํ„ฐ์—์„œ ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉ
  • cosine์€ ํ…์ŠคํŠธ ๋ฐ์ดํ„ฐ๋‚˜ ํฌ์†Œ ๋ฐ์ดํ„ฐ์—์„œ ์œ ์šฉ
  • manhattan์€ ๊ณ ์ฐจ์› ๋ฐ์ดํ„ฐ์—์„œ ์•ˆ์ •์ ์ธ ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Œ
  • default : euclidean
profile
๐Ÿ“ ๋ฐ์ดํ„ฐ์‚ฌ์ด์–ธ์Šค ํ•™๋ถ€์ƒ์˜ ๊ธฐ๋ก์žฅ!

0๊ฐœ์˜ ๋Œ“๊ธ€