2.supervised learning(epoch#2)-3
TRANSCRIPT
Introduction to
Machine Learning with Python
2. Supervised Learning(3)
Honedae Machine Learning Study Epoch #2
1
Contacts
Haesun Park
Email : [email protected]
Meetup: https://www.meetup.com/Hongdae-Machine-Learning-Study/
Facebook : https://facebook.com/haesunrpark
Blog : https://tensorflow.blog
2
Book
ํ์ด์ฌ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผํ์ฉํ๋จธ์ ๋ฌ๋, ๋ฐํด์ .
(Introduction to Machine Learning with Python, Andreas
Muller & Sarah Guido์๋ฒ์ญ์์ ๋๋ค.)
๋ฒ์ญ์์ 1์ฅ๊ณผ 2์ฅ์๋ธ๋ก๊ทธ์์๋ฌด๋ฃ๋ก์ฝ์์์์ต๋๋ค.
์์์๋ํํ๋ฆฌ๋ทฐ๋ฅผ์จ๋ผ์ธ์์๋ณผ์์์ต๋๋ค.
Github:
https://github.com/rickiepark/introduction_to_ml_with_python/
3
์ปค๋์ํฌํธ๋ฒกํฐ๋จธ์
4
Linear SVM
5
๊ฒฐ์ ํ๋ฉด์๊ธฐ์ธ๊ธฐ๋ฅผ์ค์ฌ๋ง์ง์์ต๋ํํ๊ธฐ์ํด w๋ฅผ์ต์ํ
๋ง์ง์๋ฐฐ๋ฅผํ์ฉํ๋์ฌ๋๋ณ์๋ฅผ์ต์ํ
๊ฐ์ epsilon ๋์ด์์๋ง์ง์์ต๋ํํ๊ธฐ์ํด w๋ฅผ์ต์ํ
๋น์ ํํน์ฑ
6
์ปค๋๊ธฐ๋ฒkernel trick
์ด๋คํน์ฑ์์ถ๊ฐํด์ผํ ์ง๋ถ๋ถ๋ช ํ๊ณ ๋ง์ํน์ฑ์์ถ๊ฐํ๋ฉด์ฐ์ฐ๋น์ฉ์ปค์ง
์ปค๋ํจ์๋ผ๋ถ๋ฅด๋ํน๋ณํํจ์๋ฅผ์ฌ์ฉํ์ฌ๋ฐ์ดํฐํฌ์ธํธ๊ฐ์๊ฑฐ๋ฆฌ๋ฅผ๊ณ์ฐํ์ฌ
๋ฐ์ดํฐํฌ์ธํธ์ํน์ฑ์ด๊ณ ์ฐจ์์๋งคํ๋๊ฒ๊ฐ์ํจ๊ณผ๋ฅผ์ป์
๋คํญ์ปค๋
xa = ๐1, ๐2 , ๐ฅ๐ = ๐1, ๐2 ์ผ๋ (๐ฅ๐โ ๐ฅ๐)2 = (๐1๐1 + ๐2๐2)
2 =
๐12๐1
2 + 2๐1๐1๐2๐2 + ๐22๐2
2 = ๐12, 2๐1๐2, ๐2
2 โ (๐12, 2๐1๐2, ๐2
2)
RBFradial basis function ์ปค๋
exp(โ๐พ ๐ฅ๐ โ ๐ฅ๐2), ๐๐ฅ์ํ ์ผ๋ฌ๊ธ์์ ๊ฐ: ๐ถ ๐=0
โ ๐ฅ๐โ ๐ฅ๐๐
๐!
๋ฌดํํํน์ฑ๊ณต๊ฐ์ผ๋ก๋งคํํ๋ํจ๊ณผ, ๊ณ ์ฐจํญ์ผ์๋กํน์ฑ์ค์์ฑ์๋จ์ด์ง
7
SVM ์ดํดํ๊ธฐ
์ปค๋๊ธฐ๋ฒ์์ ์ฉํ SVM์ โ์ปค๋ SVMโ ํน์๊ทธ๋ฅ โSVMโ์ผ๋ก๋ถ๋ฆ ๋๋ค.
Scikit-Learn์ SVC, SVR ํด๋์ค๋ฅผ์ ๊ณตํฉ๋๋ค.
ํด๋์ค๊ฒฝ๊ณ์์์นํ๋ฐ์ดํฐํฌ์ธํธ๋ฅผ
์ํฌํธ๋ฒกํฐ๋ผ๋ถ๋ฆ ๋๋ค.
RBF ์ปค๋์๊ฐ์ฐ์์Gaussian ์ปค๋์ด๋ผ๊ณ ๋๋ถ๋ฆ ๋๋ค.
8์ ํด๋ฆฌ๋์๊ฑฐ๋ฆฌ
์ปค๋์ํญ(gamma), ๐0~๐โโ = 1~0
๐พ๊ฐ์์์๋ก์ํ์์ํฅ๋ฒ์์ปค์ง
๐พ =1
2๐2์ผ๋ ๐๋ฅผ์ปค๋์ํญ์ด๋ผ๋ถ๋ฆ
exp(โ๐พ ๐ฅ๐ โ ๐ฅ๐2)
SVC + forge dataset
9
์ํฌํธ๋ฒกํฐ
๋งค๊ฐ๋ณ์ํ๋
10
small gamma
less complex
large gamma
more complex
small C
ํฐ์ ์ฝ, ๊ณผ์์ ํฉ
large C
์์์ ์ฝ, ๊ณผ๋์ ํฉ
SVC + cancer dataset
11
C=1, gamma=1/n_features
๊ณผ๋์ ํฉ
cancer ๋ฐ์ดํฐ์ ์๋ฐ์ดํฐ์ค์ผ์ผ
SVM์ํน์ฑ์๋ฒ์์ํฌ๊ฒ๋ฏผ๊ฐํจ
๋ฐ์ดํฐ์ ์ฒ๋ฆฌ
MinMaxScaler : ๐ โmin(๐)
max ๐ โmin(๐), 0 ~ 1 ์ฌ์ด๋ก์กฐ์
12
SVC + ์ ์ฒ๋ฆฌ๋ฐ์ดํฐ
13
์ ์ฒ๋ฆฌ๋ํ์๋์คํ๋ ค๊ณผ์์ ํฉ๋ฉ๋๋ค.
์ ์ฝ์ํ
์ฅ๋จ์ ๊ณผ๋งค๊ฐ๋ณ์
์ฅ์
๊ฐ๋ ฅํ๋ฉฐ์ฌ๋ฌ์ข ๋ฅ์๋ฐ์ดํฐ์ ์์ ์ฉ๊ฐ๋ฅํฉ๋๋ค.
ํน์ฑ์ด์ ์๋์๋๋ณต์กํ๊ฒฐ์ ๊ฒฝ๊ณ๋ง๋ฆ๋๋ค(์ปค๋ ํธ๋ฆญ).
ํน์ฑ์ด๋ง์๋์๋์์๋ํฉ๋๋ค.
SVC/SVR(libsvm), LinearSVC/LinearSVR(liblinear)
๋จ์
์ํ์ด๋ง์๊ฒฝ์ฐํ๋ จ์๋๊ฐ๋๋ฆฌ๊ณ ๋ฉ๋ชจ๋ฆฌ๋ฅผ๋ง์ด์ฌ์ฉํฉ๋๋ค(>100,000).
๋ฐ์ดํฐ์ ์ฒ๋ฆฌ์๋งค๊ฐ๋ณ์์ ๋ฏผ๊ฐํฉ๋๋ค.(๋๋ค ํฌ๋ ์คํธ, ๊ทธ๋๋์ธํธ๋ถ์คํ )
๋ถ์ํ๊ธฐ์ด๋ ต๊ณ ๋น์ ๋ฌธ๊ฐ์๊ฒ ์ค๋ช ํ๊ธฐ์ด๋ ต์ต๋๋ค.
๋งค๊ฐ๋ณ์
C, gamma, coef0(๋คํญ, ์๊ทธ๋ชจ์ด๋), degree(๋คํญ)
๐๐๐๐๐๐: ๐ฅ1 โ ๐ฅ2, ๐๐๐๐ฆ: ๐พ ๐ฅ1 โ ๐ฅ2 + ๐ ๐ , ๐ ๐๐๐๐๐๐: tanh(๐พ ๐ฅ1 โ ๐ฅ2 + ๐) 14
์ ๊ฒฝ๋งneural network
15
ํผ์ ํธ๋ก perceptron
1957๋ ์ํ๋ํฌ๋ก์ ๋ธ๋ผํธ๊ฐ๋ฐํํ์์ต๋๋ค.
์ข ์ข ๋ด๋ด๋คํธ์ํฌ๋ฅผ๋ฉํฐ๋ ์ด์ดํผ์ ํธ๋ก multilayer perceptron์ผ๋ก๋๋ถ๋ฆ ๋๋ค.
์ฌ์ดํท๋ฐ์ sklearn.linear_model.Perceptron ํด๋์ค๋ฅผ์ ๊ณตํ๋ค๊ฐ 0.18 ๋ฒ์ ์์
MLPClassifier, MLPRegressor ์ถ๊ฐ๋์์ต๋๋ค.
16์ ๋ ฅ๋ ์ด์ด
์ถ๋ ฅ๋ ์ด์ด
์ ํ๋ชจ๋ธ์์ผ๋ฐํ
๐ฆ = ๐ค 0 ร ๐ฅ 0 + ๐ค 1 ร ๐ฅ 1 + โฏ+ ๐ค ๐ ร ๐ฅ ๐ + ๐
17
๊ฐ์ค์น
์ ๋
์ ๊ฒฝ๋ง๊ทธ๋ฆผ์์ํธํฅ์ดํํ๋์ง์๋๊ฒฝ์ฐ๊ฐ์ข ์ข ์์ต๋๋ค.
๋ค์ธตํผ์ ํธ๋ก
h 0 = ๐ค 0,0 ร ๐ฅ 0 + ๐ค 1,0 ร ๐ฅ 1 + ๐ค 2,0 ร ๐ฅ 2 + ๐ค 3,0 ร ๐ฅ 3 + ๐ 0
h 0 = ๐ค 0,1 ร ๐ฅ 0 + ๐ค 1,1 ร ๐ฅ 1 + ๐ค 2,1 ร ๐ฅ 2 + ๐ค 3,1 ร ๐ฅ 3 + ๐ 1
h 0 = ๐ค 0,2 ร ๐ฅ 0 + ๐ค 1,2 ร ๐ฅ 1 + ๐ค 2,2 ร ๐ฅ 2 + ๐ค 3,2 ร ๐ฅ 3 + ๐ 2
๐ฆ = ๐ฃ 0 ร โ[0] + ๐ฃ 1 ร โ 1 + ๐ฃ 2 ร โ 2 + ๐
18
Naming
์์ ์ฐ๊ฒฐ๋ด๋ด๋คํธ์ํฌ
(Fully Connected Neural Network)
๋ด์ค๋คํธ์ํฌ
(Dense Network)
๋ฉํฐ๋ ์ด์ดํผ์ ํธ๋ก
(Multi-Layer Perceptron)
ํผ๋ํฌ์๋๋ด๋ด๋คํธ์ํฌ
(Feed Forward Neural Network)
๋ฅ๋ฌ๋
(Deep Learning)
19
๋ด๋ฐํน์์ ๋unit์ผ๋ก๋ถ๋ฆฝ๋๋ค.
(๋๋ฌผ์๋์์ ํ๊ด๋ จ์ด์์ต๋๋ค)
๋ค์ธตํผ์ ํธ๋ก
h 0 = tanh(๐ค 0,0 ร ๐ฅ 0 + ๐ค 1,0 ร ๐ฅ 1 + ๐ค 2,0 ร ๐ฅ 2 + ๐ค 3,0 ร ๐ฅ 3 + ๐ 0 )
h 0 = tanh(๐ค 0,1 ร ๐ฅ 0 + ๐ค 1,1 ร ๐ฅ 1 + ๐ค 2,1 ร ๐ฅ 2 + ๐ค 3,1 ร ๐ฅ 3 + ๐ 1 )
h 0 = tanh(๐ค 0,2 ร ๐ฅ 0 + ๐ค 1,2 ร ๐ฅ 1 + ๐ค 2,2 ร ๐ฅ 2 + ๐ค 3,2 ร ๐ฅ 3 + ๐ 2 )
๐ฆ = ๐ฃ 0 ร โ[0] + ๐ฃ 1 ร โ 1 + ๐ฃ 2 ร โ 2 + ๐
20
์ด์ง๋ถ๋ฅ์ผ๊ฒฝ์ฐ์๊ทธ๋ชจ์ด๋๋ค์ค๋ถ๋ฅ์ผ๊ฒฝ์ฐ์ํํธ๋งฅ์คํจ์์ฌ์ฉ
๋น์ ํํ์ฑํํจ์
๋น์ฉํจ์
๋ก์ง์คํฑํ๊ท์๋ง์ฐฌ๊ฐ์ง๋ก๋ก์ง์คํฑ๋น์ฉํจ์(์ด์ง๋ถ๋ฅ)๋ํฌ๋ก์ค์ํธ๋กํผ
๋น์ฉํจ์(๋ค์ค๋ถ๋ฅ)๋ฅผ์ฌ์ฉํฉ๋๋ค.
๋ชจ๋ธํจ์๊ฐ๋น์ ํ์ด๋ฏ๋ก์ต์ ๊ฐ์ํด์์ ์ผ๋ก๊ณ์ฐํ์ง๋ชปํด๊ฒฝ์ฌํ๊ฐ๋ฒgradient
descent ๊ณ์ด์์๊ณ ๋ฆฌ์ฆ์์ฆ๊ฒจ์ฌ์ฉํฉ๋๋ค.
๊ฐ๊ฐ์ค์น w์๋ํด๋น์ฉํจ์๋ฅผ๋ฏธ๋ถํ์ฌ๊ธฐ์ธ๊ธฐ์๋์ชฝ์ผ๋ก์กฐ๊ธ์ฉ(learning_rate)
์ด๋ํฉ๋๋ค.
๋น์ฉํจ์๋ฅผ์ง์ w์๋ํด๋ฏธ๋ถํ๋๋์ ์ฒด์ธ๋ฃฐ์์ด์ฉํด๋ฏธ๋ถ๊ฐ(๊ทธ๋๋์ธํธ)์
๋์ ํ์ฌ๊ณฑํด๊ฐ๋๋ค(์ญ์ ํbackpropagation)
21
โ
๐=1
๐
๐ฆ๐๐๐ ๐ฆ
๐ ๐ฆ
๐๐ค=
๐ ๐ฆ
๐๐ขโ ๐๐ข
๐๐ค
ํ์ฑํํจ์activation function
์๋์ ๋์๊ฐ์ค์นํฉ์๊ฒฐ๊ณผ์๋น์ ํ์ฑ์์ฃผ์
๋ ๋ฃจReLU, ํ์ดํผ๋ณผ๋ฆญํ์ ํธtanh, ์๊ทธ๋ชจ์ด๋sigmoid
22
๊ธฐ์ธ๊ธฐ๊ฐ 0์๊ฐ๊น์์ง๋๋ค.
x>0 ๊ทธ๋๋์ธํธ๋ 1
x=0 (sub)๊ทธ๋๋์ธํธ๋ 0
x<0 ๊ทธ๋๋์ธํธ๋ 0
(์ฌ๋ฌ๋ณ์ข ๋ฑ์ฅ)
๐๐ฆ
๐๐ค=
๐๐ฆ
๐๐ขโ ๐๐ข
๐๐ค
MLPClassifier + two_moons
23
hidden_layer_sizes=[100],
activation=โreluโ
Limited BFGS
์์ฌ๋ดํด๋ฐฉ๋ฒ
์๋์ ๋๊ฐ์ = 10
24
๋ ์ด์ด์ถ๊ฐ, tanh ํ์ฑํํจ์
25
L2 ๊ท์ ๋งค๊ฐ๋ณ์ alpha
26
๊ธฐ๋ณธ๊ฐ
๋ฎ์๊ท์ ๋์๊ท์
์ ๊ฒฝ๋ง์๋ณต์ก๋
์๋์ธต์์๊ฐ๋ง์์๋ก,
์๋์ธต์์ ๋๊ฐ์๊ฐ๋ง์์๋ก,
๊ท์ ๊ฐ๋ฎ์์๋ก๋ณต์ก๋๊ฐ์ฆ๊ฐ๋จ
๋ชจ๋ธํ๋ จ์ํ๋ จ์ํ๋ง๋ค์๋์ธต์์ ๋์์ผ๋ถ๋ฅผ๋๋คํ๊ฒ์๋์ํค์ง์์
๋ง์น์ฌ๋ฌ๊ฐ์์ ๊ฒฝ๋ง์์์๋ธํ๋๊ฒ๊ฐ์๋๋กญ์์dropout์ด์ ๊ฒฝ๋ง์์๊ณผ๋์ ํฉ
๋ฐฉ์งํ๋๋ํ์ ์ธ๋ฐฉ๋ฒ scikit-learn์์ถ๊ฐ๋ ์์
27
๋๋ค์ด๊ธฐํ
๋ชจ๋ธ์ํ๋ จํ ๋๊ฐ์ค์น๋ฅผ๋ฌด์์๋ก์ด๊ธฐํ
๋ชจ๋ธ์ํฌ๊ธฐ์๋ณต์ก๋๊ฐ๋ฎ์ผ๋ฉด์ํฅ์๋ฏธ์น ์์์
28
๊ฐ์ค์น์ด๊ธฐํ๋ฐฉ๋ฒ
Scikit-Learn์์๋ Glorot ์ด๊ธฐํ๋ฐฉ์์์ฌ์ฉํ์ฌ๊ฐ์ค์น์ํธํฅ์๋ชจ๋
์ด๊ธฐํํฉ๋๋ค.
์๊ทธ๋ชจ์ด๋ํจ์: โ2
๐๐๐๐๐ข๐ก๐ +๐๐๐ข๐ก๐๐ข๐ก๐ ~ +
2
๐๐๐๐๐ข๐ก๐ +๐๐๐ข๐ก๐๐ข๐ก๐ ์๊ท ๋ฑ๋ถํฌ
tanh, relu ํจ์: โ6
๐๐๐๐๐ข๐ก๐ +๐๐๐ข๐ก๐๐ข๐ก๐ ~ +
6
๐๐๐๐๐ข๐ก๐ +๐๐๐ข๐ก๐๐ข๐ก๐ ์๊ท ๋ฑ๋ถํฌ
* Xavier ์ด๊ธฐํ
์๊ทธ๋ชจ์ด๋: ยฑ6
๐๐๐๐๐ข๐ก๐ +๐๐๐ข๐ก๐๐ข๐ก๐ tanh: ยฑ4
6
๐๐๐๐๐ข๐ก๐ +๐๐๐ข๐ก๐๐ข๐ก๐ relu: ยฑ 2
6
๐๐๐๐๐ข๐ก๐ +๐๐๐ข๐ก๐๐ข๐ก๐
29
MLPClassifier + cancer dataset
์ ๊ฒฝ๋ง์์๋๋ฐ์ดํฐ์๋ฒ์ฃผ์๋ฏผ๊ฐํจ
30
ํ๊ท ์ด 0์ด๊ณ , ๋ถ์ฐ์ด 1์ธํ์ค์ ๊ท๋ถํฌํ์ค์ ์๋๋ z ์ ์StandardScaler
MLPClassifier + adam
31
์ต๋๋ฐ๋ณตํ์๋๋ฌ(๊ธฐ๋ณธ๊ฐ 200)
solver=โadamโ (Adaptive Moment Estimation)
์ ๊ฒฝ๋ง์๊ฐ์ค์น๊ฒ์ฌ
32
๋ฐ์์๋กํฐ๊ฐ์ ๋ ฅ์ธต๊ณผ์๋์ธต์ฌ์ด์๊ฐ์ค์น
์๋์ธต๊ณผ์ถ๋ ฅ์ธต์ฌ์ด์๊ฐ์ค์น๋ํด์ํ๊ธฐ๋์ด๋ ต์ต๋๋ค.
๋์ค์ํ๋ค๊ณ ํ๋จ๋จ
DL framework landscape
33
+
PyTorch
Caffe2(Python)
lasagna
Pythonโ17 Mar. KDnuggets
Wrapper
์ฅ๋จ์ ๊ณผ๋งค๊ฐ๋ณ์
์ฅ์
์ถฉ๋ถํ์๊ฐ๊ณผ๋ฐ์ดํฐ๊ฐ์์ผ๋ฉด๋งค์ฐ๋ณต์กํ๋ชจ๋ธ์๋ง๋ค์์์ต๋๋ค.
์ข ์ข ๋ค๋ฅธ์๊ณ ๋ฆฌ์ฆ์ ์๋ํ๋์ฑ๋ฅ์๋ฐํํฉ๋๋ค(์์ฑ์ธ์, ์ด๋ฏธ์ง๋ถ๋ฅ, ๋ฒ์ญ๋ฑ)
๋จ์
๋ฐ์ดํฐ์ ์ฒ๋ฆฌ์๋ฏผ๊ฐํฉ๋๋ค(๋ฐฐ์น ์ ๊ทํ).
์ด์ข ์๋ฐ์ดํฐํ์ ์ผ๊ฒฝ์ฐํธ๋ฆฌ๋ชจ๋ธ์ด๋๋์์์์ต๋๋ค.
๋งค๊ฐ๋ณ์ํ๋์ด๋งค์ฐ์ด๋ ต์ต๋๋ค(ํ์ต๋ ๋ชจ๋ธ์ฌ์ฌ์ฉ).
Scikit-Learn์์ฝ๋ณผ๋ฃจ์ convolution์ด๋๋ฆฌ์ปค๋ฐํธrecurrent ์ ๊ฒฝ๋ง์์ ๊ณตํ์ง์์ต๋๋ค.
๋งค๊ฐ๋ณ์
solver=[โadamโ, โsgdโ, โlbfgsโ],
sgd์ผ๊ฒฝ์ฐ momentum + nesterovs_momentum
alpha(L2 ๊ท์ )
34
๐ผ โ โ ๊ท์ โ ๐ค โ๐ผ โ โ ๊ท์ โ ๐ค โ
์ ๊ฒฝ๋ง์๋ณต์ก๋์๊ถ์ฅ์ค์
100๊ฐ์ํน์ฑ๊ณผ 100๊ฐ์์๋์ ๋, 1๊ฐ์์ถ๋ ฅ์ ๋ = 10,100๊ฐ์๊ฐ์ค์น
+ 100๊ฐ์์ ๋์๊ฐ์ง์๋์ธต์ถ๊ฐ 10,000๊ฐ์๊ฐ์ค์น์ฆ๊ฐ
๋ง์ฝ 1000๊ฐ์ ๋์๊ฐ์ง์๋์ธต์ด๋ผ๋ฉด 101,000 + 1,000,000 = 1,101,000๊ฐ
solver์๊ธฐ๋ณธ๊ฐ์ โadamโ์ผ๋ก๋ฐ์ดํฐ์ค์ผ์ผ์์กฐ๊ธ๋ฏผ๊ฐํฉ๋๋ค.("The Marginal Value of Adaptive Gradient Methods in Machine Learning," A. C. Wilson et al. (2017), ์์
Adam, RMSProp ๋ฑ์ด๋ณด์ฌ์คํ์์ ์ธ๊ฒฐ๊ณผ๋ก๋ชจ๋ฉํ ๋ฐฉ์์ํจ๊ป๊ณ ๋ คํด์ผํฉ๋๋ค.)
โlbfgsโ๋์์ ์ ์ด์ง๋ง๊ท๋ชจ๊ฐํฐ๋ชจ๋ธ์ด๋๋๋์๋ฐ์ดํฐ์ ์์๋์๊ฐ์ด์ค๋
๊ฑธ๋ฆฝ๋๋ค.
โsgdโ๋ โmomentumโ๊ณผ โnesterov_momentumโ ์ต์ ๊ณผํจ๊ป์ฌ์ฉํฉ๋๋ค.35
๋ชจ๋ฉํ
๋ชจ๋ฉํ ์๊ณ ๋ฆฌ์ฆ์์ด์ ๊ทธ๋๋์ธํธ๊ฐ์๊ฐ์๋์๊ฐ์ด์๊ฐํ์ฌ์ ์ญ์ต์ ๊ฐ์
๋ฐฉํฅ์ผ๋ก๋๋น ๋ฅด๊ฒ์๋ ดํ๊ฒ๋ง๋ญ๋๋ค.
momentum ๋งค๊ฐ๋ณ์๋์ผ์ข ์๋ํผ์๊ฐ์์ญํ ์ํฉ๋๋ค.
๐ฃ๐ก+1 = ๐๐ฃ๐ก โ ๐๐ ๐๐ก
๐๐ก+1 = ๐๐ก + ๐ฃ๐ก+1
36
learning_ratemomentum
๋ค์คํ ๋กํ๋ชจ๋ฉํ
๋ค์คํ ๋กํ๋ชจ๋ฉํ ์๋ชจ๋ฉํ ๋ฐฉ์์ผ๋ก์งํํํ์๊ทธ๋๋์ธํธ๋ฅผ๊ณ์ฐํ์ฌํ์ฌ์
์ ์ฉํฉ๋๋ค.
๐ฃ๐ก+1 = ๐๐ฃ๐ก โ ๐๐ ๐๐ก + ๐๐ฃ๐ก
๐๐ก+1 = ๐๐ก + ๐ฃ๐ก+1
์ค์ ๊ตฌํ์์๋์์ ๊ทธ๋๋์ธํธ๋ฅผ๊ณ์ฐํ๋๋์ ๋ชจ๋ฉํ ๋ฐฉ์์๋๋ฒ์ ์ฉํ์ฌ
๋ค์คํ ๋กํ์๊ทผ์ฌ๊ฐ์๊ตฌํฉ๋๋ค.(https://tensorflow.blog/2017/03/22/momentum-nesterov-momentum/ ์ฐธ์กฐ)
37
๋ถ๋ฅ์๋ถํ์ค์ฑ์ถ์
38
๋ถ๋ฅ์๋ถํ์ค์ฑ
์ด๋คํ ์คํธํฌ์ธํธ์๋ํด์์ธกํด๋์ค๋ฟ๋ง์๋๋ผ์ผ๋ง๋๊ทธํด๋์ค์์
ํ์ ํ๋์ง๊ฐ์ค์ํ ๋๊ฐ์์
๋๋ถ๋ถ decision_function ๊ณผ predict_proba ๋ฉ์๋๋์คํ๋๋์ ๊ณตํจ
39
๊ฒฐ์ ํจ์
40
์ด์ง๋ถ๋ฅ์์ decision_function() ๋ฐํ๊ฐ์ํฌ๊ธฐ (n_samples,)
๐ฆ = ๐ค 0 ร ๐ฅ 0 + ๐ค 1 ร ๐ฅ 1 + โฏ+ ๐ค ๐ ร ๐ฅ ๐ + ๐
๊ฒฐ์ ๊ฒฝ๊ณ + decision_function
41
์์ธกํ๋ฅ
predict_proba() ๋ฐํ๊ฐ์ํฌ๊ธฐ (n_samples, n_classes)
๊ฐ์ฅํฐํ๋ฅ ๊ฐ์๊ฐ์งํด๋์ค๋ฅผ์์ธกํด๋์ค๋ก์ ํํจ
42
๊ฒฐ์ ๊ฒฝ๊ณ + predict_proba
43
๋ค์ค๋ถ๋ฅ + decision_function
๋ฐํ๊ฐ์ํฌ๊ธฐ๋ (n_samples, n_classes)
๊ฐ์ฅํฐ๊ฐ์ด์์ธกํด๋์ค๊ฐ๋จ
44
๋ค์ค๋ถ๋ฅ + predict_proba
๋ฐํ๊ฐ์ํฌ๊ธฐ๋ (n_samples, n_classes)
45
์์ฝ๋ฐ์ ๋ฆฌ
46
์๊ณ ๋ฆฌ์ฆ์ ๋ฆฌ
์ต๊ทผ์ ์ด์
์์๋ฐ์ดํฐ์ ์ผ๊ฒฝ์ฐ, ๊ธฐ๋ณธ๋ชจ๋ธ๋ก์์ข๊ณ ์ค๋ช ํ๊ธฐ์ฌ์.
์ ํ๋ชจ๋ธ
์ฒซ๋ฒ์งธ๋ก์๋ํ ์๊ณ ๋ฆฌ์ฆ. ๋์ฉ๋๋ฐ์ดํฐ์ ๊ฐ๋ฅ. ๊ณ ์ฐจ์๋ฐ์ดํฐ์๊ฐ๋ฅ.
๋์ด๋ธ๋ฒ ์ด์ฆ
๋ถ๋ฅ๋ง๊ฐ๋ฅ. ์ ํ๋ชจ๋ธ๋ณด๋คํจ์ฌ๋น ๋ฆ. ๋์ฉ๋๋ฐ์ดํฐ์ ๊ณผ๊ณ ์ฐจ์๋ฐ์ดํฐ์๊ฐ๋ฅ.
์ ํ๋ชจ๋ธ๋ณด๋ค๋์ ํํจ.
๊ฒฐ์ ํธ๋ฆฌ
๋งค์ฐ๋น ๋ฆ. ๋ฐ์ดํฐ์ค์ผ์ผ์กฐ์ ์ดํ์์์. ์๊ฐํํ๊ธฐ์ข๊ณ ์ค๋ช ํ๊ธฐ์ฌ์.
47
๋๋คํฌ๋ ์คํธ
๊ฒฐ์ ํธ๋ฆฌํ๋๋ณด๋ค๊ฑฐ์ํญ์์ข์์ฑ๋ฅ์๋. ๋งค์ฐ์์ ์ ์ด๊ณ ๊ฐ๋ ฅํจ.
๋ฐ์ดํฐ์ค์ผ์ผ์กฐ์ ํ์์์. ๊ณ ์ฐจ์ํฌ์๋ฐ์ดํฐ์๋์์๋ง์.
๊ทธ๋๋์ธํธ๋ถ์คํ
๋๋คํฌ๋ ์คํธ๋ณด๋ค์กฐ๊ธ๋์ฑ๋ฅ์ด์ข์. ๋๋คํฌ๋ ์คํธ๋ณด๋ค ํ์ต์๋๋ฆฌ๋์์ธก์
๋น ๋ฅด๊ณ ๋ฉ๋ชจ๋ฆฌ๋ฅผ์กฐ๊ธ์ฌ์ฉ. ๋๋คํฌ๋ ์คํธ๋ณด๋ค ๋งค๊ฐ๋ณ์ํ๋์ด๋ง์ดํ์ํจ.
์ํฌํธ๋ฒกํฐ๋จธ์
๋น์ทํ์๋ฏธ์ํน์ฑ์ผ๋ก์ด๋ค์ง์ค๊ฐ๊ท๋ชจ๋ฐ์ดํฐ์ ์์๋ง์.
๋ฐ์ดํฐ์ค์ผ์ผ์กฐ์ ํ์. ๋งค๊ฐ๋ณ์์๋ฏผ๊ฐ.
์ ๊ฒฝ๋ง
ํน๋ณํ๋์ฉ๋๋ฐ์ดํฐ์ ์์ ๋งค์ฐ๋ณต์กํ๋ชจ๋ธ์๋ง๋ค์์์.
๋งค๊ฐ๋ณ์์ ํ๊ณผ๋ฐ์ดํฐ์ค์ผ์ผ์๋ฏผ๊ฐ. ํฐ๋ชจ๋ธ์ํ์ต์ด์ค๋๊ฑธ๋ฆผ.
48