๋ฐ์ดํฐ ์ธํธ๋ฅผ ๋ถํ ํ๊ธฐ์ํ ์ ์ ํ ์ ๋ต์ ๋ฌด์์ ๋๊น?
๋๋ ๋ค์๊ณผ ๊ฐ์ ์ ๊ทผ ๋ฐฉ์์ ๋ํ ํผ๋๋ฐฑ์ ์์ฒญ (์ ๊ฐ์ ๊ฐ๋ณ ๋งค๊ฐ ๋ณ์์ ๋ํ test_size
๋๋ n_iter
,ํ์ง๋ง ๋ด๊ฐ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ X
, y
, X_train
, y_train
, X_test
, ๊ทธ๋ฆฌ๊ณ y_test
์ ์ ํ๊ณ ์์๊ฐ ์๋ฏธ๊ฐ์๋ ๊ฒฝ์ฐ) :
( scikit-learn ๋ฌธ์ ์์์ด ์์ ๋ฅผ ํ์ฅ )
1. ๋ฐ์ดํฐ ์ ๋ก๋
from sklearn.datasets import load_digits
digits = load_digits()
X, y = digits.data, digits.target
2. ๊ต์ก ๋ฐ ํ ์คํธ ์ธํธ๋ก ๋ถํ (์ : 80/20)
from sklearn.cross_validation import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
3. ๊ฒฌ์ ์๋ฅผ ์ ํํ์ญ์์ค
from sklearn.svm import SVC
estimator = SVC(kernel='linear')
4. ๊ต์ฐจ ๊ฒ์ฆ ๋ฐ๋ณต์๋ฅผ ์ ํํ์ญ์์ค
from sklearn.cross_validation import ShuffleSplit
cv = ShuffleSplit(X_train.shape[0], n_iter=10, test_size=0.2, random_state=0)
5. ํ์ดํผ ํ๋ผ๋ฏธํฐ ์กฐ์
ํ๋ จ ์ธํธ ์ ๊ต์ฐจ ๊ฒ์ฆ ๋ฐ๋ณต์๋ฅผ ์ ์ฉ
from sklearn.grid_search import GridSearchCV
import numpy as np
gammas = np.logspace(-6, -1, 10)
classifier = GridSearchCV(estimator=estimator, cv=cv, param_grid=dict(gamma=gammas))
classifier.fit(X_train, y_train)
6. ํ์ต ๊ณก์ ์ผ๋ก ๋๋ฒ๊ทธ ์๊ณ ๋ฆฌ์ฆ
X_train
ํ๋ จ๊ณผ ํ
์คํธ ์ธํธ๋ก ๋ฌด์์๋ก 10 ํ ๋ถํ ๋ฉ๋๋ค ( n_iter=10
). ํ๋ จ ์ ์ ๊ณก์ ์ ๊ฐ ์ง์ ์ ๋ชจ๋ธ์ด ์ฒซ i ํ๋ จ ์์ ์์ ํ๋ จ๋๊ณ ํ๊ฐ ๋ ํ๊ท 10 ์ ์
๋๋ค. ๊ต์ฐจ ๊ฒ์ฆ ์ ์ ๊ณก์ ์ ๊ฐ ์ง์ ์ ๋ชจ๋ธ์ด ์ฒซ ๋ฒ์งธ i ํ๋ จ ์์ ์์ ํ์ต๋๊ณ ํ
์คํธ ์ธํธ์ ๋ชจ๋ ์์ ์์ ํ๊ฐ ๋ ํ๊ท 10 ์ ์
๋๋ค.
from sklearn.learning_curve import learning_curve
title = 'Learning Curves (SVM, linear kernel, $\gamma=%.6f$)' %classifier.best_estimator_.gamma
estimator = SVC(kernel='linear', gamma=classifier.best_estimator_.gamma)
plot_learning_curve(estimator, title, X_train, y_train, cv=cv)
plt.show()
plot_learning_curve () ๋ ํ์ฌ ๊ฐ๋ฐ ๋ฒ์ ์ scikit-learn (0.15-git)์์ ์ฐพ์ ์ ์์ต๋๋ค.
7. ์ํ ์ธํธ์ ๋ํ ์ต์ข ํ๊ฐ
classifier.score(X_test, y_test)
7a. ์ค์ฒฉ ๊ต์ฐจ ๊ฒ์ฆ์ ์ฌ์ฉํ์ฌ ๋ชจ๋ธ ์ ํ์์ ์ค๋ฒ ํผํ ํ ์คํธ (์ ์ฒด ๋ฐ์ดํฐ ์ธํธ ์ฌ์ฉ)
from sklearn.cross_validation import cross_val_score
cross_val_score(classifier, X, y)
์ถ๊ฐ ์ง๋ฌธ : 7 ๋จ๊ณ๋ฅผ ์ค์ฒฉ ๊ต์ฐจ ๊ฒ์ฆ์ผ๋ก ๋์ฒดํ๋ ๊ฒ์ด ํฉ๋ฆฌ์ ์ ๋๊น? ๋๋ ์ค์ฒฉ ๋ cv๊ฐ 7 ๋จ๊ณ๋ฅผ ๋ณด์ํ๋ ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋์ด์ผํฉ๋๋ค.
(์ฝ๋๋ scikit-learn์์ k-fold cross validation์ผ๋ก ์๋ํ์ง๋ง shuffle & split์์๋ ์๋ํ์ง ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋ฐ๋ผ์ cv
์ฝ๋๋ฅผ ์๋ ์ํค๋ ค๋ฉด ์์ ์ฝ๋๋ฅผ ๋ณ๊ฒฝํด์ผํฉ๋๋ค)
8. ์ ์ฒด ๋ฐ์ดํฐ ์ธํธ์์ ์ต์ข ๋ชจ๋ธ ํ๋ จ
classifier.fit(X, y)
ํธ์ง : ์ด์ 7a ๋จ๊ณ ๊ฐ์ด ์์์์ ์๋ฏธ๊ฐ ์๋ค๋ ๋งน์ธ์ ๋์ํฉ๋๋ค. ๊ทธ๋์ ๋๋ ๊ทธ๊ฒ์ ์ฑํํ์ง ์์ ๊ฒ์ ๋๋ค.
๋ต๋ณ
7a ๋จ๊ณ์์ ์ํ ํ ์์ ์ด ํ์คํ์ง ์์ต๋๋ค. ์ง๊ธ ๋น์ฅ ์ดํดํ์ง๋ง ์ดํด๊ฐ๋์ง ์์ต๋๋ค.
์ค๋ช ์ ์ดํดํ๋ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. 7 ๋จ๊ณ์์ ํ๋ ์์ ์ฑ๋ฅ์ 4-6 ๋จ๊ณ๋ฅผ ํฌ๊ดํ๋ ๊ต์ฐจ ๊ฒ์ฆ ๊ฒฐ๊ณผ์ ๋น๊ตํ๋ ค๊ณ ํฉ๋๋ค.
์ด ๋น๊ต๊ฐ ์๋ฏธ๊ฐ ์๋ค๊ณ ์๊ฐํ๋ ์ฃผ๋ ์ด์ ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
-
์ด ๋น๊ต๋ ์ค์ ๋ก ๊ฒฝํํ ์์๋ ๊ณผ๋ํ๊ฒ ๋๊ด์ ์ธ ์ ํจ์ฑ ๊ฒ์ฌ ๊ฒฐ๊ณผ์ ๋ ๊ฐ์ง ์ฃผ์ ์์ธ์ ๊ฐ์ง ํ ์ ์์ต๋๋ค.
-
๊ณ์ธต ์ (์ผ๋ช ํด๋ฌ์คํฐ ๋) ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ก ์ธํด ๋ฐ์ํ๋ ๊ต์ก ๋ฐ์ดํฐ์ ํ ์คํธ ๋ฐ์ดํฐ ๊ฐ์ ๋ฐ์ดํฐ ์ ์ถ (์ข ์์ฑ). ํ์์ ๋ถ์ผ์์๋ ์ผ๋ฐ์ ์ผ๋ก ๋์ผํ ํ์ ๋๋ ์๋ฌผํ์ ๋ณต์ ์คํ์ ๋ํ ์ฌ๋ฌ ๋ฒ (๋๋ก๋ ์์ฒ ๊ฐ)์ ํ๋ ๊ฐ (= ๋ฐ์ดํฐ ๋งคํธ๋ฆญ์ค์ ํ)์ด ์์ต๋๋ค. ์ด๋ค์ ๋ ๋ฆฝ์ ์ด์ง ์์ผ๋ฏ๋ก ๊ฒ์ฆ ๋ถํ ์ ํ์ ์์ค์์ ์ํ๋์ด์ผํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ด๋ฌํ ๋ฐ์ดํฐ ์ ์ถ์ด ๋ฐ์ํ๋ฉด ํ๋ ์์ ์ธํธ ๋ถํ ๊ณผ ๊ต์ฐจ ์ ํจ์ฑ ๊ฒ์ฌ ๋ถํ ๋ชจ๋์์ ๋ฐ์ดํฐ ์ ์ถ์ด ๋ฐ์ํฉ๋๋ค. ํ๋ ์์์ ๊ต์ฐจ ๊ฒ์ฆ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ๋๊ด์ ์ผ๋ก ๋ฐ์ด์ด์ค๋ฉ๋๋ค.
-
์ ์ฒด ๋ฐ์ดํฐ ๋งคํธ๋ฆญ์ค์์ ์ํ๋๋ ๋ฐ์ดํฐ์ ์ ์ฒ๋ฆฌ. ๊ณ์ฐ์ ๊ฐ ํ์ ๋ํด ๋ ๋ฆฝ์ ์ด์ง ์์ง๋ง ๋ง์ / ๋ชจ๋ ํ์ด ์ ์ฒ๋ฆฌ์ ๋ํ ๋งค๊ฐ ๋ณ์๋ฅผ ๊ณ์ฐํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ ํ์ ์ธ ์๋ ์๋ฅผ ๋ค์ด โ์ค์ โ๋ถ๋ฅ ์ด์ ์ PCA ํฌ์ ์ผ ๊ฒ์ด๋ค.
๋ค์ ๋งํ์ง๋ง, ์ด๋ ํ๋ ์์ ๋ฐ ์ธ๋ถ ๊ต์ฐจ ๊ฒ์ฆ์ ๋ชจ๋ ์ํฅ์ ๋ฏธ์น๋ฏ๋ก์ด๋ฅผ ๊ฐ์ง ํ ์ ์์ต๋๋ค.
๋ด๊ฐ ์์ ํ๋ ๋ฐ์ดํฐ์ ๊ฒฝ์ฐ ๋ ๊ฐ์ง ์ค๋ฅ๋ก ์ธํด ์๋ชป ๋ถ๋ฅ๋๋ ๋ถ๋ถ์ด ์ฝ๊ฒ ๊ณผ์ ํ๊ฐ ๋ ์ ์์ต๋๋ค!
-
-
์ด ๊ณ์ฐ ๋ ํ ์คํธ ์ฌ๋ก ์ ํ์ ์ฑ๋ฅ ์ ํ์ผ๋ก ์ ํ๋๋ ๊ฒฝ์ฐ ๋ชจ๋ธ ๋น๊ต์๋ ๋งค์ฐ ๋ง์ ์์ ํ ์คํธ ์ฌ๋ก ๋๋ ์ค์ ์ฑ๋ฅ์ ์์ฒญ๋๊ฒ ํฐ ์ฐจ์ด๊ฐ ํ์ํฉ๋๋ค. ๋ฌด์ ํ์ ํ๋ จ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง 2 ๊ฐ์ ๋ถ๋ฅ๊ธฐ๋ฅผ ๋น๊ต ํ๋ ๊ฒ์ด ๋ ์ฝ๊ธฐ์ ์ข์ ์ถ๋ฐ์ ์ด ๋ ์ ์์ต๋๋ค.
๊ทธ๋ฌ๋ ๋ชจ๋ธ ํ์ง์ โ์ต์ โ๋ชจ๋ธ์ ๋ํ ๋ด๋ถ ๊ต์ฐจ ๊ฒ์ฆ ์ฒญ๊ตฌ์ ์ธ๋ถ ๊ต์ฐจ ๊ฒ์ฆ ๋๋ ํ๋ ์์ ๊ฒ์ฆ์ ๋น๊ตํ๋ ๊ฒ์ ์๋ฏธ๊ฐ ์์ต๋๋ค. ๋ถ์ผ์น๊ฐ ๋์ผ๋ฉด ๊ทธ๋ฆฌ๋ ๊ฒ์ ์ต์ ํ๊ฐ ์๋ํ๋์ง ์ฌ๋ถ์ ์๋ฌธ์ด ์๊น๋๋ค ( ์ฑ๋ฅ ์ธก์ ์ ๋์ ๋ถ์ฐ์ผ๋ก ์ธํ ๋ถ์ฐ ์ฐจ์ด). ๋ด๋ถ ๋น๊ต๊ฐ ๋ค๋ฅธ ๊ฒ์ ๋นํด ์์ฒญ๋๊ฒ ์ข์ ๊ฒฝ์ฐ ๋ฌธ์ ๋ฅผ ๋ฐ๊ฒฌ ํ ์ ์๋ค๋ ์ ์์์ด ๋น๊ต๊ฐ ๋ ์ฝ์ต๋๋ค. ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ ์ต์ ํ์ ๋ํด ๊ทธ๋ค์ง ๊ฑฑ์ ํ ํ์๊ฐ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ด์จ๋ ์ฑ๋ฅ์ ๋ํ ์ธ๋ถ (7) ์ธก์ ์ด ์ ์งํ๊ณ ๊ฑด์ ํ ๊ฒฝ์ฐ, ํ๋ ํ ๋ชจ๋ธ์ด ์ต์ ์ธ์ง ์๋์ง์ ๋ํ ์ ์ฉํ ์ถ์ ์น๊ฐ ์์ด์ผํฉ๋๋ค.
ํ์ต ๊ณก์ ์ ์ธก์ ํ๋ IMHO๋ ์์ง ๋ค๋ฅธ ๋ฌธ์ ์ ๋๋ค. ์๋ง ๋ณ๋๋ก ์ฒ๋ฆฌ ํ ๊ฒ์ ๋๋ค. ํ์ต ๊ณก์ ์ด ํ์ํ ๊ฒ์ ๋ ๋ช ํํ๊ฒ ์ ์ํด์ผํ๋ค๊ณ ์๊ฐํฉ๋๋ค ( ์ฃผ์ด์ง ๋ฌธ์ , ๋ฐ์ดํฐ ๋ฐ ๋ถ๋ฅ ๋ฐฉ๋ฒ ์ ๋ฐ์ดํฐ ์ธํธ ๋๋ ํ์ต ๊ณก์ ์ ๋ํ ํ์ต ๊ณก์ ์ด ํ์ํฉ๋๊น? ๋ํ ์ด ) ๋ฌธ์ , ๋ฐ์ดํฐ ๋ฐ ๋ถ๋ฅ mehtod ์ฃผ์ด์ง ๋ฐ์ดํฐ ์ธํธ ๋ฐ ์ถ๊ฐ ๊ฒฐ์ ์ ๋ฌด๋ฆฌ (์ : ํ๋ จ ์ํ ํฌ๊ธฐ์ ํจ์๋ก ๋ชจ๋ธ์ ๋ณต์ก์ฑ์ ๋์ฒํ๋ ๋ฐฉ๋ฒ? ์ต์ ํ ๋ค์ ํ๋ฒ ๊ณ ์ ๋ ํ์ดํผ ํ๋ผ๋ฏธํฐ๋ฅผ ์ฌ์ฉ์ ๋ํ ๊ฒฐ์ ํ๋ จ ์ธํธ ํฌ๊ธฐ์ ๋ฐ๋ผ ํ์ดํผ ํ๋ผ๋ฏธํฐ๋ฅผ ์์ ํ๋ ๊ธฐ๋ฅ?)
(๋ด ๋ฐ์ดํฐ์๋ ์ค์ ๋ก ์ค์ ๋ก ์ฌ์ฉํ๊ธฐ์ ์ถฉ๋ถํ ์ ํํ ํ์ต ๊ณก์ ์ธก์ ์ ์ป์ ์์๋ ๋ ๋ฆฝ์ ์ธ ์ฌ๋ก๊ฐ ๊ฑฐ์ ์์ง๋ง 1200 ํ์ด ์ค์ ๋ก ๋ ๋ฆฝ์ ์ธ ๊ฒฝ์ฐ ๋ ๋์ ์ ์์ต๋๋ค)
์ ๋ฐ์ดํธ : scikit-learn ์์ ์์ โ์๋ชป๋โ๊ฒ์ ๋ฌด์์ ๋๊น?
์ฐ์ , ์ค์ฒฉ ๊ต์ฐจ ๊ฒ์ฆ์๋ ์๋ฌด๋ฐ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ์ค์ฒฉ ์ ํจ์ฑ ๊ฒ์ฌ๋ ๋ฐ์ดํฐ ์ค์ฌ ์ต์ ํ์ ๊ฐ์ฅ ์ค์ํ๋ฉฐ ๊ต์ฐจ ์ ํจ์ฑ ๊ฒ์ฌ๋ ๋งค์ฐ ๊ฐ๋ ฅํ ์ ๊ทผ ๋ฐฉ์์ ๋๋ค (ํนํ ๋ฐ๋ณต / ๋ฐ๋ณต๋๋ ๊ฒฝ์ฐ).
๊ทธ๋ฐ ๋ค์ ๋ฌธ์ ๊ฐ ์ ํ ์๋์ง ์ฌ๋ถ๋ ๊ด์ ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค. ์ ์งํ ์ค์ฒฉ ์ ํจ์ฑ ๊ฒ์ฌ (์ธ๋ถ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์๊ฒฉํ๊ฒ ๋ ๋ฆฝ์ ์ผ๋ก ์ ์ง)๋ฅผ ์ํํ๋ ํ ์ธ๋ถ ์ ํจ์ฑ ๊ฒ์ฌ๋ โ์ต์ ์โ๋ชจ๋ธ ์ฑ๋ฅ์ ์ ์ ํ ์ฒ๋์ ๋๋ค. ์๋ฌด ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
๊ทธ๋ฌ๋ SVM์ ํ์ดํผ ํ๋ผ๋ฏธํฐ ํ๋์์ํ ์ด๋ฌํ ๋น๋ก ์ ํ ์ฑ๋ฅ ์ธก์ ์ ๋ํ ๊ทธ๋ฆฌ๋ ๊ฒ์์๋ ๋ช ๊ฐ์ง ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ๊ทธ๋ค์ (์๋ง?) ์ต์ ํ์ ์์กด ํ ์ ์๋ค๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ ์ธ๋ถ ๋ถํ ์ด ์ฌ๋ฐ๋ฅด๊ฒ ์ํ ๋ ๊ฒฝ์ฐ์๋ ๋ชจ๋ธ์ด ์ต์์ ๊ฒฐ๊ณผ๊ฐ ์๋๋๋ผ๋ ํ๋ ํ ๋ชจ๋ธ์ ์ฑ๋ฅ์ ์ ์งํ๊ฒ ์ถ์ ํ ์ ์์ต๋๋ค.
์ต์ ํ๊ฐ ์ด๋ ค์ธ ์์๋ ์ด์ ๋ฅผ ์ง๊ด์ ์ผ๋ก ์ค๋ช ํ๋ ค๊ณ ํฉ๋๋ค.
-
์ํ์ ์ผ๋ก / ํต๊ณ์ ์ผ๋ก ๋งํ๋ฉด, ๋น์จ์ ๋ฌธ์ ๋ ์ธก์ ๋ ๋น์จ ๊ฐ ์ ํ ํ ์คํธ ์ํ ํฌ๊ธฐ (๋ชจ๋ธ์ ์ค์ ์ฑ๋ฅ ์ ๋ฐ๋ผ ๋ค๋ฆ) ์ผ๋ก ์ธํด ํฐ ์ฐจ์ด๋ฅผ ๊ฒช์ ์ ์๋ค๋ ๊ฒ์ ๋๋ค . N, P์VR( P์ )=P(1โP)
p^n
p
Var(p^)=p(1โp)n
๋ฆฌ์ฝ, ์ ๋ฐ๋ (๋จธ์ ๋ฌ๋ ์ฑ๋ฅ ๊ฐ์ง)๋ฅผ ์ถ์ ํ๋ ๋ฐ ํ์ํ ์ ๋ฐ๋ (๋ฐ์ด์ด์ค / ๋ถ์ฐ ๊ฐ์ง)๋ฅผ ๋ฌ์ฑํ๋ ค๋ฉด ์์ฒญ๋๊ฒ ๋ง์ ์์ ์ผ์ด์ค (์ ์ด๋ ๋ด๊ฐ ์ผ๋ฐ์ ์ผ๋ก ๊ฐ์ง ์์๋ ์ผ์ด์ค ์์ ๋น๊ต)๊ฐ ํ์ํฉ๋๋ค. ์ด๊ฒ์ ๋ฌผ๋ก ์ด๋ฌํ ๋น์จ๋ก ๊ณ์ฐ ํ ๋น์จ์๋ ์ ์ฉ๋ฉ๋๋ค. ์ดํญ ๋น์จ์ ๋ํ ์ ๋ขฐ ๊ตฌ๊ฐ์ ์ดํด๋ณด์ญ์์ค. ๊ทธ๋ค์ ๋๋๊ฒ๋ ํฌ๋ค! ํ์ดํผ ํ๋ผ๋ฏธํฐ ๊ทธ๋ฆฌ๋์ ๋นํด ์ฑ๋ฅ์ด ์ค์ ๋ก ํฅ์๋๋ ๊ฒ๋ณด๋ค ๋ ํฝ๋๋ค. ํต๊ณ์ ์ผ๋ก ๋งํ๋ฉด ๊ทธ๋ฆฌ๋ ๊ฒ์์ ๋๊ท๋ชจ ๋ค์ค ๋น๊ต ๋ฌธ์ ์ ๋๋ค. ๊ทธ๋ฆฌ๋์ ํฌ์ธํธ๊ฐ ๋ง์์๋ก ์ค์๋ก ํ๊ฐํ๋ ์ด์ฐจ / ํ ์คํธ ๋ถํ ์ ๋งค์ฐ ์ข์ ํ์ดํผ ํ๋ผ๋ฏธํฐ ์กฐํฉ์ ์ฐพ์ ์ํ์ด ๋์์ง๋๋ค. ์ด๊ฒ์ด ์คํค๋ฐ ์ฐจ์ด์ ๋ํ ์๋ฏธ์ ๋๋ค.
-
์ง๊ด์ ์ผ๋ก ํ์ดํผ ํ๋ผ๋ฏธํฐ์ ๊ฐ์ ๋ณํ๋ฅผ ๊ณ ๋ คํ๋ฉด ๋ชจ๋ธ์ด ์์ํ ์ ํ ๋ ์ ์์ต๋๋ค. ํ ํ ์คํธ ์ฌ๋ก๊ฐ ์์ฌ ๊ฒฐ์ ๊ฒฝ๊ณ๋ฅผ ํฅํด ์ด๋ํฉ๋๋ค. โํ๋โ๋น์จ ์ฑ๋ฅ ์ธก์ ์ ์ผ์ด์ค๊ฐ ๊ฒฝ๊ณ๋ฅผ ๋๊ณ ๋ฐ๋์ชฝ์ ์ฌ ๋๊น์ง์ด๋ฅผ ๊ฐ์งํ์ง ๋ชปํฉ๋๋ค. ๊ทธ๋ฌ๋, ๊ทธ๋ค์ ํ์ดํผ ํ๋ผ๋ฏธํฐ์ ๋ฌดํํ ์์ ๋ณํ์ ๋ํด ์ฆ์ ์ ์ฒด ์ค๋ฅ๋ฅผ ํ ๋นํฉ๋๋ค.
์์น ์ต์ ํ๋ฅผ ์ํํ๋ ค๋ฉด ์ฑ๋ฅ ์ธก์ ๊ฐ์ด ์ ๋๋ก ์๋ํด์ผํฉ๋๋ค. ์ฆ, ๋น๋ก ์ ํ ์ฑ๋ฅ ์ธก์ ์ ๊ธ๊ฒฉํ (๊ณ์ ๊ตฌ๋ณ ํ ์์๋) ๋ถ๋ถ์ด๋ ์ค์ ๋ก ๋ฐ์ํ๋ ๋ณ๊ฒฝ์ด ๊ฐ์ง๋์ง ์๋๋ค๋ ์ฌ์ค์ด ์ต์ ํ์ ์ ํฉํ์ง ์์ต๋๋ค.
์ ์ ํ ์ ์ ๊ท์น์ ์ต์ ํ์ ํนํ ์ ํฉํ ๋ฐฉ์์ผ๋ก ์ ์๋ฉ๋๋ค. ์์ธก ํ๋ฅ ์ด ๋ฌธ์ ์ ํด๋์ค์ ์ํ๋ ๊ฐ ์ฌ๋ก์ ์ค์ ํ๋ฅ ๊ณผ ์ผ์น ํ ๋ ์ ์ฒด ์ต๋ ๊ฐ์ ๊ฐ์ต๋๋ค. -
SVM์ ๊ฒฝ์ฐ ์ฑ๋ฅ ์ธก์ ๋ฟ๋ง ์๋๋ผ ๋ชจ๋ธ์ด์ด ๋พฐ์กฑํ ๋ฐฉ์์ผ๋ก ๋ฐ์ํ๋ค๋ ์ถ๊ฐ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ํ์ดํผ ํ๋ผ๋ฏธํฐ๋ฅผ ์กฐ๊ธ๋ง ๋ณ๊ฒฝํด๋ ์๋ฌด๋ฐ ๋ณํ๊ฐ ์์ต๋๋ค. ํ์ดํผ ํ๋ผ๋ฏธํฐ๊ฐ ์ด๋ค ๊ฒฝ์ฐ์ ์ํฌํธ ๋ฒกํฐ๊ฐ๋์ง ์๊ฑฐ๋ ์ํฌํธ ๋ฒกํฐ๊ฐ ๋ ์์์ ์ ๋๋ก ๋ณํ ๋๋ง ๋ชจ๋ธ์ด ๋ณ๊ฒฝ๋ฉ๋๋ค. ๋ค์, ์ด๋ฌํ ๋ชจ๋ธ์ ์ต์ ํํ๊ธฐ๊ฐ ์ด๋ ต์ต๋๋ค.
๋ฌธํ:
- ๋ธ๋ผ์ด, L .; Cai, T. & DasGupta, A .: ์ดํญ ๋น๋ก์ ๋ํ ๊ตฌ๊ฐ ์ถ์ , ํต๊ณ ๊ณผํ, 16, 101-133 (2001).
- Cawley, GC & Talbot, NLC : ์ฑ๋ฅ ํ๊ฐ์์ ๋ชจ๋ธ ์ ํ ๋ฐ ํ์ ์ ํ ๋ฐ์ด์ด์ค์ ๋ํ ๊ณผ์ ํฉ, Journal of Machine Learning Research, 11, 2079-2107 (2010).
-
Brereton, R .: ํจํด ์ธ์์์ํ ํํ๋ ๋ก , Wiley, (2009).
ํ์ดํผ ํ๋ผ๋ฏธํฐ์ ํจ์๋ก์ SVM์ ๋น์ ์์ ์ธ ๋์์ ๋ํ๋ ๋๋ค.
์ ๋ฐ์ดํธ II : ์คํค๋ฐ ์ฐจ์ด
๋ชจ๋ธ ๋น๊ต ์ธก๋ฉด์์ ๊ฐ๋นํ ์์๋ ๊ฒ์ ๋ถ๋ช ํ ๋ ๋ฆฝ์ ์ธ ์ฌ๋ก์ ์์ ๋ฌ๋ ค ์์ต๋๋ค. ์คํค๋ฐ ๋ถ์ฐ์ ์ํ์ ๋ํ ๋น ๋ฅด๊ณ ๋๋ฌ์ด ์๋ฎฌ๋ ์ด์ ์ ์์ฑํด ๋ณด๊ฒ ์ต๋๋ค.
scikit.learn
digits
๋ฐ์ดํฐ์ 1797 ๊ฐ๊ฐ ์๋ค๊ณ ํฉ๋๋ค .
- 100 ๊ฐ์ ๋ชจ๋ธ, ์๋ฅผ ๋ค์ด 2 ๊ฐ์ ๋งค๊ฐ ๋ณ์์ ๋ํด ๊ทธ๋ฆฌ๋๋ฅผ ๋น๊ตํ๋ค๊ณ ๊ฐ์ ํฉ๋๋ค .
10ร10 - ๋ ๋งค๊ฐ ๋ณ์ (๋ฒ์)๊ฐ ๋ชจ๋ธ์ ์ ํ ์ํฅ์ ๋ฏธ์น์ง ์๋๋ค๊ณ ๊ฐ์ ํฉ๋๋ค.
-
์ฆ, ๋ชจ๋ ๋ชจ๋ธ์ 97 % (
digits
๋ฐ์ดํฐ ์ธํธ์ ์ผ๋ฐ ์ฑ๋ฅ)์ ๋์ผํ ์ค์ ์ฑ๋ฅ์ ๊ฐ์ต๋๋ค . -
๋ฐ์ดํฐ ์ธํธ ์์ ํ๋ณธ ํฌ๊ธฐ = 1797 ํ์ผ๋ก โ์ด ๋ชจ๋ธ ํ ์คํธโ์ ๋ํ ์๋ฎฌ๋ ์ด์ ์คํ
104digits
p.true = 0.97 # hypothetical true performance for all models n.models = 100 # 10 x 10 grid n.rows = 1797 # rows in scikit digits data sim.test <- replicate (expr= rbinom (n= nmodels, size= n.rows, prob= p.true), n = 1e4) sim.test <- colMaxs (sim.test) # take best model hist (sim.test / n.rows, breaks = (round (p.true * n.rows) : n.rows) / n.rows + 1 / 2 / n.rows, col = "black", main = 'Distribution max. observed performance', xlab = "max. observed performance", ylab = "n runs") abline (v = p.outer, col = "red")
์ต์์ ์ฑ๋ฅ์์ํ ๋ถํฌ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋นจ๊ฐ์ ์ ์ ๋ชจ๋ ๊ฐ์ ๋ชจ๋ธ์ ์ค์ ์ฑ๋ฅ์ ๋ํ๋ ๋๋ค. ํ๊ท ์ ์ผ๋ก, ์ฐ๋ฆฌ๋ 100 ๊ฐ์ ๋น๊ต ๋ ๋ชจ๋ธ ์ค ๊ฐ์ฅ ๊ฒ๋ณด๊ธฐ์๋ ์ค์ ์ค๋ฅ์จ์ 2/3 ๋ง ๊ด์ฐฐํฉ๋๋ค (์๋ฎฌ๋ ์ด์ ์ ๊ฒฝ์ฐ ๋ชจ๋ 97 % ์ ํํ ์์ธก๊ณผ ๋์ผํ๊ฒ ์ํ๋จ์ ์๊ณ ์์ต๋๋ค).
์ด ์๋ฎฌ๋ ์ด์ ์ ๋ถ๋ช ํ ๋งค์ฐ ๋จ์ํ๋์์ต๋๋ค.
- ํ ์คํธ ํ๋ณธ ํฌ๊ธฐ ๋ถ์ฐ ์ธ์๋ ๋ชจํ ๋ถ์์ ์ฑ์ผ๋ก ์ธํ ๋ถ์ฐ์ด ์์ผ๋ฏ๋ก ์ฌ๊ธฐ์์ ๋ถ์ฐ์ ๊ณผ์ ํ๊ฐํฉ๋๋ค
- ๋ชจ๋ธ ๋ณต์ก์ฑ์ ์ํฅ์ ๋ฏธ์น๋ ํ๋ ํ๋ผ๋ฏธํฐ๋ ์ผ๋ฐ์ ์ผ๋ก ๋ชจ๋ธ์ด ๋ถ์์ ํ๊ณ ๋ถ์ฐ์ด ๋์ ํ๋ผ๋ฏธํฐ ์ธํธ๋ฅผ ํฌ๊ดํฉ๋๋ค.
- ์์ ์ UCI ์ซ์์ ๊ฒฝ์ฐ ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์๋ ca. 44 ๋ช ์ด ์ด 11000 ์๋ฆฌ ์ซ์. ์ด ์ฌ๋์ ๋ฐ๋ผ ๋ฐ์ดํฐ๊ฐ ๋ฌถ์ด๋ฉด ์ด๋ป๊ฒ๋ฉ๋๊น? (์ฆ, ๊ทธ ์ฌ๋์ด 3์ ์ฐ๋ ๋ฐฉ๋ฒ์ ์๊ณ ์๋ค๋ฉด ๋๊ตฐ๊ฐ๊ฐ ์ด 8์ ๋ ์ฝ๊ฒ ์ธ์ ํ ์ ์์ต๋๊น?) ํจ๊ณผ์ ์ธ ํ๋ณธ ํฌ๊ธฐ๋ 44๋งํผ ๋ฎ์ ์ ์์ต๋๋ค.
- ํ๋ ๋ชจ๋ธ ํ์ดํผ ํ๋ผ๋ฏธํฐ๋ ๋ชจ๋ธ๊ฐ์ ์๊ด ๊ด๊ณ๋ฅผ ์ ๋ฐํ ์ ์์ต๋๋ค (์ฌ์ค ์์น ๊ณ์ฐ ๊ด์ ์์ ์ ์๋ํ๋ ๊ฒ์ผ๋ก ๊ฐ์ฃผ ๋จ). ๊ทธ ์ํฅ์ ์์ธกํ๊ธฐ๋ ์ด๋ ต์ต๋๋ค (์ค์ ๋ถ๋ฅ๊ธฐ ์ ํ์ ๊ณ ๋ คํ์ง ์๊ณ ๋ ๋ถ๊ฐ๋ฅํ๋ค๊ณ ์๊ฐํฉ๋๋ค).
๊ทธ๋ฌ๋ ์ผ๋ฐ์ ์ผ๋ก ๋ ๋ฆฝ ํ ์คํธ ์ฌ๋ก ์๊ฐ ์ ๊ณ ๋น๊ต ๋ชจ๋ธ ์๊ฐ ๋ง์ผ๋ฉด ํธํฅ์ด ์ฆ๊ฐํฉ๋๋ค. ๋ํ Cawley์ Talbot ๋ ผ๋ฌธ์ ๊ฒฝํ์ ์ผ๋ก ๊ด์ฐฐ ๋ ํ๋์ ๋ณด์ฌ์ค๋๋ค.