ํ๊ท(Regression)
ํ๊ท : ๊ฐ๊ฒฉ์ด๋ ํ๋ฅ ์ฒ๋ผ ์ฐ์๋ ์ค์ซ๊ฐ์ ์ ํํ ์์ธกํ๋ ๊ฒ์ ๋ชฉ์
ex) ์๊ณ์ด ๋ฐ์ดํฐ๋ฅผ ์ด์ฉํ ์ฃผ๊ฐ, ์์ฐ๋, ์ง์ ์์ธก
numpy, tensorflow, sklearn ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉ
1. Linear Regression (์ ํ ํ๊ท)
์ ํ์ ์ธ ๊ฒฝํฅ์ ๊ฐ์ง ๋ฐ์ดํฐ ์ ์ฒด๋ฅผ ๋ํ๋ผ ์ ์๋ 2์ฐจ์์ ์ง์ ์ ์์ธกํ๋ ๊ฒ
"๋ง์ ์ (ํ์ต๋ฐ์ดํฐ)๋ค์ ์ฃผ๊ณ , ์ด ์ ๋ค์ ๋ชจ๋ ๊ดํตํ ์ ์๋ค๊ณ ํ ์ ์๋ ๊ฐ์ฅ ํฉ๋ฆฌ์ ์ธ ์ง์ ์ ์ฐพ์๋ผ!"
์ข ์ ๋ณ์(dependent variable) y์ ํ๋ ์ด์์ ๋ ๋ฆฝ ๋ณ์(independent variavle) x์ฌ์ด์ ๊ด๊ณ ๋ชจ๋ธ๋ง
y = wx + b
๋ ๋ฆฝ๋ณ์ x๊ฐ 1๊ฐ๋ผ๋ฉด ๋จ์ ์ ํ ํ๊ท
from sklearn.linear_model import LinearRegression
tf.Varaible(tf.random_normal
2. Multiple Linear Regression (๋ค์ค ์ ํ ํ๊ท)
๋ค์์ x๋ก๋ถํฐ y๋ฅผ ์์ธก
์ ํํ๊ท์ ๋์ผํ๋ฐ, 2์ฐจ์์์ N์ฐจ์์ผ๋ก ๋์ด๋จ
ex) ๋ ๋ฆฝ ๋ณ์ x์ ๊ฐ์๊ฐ 3๊ฐ์ผ ๋์ ์์์ H(x) = w1x1 + w2x2 + w3x3 + b
* w : ๊ฐ์ค์น(weight) = ๊ธฐ์ธ๊ธฐ, b : ํธํฅ(bias) = ์ ํธ
3. Polynomial Regression (๋คํญ ํ๊ท)
์ ํํ๊ท์ ์ง์ ์ 2์ฐจ ํจ์ ์ด์์ผ๋ก ์์ธกํ๋ ๊ฒ
from sklearn.preprocessing import PolynomialFeatures
๋ถ๋ฅ(Classification)
๋ฐ์ดํฐ๊ฐ ์ด๋ ๋ฒ์ฃผ(Category)์ ์ํ๋์ง๋ฅผ ํ๋จํ๋ ๋ฐฉ๋ฒ
์ดํญ ๋ถ๋ฅ(Binary Classification)
2๊ฐ์ Label์ ๊ฐ๋ ๋ฐ์ดํฐ๊ฐ ๋ค์ด์์ ๋, 0 ๋๋ 1๋ก ๋ถ๋ฅ๋ฅผ ํ๋ ๊ฒ
ex) ๋ฉ์ผ์ ๋ณด๊ณ ๋์ ์ ์ ๋ฉ์ผ, ์คํธ ๋ฉ์ผ์ธ์ง๋ฅผ ํ๋จํ๋ ๋ฌธ์
ํ์ฑํ ํจ์๋ ์ฃผ๋ก Sigmoid ํจ์๋ฅผ ์ฌ์ฉ (Sigmoid ํจ์๊ฐ 0 ๋๋ 1๋ก ์ถ๋ ฅ์ ํ๊ธฐ ๋๋ฌธ)
* Sigmoid ๋์ Softmax๋ฅผ ์ฌ์ฉํ๋ ๊ฒ๋ ๊ฐ๋ฅ
๋คํญ ๋ถ๋ฅ(Multi Classification)
3๊ฐ ์ด์์ Label์ ๊ฐ๋ ๋ฐ์ดํฐ์ ๋ํ ๋ถ๋ฅ ์์
* ๋ก์ง์คํฑ ํ๊ท๋ฅผ ์ผ์ข
์ ์ธ๊ณต ์ ๊ฒฝ๋ง ๊ตฌ์กฐ๋ก ํด์ํด๋ ๋ฌด๋ฐฉ
๋ฅ๋ฌ๋ ๋คํธ์ํฌ์์ ํ์ฑํ ํจ์๋ ์ฃผ๋ก Softmax๋ฅผ ์ฌ์ฉ
๊ฐ์ค(Hypothesis) ์ธ์ฐ๊ธฐ
์ ํ ํ๊ท๋ ์ฃผ์ด์ง ๋ฐ์ดํฐ๋ก๋ถํฐ y์ x์ ๊ด๊ณ๋ฅผ ๊ฐ์ฅ ์ ๋ํ๋ด๋ ์ง์ ์ ๊ทธ๋ฆฌ๋ ์ผ
์ด๋ค ์ง์ ์ธ์ง ๊ฒฐ์ ํ๋ ๊ฒ์ w์ b์ ๊ฐ์ด๋ฏ๋ก ์ ํ ํ๊ท์์ ํด์ผํ ์ผ์ ๊ฒฐ๊ตญ ์ ์ ํ w์ b๋ฅผ ์ฐพ์๋ด๋ ์ผ
๋น์ฉ ํจ์(Cost function)
= ๋ชฉ์ ํจ์(Objective function), ์์คํจ์(Loss function) * ์๋ฒฝํ๊ฒ ๊ฐ์ ์๋ฏธ๋ ์๋๋ ํผ์ฉํด์ ์ฌ์ฉํ๊ธฐ๋ ํจ
๋จธ์ ๋ฌ๋์ w์ b๋ฅผ ์ฐพ๊ธฐ ์ํด์ ์ค์ ๊ฐ๊ณผ ๊ฐ์ค๋ก๋ถํฐ ์ป์ ์์ธก๊ฐ์ ์ค์ฐจ๋ฅผ ๊ณ์ฐํ๋ ์์ ์ธ์ฐ๊ณ , ์ด ์์ ๊ฐ์ ์ต์ํํ๋ ์ต์ ์ w์ b๋ฅผ ์ฐพ์๋
- ๋ชฉ์ ํจ์
ํจ์์ ๊ฐ์ ์ต์ํํ๊ฑฐ๋, ์ต๋ํํ๊ฑฐ๋ ํ๋ ๋ชฉ์ ์ ๊ฐ์ง ํจ์
- ๋น์ฉ ํจ์(Cost function) = ์์ค ํจ์
ํจ์์ ๊ฐ์ ์ต์ํํ๋ ๋ชฉ์ ์ ๊ฐ์ง ํจ์
ํฌ๋ก์ค์ํธ๋กํผ (categorical crossentropy)
Squared Loss์ ๋๋ถ์ด ์๋ ์์ค ํจ์ (์ ๊ฒฝ๋ง ์ถ๋ ฅ์ ํ๋ฅ ๋ก ๊ฐ์ฃผํ ์ ์๋ ๊ฒฝ์ฐ์ ์ฌ์ฉ๋๋ ์์ค ํจ์)
q์ ๋ํ์ฌ ์์ง ๋ชปํ๋ ์ํ์์, ๋ชจ๋ธ๋ง์ ํตํ์ฌ ๊ตฌํ ๋ถํฌ์ธ p๋ฅผ ํตํ์ฌ q๋ฅผ ์์ธก
์ค์ ๊ฐ๊ณผ ์์ธก๊ฐ์ด ๋ง๋ ๊ฒฝ์ฐ์๋ 0์ผ๋ก ์๋ ด, ๊ฐ์ด ํ๋ฆด๊ฒฝ์ฐ์๋ ๊ฐ์ด ์ปค์ง๋ฏ๋ก ์ค์ ๊ฐ๊ณผ ์์ธก ๊ฐ์ ์ฐจ์ด๋ฅผ ์ค์ด๊ธฐ ์ํ ์ํธ๋กํผ
๋ฒ์ฃผํ ํฌ๋ก์ค ์ํธ๋กํผ(categorical cross entropy, CCE) : ๋ชจ๋ ๋ฒ์ฃผ์ ๋ํ ํฌ๋ก์ค ์ํธ๋กํผ์ ํ๊ท ์ ๋ด๋ ๊ฒ
* ์ํธ๋กํผ
๋ถํ์ค์ฑ์ ์ฒ๋ (์ด๋ค ๋ฐ์ดํฐ๊ฐ ๋์ฌ์ง ์์ธกํ๊ธฐ ์ด๋ ค์ด ๊ฒฝ์ฐ)
์ํธ๋กํผ๊ฐ ๋๋ค = ์ ๋ณด๊ฐ ๋ง๊ณ , ํ๋ฅ ์ด ๋ฎ๋ค
ํ๊ท ์ ๊ณฑ ์ค์ฐจ(MSE)
์์ฐจ๋ค์ ์ ๊ณฑ์ ์ต์ํํ๋ ์๊ณ ๋ฆฌ์ฆ *์์ฐจ(Residual) = y-y_pred : ํ๋์ ํจ์์ ๊ฐ ๋ฐ์ดํฐ์ ์ฐจ
๋จ์ํ ์ค์ ๊ฐ๊ณผ ์์ธก๊ฐ์ ๋ํ ์ค์ฐจ๋ฅผ ํํํ๋ฉด ๋๋ ๊ฒ์ด ์๋๋ผ, ์์ธก๊ฐ์ ์ค์ฐจ๋ฅผ ์ค์ด๋ ์ผ์ ์ต์ ํ ๋ ์์ด์ด์ผ ํจ
์ค์ฐจ์ ์ ๋์ ์ธ ํฌ๊ธฐ๋ฅผ ๊ตฌํ ์๊ฐ ์์ผ๋ฏ๋ก ๋ชจ๋ ์ค์ฐจ๋ฅผ ์ ๊ณฑํ์ฌ ๋ํ๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉ
๋ฌธ์ ์ ํ์ ๋ฐ๋ผ ๋ํ์ ์ผ๋ก ์ฌ์ฉ๋๋ ์์คํจ์
์์คํจ์ | ์ฉ๋ |
์ด์ง ํฌ๋ก์ค ์ํธ๋กํผ | ์ด์ง ๋ถ๋ฅ |
๋ฒ์ฃผํ ํฌ๋ก์ค ์ํธ๋กํผ | ๋ค์ค ๋ถ๋ฅ |
ํ๊ท ์ ๊ณฑ ์ค์ฐจ | ํ๊ท |
์ตํฐ๋ง์ด์ (Optimizer)
๋น์ฉ ํจ์๋ฅผ ์ต์ํํ๋ ๋งค๊ฐ ๋ณ์์ธ w์ b์ ์ฐพ๊ธฐ ์ํ ์์
์ ์ํํ ๋ ์ฌ์ฉ๋๋ ์๊ณ ๋ฆฌ์ฆ์ด ์ตํฐ๋ง์ด์ (Optimizer) = ์ต์ ํ ์๊ณ ๋ฆฌ์ฆ
ํ๋ จ(training) ๋๋ ํ์ต(learning) : ๋จธ์ ๋ฌ๋์์ ์ตํฐ๋ง์ด์ ๋ฅผ ํตํด ์ ์ ํ w์ b๋ฅผ ์ฐพ์๋ด๋ ๊ณผ์
์ตํฐ๋ง์ด์ | ํน์ง |
ํ๋ฅ ์ ๊ฒฝ์ฌํ๊ฐ๋ฒ (Stochastic Gradient Descent) |
๋ช๋ช ๋ฐ์ดํฐ ์ํ์ ๋ฌด์์ ์ถ์ถํ์ฌ ์ผ๋ถ๋ง ๊ฒฝ์ฌ ํ๊ฐ๋ฒ์ ์ ์ฉ, ํ์ต ์๋ ๊ฐ์ |
RMSProp | ๊ธฐ์ธ๊ธฐ์ ๋ฐ๋ผ ํ์ต๋ฅ ์กฐ์ |
MoMentum | ๊ด์ฑ ๊ฐ๋ ์ถ๊ฐ |
Adam | RMSProp + MoMentum |
๊ฒฝ์ฌํ๊ฐ๋ฒ(Gradient Descent)
ํจ์ ๊ฐ์ด ๋ฎ์์ง๋ ๋ฐฉํฅ์ผ๋ก ๋ ๋ฆฝ ๋ณ์ ๊ฐ์ ๋ณํ์์ผ๊ฐ๋ ๋ฐฉ๋ฒ (์ต์ ํจ์ ๊ฐ์ ๊ฐ๋๋ก ํ๋ ๋ ๋ฆฝ ๋ณ์ ๊ฐ์ ์ฐพ๋ ๊ฒ์ด ๋ชฉ์ )
์ฐธ๊ณ https://angeloyeo.github.io/2020/08/16/gradient_descent.html
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=baek2sm&logNo=222010223220
'๊ฐ์ธ๊ณต๋ถ > Tensorflow' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
91. ๋ฅ๋ฌ๋ ๊ธฐ์ด ์ด๋ก (4)ํผ์ ํธ๋ก , ์ ๊ฒฝ๋ง (0) | 2021.12.27 |
---|---|
90. ๋ฅ๋ฌ๋ ๊ธฐ์ด ์ด๋ก (3)ํ์ฑํํจ์ (0) | 2021.12.25 |
88. Tensorflow Keras model ์ฐ์ต๋ฌธ์ (0) | 2021.12.23 |
87. ๋ฅ๋ฌ๋ ๊ธฐ์ด ์ด๋ก (1)๋จธ์ ๋ฌ๋ ์ดํดํ๊ธฐ (0) | 2021.12.22 |
86. Tensorflow Classification ์ฐ์ต๋ฌธ์ (0) | 2021.12.21 |