๐ [Lec1] Neural Networks & Deep Learning
Shallow Neural Network
3์ฃผ ์ฐจ ๋ชฉํ
- Describe hidden units and hidden layers
- Use units with a non-linear activation function, such as tanh
- Implement forward and backward propagation
- Apply random initialization to your neural network
- Increase fluency in Deep Learning notations and Neural Network Representations
- Implement a 2-class classification neural network with a single hidden layer
3์ฃผ ์ฐจ ํ์ต ๋ด์ฉ
- ์ง๋ ์๊ฐ์ Logistic Regression์ ๋ํด ํ์ตํ๋ค
- ์ด๋ฒ ์ฃผ๋ ์์ ์ ๊ฒฝ๋ง์ ์๊ณ ๊ตฌํํ๋ ์๊ฐ์ ๊ฐ๋๋ค
- Neural Network๋ ๋ฌด์์ธ๊ฐ
- Weight ์ด๊ธฐํ๋ฅผ ์ด๋ป๊ฒ ํด์ผํ ๊น
- Vectorization์ ํตํด ์ฌ๋ฌ ์ํ๋ค์ ์ด๋ป๊ฒ ํ์ต์ํฌ ์ ์๋๊ฐ
- Activation Function์ ์ฌ์ฉํ๋ ์ด์ ์ ์ข ๋ฅ์ ๋ํด ์์๋ณธ๋ค
↓ 2์ฃผ ์ฐจ Logistic Regression์ ๋ํ ์ ๋ฆฌ๋ ธํธ๋ ์๋์ ๋งํฌ์์ ํ์ธํด ๋ณผ ์ ์๋ค
1. Computing a Neural Network's Output
- 1๊ฐ์ Feature Vector๊ฐ ์ฃผ์ด์ง๋ฉด ์ฝ๋ 4์ค๋ก Single Neural Network๋ฅผ ๊ณ์ฐํ ์ ์๋ค
- Logistic Regression์ ๊ตฌํํ๋ ๊ฒ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก Vectorํ๋ฅผ ํตํด ํธ๋ ์ด๋ ์ํ์ ํ์ต์ํฌ ์ ์๋ค
- Vectorization → Whole Training Sample์ ํ์ต์ํฌ ์ ์๋ค
2. Vectorizing across multiple examples
e.g a[2](i): ์ฒซ ๋ฒ์งธ ์ํ 2๋ฒ์งธ ๋ ์ด์ด์ ๊ฐ
- m๊ฐ์ training sample์ ๋ํด Vectorํ๋ฅผ ํด๋ณด์
์์ ์๊ณ ๋ฆฌ์ฆ์ ์์ 1๋ฒ์์ ๋งํ๋ ์ฝ๋ 4์ค๋ก Neural Network ๊ตฌํํ ์ ์๋ค๋ ๊ฒ์ ๋ณด์ฌ์ค๋ค.
3. Activation Functions
- ์ผ๋ฐ์ ์ผ๋ก ์ข์ ์ฑ๋ฅ์ ๋ด๋ ํ์ฑํ ํจ์๊ฐ ๋ชจ๋ ๋ฌธ์ ์์ ์ต์ ์ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ ธ๋ค์ฃผ์ง๋ ์๋๋ค
- ํ์ฑํ ํจ์๊ฐ ์ต์์ ๊ฒฐ๊ณผ๋ฅผ ๋ด๋์ง ๋ชจ๋ฅด๊ฒ ๋ค๋ฉด, ์ ๋ถ ์๋ํด๋ณด๊ณ ํ๊ฐํด๋ณด๋ ๊ฒ์ ์ถ์ฒํ๋ค
Then... Why do we need non-linear activation functions?
4. Why do you need non-linear activation functions
- Non-linear Activation Function์ด ์๋ค๋ฉด ์ฌ๋ฌ layer๋ฅผ ์์๋ linear function๊ณผ ๊ฐ์์ง๋ค
- Activation์ ์์์ผ ํ๋ '์ด์ '๋ฅผ ์๋ฉด ๋ด๋ด๋ท์ ํ์ต ๊ณผ์ ์ด ๋ ์ฌ๋ฐ์ด์ง ๊ฒ์ด๋ค
5. Backpropagation Intuition
6. Random Initialization
- Why? - ๋ง์ฐฌ๊ฐ์ง weight๊ฐ์ ๋๋คํ๊ฒ ์ด๊ธฐํํ๋ ์ด์ ๋ฅผ ์๋ ๊ฒ์ด ์ค์ํ๋ค
โ ์ weight๋ฅผ ์์ ๊ฐ์ผ๋ก ์ด๊ธฐํ ํ๋๊ฑด๊ฐ?
- ๋ง์ฝ w๊ฐ ํฌ๋ค๋ฉด z๊ฐ๋ ์ปค์ง ๊ฒ์ด๊ณ
- ๊ทธ๋ ๊ฒ ๋๋ฉด sigmoid ํจ์๋ tanh ํจ์๊ฐ Saturation ๋ ๊ฒ์ด๋ค
- ๋ฐ๋ผ์ ์์ ์๋ก weight๋ฅผ ์ด๊ธฐํํ๋ ๊ฒ์ด ์ผ๋ฐ์ ์ด๋ค
โ weight๋ฅผ ํฐ ๊ฐ์ผ๋ก ์ด๊ธฐํํ๋ฉด ์ ๋๋ ๊ฑด๊ฐ? (์ด ๊ฒฝ์ฐ๋ ํ ๋ฒ ์๊ฐํด๋ณด์)
- weight๊ฐ์ ํฐ ๊ฐ์ผ๋ก ์ด๊ธฐํํ ๊ฒฝ์ฐ sigmoid function๊ณผ tanh function์ ๊ฒฐ๊ณผ ๊ฐ์ด ํฐ ๊ฐ์ ๊ฐ๊ฒ ๋๋ค
- ๋ฐ๋ผ์ Backpropagation ์ํ ์ ๊ธฐ์ธ๊ธฐ๊ฐ 0์ weight๊ฐ์ด ๊ฐ์ด ์ ๋ฐ์ดํธ๋๊ธฐ ๋๋ฌธ์ ํ์ต์ด ๋๋ ค์ง ๊ฒ์ด๋ค(์ต์ ํ ์๊ณ ๋ฆฌ์ฆ์ ์ํ์ด ๋๋ ค์ง๋ค)
- ์ด๋ฅผ Saturation์ด๋ผ๊ณ ํ๋ค
Summary
- ์ง๋ ์๊ฐ์๋ Deep Learning์ ๊ธฐ๋ณธ์ด๋ผ๊ณ ํ ์ ์๋ Logistic Regression๊ณผ Cost Function์ ๋ํด ํ์ตํ๋ค
- ์ด๋ฒ ์๊ฐ์๋ Shallow Neural Network๋ผ๋ 1๊ฐ์ hidden layer๋ฅผ ๊ฐ๋ ์์ ์ ๊ฒฝ๋ง์ ์ง์ ๊ตฌํํด ๋ดค๋ค
- ๊ตฌํ ๊ณผ์ ์์ ํ์ํ ์ง์์ผ๋ก๋ ์ฌ๋ฌ ํธ๋ ์ด๋ ๋ฐ์ดํฐ๋ฅผ ํ ๋ฒ์ ๊ณ์ฐํ ์ ์๋ 'Vectorization'์ Activation Function์ ๋ํ ๊ฐ๋ ์ด ํ์ํ๋ค
- Assignment๋ก๋ Shallow Neural Network๋ฅผ ํตํ Binary Classification ๊ณผ์ ๊ฐ ์ฃผ์ด์ง๋ค
- Network๋ฅผ ์ ์ํ๊ณ , Weight๋ฅผ ์ด๊ธฐํํ๊ณ , Forwardprop/Backprop ๊ณ์ฐ์ ํ๊ณ , Weight๋ฅผ ์ ๋ฐ์ดํธํด์ฃผ๋ ์ผ๋ จ์ ํ๋ก์ธ์ค๋ฅผ ๊ธฐ์ตํ๋๋ก ํ์
- ๊ณผ์ ๋ฅผ ๊ตฌํํ๋ ๊ณผ์ ์์ ์์ ์๊ฐ์ ๋ช ํํ๊ฒ ์ดํด๊ฐ ๊ฐ์ง ์์๋ ๋ถ๋ถ์ ์ดํดํ ์ ์์๋ ๊ฒ ๊ฐ๋ค
- ์ด๋ ๊ฒ 3์ฃผ ์ฐจ๊น์ง ๋น ๋ฅด๊ฒ ๋ฌ๋ ค์๋ค. ์์ผ๋ก์ ์๊ฐ์ด ๋ ๊ธฐ๋๋๋ค -20.11.08.Sun.pm5:50-
Reference
๋๊ธ