[AI ์คํฐ๋] Section 4 :๋ฐ์ดํฐ์ ๋ถํ ๋ฐ ๋ชจ๋ธ ์ฑ๋ฅ ํ๊ฐ ์งํ
๊ณผ์ ํฉ(overfitting)
: ํ๋ จ ๋ฐ์ดํฐ ์ ์์๋ ์ข์ ์ฑ๋ฅ์ ๋ด์ง๋ง ํ ์คํธ ๋ฐ์ดํฐ ์ ์์๋ ์ข์ ์ฑ๋ฅ์ ๋ด์ง ๋ชปํ๋ ๊ฒฝ์ฐ
= ๋ชจ๋ธ์ด ๋ฐ์ดํฐ์ ๋นํด ๋๋ฌด ๋ณต์กํด์ ์ค์ ์ ๋ฌด๊ดํ noise๊น์ง ํ์ตํ๊ฒ ๋ ๊ฒฝ์ฐ
= Training data์ ๋นํด Test data์ ์๋ฌ์ธ์ด ๋๊ฒ ๋ํ๋๋ ๊ฒฝ์ฐ
⇒ ํธ๋ ์ธ ์ ์ ๊ณผ์ ํฉ ๋์๋ค
⇒ High Variance Model (๊ณ ์ฐจ์ ๋ชจ๋ธ)
๊ณผ์์ ํฉ (underfitting)
: ๋ชจ๋ธ์ด ๋๋ฌด ๋จ์ํด์ ๋ฐ์ดํฐ์ ๋ด์ฌ๋์ด์๋ ํจํด์ ๋ชจ๋ธ์ด ์ถฉ๋ถํ ํ์ตํ ์ ์์ด ๋ชจ๋ธ์ด ๋ฐ์ดํฐ ์์ฉ์ ํ ์ ์๊ฒ ๋๋ ๊ฒฝ์ฐ
= ๋ชจ๋ธ์ด ๋๋ฌด ๋จ์ํด ๋ฐ์ดํฐ์ ์ค์ ๋ถ๋ถ์ ๋์น๋ ๊ฒ
⇒ High bias Model
๋ชจ๋ธ์ ๋ณต์ก๋์ ์ฑ๋ฅ
: ์ค์ง์ ์ผ๋ก ํ์ ๋ ๋ฐ์ดํฐ ๋ด์์ ์ค๋ฒํผํ ๋์ง ์๊ฒ ํ๋ฉด์ bias์ variance๋ฅผ ๋ฎ์ถ๊ณ ์ ํ๋ ๋ฐฉ๋ฒ์ ์ฐพ์์ผํจ
=> ์ด์ : Bias-Vaiance Trade-off (Bias-Vaiance dilemma)
- ๋ชจ๋ธ์ด ๋ณต์กํด์ง ์๋ก ํ๋ จ๋ฐ์ดํฐ ์๋ฌ๋ ๊ณ์ ๊ฐ์
- ์ด๋์ ๋ ์ง๋๋ฉด ํ ์คํธ ์๋ฌ๋ ์ฆ๊ฐํจ : ๊ณผ์ ํฉ
๋จธ์ ๋ฌ๋์ error source
1. Variance
: ํ์ต ๋ฐ์ดํฐ์ ์ค์ ๋ฐ์ดํฐ ๋ถํฌ ์ฐจ์ด์ ์ํ ์๋ฌ
= ๋ฐ์ดํฐ์ ๋ถํฌ์ ๋ฌ๋ฆฌ ํ์ต๋ฐ์ดํฐ๋ฅผ ์ผ๋ถ ๋ถํฌ์์๋ง ์ํ๋งํ ๊ฒฝ์ฐ
2. Bias
: Approximation model๊ณผ true function์ ์ฐจ์ด์ ์ํ ์๋ฌ
= ๊ทผ์ฌ์น๋ก ๋ง๋ค์ด๋ธ ํจ์์ ์ค์ ์ฐพ๊ณ ์ ํ๋ ํจ์(์ฐ๋ฆฌ๊ฐ ๊ตฌํ๊ณ ์ถ์๊ฑฐ์ง ์๋ฌด๋ ์ด๊ฑด ๋ชจ๋ฆ)๊ฐ์ ์ฐจ์ด
- ๋ชจ๋ธ์ด ์์ธกํ ๊ฐ๊ณผ ๋ง์ด ๋ฒ์ด๋ ์ค์ ๋ฐ์ดํฐ๊ฐ ์ง์ง ์ด์์น์ธ๊ฐ, ๋ชจ๋ธ์ ์ด์์ ์๋์ง ํ๋จ ํ์
- ๋ชจ๋ธ์ด ๋จ์ํ ์๋ก ๊ฐ์๊ธฐ ์๋ฌ๊ฐ ๋ง์ด ์ฐจ์ด ๋๋๊ฒ ์๋๋ผ ์กฐ๊ธ์ฉ ๋ค ์ฐจ์ด๋๊ฒ ๋จ ⇒ ์ด์์น ์ ๋์ ๋ง์ด ์ฐจ์ด๋๋๊ฒ ์ข์์ง ์ ํํ๊ฒ ์์ธก์ ์๋๋๊ฒ ์ข์์ง๋ ์ํฉ์ ๋ฐ๋ผ ๋ค๋ฆ
3. noise์ ์ํ ์๋ฌ ⇒ ์ ๊ฑฐ ๋ถ๊ฐ (์ ๊ฑฐํ ์ ์๊ธฐ ๋๋ฌธ์ ์๊ณ ๊ฐ์ผํจ)
variance ์ค์ด๋ ๋ฐฉ๋ฒ
: ๋ฐ์ดํฐ ์ ์ ํฌ๊ธฐ ๋๋ฆฌ๊ธฐ ⇒ ์ ์ฒด์ ์ผ๋ก ๋๋ฆฌ๊ธฐ (๋ถํฌ๋ฅผ) / ๋ค๋ค์ต์ ์. / infinite data sampling
bias ์ค์ด๋ ๋ฐฉ๋ฒ
: ๋ชจ๋ธ์ ๋ณต์ก๋ ์ฌ๋ฆฌ๊ธฐ / true function์ ์๊ณ ์๊ธฐ(์คํ ๋ถ๊ฐ) → ๋ณต์ก๋ ์ฌ๋ฆฌ๋ ๋ฐฉ๋ฒ : ๋ชจ๋ธ ์์ฑ์, ์กฐ์ ํ๊ธฐ
๊ฐ์ ์ ์ผ๋ก ์ข์ ๋ชจ๋ธ ํ์ธ ํ๋ ๋ฐฉ๋ฒ
1. ํ์ํ ์ด์ : ํ์ค์์๋ infinite data sampling๊ณผ true function์ ์ ์ ์์ ์ ์๊ธฐ ๋๋ฌธ
2. ์ข ๋ฅ : cross validation / precision, recall, f1-score
training, testing, cross-validation set
⇒ ์ธ๊ฐ๋ก ๋๋๋๊ฒ ๊ฐ์ฅ idealํจ
1. training set (ํ๋ผ๋ฏธํฐ ํ์ต์ฉ)
: ๋ชจ๋ธ์ ํ๋ จ์ํค๋๋ฐ ์ฌ์ฉํ๋ ๋ฐ์ดํฐ ⇒ ์ค์ ๋ฐ์ดํฐ์ ๋ถํฌ๊ฐ ํธ๋ ์ด๋ ์ ๊ณผ ์์ดํ ๊ฒฝ์ฐ ๋ฌธ์ ๊ฐ ์์
2. testinig set (ํ์ดํผํ๋ผ๋ฏธํฐ ํ๋์ฉ)
: ๋ฏธ๋์ ์ผ์ด๋ ๋ฐ์ดํฐ์ธ๊ฒ ์ฒ๋ผ ๊ฐ์ฃผ
๋ ๋ฐ์ดํฐ ์ ์ ๋ฐ์ดํฐ๋ ์์ด๋ฉด ์๋๊ณ ๋์ผํ ๋ถํฌ๋ฅผ ์ ์งํด์ผํจ
⇒ ๋์ผํ ๋ถํฌ๊ฐ ์๋๋ผ๋ฉด ๋ค๋ฅธ ๋ฐ์ดํฐ ์ ์
3. cross validation (๊ต์ฐจ๊ฒ์ฆ) (ํผํฌ๋จผ์ค ๋งคํธ๋ฆญ์ค ๊ณ์ฐ์ฉ)
(1) ์ฌ์ฉํ๋ ๊ฒฝ์ฐ : ๋ฐ์ดํฐ๊ฐ ๋ถ์ถฉ๋ถํ ๋
(2) ๋ฐฉ๋ฒ : ํ๋ จ ์ ์ ์ฌ๋ฌ๊ฐ์ sub set์ผ๋ก ๋๋๊ณ ๊ฐ ๋ชจ๋ธ์ ์ด ์๋ธ์ ์ ์กฐํฉ์ผ๋ก ํ๋ จ์ํค๊ณ ๋๋จธ์ง ๋ถ๋ถ์ผ๋ก ๊ฒ์ฆ
(3) ex - 5๊ฐ์ ์๋ธ์ ์ผ๋ก ๋๋๋ค
⇒ 4๊ฐ : ํ๋ จ์ฉ, 1๊ฐ : ๊ฒ์ฆ์ฉ
⇒ ๋ฃจํ๋ฅผ ๋๋ฆด ๋ ๋ง๋ค ๊ฐ๊ฐ ๋ค๋ฅธ ์๋ธ์ ์ด ๊ฒ์ฆ์ฉ์ผ๋ก ๋ค์ด๊ฐ๊ฒ ํจ ⇒ ์์ด์ง ์๊ณ ๋์ผํ ๋ถํฌ์
⇒ ์ด ๊ฒฐ๊ณผ๋ฅผ ํ๊ท ๋
ํธํฅ๋ ๋ฐ์ดํฐ์ ๋ชจ๋ธ ํผํฌ๋จผ์ค
ํผ๋ํ๋ ฌ
: ์ผ๋ฐ์ ์ผ๋ก ๋ชจ๋ธ ํผํฌ๋จผ์ค๋ฅผ ํํํ๊ธฐ ์ํด ๊ทธ๋ฆฌ๋ ๊ฒ
1. ์ ์ฌ ์ํฉ : ์ ์๊ณผ ๋น์ ์์ ๊ตฌ๋ถํ ์ ์์ (๋ ์ด๋ธ๋ง ํ ์ ์์)
2. ๋ถ๋ฅ
=>์ ๋๋ก ๋ถ๋ฅํ๊ฒ : TP, TN / ์ค๋ถ๋ฅํ๊ฒ : FP, FN
| ์์ธก๊ฐ ์ค์ ์ ๋ต |
O | X | |
| O | TP (true positive) | FP (false positive) | Precision |
| X | FN (false negative) | TN (true negative) | |
| Recall |
3. ์ ํ๋ (classification rate) (accuracy)
: ๋จ์ ์ ํ์ฑ → ์ ์ฒด ๋ฐ์ดํฐ ์ค ์ ๋๋ก ๋ถ๋ฅ๋ ๋ฐ์ดํฐ์ ๋น์จ
- ๊ณต์ : $\frac{(TP + TN)}{(TP+TN+FP+FN)}$
- ๋ฌธ์ ์ : 99%๊ฐ positive, 1%๊ฐ negative ์ธ ๋ฐ์ดํฐ ๋ถํฌ์์, ์ ์ฒด๋ฅผ positive๋ก ์์ธกํ ๊ฒฝ์ฐ negative๋ ํ๋๋ ๋ง์ถ์ง ๋ชปํ์ง๋ง ์ ํ๋๊ฐ 99%๋ก ๋๊ฒ ๋์จ๋ค
4. ์ ๋ฐ๋ (precision)
: ๋ชจ๋ธ์ด ์ด ์ํ์ true๋ก ๋ถ๋ฅํ์ ๋, ์ผ๋ง๋ ์์ฃผ ๋ง์ถ์๋๊ฐ? (= positive๋ก ๋ถ๋ฅํ์ ๋์ ์ ํ์ฑ ์ธก์ )
- ๊ณต์ : $\frac{TP}{(TP+FP)}$
- ํน์ง : 1์ ๊ฐ๊น์ธ ์๋ก ์ข์
- ์ฌ์ฉํ๋ ๊ฒฝ์ฐ : ๋ถ๋ฅํ ์ผ์ด์ค๊ฐ ์ ํํ ๊ฒ์ถ๋๊ณ ์ถ์ ๊ฒฝ์ฐ (= confidence ์์ค ์ฌ๋ฆฌ๊ณ ์ถ์ ๊ฒฝ์ฐ)
- Example : ํฌ๋ฅด๋ ธ ์์ ๊ฒ์ถ๊ธฐ - ํฌ๋ฅด๋ ธ๋ก ๋ถ๋ฅํ์ ๋ ์ค์ ํฌ๋ฅด๋ ธ์ธ ๋น์จ
5. ๋ฏผ๊ฐ๋ (recall)
: ์ ์ฒด positive ๋ฐ์ดํฐ ์ค positive๋ก ๋ถ๋ฅํ ๋น์จ
- ๊ณต์ : $\frac{TP}{(TP+FN)}$
- ํน์ง : 1์ ๊ฐ๊น์ธ ์๋ก ์ข์
- ์ฌ์ฉํ๋ ๊ฒฝ์ฐ : positiveํ ์ผ์ด์ค๋ฅผ ๋์น๊ณ ์ถ์ง ์์ ๊ฒฝ์ฐ → ์๋ชป ๋ถ๋ฅํ๊ฒ ๋ง์๋ ๋๋๊น ๋ค ์ก์๋ด๊ธฐ
- EXAMPLE : ํฌ๋ฅด๋ ธ ์์ ๊ฒ์ถ๊ธฐ - ์ ์ฒด ํฌ๋ฅด๋ ธ ์ค ํฌ๋ฅด๋ ธ๋ก ๋ถ๋ฅ๋ ๋น์จ
Precision, recall trade off
- threshold : ๊ธฐ์ค์น → ๋ช ํ๋ก๋ง ๋์ผ๋ฉด ํด๋น ๊ฐ์ผ๋ก ๋ถ๋ฅํ๊ฒ ๋ค
- ex) threshold = 50%์ผ ๋, 5์ผ ํ๋ฅ ์ด 49%๋ฉด 5๊ฐ ์๋๋ค.
- threshold๊ฐ ๋ฎ์ ⇒ precision ๋ฎ์, recall ๋์
- threshold๊ฐ ๋์ ⇒ precision ๋์, recall ๋ฎ์
- F1 ์ค์ฝ์ด (์กฐํํ๊ท )
- ๊ณต์ : $2*\frac{Precision \ * \ recall}{Precision\ + \ recall}$
- ์ฑ๋ฅ : 1์ ๊ฐ๊น์ธ ์๋ก ์ข์ → Precision == recall == 1 ์ธ ๊ฒฝ์ฐ์ ๊ฐ๊น์ด ๊ฒ์ด๊ธฐ ๋๋ฌธ
- ์ฌ์ฉํ๋ ๊ฒฝ์ฐ : ์ ์ฒด์ ์ฑ๋ฅ ์ธก์ ์ ํ์ฉ
- ROC Curve (Receiver Operating Characterisitc Curve) (์์ ์ ์กฐ์ ํน์ฑ ๊ณก์ ) (=ROC AUC)
- X์ถ : FPR (= $\frac{FP}{(FP+TN)}$ = negative๋ฅผ positive๋ก ์๋ชป ๋ถ๋ฅํ ๋น์จ)
- y์ถ : TPR (= $\frac{TP}{(TP+FN)}$ = recall )
- ์ง์ ์๋๋ก๋ ์๋ด๋ ค๊ฐ
- ์ฑ๋ฅ : ๋ฉด์ ์ด ๋์ ์๋ก ์ข์ ⇒ roc_auc_score๋ก ๋ถ๋ฅ๊ธฐ๊ฐ์ ์ฑ๋ฅ ๋น๊ต ๊ฐ๋ฅ