์ ๋ฒ์๋ ํ๊ท๋ ๋ฌด์์ธ์ง ๊ณต๋ถํ๊ณ , ๋จธ์ ๋ฌ๋ ์ง๋ํ์ต ๋ชจ๋ธ ์ค KNN ํ๊ท ์๊ณ ๋ฆฌ์ฆ์ ๋ํด์ ์ ๋ฆฌ๋ฅผ ํด๋ณด์๋ค. ์ด๋ฒ์๋ ํ๊ท ์๊ณ ๋ฆฌ์ฆ์ ๋ํด์ ๋ ์์๋ณด๋ ค๊ณ ํ๋ค. ๊ทธ ์ค ๊ฐ์ฅ ๊ฐ๋จํ ์ ํ ํ๊ท ์๊ณ ๋ฆฌ์ฆ์ ๋ํด์ ๊ณต๋ถ๋ฅผ ํด๋ณด์๋ค.
[์ธ๊ณต์ง๋ฅ ์์๊ฐ๊ธฐ] ๋จธ์ ๋ฌ๋ ์๊ณ ๋ฆฌ์ฆ KNN ํ๊ท - ํ๊ท์ ์ ์์ ์ญ์ฌ, SciKitLearn์ผ๋ก KNN ํ๊ทํ
์ ๋ฒ์๋ ๋จธ์ ๋ฌ๋ ๋ชจ๋ธ์ ๊ตฌํํ๋ ๊ธฐ์ด์ ์ธ ํ๋ฆ์ ๋ํด์ ๊ณต๋ถ๋ฅผ ํ๋ฉด์, ํนํ ๋จธ์ ๋ฌ๋ ์๊ณ ๋ฆฌ์ฆ ์ค ๊ฐ์ฅ ๊ฐ๋จํ๊ณ ์ฌ์ด KNN ๋ถ๋ฅ ์๊ณ ๋ฆฌ์ฆ์ ์ค์ฌ์ผ๋ก ์ ๋ฆฌ๋ฅผ ํด๋ณด์๋ค. ์ด๋ฒ์๋ KNN ํ๊ท
nyangwisdom.tistory.com
์ ํํ๊ท Linear Regression
์ ํ ํ๊ท๋ ๊ฐ๋จํ๊ณ ์ฑ๋ฅ์ด ๊ด์ฐฎ์์ ์ฒ์์ผ๋ก ๋ฐฐ์ฐ๋ ๋จธ์ ๋ฌ๋ ์๊ณ ๋ฆฌ์ฆ ์ค ํ๋๋ผ๊ณ ํ๋ค. ์ฝ๊ฒ ๋งํด ๋ฐ์ดํฐ๊ฐ ์ฃผ์ด์ก์ ๋ ์ผ์ฐจํจ์ ํํ๋ก ์ด๋ค ์ ๋ ฅ๊ฐ(x)์ ์ถ๋ ฅ๊ฐ(y)์ ๊ด๊ณ๋ฅผ ์์ธกํ๋ ๋ฐฉ๋ฒ์ด๋ผ๊ณ ํ ์ ์๋ค.
์ผ์ฐจํจ์์ ๊ตฌ์ฑ์ y = ax + b๋ก, ๊ทธ ํจ์์ ๋ชจ์์ ์ ์ํ๊ธฐ ์ํด์๋ a์ธ ๊ธฐ์ธ๊ธฐ์ b์ธ ์ ํธ๊ฐ์ด ํ์ํ๋ค.
์ ํํ๊ท๋ฅผ ํ๋ค๋ ๊ฒ์ x์ y ์ ๋ฐ์ดํฐ ๊ด๊ณ๋ฅผ ํ์ํด์ a์ธ ๊ธฐ์ธ๊ธฐ, ๋ค์๋งํด ๊ฐ์ค์น(weight)๋ฅผ ์ ํ๋๊ฒ ๋ชฉํ๋ผ๊ณ ํ ์ ์๋ค.
์ฌ์ดํท๋ฐ๊ณผ ์ ํํ๊ท
1. Linear Regression ํจํค์ง์ ์ ํํ๊ท ์๊ณ ๋ฆฌ์ฆ์ด ๊ตฌํ๋์ด ์๋ค. ๋ค๋ฅธ ์๊ณ ๋ฆฌ์ฆ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก fit๊ณผ predict method๋ฅผ ํ์ฉํ๋ค.
from sklearn.linear_model import LinearRegression
lr = LinearRegression()
lr.fit(train_input, train_target)
lr.predict([[x]])
lr.score(test_input, test_target)
- x๋ ์์์ input ๊ฐ, 2์ฐจ์ ๋ฆฌ์คํธ๋ก ์ ๊ณตํด์ผํด์ ๊ดํธ ๋๊ฐ์ ๊ฐ์ธ์ผํ๋ค.
- score๋ ์ด ์ญ์ ํ๊ท ๋ชจ๋ธ์ด๊ธฐ ๋๋ฌธ์ ๊ฒฐ์ ๊ณ์ ๊ฐ์ผ๋ก ๊ณ์ฐ๋๋ค.
2. ๋ชจ๋ธ ํ๋ผ๋ฏธํฐ ํ์ธ๋ฒ : ํ์ต์ํจ ์ ํํ๊ท ๋ชจ๋ธ์์ ์ฐพ์ ๊ธฐ์ธ๊ธฐ(๊ฐ์ค์น)์ ์ ํธ ๊ฐ์ lr์ ์์ฑ์ ์ ์ฅ๋์ด ์๋ค.
- coefficient, ๊ณ์, ๊ฐ์ค์น, weight ๋ค ์ ์ฌํ๊ฒ ์ฐ์ธ๋ค.
- ๋ชจ๋ธ ํ๋ผ๋ฏธํฐ๋ ๋จธ์ ๋ฌ๋์ด ์ฐพ์ ๊ฐ์ด๋ผ๋ ์๋ฏธ์์ ์ฐ์ด๋ ํํ์ผ๋ก, coef_, intercept_ ๋ชจ๋ ๋ชจ๋ธ ํ๋ผ๋ฏธํฐ์ ํด๋นํ๋ค. ๊ฒฐ๊ตญ ๋ง์ ๋จธ์ ๋ฌ๋ ์๊ณ ๋ฆฌ์ฆ์ ํ์ต๊ณผ์ ์ ์ต์ ์ ๋ชจ๋ธ ํ๋ผ๋ฏธํฐ๋ฅผ ์ฐพ๋ ๊ณผ์ ์ด๋ผ๊ณ ํ ์ ์๊ณ , ์ด ๊ณผ์ ์ ๋ชจ๋ธ ๊ธฐ๋ฐ ํ์ต์ด๋ผ๊ณ ํ๋ค.
- ๋ฐ๋ฉด, ์์ ๊ณต๋ถํ KNN์์๋ ํน๋ณํ ์ฐพ์์ผํ ๋ชจ๋ธ ํ๋ผ๋ฏธํฐ๊ฐ ์์๋ค. ์๋ํ๋ฉด ํ๋ จ ์ธํธ๋ฅผ ์ ์ฅํ๋ ๊ฒ์ด ํ๋ จ์ ์ ๋ถ์๊ธฐ ๋๋ฌธ์ด๊ณ , ์ด๋ฐ ํ์ต๊ณผ์ ์ ์ฌ๋ก๊ธฐ๋ฐํ์ต์ด๋ผ๊ณ ํ ์ ์๋ค.
# ๊ธฐ์ธ๊ธฐ๊ฐ
print(lr.coef_)
# ์ ํธ๊ฐ
print(lr.intercept_)
๋คํญ ํ๊ท
์ฐ์ ๋ ๋ฑ์ ํตํด ํ์์ ๋ฐ์ดํฐ ๋ถ์(EDA)๋ฅผ ํด๋ณด๋ฉด ์ ๋ค์ ๋ถํฌ๊ฐ ์ ํ์ด ์๋๋ผ ๊ณก์ ํ์ธ ๊ฒฝ์ฐ๋ ์กด์ฌํ๋ค. ์ด๋ฐ ๊ฒฝ์ฐ์๋ ๋คํญํ๊ท์ ๋ฐฉ์์ผ๋ก ๋ชจ๋ธ๋ง์ ํด์ผํ๋ค. ๋คํญํ๊ท๋ ๋ ๋ฆฝ๋ณ์(X)์ ์ข ์๋ณ์(y) ์ฌ์ด์ ๊ด๊ณ๊ฐ ์ง์ ํ์ด ์๋ ๋คํญ์์ ํํ๋ก ๋ชจ๋ธ๋ง ํ๋ ํ๊ท ๊ธฐ๋ฒ์ด๋ค. ์ ํํ๊ท์ ํ์ฅ ํํ๋ก, ๋๋ต์ ์ธ ๋ฐ์ดํฐ์ ๋ชจ์์๋ฅผ ๊ด์ฐฐํ๊ณ ๊ทธ๊ฒ์ด ๊ณก์ ์ด๋ผ๋ฉด 2์ฐจ ๋คํญ ํ๊ท๋ฅผ ์ ์ฉํ๋ ๋ฑ ํ๊ท ์ฐจ์๋ฅผ ๊ฒฐ์ ํ๋ ์์ด๋ค. ๋คํญํ๊ท์ ์ฌ์ดํท๋ฐ ํ์ฉ๋ฒ์ ๋ค์ ๊ธฐํ์ ์์๋ณด๊ฒ ๋ค.
์ด๋ ๊ฒ ์ ํํ๊ท๋ฅผ ํ๋ ๋ฒ๊ณผ ์ฌ์ดํท๋ฐ์ผ๋ก ์ ํํ๊ท๋ชจ๋ธ์ ํ๋ จ์ํค๊ณ ํ ์คํธํ๋ ๋ฒ์ ๋ํด์ ์์๋ณด์๋ค!