๊ด€๋ฆฌ ๋ฉ”๋‰ด

yeon's ๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป

KNN (K-Nearest Neighbor) ๋ณธ๋ฌธ

Computer ๐Ÿ’ป/Machine Learning

KNN (K-Nearest Neighbor)

yeon42 2021. 11. 9. 21:07
728x90

https://bkshin.tistory.com/entry/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-6-K-%EC%B5%9C%EA%B7%BC%EC%A0%91%EC%9D%B4%EC%9B%83KNN?category=1057680 

 

๋จธ์‹ ๋Ÿฌ๋‹ - 6. K-์ตœ๊ทผ์ ‘ ์ด์›ƒ(KNN)

K-์ตœ๊ทผ์ ‘ ์ด์›ƒ(K-Nearest Neighbor, KNN)์€ ์ง€๋„ ํ•™์Šต ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ๊ต‰์žฅํžˆ ์ง๊ด€์ ์ด๊ณ  ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. ์–ด๋–ค ๋ฐ์ดํ„ฐ๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ๊ทธ ์ฃผ๋ณ€(์ด์›ƒ)์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ดํŽด๋ณธ ๋’ค ๋” ๋งŽ์€ ๋ฐ์ดํ„ฐ๊ฐ€ ํฌํ•จ๋˜์–ด

bkshin.tistory.com

์œ„ ๋ธ”๋กœ๊ทธ๋ฅผ ํ•„์‚ฌํ•˜๋ฉฐ ๊ณต๋ถ€

 

* ๋ชจ๋“  ํ…์ŠคํŠธ์™€ ์ด๋ฏธ์ง€์˜ ์ถœ์ฒ˜๋Š” ์œ„ ๋ธ”๋กœ๊ทธ์ž…๋‹ˆ๋‹ค.

 


 

 

 

KNN(K-Nearest Neighbor)์€ ์ง€๋„ํ•™์Šต ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ค‘ ํ•˜๋‚˜

- ์–ด๋–ค ๋ฐ์ดํ„ฐ๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ๊ทธ ์ฃผ๋ณ€(์ด์›ƒ)์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ดํŽด๋ณธ ๋’ค ๋” ๋งŽ์€ ๋ฐ์ดํ„ฐ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ๋Š” ๋ฒ”์ฃผ๋กœ ๋ถ„๋ฅ˜ํ•˜๋Š” ๋ฐฉ์‹

 

์ถœ์ฒ˜: towardsdatascience

 

์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ (๋นจ๊ฐ„ ์ )์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ด๋ฅผ Class A๋กœ ๋ถ„๋ฅ˜ํ• ์ง€, Class B๋กœ ๋ถ„๋ฅ˜ํ• ์ง€๋ฅผ ํŒ๋‹จํ•˜๋Š” ๋ฌธ์ œ

k=3์ผ ๋•Œ, ์ฆ‰ ์•ˆ ์ชฝ ์›์„ ์‚ดํŽด๋ณด์ž.

- k=3์ด๋ผ๋Š” ๋œป์€ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ฃผ๋ณ€์˜ 3๊ฐœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณธ ๋’ค, 3๊ฐœ์˜ ์ฃผ๋ณ€ ๋ฐ์ดํ„ฐ๊ฐ€ ๋” ๋งŽ์ด ํฌํ•จ๋˜์–ด ์žˆ๋Š” ๋ฒ”์ฃผ๋กœ ๋ถ„๋ฅ˜ํ•˜๊ฒ ๋‹ค๋Š” ๋œป์ด๋‹ค.

- ๋นจ๊ฐ„ ์  ์ฃผ๋ณ€์— ๋…ธ๋ž€์ƒ‰ ์ (Class A) 1๊ฐœ์™€ ๋ณด๋ผ์ƒ‰ ์ (Class B) 2๊ฐœ๊ฐ€ ์žˆ๋‹ค.

- ๋”ฐ๋ผ์„œ k=3์ผ ๋•Œ๋Š” ํ•ด๋‹น ๋ฐ์ดํ„ฐ๊ฐ€ Class B(๋ณด๋ผ์ƒ‰ ์ ) ์œผ๋กœ ๋ถ„๋ฅ˜๋œ๋‹ค.

 

k=6์ผ ๋•Œ, ์ฆ‰ ๋ฐ”๊นฅ์ชฝ ์›์„ ๋ณด์ž.

- ์› ์•ˆ์— ๋…ธ๋ž€์ƒ‰ ์  4๊ฐœ์™€ ๋ณด๋ผ์ƒ‰ ์  2๊ฐœ๊ฐ€ ์žˆ๋‹ค. -> k=6์ผ ๋•Œ๋Š” ๋…ธ๋ž€์ƒ‰ ์ ์œผ๋กœ ใ…‚๋ˆ„๋ฅ˜

 

KNN์€ K๋ฅผ ์–ด๋–ป๊ฒŒ ์ •ํ•˜๋А๋ƒ์— ๋”ฐ๋ผ ๊ฒฐ๊ณผ ๊ฐ’์ด ๋ฐ”๋€” ์ˆ˜ ์žˆ๋‹ค.

- K๊ฐ€ ๋„ˆ๋ฌด ์ž‘์•„์„œ๋„, ๋„ˆ๋ฌด ์ปค์„œ๋„ ์•ˆ ๋œ๋‹ค.

- K์˜ default ๊ฐ’์€ 5 -> ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด 5๊ฐœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ถ„๋ฅ˜

- ์ผ๋ฐ˜์ ์œผ๋กœ K๋Š” ํ™€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•จ

 

 

 

 

 

Lazy Model

 

- KNN์˜ ํŠน์ง•์€ ๋”ฐ๋กœ ํ›ˆ๋ จ์ด ํ•„์š” ์—†๋‹ค๋Š” ๊ฒƒ

  (๋‹ค๋ฅธ ๋ชจ๋ธ๋“ค์€ clf.fit(x_train, y_train)์˜ ์ฝ”๋“œ๋ฅผ ํ†ตํ•ด ํ›ˆ๋ จ์‹œํ‚จ๋‹ค.

  ์ฆ‰, ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ชจ๋ธ์„ ๋งŒ๋“œ๋ก ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ๋กœ ํ…Œ์ŠคํŠธ๋ฅผ ํ•จ)

- ํ•˜์ง€๋งŒ KNN์€ ํ›ˆ๋ จ์ด ๋”ฐ๋กœ ํ•„์š”ํ•˜์ง€ ์•Š๊ณ , ๊ทธ๋ƒฅ ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š”๊ฒŒ ํ›ˆ๋ จ์˜ ์ „๋ถ€

 

ex. SVM

-> ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ Decision Boundary๋ฅผ ๋งŒ๋“ค๊ณ , ๊ทธ๋ ‡๊ฒŒ ๋งŒ๋“  Decision Boundary๋ฅผ ํ†ตํ•ด ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„๋ฅ˜ํ•จ

 

- KNN์€ ์œ„ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ๊ทธ์ œ์•ผ ์ฃผ๋ณ€์˜ K๊ฐœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๊ณ  ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„๋ฅ˜ํ•ด์ค€๋‹ค.

- ๋”ฐ๋ผ์„œ ์‚ฌ์ „ ๋ชจ๋ธ๋ง์ด ํ•„์š” x. real-time ์˜ˆ์ธก์ด ์ด๋ฃจ์–ด์ง

- ๋ชจ๋ธ์„ ๋ณ„๋„๋กœ ๊ตฌ์ถ•ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๋œป์œผ๋กœ ๊ฒŒ์œผ๋ฅธ ๋ชจ๋ธ (lazy model)์ด๋ผ๊ณ  ๋ถ€๋ฆ„

- SVM์ด๋‚˜ ์„ ํ˜• ํšŒ๊ท€๋ณด๋‹ค ๋น ๋ฆ„

 

 

 

 

 

๊ฑฐ๋ฆฌ ๊ณ„์‚ฐ

- KNN์—๋Š” ๋ฐ์ดํ„ฐ์™€ ๋ฐ์ดํ„ฐ ์‚ฌ์ด์˜ ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•˜๋Š” 2๊ฐ€์ง€ ๋ฐฉ์‹์ด ์žˆ์Œ

 

1. ์œ ํด๋ฆฌ๋“œ ๊ฑฐ๋ฆฌ (Euclidean Distance)

์ถœ์ฒ˜: cuemath

 

 

2. ๋งจํ•ดํŠผ ๊ฑฐ๋ฆฌ (Manhatten Distance)

- ์ ๊ณผ ์  ์‚ฌ์ด์˜ ์ง์„  ๊ฑฐ๋ฆฌ๊ฐ€ ์•„๋‹Œ X์ถ•, Y์ถ•์„ ๋”ฐ๋ผ ๊ฐ„ ๊ฑฐ๋ฆฌ

- ์•„๋ž˜ ์˜ˆ์‹œ๋ฅผ ๋ณด๋ฉด Route 1, Route 2, Route3๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ๊ธธ๋กœ ๊ฐ”์ง€๋งŒ

  X์ถ•์œผ๋กœ ๊ฐ„ ๊ฑฐ๋ฆฌ, Y์ถ•์œผ๋กœ ๊ฐ„ ๊ฑฐ๋ฆฌ๊ฐ€ ๋˜‘๊ฐ™์•„ ๋งจํ•ดํŠผ ๊ฑฐ๋ฆฌ๋กœ๋Š” ๋˜‘๊ฐ™์Œ

 

์ถœ์ฒ˜: friend.tistory.com

 

Comments