๐Ÿ“š Study/Paper Review

K-means Clustering์—์„œ centroid์™€ assignment ์—…๋ฐ์ดํŠธํ•˜๋Š” ๊ฒƒ ์ค‘ ๋ญ๊ฐ€ ๋” ์˜ค๋ž˜ ๊ฑธ๋ฆด๊นŒ?

์œฐ๊ฐฑ 2024. 7. 12. 16:50
K-means has two steps: updating centroids given assignments, and updating assignments given centroids. We note that the latter is more expensive while the former is a simple averaging. Hence, we update the centroids after each iteration and update the assignments once every t iterations.


์ถœ์ฒ˜) Compact3D: Smaller and Faster Gaussian Splatting with Vector Quantization

 

๋…ผ๋ฌธ์„ ์ฝ๋‹ค๊ฐ€ ์™œ ๊ทธ๋ ‡์ง€? ์ดํ•ด๊ฐ€ ์ž˜ ์•ˆ๋˜๋Š” ๋ถ€๋ถ„์ด ์žˆ์–ด์„œ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค.

K-means Clustering์—์„œ centroid update์™€ assignment update๊ฐ€ ๋ฌด์—‡์„ ์˜๋ฏธํ•˜๋Š”๊ฐ€?

 

์ผ๋‹จ K-means Clustering์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•ด๋ณด์ž.

 


K-means Clustering

๊ฐ€์žฅ ๊ฐ„๋‹จํ•˜๋ฉด์„œ๋„ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ๋ง ๊ธฐ๋ฒ•์œผ๋กœ, ์‚ฌ์šฉ์ž๊ฐ€ ์ง€์ •ํ•ด์ค€ K๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ๋กœ ๋‚˜๋ˆ„๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค.

  1. K๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ ์ค‘์‹ฌ์ (centroid)์„ ๋žœ๋คํ•˜๊ฒŒ ์„ ํƒ
  2. ๊ฐ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋“ค์„ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ํด๋Ÿฌ์Šคํ„ฐ ์ค‘์‹ฌ์ ์— ํ• ๋‹น
  3. ํ• ๋‹น๋œ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋“ค์˜ ํ‰๊ท ๊ฐ’์„ ๊ณ„์‚ฐํ•˜์—ฌ ์ƒˆ๋กœ์šด ํด๋Ÿฌ์Šคํ„ฐ ์ค‘์‹ฌ์ ์„ ์—…๋ฐ์ดํŠธ
  4. 2-3๋‹จ๊ณ„๋ฅผ ๋ฐ˜๋ณต. ํด๋Ÿฌ์Šคํ„ฐ ํ• ๋‹น์ด ๋ณ€ํ•˜์ง€ ์•Š๊ฑฐ๋‚˜, ๋ฏธ๋ฆฌ ์ •ํ•œ ๋ฐ˜๋ณต ํšŸ์ˆ˜์— ๋„๋‹ฌํ•˜๋ฉด ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์ข…๋ฃŒ

 

ํด๋Ÿฌ์Šคํ„ฐ์˜ centroid๋ฅผ updateํ•˜๋Š” ๊ณผ์ •๊ณผ

ํ• ๋‹น๋œ ํ•ด๋‹น ํฌ์ธํŠธ๋“ค์„ ์˜๋ฏธํ•˜๋Š” assignment๋ฅผ updateํ•˜๋Š” ๊ณผ์ •์€ 2-3๋‹จ๊ณ„๋ฅผ ๋ฐ˜๋ณตํ•˜๋ฉด์„œ ์ง„ํ–‰๋œ๋‹ค.

 

๊ฐ ๋‹จ๊ณ„์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์„ค๋ช…ํ•ด๋ณด์ž.

 

 


Centroid Update

๊ฐ ํด๋Ÿฌ์Šคํ„ฐ์— ์†ํ•œ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋“ค์˜ ํ‰๊ท ์„ ๊ณ„์‚ฐํ•˜์—ฌ ์ƒˆ๋กœ์šด centroid๋ฅผ ์ฐพ๋Š” ๊ณผ์ •

์ด ๊ณผ์ •์€ ์‚ฌ์‹ค ํด๋Ÿฌ์Šคํ„ฐ์— ์†ํ•˜๋Š” ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋“ค์˜ ์ขŒํ‘œ๋ฅผ ํ‰๊ท  ๋‚ด๋Š” ๊ณผ์ •์ด๊ธฐ ๋•Œ๋ฌธ์— ๋น„๊ต์  ๊ฐ„๋‹จํ•˜๋‹ค.

 

๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋“ค์˜ ๊ฐœ์ˆ˜๋ฅผ $N$์ด๋ผ๊ณ  ํ•œ๋‹ค๋ฉด, ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” $O(N)$์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

 

Assignment Update

๊ฐ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋“ค์„ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด centroid์— ํ• ๋‹นํ•˜๋Š” ๊ณผ์ •

์ด๋Š” ๋ชจ๋“  ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋“ค์— ๋Œ€ํ•ด ๋ชจ๋“  centroid๊นŒ์ง€์˜ ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ ,

๊ฐ€์žฅ ๊ฐ€๊นŒ์šด centroid๋ฅผ ์ฐพ๋Š” ๊ณผ์ •์„ ํฌํ•จํ•˜๋ฏ€๋กœ ๊ณ„์‚ฐ ๋น„์šฉ์ด ๋งค์šฐ ๋†’๋‹ค.

 

๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋“ค์˜ ๊ฐœ์ˆ˜๋ฅผ $N$, centroid์˜ ๊ฐœ์ˆ˜๋ฅผ $K$๋ผ๊ณ  ํ•œ๋‹ค๋ฉด

์ด๋•Œ๋Š” ๊ฐ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋“ค์— ๋Œ€ํ•ด K๊ฐœ์˜ ์ค‘์‹ฌ์ ๊นŒ์ง€ ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ„์‚ฐํ•ด์•ผ ํ•˜๋ฏ€๋กœ $O(N*K)$์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ฐ€์ง„๋‹ค.

 

 


์ฆ‰, 3DGS ๋ชจ๋ธ์€ ๊ฐ€์šฐ์‹œ์•ˆ์˜ ๊ฐœ์ˆ˜์ธ $N$์ด ์ˆ˜๋ฐฑ๋งŒ๊ฐœ์ด๊ธฐ ๋•Œ๋ฌธ์— Assignment Update๊ฐ€ ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋Š” ๊ฒƒ์ด๋‹ค.

๋”ฐ๋ผ์„œ Centroid Update๋Š” ๋งค iter๋งˆ๋‹ค ํ•˜๋”๋ผ๋„, Assignment Update๋Š” ํŠน์ • iter๋งŒ ์ˆ˜ํ–‰ํ•˜๋„๋ก ์„ค๊ณ„ํ•˜์˜€๋‹ค.

 

์—ฌ๊ธฐ์„œ ๊ทธ๋Ÿฐ ์˜๋ฌธ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค.

๋งค iteration๋งˆ๋‹ค ์™„๋ฒฝํžˆ K-means Clustering์ด ์ˆ˜ํ–‰๋˜๋Š”๊ฑด ์•„๋‹Œ ๊ฒƒ ๊ฐ™๋„ค์š”? ์ •ํ™•ํ•˜๋‹ค!

Assignment Update๋ฅผ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š๊ณ  Centroid Update๋งŒ ์ˆ˜ํ–‰ํ•˜๋Š” iteration์—์„œ๋Š” ์ตœ์ ํ™”๋œ ๊ฒฐ๊ณผ๋Š” ์•„๋‹Œ ๊ฒƒ์ด๋‹ค.

์ด๋Š” ๊ณ„์‚ฐ ๋น„์šฉ์„ ์ค„์ด๊ธฐ ์œ„ํ•œ ํƒ€ํ˜‘์ ์œผ๋กœ, Clutering ์ •ํ™•๋„์™€ ๊ณ„์‚ฐ ๋น„์šฉ๊ฐ„์˜ ๊ท ํ˜•์„ ๋งž์ถ”๋Š”๋ฐ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•œ๋‹ค.

 

 

 

 


์ฐธ๊ณ ๋ธ”๋กœ๊ทธ

https://gsbang.tistory.com/entry/%EA%B8%B0%EA%B3%84%ED%95%99%EC%8A%B5-k-means-%ED%81%B4%EB%9F%AC%EC%8A%A4%ED%84%B0%EB%A7%81-%EC%B5%9C%EC%A0%81%EC%9D%98-k%EA%B0%92-%ED%83%90%EC%83%89#google_vignette

 

[๊ธฐ๊ณ„ํ•™์Šต] k-means ํด๋Ÿฌ์Šคํ„ฐ๋ง - ์ตœ์ ์˜ k๊ฐ’ ํƒ์ƒ‰

K-means ์•Œ๊ณ ๋ฆฌ์ฆ˜ K-means ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๊ฐ€์žฅ ๊ฐ„๋‹จํ•˜๋ฉด์„œ๋„ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ์ด ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋ฐ์ดํ„ฐ๋ฅผ K๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ๋กœ ๋‚˜๋ˆ„๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. K-means ์•Œ๊ณ ๋ฆฌ

gsbang.tistory.com

 

https://yoonschallenge.tistory.com/559

 

๋ชจ๋‘๋ฅผ ์œ„ํ•œ ๋จธ์‹ ๋Ÿฌ๋‹ ๊ณผ์ œ2 - k means ์ง„ํ–‰, ๊ณ„์‚ฐ

[๊ณผ์ œ ๋‚ด์šฉ]2์ฐจ์› ํŠน์ง• ๊ณต๊ฐ„ ์ƒ์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด 6๊ฐœ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ,(–1, 1), (0, 0.5), (1, 1), (–1, –0.5), (0, –1), (1, –0.5)์ด ๋ฐ์ดํ„ฐ๋“ค์„ K-means ํด๋Ÿฌ์Šคํ„ฐ๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•˜์—ฌ

yoonschallenge.tistory.com