๋จธ์‹ ๋Ÿฌ๋‹ ์ง€๋„ํ•™์Šต์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๊ฐ€์žฅ ๊ฐ„๋‹จํ•˜๊ณ  ์ง๊ด€์ ์ธ ๋ถ„๋ฅ˜ ๋ฐ ํšŒ๊ท€ ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜์ธ KNN ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ •๋ฆฌ

KNN (K-Nearest Neighbors)

  • KNN (K-Nearest Neighbors)์€ ์ง€๋„ ํ•™์Šต ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ํ•˜๋‚˜๋กœ, ๋ถ„๋ฅ˜(Classification) ๋ฐ ํšŒ๊ท€(Regression) ๋ฌธ์ œ์— ๋ชจ๋‘ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋‹ค.
  • KNN์€ ๋งค์šฐ ์ง๊ด€์ ์ด๊ณ  ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ฉฐ, ๋ณ„๋„์˜ ํ›ˆ๋ จ ๋‹จ๊ณ„๊ฐ€ ์—†๋‹ค๋Š” ํŠน์ง•์ด ์žˆ๋‹ค.

๊ฐœ์š”

  • ์ •์˜: ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๊ธฐ์กด ๋ฐ์ดํ„ฐ ์…‹์—์„œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด K๊ฐœ์˜ ์ด์›ƒ์„ ์ฐพ์•„, ์ด๋“ค์˜ ์ •๋ณด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋ฅผ ์˜ˆ์ธกํ•œ๋‹ค.
  • ๋ถ„๋ฅ˜ (Classification): K๊ฐœ์˜ ์ด์›ƒ ์ค‘ ๊ฐ€์žฅ ๋งŽ์€ ํด๋ž˜์Šค๋กœ ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋ฅผ ๋ถ„๋ฅ˜ํ•œ๋‹ค.
  • ํšŒ๊ท€ (Regression): K๊ฐœ ์ด์›ƒ ๊ฐ’๋“ค์˜ ํ‰๊ท  ๋˜๋Š” ๊ฐ€์ค‘ ํ‰๊ท ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ์˜ ๊ฐ’์„ ์˜ˆ์ธกํ•œ๋‹ค.
  • Lazy Learning: KNN์€ ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ์…‹์„ ์ €์žฅํ•˜๋Š” ๊ฒƒ์ด ์ „๋ถ€์ด๋ฉฐ, ์‹ค์ œ ์˜ˆ์ธก ์‹œ์ ์— ๊ณ„์‚ฐ์ด ์ด๋ฃจ์–ด์ง€๋ฏ€๋กœ โ€œLazy Learningโ€์ด๋ผ๊ณ ๋„ ๋ถˆ๋ฆผ.

KNN ์•Œ๊ณ ๋ฆฌ์ฆ˜

  1. ๋ฐ์ดํ„ฐ ์ค€๋น„: ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ์…‹๊ณผ ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ์…‹์„ ์ค€๋น„ํ•ฉ๋‹ˆ๋‹ค. ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ์…‹์€ ์ด๋ฏธ ํด๋ž˜์Šค(๋ถ„๋ฅ˜) ๋˜๋Š” ๊ฐ’(ํšŒ๊ท€)์ด ํ• ๋‹น๋œ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋“ค๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

  2. ๊ฑฐ๋ฆฌ ์ธก์ •: ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ(ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ)์™€ ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ์…‹์˜ ๋ชจ๋“  ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ ๊ฐ„์˜ ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์œ ํด๋ฆฌ๋“œ ๊ฑฐ๋ฆฌ(Euclidean Distance)๊ฐ€ ๋งŽ์ด ์‚ฌ์šฉ๋˜์ง€๋งŒ, ํ•„์š”์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๊ฑฐ๋ฆฌ ์ธก์ • ๋ฐฉ์‹(๋งจํ•˜ํƒ„ ๊ฑฐ๋ฆฌ, ๋ฏผ์ฝ”ํ”„์Šคํ‚ค ๊ฑฐ๋ฆฌ ๋“ฑ)์„ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

    • ์œ ํด๋ฆฌ๋“œ ๊ฑฐ๋ฆฌ (Euclidean Distance): ๋‘ ์ ย ์™€ย ย ์‚ฌ์ด์˜ ๊ฑฐ๋ฆฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ณ„์‚ฐ๋ฉ๋‹ˆ๋‹ค.

    • ๋งจํ•˜ํƒ„ ๊ฑฐ๋ฆฌ (Manhattan Distance):

  3. K๊ฐœ์˜ ์ด์›ƒ ์„ ํƒ: ๊ณ„์‚ฐ๋œ ๊ฑฐ๋ฆฌ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด K๊ฐœ์˜ ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. K๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ง€์ •ํ•˜๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ์ž…๋‹ˆ๋‹ค.

  4. ์˜ˆ์ธก:

    • ๋ถ„๋ฅ˜ (Classification): ์„ ํƒ๋œ K๊ฐœ์˜ ์ด์›ƒ ์ค‘ ๊ฐ€์žฅ ๋งŽ์€ ํด๋ž˜์Šค๋ฅผ ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ์˜ ํด๋ž˜์Šค๋กœ ์˜ˆ์ธกํ•ฉ๋‹ˆ๋‹ค. (๋‹ค์ˆ˜๊ฒฐ ํˆฌํ‘œ)
    • ํšŒ๊ท€ (Regression): ์„ ํƒ๋œ K๊ฐœ ์ด์›ƒ๋“ค์˜ ๊ฐ’์˜ ํ‰๊ท ์„ ๊ณ„์‚ฐํ•˜์—ฌ ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ์˜ ๊ฐ’์œผ๋กœ ์˜ˆ์ธกํ•ฉ๋‹ˆ๋‹ค. ๋˜๋Š”, ๊ฑฐ๋ฆฌ์— ๋”ฐ๋ฅธ ๊ฐ€์ค‘ ํ‰๊ท ์„ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. (๊ฐ€๊นŒ์šด ์ด์›ƒ์ผ์ˆ˜๋ก ๋” ํฐ ๊ฐ€์ค‘์น˜๋ฅผ ๋ถ€์—ฌ)
  5. ๊ฒฐ๊ณผ: ์˜ˆ์ธก๋œ ํด๋ž˜์Šค ๋˜๋Š” ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

3. K ๊ฐ’ ์„ ํƒ

  • K ๊ฐ’์€ KNN ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์„ฑ๋Šฅ์— ํฐ ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.
  • ์ž‘์€ K ๊ฐ’: ๋ชจ๋ธ์ด ๋ฐ์ดํ„ฐ์˜ ์ง€์—ญ์ ์ธ ํŠน์ง•์— ๋ฏผ๊ฐํ•˜๊ฒŒ ๋ฐ˜์‘ํ•˜์—ฌ ๊ณผ์ ํ•ฉ(Overfitting)๋  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํฐ K ๊ฐ’: ๋ชจ๋ธ์ด ๋ฐ์ดํ„ฐ์˜ ์ „์ฒด์ ์ธ ํŠน์ง•์„ ๋ฐ˜์˜ํ•˜์—ฌ ๊ณผ์†Œ์ ํ•ฉ(Underfitting)๋  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ ์ ˆํ•œ K ๊ฐ’ ์„ ํƒ ๋ฐฉ๋ฒ•:
    • ํ™€์ˆ˜ K ๊ฐ’: ๋ถ„๋ฅ˜ ๋ฌธ์ œ์—์„œ K๋ฅผ ํ™€์ˆ˜๋กœ ์„ค์ •ํ•˜๋ฉด ๋™์ (tie)์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (ํŠนํžˆ ์ด์ง„ ๋ถ„๋ฅ˜ ๋ฌธ์ œ)
    • ๊ต์ฐจ ๊ฒ€์ฆ (Cross-Validation): ๋‹ค์–‘ํ•œ K ๊ฐ’์— ๋Œ€ํ•ด ๊ต์ฐจ ๊ฒ€์ฆ์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ์ตœ์ ์˜ K ๊ฐ’์„ ์ฐพ์Šต๋‹ˆ๋‹ค.
    • Elbow Method: K ๊ฐ’์„ ๋ณ€ํ™”์‹œํ‚ค๋ฉด์„œ ๋ชจ๋ธ์˜ ์„ฑ๋Šฅ์„ ํ‰๊ฐ€ํ•˜๊ณ , ์„ฑ๋Šฅ ๋ณ€ํ™”๊ฐ€ ๋‘”ํ™”๋˜๋Š” ์ง€์ ์„ ์ตœ์ ์˜ K ๊ฐ’์œผ๋กœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

4. ์žฅ๋‹จ์ 

  • ์žฅ์ :
    • ๊ตฌํ˜„์ด ๊ฐ„๋‹จํ•˜๊ณ  ์ดํ•ดํ•˜๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค.
    • ๋ณ„๋„์˜ ํ›ˆ๋ จ ๋‹จ๊ณ„๊ฐ€ ํ•„์š” ์—†์Šต๋‹ˆ๋‹ค.
    • ๋น„์„ ํ˜• ๋ฐ์ดํ„ฐ์—๋„ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.
    • ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€์— ์œ ์—ฐํ•˜๊ฒŒ ๋Œ€์ฒ˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋‹จ์ :
    • ๋ฐ์ดํ„ฐ์…‹ ํฌ๊ธฐ๊ฐ€ ํด ๊ฒฝ์šฐ ๊ณ„์‚ฐ ๋น„์šฉ์ด ๋งŽ์ด ๋“ญ๋‹ˆ๋‹ค. (๋ชจ๋“  ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ์™€์˜ ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ„์‚ฐํ•ด์•ผ ํ•จ)
    • ์ตœ์ ์˜ K ๊ฐ’์„ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.
    • ํŠน์„ฑ(feature)์˜ ์Šค์ผ€์ผ์— ๋ฏผ๊ฐํ•ฉ๋‹ˆ๋‹ค. (๊ฑฐ๋ฆฌ ๊ธฐ๋ฐ˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ฏ€๋กœ, ํŠน์„ฑ ์Šค์ผ€์ผ๋ง์ด ํ•„์š”)
    • ์ฐจ์›์˜ ์ €์ฃผ(Curse of Dimensionality) ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (ํŠน์„ฑ ์ˆ˜๊ฐ€ ๋งŽ์•„์งˆ์ˆ˜๋ก ์„ฑ๋Šฅ ์ €ํ•˜)

5. ํ™œ์šฉ ๋ถ„์•ผ

  • ์ด๋ฏธ์ง€ ์ธ์‹: ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜, ๊ฐ์ฒด ์ธ์‹
  • ์ถ”์ฒœ ์‹œ์Šคํ…œ: ์‚ฌ์šฉ์ž-์•„์ดํ…œ ๊ฐ„ ์œ ์‚ฌ๋„ ๊ธฐ๋ฐ˜ ์ถ”์ฒœ
  • ์˜๋ฃŒ ์ง„๋‹จ: ํ™˜์ž ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ์งˆ๋ณ‘ ์˜ˆ์ธก
  • ์‹ ์šฉ ํ‰๊ฐ€: ์‹ ์šฉ ์ ์ˆ˜ ์˜ˆ์ธก

6. ๊ฐœ์„  ๋ฐฉ๋ฒ•

  • ์ฐจ์› ์ถ•์†Œ (Dimensionality Reduction): PCA(Principal Component Analysis) ๋“ฑ์˜ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์„ฑ ์ˆ˜๋ฅผ ์ค„์—ฌ ๊ณ„์‚ฐ ๋น„์šฉ์„ ์ค„์ด๊ณ  ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํŠน์„ฑ ์„ ํƒ (Feature Selection): ์ค‘์š”ํ•œ ํŠน์„ฑ๋งŒ ์„ ํƒํ•˜์—ฌ ๋ชจ๋ธ์˜ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ฑฐ๋ฆฌ ๊ฐ€์ค‘์น˜ (Distance Weighting): ๊ฐ€๊นŒ์šด ์ด์›ƒ์— ๋” ํฐ ๊ฐ€์ค‘์น˜๋ฅผ ๋ถ€์—ฌํ•˜์—ฌ ์˜ˆ์ธก ์ •ํ™•๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • KD-Tree, Ball-Tree: ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ์…‹์—์„œ ํšจ์œจ์ ์ธ ์ด์›ƒ ๊ฒ€์ƒ‰์„ ์œ„ํ•ด KD-Tree ๋˜๋Š” Ball-Tree์™€ ๊ฐ™์€ ๊ณต๊ฐ„ ๋ถ„ํ•  ์ž๋ฃŒ ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

KNN์€ ๊ฐ„๋‹จํ•˜๋ฉด์„œ๋„ ๊ฐ•๋ ฅํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด์ง€๋งŒ, ๋ฐ์ดํ„ฐ์˜ ํŠน์„ฑ๊ณผ ๋ฌธ์ œ์˜ ์„ฑ๊ฒฉ์— ๋”ฐ๋ผ ์ ์ ˆํ•œ K ๊ฐ’์„ ์„ ํƒํ•˜๊ณ , ํ•„์š”ํ•œ ์ „์ฒ˜๋ฆฌ ๊ณผ์ •์„ ๊ฑฐ์น˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.