๐ ๊ต๋ด '์ธ๊ณต์ง๋ฅ' ์์ ์ ํตํด ๊ณต๋ถํ ๋ด์ฉ์ ์ ๋ฆฌํ ๊ฒ์ ๋๋ค.
1๏ธโฃ Regularization
โ Loss function
(1) Cross Entropy loss function
- ๋ถ๋ฅ๋ฌธ์ ์์ ๋ง์ด ์ฌ์ฉ๋๋ ๋น์ฉํจ์
- ti ์ oi ์ ๊ฑฐ๋ฆฌ๋ฅผ ์ธก์ ํ์ฌ ๋ ๊ฐ์ด ๋ค๋ฅผ์๋ก ์ฆ, ๊ฑฐ๋ฆฌ๊ฐ ๋ฉ์๋ก loss ๊ฐ ์ฆ๊ฐํ๋ค. ๋ ๊ฐ์ ์ฐจ์ด๊ฐ 1์ ๊ฐ๊น์ธ์๋ก ์ฆ error ๊ฐ ์กด์ฌํ ๋ loss ๊ฐ ์ฆ๊ฐํ๊ณ ์ฐจ์ด๊ฐ 0์ ๊ฐ๊น์ธ์๋ก loss ๊ฐ ๋ฎ์์ง๋ค.
โพ ti : ground truth label
โพ oi : NN output
โพ C : number of class
๐ ์ํธ๋กํผ๊ฐ ๋๋ค = NN ์ ์์ธก์ด ๋ถํ์คํ๋ค.
๐ ์ํธ๋กํผ๊ฐ ๋ฎ๋ค = NN ์ ์์ธก์ด ํ์คํ๋ค.
(2) Entropy
- ํ๋ฅ ๋ณ์์ ๋ถํ์ค์ฑ
- ํ๋ฅ ๋ณ์ X
- ํ๋ฅ ๋ณ์์ ๋ํ ํ๋ฅ ๋ถํฌ : p(x)
- H(x) ์์ ์์๊ฐ ๋ถ๊ฒ๋ ์ด์ : p(x) ๋ 0๊ณผ 1 ์ฌ์ด์ ๊ฐ์ ๊ฐ์ง๊ฒ ๋๋ฏ๋ก log ๊ฐ์ด ์์๊ฐ ๋์ค๊ธฐ ๋๋ฌธ์ ๋ค์ ์์๋ก ๋ณํํด์ฃผ๊ธฐ ์ํจ + p(x) ์ ๋ถํ์ค์ฑ์ด ๋์์ง์๋ก ์ํธ๋กํผ ๊ฐ์ด ์ปค์ ธ์ผ ํจ
๐ ์ํธ๋กํผ๊ฐ ๋ฎ๋ค = ์ผ๊ฐํ์ด๋ ์์ ๋ฝ์ ํ๋ฅ ์ด ๋ช ํํ๋ค = ์ฃผ์ด์ง ๋ชจ์์ ๋ฝ์ ํ๋ฅ ์ด ํ์คํ๋ค.
- Container2 ์ ๊ฒฝ์ฐ ์๊ณผ ์ผ๊ฐํ ์ค์ ๋ฌด์์ ๋ฝ๊ฒ๋ ์ง ๋ถํ์คํ๋ฏ๋ก ์ํธ๋กํผ๊ฐ ๋๋ค.
(3) loss function ์ ์ข ๋ฅ
1. binary cross-entropy loss for binary classification
2. Categorical cross-entropy loss for multi-class classification
โก Regularization
- ์ค๋ฒํผํ ์ ๋ฐฉ์งํ๊ธฐ ์ํด ์ถ๊ฐ์ ์ธ ์ ๋ณด๋ฅผ ๋ฃ์ด์ฃผ๋ ๊ฒ
- ๊ฐ์ฅ ํํ ํจํด : ํ๋ จ ๊ณผ์ ์ ์์์ฑ randomness ์ ๋ถ์ฌํ๋ ๊ฒ ๐ ๋๋คํ ๋ ธ์ด์ฆ๋ฅผ ํฌํจํ์ฌ ํ์ต์ด ์ด๋ฃจ์ด์ง๋ฏ๋ก ๋ฏธ๋์ ์ผ๋ฐํ๋ ๋ฐ์ดํฐ์ ๋ํด ์ ๋์ํ๋ค.
โข Overfitting
- ์ผ๋ฐํ๊ฐ ์ด๋ฃจ์ด์ง์ง ์๊ณ ํน์ํ ์ํฉ์ ๋ํด์๋ง ๋ง์ถฐ์ ํ๋ จ์ด ๋ ์ํฉ
- high variance ๐ validation error much higher than training error
2๏ธโฃ ์ค๋ฒํผํ ์ ๋ง๋ ๋ฐฉ๋ฒ
โ Use Validation set
๊ฒ์ฆ๋ฐ์ดํฐ๋ ํ์ต๋ฅ , ์ํฌํฌ์, ์๋์ธต ๊ฐ์ ๋ฑ์ ๋ชจ๋ธ์ ํ๋ผ๋ฏธํฐ๋ฅผ ์ต์ ํํ๋๋ฐ ์ฌ์ฉํ๋ค.
- Validation set is used to optimize the model parameters while the test set is used to provide an unbiased estimate of the final model
- ํ ์คํธ ๋ฐ์ดํฐ์ ์ ๊ฒ์ฆ๋ฐ์ดํฐ ์ ์ ํตํด ๊ฒฐ์ ๋ ์ต์ข ๋ชจ๋ธ์ ์ฑ๋ฅ์ ํ๊ฐํ๋๋ฐ ์ฌ์ฉํ๋ค.
- validation ๊ณผ์ ๋ํ ํ์ต์ ์ํฅ์ ๋ฏธ์น๋ค. ํ๋ผ๋ฏธํฐ๋ฅผ ๋ณ๊ฒฝํ ๋ validation loss ๋ฅผ ๋ณด๊ณ ๋ณ๊ฒฝํ๋๋ฐ,์ด๋ ๊ฒ ์ง์์ ์ผ๋ก ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ๊พธ๋ ๊ฒ ์์ฒด๊ฐ validation dataset ์ optimize ๋ ํ๋ผ๋ฏธํฐ๋ก ๋ฐ๊พผ๋ค๋ ์๋ฏธ! ๐ ์ด๊ฑธ ์ต์ข output ์ผ๋ก ๋ด๋ฉด ์ผ๋ฐํ๊ฐ ์ด๋ ค์ (validation ์ bias ๋ ๋ชจ๋ธ์ ๋ง๋ค๊ฒ ๋จ)
- ์ผ๋ฐ์ ์ธ ๋ชจ๋ธ์ ๋ง๋ค๋ ค๋ฉด ํ์ต ๊ณผ์ ์ ์ ํ ์ฐธ์ฌํ์ง ์์ test data set ์ด ํ์ํ๋ค ๐ ์ด๋ ์ํฉ์๋ bias ๋์ง ์์ ๋ชจ๋ธ์ ์ฑ๋ฅ์ ๋์ถํ ์ ์๊ฒ ๋๋ค.
โก ๋ชจ๋ธ์ ๋ณต์ก๋ ๋ฎ์ถ๊ธฐ
- ์ฃผ์ด์ง ๋ฐ์ดํฐ์ ํน์ง์ ๋นํด ๋๋ฌด ๋ณต์กํ ๋ชจ๋ธ์ ์ฌ์ฉํ๋ฉด ์ค๋ฒํผํ ์ด ๋ฐ์ํ๋ค.
โข Larger Dataset Size
- ๋ฐ์ดํฐ๊ฐ ๋ง์์๋ก ์ค๋ฒํผํ ์ ๋ง์ ์ ์๋ค.
๐ Data Augmentation ๋ฐ์ดํฐ ์ฆ๊ฐ
- ์ด๋ฏธ์ง ๋ถ๋ฅ ๋ฌธ์ ์์ ๋ฐ์ดํฐ๊ฐ ๋ง์ง ์์ ๋ ์ฌ์ฉํ ์ ์๋ ๋ํ์ ์ธ ๋ฐฉ๋ฒ
โฃ Weight decay
- ์ค๋ฒํผํ ์ด ์ผ์ด๋ ์๋ก ๊ฐ์ค์น ๊ฐ์ด ์ปค์ง๋ ๊ฒฝํฅ์ด ์์ (ํน์ ์ํฉ์๋ง ๋ง๋ ๊ฐ์ค์น๋ฅผ ๋ง์ด ์ฆ๊ฐ์ํด)
- ๊ฐ์ค์น ๊ฐ์ ์๊ฒ ์ ์งํ ์ ์๋๋ก loss function ์ L1 ํน์ L2 ์ ์นํ ๋ถ๋ถ์ error function์ ๋ฃ์ด์ค
- λ lambda : weight decay ์ ์ํฅ๋ ฅ์ ์กฐ์ ํ๋ ํ๋ผ๋ฏธํฐ
โค Early stopping
โฅ Dropout
- connection ์ด ์์ด๋ ํ๋ จ๋ ์ ์๋๋ก ์ ๋ ๐ ์ผ๋ฐํ = ๋ ธ์ด์ฆ๋ฅผ ์ฝ์ ํ ํจ๊ณผ
- ํ๋ จ๋จ๊ณ์์ ๋ด๋ฐ ์ฌ์ด์ ์ฐ๊ฒฐ(์๋ ์ค)์ ๋๋คํ๊ฒ ๋์ (drop)
- ํ์ดํผํ๋ผ๋ฏธํฐ P : p ๋น์จ๋งํผ ์ฐ๊ฒฐ์ ์ ๊ฑฐ
- ์์. dropout 0.5: drop half of connections
- Test ๋จ๊ณ์์๋ ์ ๊ฒฐํฉ ๋คํธ์ํฌ๋ฅผ ์ฌ์ฉํ๋ค.
โฆ Batch Normalization
์ด๋ฏธ์ง์ input feature ํน์ activation ๋ค์ ํ๊ท ๊ณผ ๋ถ์ฐ์ ํน์ ํ ๊ฐ์ผ๋ก ๋ฐ๊ฟ์ฃผ๋ ๊ณผ์
๊ฐ ๋ ์ด์ด๋ง๋ค ์ ๊ทํ ํ๋ ๋ ์ด์ด๋ฅผ ๋์ด, ๋ณํ๋ ๋ถํฌ๊ฐ ๋์ค์ง ์๋๋ก ์กฐ์ ํ๊ฒ ํ๋ ๊ฒ์ด ๋ฐฐ์น ์ ๊ทํ
๐ mean ์ ๋ฐ๊พผ๋ค = ์ ์ฒด ํฝ์ ๊ฐ์ shift ํ๋ ํจ๊ณผ
๐ variance ๋ฅผ ๋ฐ๊พผ๋ค = ํฝ์ ๊ฐ์ scaling ํด์ฃผ๋ ํจ๊ณผ
๐ ์ด๋ฏธ์ง๋ฅผ ์ด๋ ๊ฒ ๋ณํํ๋ฉด regularization ํจ๊ณผ๋ฅผ ๊ฐ์ ธ๋ค์ค์ ํ๋ จ์ด ๋ ์๋๋ค.
๐ ๋งค layer ๋ง๋ค ํ๊ท ๊ณผ ๋ถ์ฐ๊ฐ์ด ์กด์ฌ : ํ๊ท ๊ณผ ๋ถ์ฐ๊ฐ ์์ฒด๋ฅผ ํ๋ จํจ ๐ ์ด๋ฏธ์ง๊ฐ ์ด๋ค ๋ฐฉํฅ์ผ๋ก shift ๋๊ณ scaling ๋์ด์ผ ๊ฐ์ฅ ์ ํฉํ normalization์ด ๋๋์ง ๊ธฐ๊ณ๊ฐ ์์์ ์ฐพ์
'1๏ธโฃ AIโขDS > ๐ Deep learning' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ธ๊ณต์ง๋ฅ] NLP (0) | 2022.06.10 |
---|---|
[์ธ๊ณต์ง๋ฅ] RNN (0) | 2022.06.07 |
[์ธ๊ณต์ง๋ฅ] ๋ค์ํ CNN ๋ชจ๋ธ (0) | 2022.04.26 |
[์ธ๊ณต์ง๋ฅ] Training CNN (0) | 2022.04.26 |
[์ธ๊ณต์ง๋ฅ] CNN (0) | 2022.04.23 |
๋๊ธ