1. Preprocess the data
๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ ๊ณผ์ ์ผ๋ก ์ด๋ฏธ์ง ์ธ์ ๋ฌธ์ ์์๋ zero-centered๋ง์ ์ฌ์ฉํ๋ค.
ย
2. Choose the architecture
Hidden layer๋ฅผ ์ด๋ป๊ฒ ๊ตฌ์ฑํ ๊ฒ์ธ์ง ๋ฑ์ ์ ํํ์ฌ ํฐ ํ์ ์ก์๋๊ณ ์งํํ๋ค.
ย
3. Check that the loss is reasonable
3๊ฐ์์ ๋ฐฐ์ ๋ sanity check ๋ฐฉ๋ฒ์ ํ์ฉํ๋ค. regularization ์ถ๊ฐ ํ loss ์ ๋ณํ๋ฅผ ํ์ธํ๋ค.
ย
4. Train 1
์์ ๋ฐ์ดํฐ ์
์ ๋จผ์ ๋ฃ์ด train์ ์งํํ๋ค. regularization์ ์ฌ์ฉํ์ง ์๊ณ , epoch๋ง๋ค loss๋
๊ฐ์ํ๋์ง train accuracy๋ ์ฆ๊ฐ ํ์ธํ๋ค.
๋ฐ์ดํฐ ์๊ฐ ์๊ธฐ ๋๋ฌธ์ overfitting ๋ฐ์ํด์ผ ํ๊ณ train accuracy๊ฐ 100%๊ฐ ๋์ค๋ ๊ฒ์ ํ์ธํ๋ฉด๋ชจ๋ธ์ด ์ ๋๋ก ์๋ํ๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค.
ย
5. Train 2
regulaization์ ์กฐ๊ธ์ฉ ์ฃผ๋ฉฐ learning rate ์ฐพ๋ ๊ณผ์ ์ ๊ฑฐ์น๋ค. learning rate๊ฐ ์์ผ๋ฉด gradient ์
๋ฐ์ดํธ๊ฐ ์ถฉ๋ถํ ์ผ์ด๋์ง ์์ loss๊ฐ ์ค์ด๋ค์ง ์๊ณ , ๋๋ฌด ํฌ๋ฉด NaNs ๋ก ๋ฐ์ฐํ๊ฒ ๋๋ค.