[Study] Machine Learning โ Basic
์ธ๊ณต์ง๋ฅ != ๋จธ์ ๋ฌ๋ != ๋ฅ๋ฌ๋
์ธ๊ณต์ง๋ฅ โ ๋จธ์ ๋ฌ๋ โ ๋ฅ๋ฌ๋
์ธ๊ณต์ง๋ฅ๊ณผ ๋น ๋ฐ์ดํฐ : ๋น ๋ฐ์ดํฐ ํ์ดํ๋ผ์ธ์ ๋ง์ง๋ง ๋ถ์ ๋จ๊ณ์์ ์ธ๊ณต์ง๋ฅ ๊ธฐ์ ์ฌ์ฉ ๊ฐ๋ฅ
โ
โ๐ฃ๐๐ฟ๐ฟ๐พ๐๐พ๐๐ ๐๐๐๐ฝ๐ ๐๐ฟ ๐ซ๐พ๐บ๐๐๐๐๐
โ 4๊ฐ์ง ๋ฐฉ๋ฒ๊ณผ ๊ฐ๊ฐ์ ์ฐจ์ด์
ยท Supervised Learning
ยท Unsupervised Learning
ยท Semi-supervised Learning
ยท Reinforcement Learning
โ
- Supervised Learning
- ํ์ต์ ์ํด โ์ ๋ตโ์ด ์ฃผ์ด์ง ๋ฐ์ดํฐ ํ์
- ์ฃผ์ด์ง ๋ฐ์ดํฐ๋ฅผ โ๋ถ๋ฅโํ๋ ์์ ์ ์ฃผ๋ก ์ด์ฉ (Classification)
- ๋ํ์ ๋ถ๋ฅ ๋ชจ๋ธ : Decision Trees, Neural Networks, Support Vector Machines(SVM)
โ
- Unsupervised Learning
- ํ์ต์ ์ํ โ์ ๋ตโ์ด ํ์ ์์ผ๋ฉฐ, ๋ฐ์ดํฐ๋ง ์์ผ๋ฉด ํ์ต ๊ฐ๋ฅ
- ์ฃผ์ด์ง ๋ฐ์ดํฐ๋ฅผ โ๊ตฐ์งํโํ๋ ์์ ์ ์ฃผ๋ก ์ด์ฉ (Clustering)
- ๋ํ์ ๊ตฐ์งํ ๋ชจ๋ธ : Hierarchical Clustering, K-means Clustering
* ์ฃผ์ : ๋ชจ๋ธ ์ ๋ํ๊ฐ๋ฅผ ์ํด์๋ โ์ ๋ตโ ํ์
โ
- Semi-supervised Learning
- ์ผ๋ถ ๋ฐ์ดํฐ์๋ง โ์ ๋ตโ ์กด์ฌ
- ์ ๋ต์ด ์๋ ๋ฐ์ดํฐ๋ ํ์ต์ ๋์์ด ๋ ๊ฒ์ด๋ผ๋ ๊ฐ์
โ
- Reinforcement Learning
- ํ๋(์ ํ) โ ๋ณด์(or ํจ๋ํฐ)
- ๋ ํฐ ๋ณด์์ ์ป๋ ๋ฐฉํฅ์ผ๋ก ํ์ต ์งํ
โ
๐ฅ๐พ๐บ๐๐๐๐พโ
== Attribute, ์ฌ๋ฌ๊ฐ์ง Data type
ex) ์ฌ๋์ Feature : ํค, ์ฑ๋ณ, ๋์ด ๋ฑ
โ
Feature ์ ์๋ ์ ์ค์ํ ๊ฒ์ธ๊ฐ์ ?
- ์ ์ ํ๊ฒ ์ ์ํ๋ ๊ฒ์ ๋งค์ฐ ์ค์. ๋ชจ๋ธ์ ์ฑ๋ฅ์ ์ข์ฐํ ์ ์์
- Domain Knowledge ํน์ ์ ๋ฌธ์ง์ ์๊ตฌ
ex) ์ผ๋ณธ์ด ๋ฌธ์ฅ์ ๋ํ ๊ฐ์ ๋ถ์ โ ์ผ๋ณธ์ด ์ง์ ํ์
โ
Feature์ ๊ฐ์๋ ๋ง์๊ฒ ์ข์๊น ์์๊ฒ ์ข์๊น ?
- ๋ชจ๋ธ๋ง๋ค ์ ์ ํ ๊ฐ์ ํ์, ๋๋ฌด ๋ง์ผ๋ฉด ์ข์ง ์์
- Feature๋ฅผ ๋ฌดํฑ๋๊ณ ๋๋ฆฌ๋ฉด, Curse of Dimensionality(์ฐจ์์ ์ ์ฃผ) ๋ฌธ์ ๋ฐ์
* Curse of Dimensionality = Feature๊ฐ ๋์ด๋จ์ ๋ฐ๋ผ ๋ฐ์ดํฐ ์กฐํฉ์ ๊ฐ์(ํน์ง ๊ณต๊ฐ)์ ๊ธ๊ฒฉํ ์ฆ๊ฐํ๋ฏ๋ก ๊ทธ๋งํผ ํ์ ๋ฐ์ดํฐ๋ ์ฆ๊ฐํ๊ณ , ์ฐจ์์ ๋นํด ๋ฐ์ดํฐ๊ฐ ๋๋ฌด ์ ์ผ๋ฉด Overfitting ๋ฐ์ ๊ฐ๋ฅ์ฑ์ด ์ฆ๊ฐ
โ
- Feature์ ๊ฐ์
- ๋ฌธ์ ์ ๋ฐ๋ผ ์๋ฐฑ ~ ์๋ง๊ฐ ์ด์์ด ๋ ์ ์์
- Classification์ ๊ฒฝ์ฐ, Label ๊ฐ์(Class ๊ฐ์) ๋ณด๋ค๋ ๋ง์ ๊ฒ, Data ๊ฐ์๋ณด๋ค๋ ์ ์ ๊ฒ์ด ์ผ๋ฐ์
ex) Label(Class) = ๊ฐ์์ง์ ๊ณ ์์ด๋ฅผ ๋ถ๋ฅ ํ ๋ ~ ๊ฐ์์ง, ๊ณ ์์ด
โ
Feature ์ ์๋ฅผ ์๋ตํ ์ ์์๊น ?
- Deep Learning์ ๊ฒฝ์ฐ, Feature๋ฅผ ์๋์ผ๋ก ๊ฐ Layer์์ ์ธ์งํ๊ฒ ๋๋ฏ๋ก Feature ์ ์๊ฐ ์ฝ๋ค
But, Deep Learning์ ๊ฐ Feature์ ๋ํ ํด์์ ํ ์ ์๋ค, Parameter ๊ฐ์๋ฅผ ์ ํด์ค์ผ ํ๋ค
โ
๐ฌ๐๐ฝ๐พ๐
= Method
- Model์ ์ฃผ์ด์ง ๋ฐ์ดํฐ์ ๋ํด, ์์์ task๋ฅผ ์ํํ๊ธฐ ์ํ Hypothesis
์๋ ๋ชจ๋ธ ์์ ์ค, ๋ ์ ํฉํ ๋ชจ๋ธ์ ?
- y = ax + c
- y = ax^ + bx + c
โ
- Complexity (๋ณต์ก๋)
- Computational Complexity
= ๋ฐ์ดํฐ๊ฐ ์ฆ๊ฐํจ์ ๋ฐ๋ผ ์ผ๋ง๋ ๊ณ์ฐ๋์ด ์ฆ๊ฐํ๋๊ฐ
- Data (Sample Complexity / Consistency )
= ๋ฐ์ดํฐ๊ฐ ์ฆ๊ฐํจ์ ๋ฐ๋ผ ๋ชจ๋ธ์ ๊ฒฐ๊ณผ๋ฌผ์ด ์ข์์ง๋๊ฐ
* ๋ ๋ชจ๋ธ์ด ๋์ผํ๊ฒ ๊ฒฐ๊ณผ๋ฅผ ๋ผ ๋, Computational Complexity๋ ๋ฎ๊ณ Data Complexity๋ ๋์ผ๋ฉด ์ข๋ค
โ
์๋ ๋ชจ๋ธ ์์ ์ค, ๋ ๋ณต์กํ ๋ชจ๋ธ์ ?
- y = ax + c
- y = ax^ + bx + c
* Feature๊ฐ ๋ ๋ง๋ค(๊ณฑ์ , ๋ง์ ์ ๋ ๋ง์ด ์งํ)
* Computational ๊ด์ ์ผ๋ก (a, b, c) 3๊ฐ์ Parameter๋ก ์ธํ ๊ณ์ฐ๋ ์ฆ๊ฐ
โ
- Parametric, Non-Parametric
- Mahcine Learning์ task๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ๋ก
- Parametric๊ณผ Non-Parametric์ task๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ๊ณ ๋ฏผํ๋ ๊ฒ๊ณผ ๊ด๋ จ์ด ์์
- ๋น์ง๋ ํ์ต์ ๊ฒฝ์ฐ, ์ด๋ฅผ ๋ฐ์ ธ๋ณด๋ ๊ฒ์ด ์ค์ (์ง๋ํ์ต์๋ ์ ์ฉ ๊ฐ๋ฅ)
- โParameter = ๋งค๊ฐ๋ณ์โ๋ ๋ชจ๋ธ์ด ์ต์ ํํ๋ ๋์(bias, weight ๋ฑ)
- Parametric์ ๊ณ ์ ๋ ํฌ๊ธฐ์ ๋งค๊ฐ ๋ณ์ ์ธํธ๋ก ๋ฐ์ดํฐ๋ฅผ ์์ฝํ๋ ํ์ต method (์๋ฌด๋ฆฌ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํด๋ ๋งค๊ฐ๋ณ์ ์ ๊ณ ๋ ค x)
- Non-Parametric์ ๋ชจ๋ธ์ ์ ์ฉํ๊ธฐ ์ด๋ ค์ด ์ํฉ, ๋ฐ์ดํฐ Feature๊ฐ ๋ง์์ง๊ฑฐ๋ ๋ถํฌ์์์ ๋ํ ์ง์์ด ์์ ๋ ์ฌ์ฉ
ex) ์์ ๋น๋์ ๊ธฐ๋ฐ ์ ๊ทผ (์์ํฉ๊ฒ์ ), knn ์๊ณ ๋ฆฌ์ฆ
โ
- Generative, Discriminative
- Generative ๋ฐฉ์ = Joint Probability, P(x, y)๋ฅผ ํ์ต
- Discriminative ๋ฐฉ์ = Conditional Probability, P(y|x)๋ฅผ ์ง์ ํ์ต
* Joint ์ฐ์ฐ ์, ๋น๊ต์ ๋ค์ํ ๋ชฉ์ ๋ค์ ์ฌ์ฉ์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ Generative๊ฐ ๋ Powerful
But, Classification์ ์งํํ ๋, Bates Rule์ ์ด์ฉํ์ฌ P(y|x) ๊ณ์ฐ
โ
โ
๐ญ๐ ๐ฅ๐๐พ๐พ ๐ซ๐๐๐ผ๐ ๐๐. ๐ฎ๐ผ๐ผ๐บ๐โ๐ ๐ฑ๐บ๐๐๐
- ์ ์ : โ๋ชจ๋ ๊ฒ์ ์ต์ ์ธ ์๊ณ ๋ฆฌ์ฆ์ ์๋ค !โ
- ํ์ : โ๋จ์ํจ์ด ์์ธ๋ก ์ง๋ฆฌ์ผ ๊ฐ๋ฅ์ฑ์ด ์๋คโ
โโ
๐ค๐๐บ๐ ๐๐บ๐๐๐๐ ๐๐ฟ ๐ฌ๐๐ฝ๐พ๐
= ์ ์ฑํ๊ฐ, ์ ๋ํ๊ฐ
- ์ ์ฑํ๊ฐ : ๋์ผ๋ก ์ง์ ํ์ธ ํ๋ ๊ฒ
ex) Case๋ฅผ ์ง์ ๋ถ์, ํน์ ๊ฒฐ๊ณผ๋ค์ ์์ธ์ ์ถ๋ก
- ์ ๋ํ๊ฐ : ์ ๋ต(Truth Ground)์ ๋น๊ตํ์ฌ ์ฑ๋ฅ์ ๋์๋ก ํํํ๊ณ ๋น๊ต
โ
- ์ ๋ํ๊ฐ ๋ฐฉ๋ฒ
- Accuracy = 1 โ Error
- Precision, Recall, F1 score โฆ
- ROC curve์ Area Under the Curve(AUC) ๊ฐ
- BLEU metric(score) = BiLingual Evaluation Understudy (๊ฐ์ค ๊ธฐํ ํ๊ท )
But, ๊ฐ๊ด์ ์ด์ง ๋ชปํจ (์๋ฏธ์์ด ์ค๋ณต๋์ด๋ ํ์ ์ ), ์ด๊ฒ์ ๋๋นํ์ฌ Clipping Precision Counts๋ผ๋ ๋์ ๋ฑ์ฅ
ex) ์๋๋ฒ์ญ ๋ฌธ์ฅ์ ๋ํ ํ๊ฐ์์ ๊ด์ฌ โtheโ๊ฐ ๋ฐ๋ณต๋๋ ๊ฒฝ์ฐ
But, ์ค์ ๋ก ๋ฌธ์ฅ์ด ์์ฑ๋์ง ์์๋๋ผ๋ ์ฑ๋ฅ์ด ๋๊ฒ ๋์ด, Brevity Penalty๋ผ๋ ๋์ ๋ฑ์ฅ (๋ฌธ์ฅ ์ ์ฒด Length ๊ณ ๋ ค)
โ
- ํ๊ฐ๋ฅผ ์ํ ๋ฐ์ดํฐ ๋ถ๋ฐฐ
- Train/Test = ๊ถ์ฅ x, ํ ์คํธ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๊ณ ํ๋จํ ์ ์์ (์ต์ ํ ๋จ๊ณ๊ฐ ํ ์คํธ ๊ฒฐ๊ณผ๋ก๋ถํฐ ์ํฅ์ ๋ฐ์ผ๋ฉด ์๋จ)
- Train/Validation/Test = ๋ชจ๋ธ ํ๋์ ์ํ ๋ฐ์ดํฐ, ํ์ต์ ๊ฐ์ ์ ์ผ๋ก ์ํฅ์ ์ฃผ๋ ๋ฐ์ดํฐ โ Validation Data
- k-fold Cross-Validation = ๊ฐ์ฅ ๊ฐ๊ด์ , Train Data๋ฅผ k๋ฑ๋ถํ์ฌ ์ฒซ๋ฒ์งธ ํ ๋ง์ Validation or Test Data๋ก ์ฌ์ฉ
> ๋๋ฒ์งธ ํ ๋ง์ Validation or Test Data ๋๋จธ์ง k-1๊ฐ๋ฅผ Training Data โฆ (๋ชจ๋ fold ์ฌ์ฉ์ ๊น์ง)
โ
- Bias์ Variance
ex) ๋ถ์ ๋ ๋, ์๋ฐฉํธ์ค๊ฐ ํฅํ ๋ฐฉํฅ Bias, ์๋ฐฉํธ์ค์์ ๋ฌผ์ด ๋๊ฐ๋ ๋ถ์ฌ ์ ๋ Variance
- ์ผ : ๋ชจ๋ธ์ ๊ฒฐ๊ณผ โ Model์ Complexity๊ฐ ๋ฎ์, ํ๋จ ๊ฒฝ๊ณ์ ์ ๋ ๋นผ๊ณกํ๊ฒ ๋๋ ์ ์๋ค
But, ๋๋ฌด Overํ๊ฒ ๋๋ฉด Train set์๋ง ๋๋ฌด ๋ง์ถฐ์ ธ Test set์ ๋ํ ์ฑ๋ฅ์ ๋จ์ด์ง ์ ์๋ค
* Model Complexity๊ฐ ๋๋ฌด ๋์์ง๋ฉด Overfitting ํ๋ฅ ์ฆ๊ฐ (Model Complexity๋ Model์ Feature์ ๊ด๋ จ)
- ์ค : Model Complexity๊ฐ ๋์์ง๋ฉด Training Sample์ Prediction Error(์์ธก ์ค๋ฅ์จ)์ ๊ฐ์
But, Test Sample์ Prediction Error๋ ๋ค์ ๋์์ง๋ ๋ฐ, ์ด๊ฒ์ด Overfitting(๊ณผ์ ํฉ)
โ
*์ฉ์ด
- Generalization = Unseen Data์ ๋ํด์ ์ ๋์ํ๋ฉด Generalization์ด ์๋ ๊ฒ
- Capacity = ๋ชจ๋ธ์ ์ํ ๊ณต๊ฐ (ํ๋จ๊ฒฝ๊ณ์ )
โ
- Variance๊ฐ ํฐ Model์ ๋์ฑ : Data ๊ฐ์๋ฅผ ๋๋ฆฌ๊ฑฐ๋ ๋ชจ๋ธ ๊ฒฝ๋ํ
- Bias๊ฐ ํฐ Model์ ๋์ฑ : Model Complexity ์ํฅ
โ Variance๊ฐ ํฐ ๋ชจ๋ธ์ Overfittig, Bias๊ฐ ํฐ ๋ชจ๋ธ์ Underfitting โ ์ด ๋์ trade-off ๊ด๊ณ
โ
๐ ๐ ๐๐๐๐๐๐๐ ๐ฟ๐๐ ๐ณ๐๐บ๐๐
= โํ์ต์ ๋ชฉ์ โ : ์์์ ์ฃผ์ด์ง ๋ชจ๋ธ์ Parameter๋ค์ ๊ฐ์ ์ฃผ์ด์ง Data์ ๋ง๊ฒ Update
- Parameter ์ต์ ํ, Target Function์ ํจ์ ๊ฐ์ ์ต์ ํํ๋ Parameter ๊ฐ ์ฐพ๊ธฐ
โ
*์ฉ์ด
- Loss Fuunction : Data Instance์ ๋ํ Prediction Penalty ์ ์ํ๋ ํจ์, ํ๋ ธ์ ๋ ์ด๋ ์ ๋ ํ๋ ธ๋
ex) Square Loss, Hinge Loss, 0/1 Loss โฆ
- Cost Function : Loss Function๋ณด๋ค ์ผ๋ฐํ๋ ๊ฐ๋ , ์ ์ฒด ๋ฐ์ดํฐ์ ๋ํ Loss ํฉ์ ์ ๊ทํ term ํฌํจ
ex) MSE(Mean Squared Error)
- Objective Function : ๊ฐ์ฅ ์ผ๋ฐํ๋ ์ฉ์ด, ํ์ต์ ํตํด โ์ต์ ํโํ๋ ค๋ ๋ชจ๋ ์ข ๋ฅ์ ํจ์
ex) MLE
# Loss is a part of cost which is a type of objective
โ
* ๋ง์ด ์ฌ์ฉ๋๋ ํ์ต ์๊ณ ๋ฆฌ์ฆ
- MLE (Maximum Likelihood Estimation)
- MAP (Maximum a Posteriori Estimation)
- EM (Expectation-Maximiazation)
- Gibbs Sampling, Gradient Descent, Variational Inference, Laplace Approximation โฆ
โโ
๐ฃ๐บ๐๐บ
= ๋ฐ์ดํฐ๋ฅผ ๋ฐํ์ผ๋ก ๊ธฐ๊ณํ์ต ์๊ณ ๋ฆฌ์ฆ์ Parameter๋ค์ด ํ์ต
โ์๋ฆฌ์ ๋น์ ํ๋ฉด ์ด๋ป๊ฒ ๋ ๊น ?
- ์ฌ๋ฃ = Data, ์ฌ๋ฃ์์ง = Feeature Engineering, ์๋ฆฌ๋ฐฉ๋ฒ = Algorithm, ์์ = Evaluation
โ
Data๊ฐ ๋ถ์กฑํ๊ฑฐ๋, ๋ถํฌ๊ฐ ์น์ฐ์ณ์ ธ(biased) ์์ ๋๋ ์ด๋ป๊ฒ ํ ๊น ?
- Sampling : Down-sampling = ๋น์จ์ด ๋ง์ ๋ฐ์ดํฐ๋ฅผ ์ ๊ฒ ์ฑํ, Up-sampling = ๋น์จ์ด ์ ์ ๋ฐ์ดํฐ๋ฅผ ๋ง์ด ์ฑํ
- Distant Supervision : Semi-supervised ๋ฐฉ์, โ๊ฐ์ โ์ ๋ฐํ์ผ๋ก ๋ฐ์ดํฐ Label์ด ์๋ค๊ณ ์ทจ๊ธ
ex) ๋จธ๋ฆฌ์นด๋ฝ ๊ธธ์ด๊ฐ 30cm ์ด์์ด๋ฉด Girl
- Bagging (Bootstrap Aggregating) : ์ ์ฒด Data์์ Samplingํ์ฌ Train, Test ๋ฐ๋ณต