MLP - Multi Layer Perceptron
๊ฐ์ฅ ๊ธฐ์ด๊ฐ๋๋ Feed Forward ANN (artificial neuron network) ๋ชจํ์ด๋ค. - ์ธ๊ณต์ง๋ฅ ๋ชจํ์ ๊ธฐ๋ณธ!
MLP๋ ์ธ๊ฐ์ง ์์๊ฐ ๋ค์ด๊ฐ๋ค
Input์๋ input ๊ฐ์ด ๋ค์ด๊ฐ๊ณ
Hidden์์๋ input์ ๊ด๊ณ๋ค์ ํ์ตํ๋ค.
๋น์ ํ ๋ชจํ์ ํ์ตํ๊ธฐ ์ํ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๋ฅ๋ฌ๋ ๋ชจํ์ด๋ค.
์ผ๋ฐ ARIMA ๋ชจํ๊ณผ๋ ๋ค๋ฅด๊ฒ ๋ ธ์ด์ฆ๋ Missing Value์๋ ์ ๋์ฒํ ์ ์๋ค.
์ฌ๋ฌ ํํ์, ์ฌ๋ฌ๊ฐ์ input ์ ๋ฐ์ ์ ์๋ค. Multi-step ์์ธก ๊ฐ๋ฅํ๋ค.
MLP์ ์๊ณ์ด ๋ฐ์ดํฐ์์์ ํ๊ณ
์ง์์ ์ธ ์๊ฐ์ ํ์ง ๋ชปํ๋ค.
์๋ฅผ๋ค์ด ์ํ์ ๋งค ์๊ฐ ์ผ์ด๋๋ ์ฌ๊ฑด์ ๋ถ๋ฅํ ๋ ์ด์ ๊น์ง ์ผ์ด๋ฌ๋ ์ฌ๊ฑด์ ๋ฐํ์ผ๋ก ์์ธกํ์ง ๋ชปํ๊ณ ์๊ฐ ์๊ฐ์ ์ํฉ๋ง์ ํ๋จํ์ฌ ์์ธกํ๋ค๋ ๋ป์ด๋ค. RNN์ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋๋ฐ ์ค์ค๋ก๋ฅผ ๋ฐ๋ณตํ๋ฉด์ ์ด์ ๋จ๊ณ์์ ์ป์ ์ ๋ณด๊ฐ ์ง์์ ์ผ๋ก ๊ธฐ์ต๋๋๋ก ํ๋ค.
์ด๋ฌํ ๊ฒ๋ค์ ๊ทน๋ณตํ๊ธฐ ์ํด์ MLP๋ณด๋ค๋ ๋ณต์กํ์ง๋ง ์๊ณ์ด ๋ฐ์ดํฐ๋ context๋ฅผ ์ดํดํ ์ ์๋ ๋ฅ๋ฌ๋ ๋ชจํ์ ๋ฐฐ์๋ณผ ๊ฒ์ด๋ค.
๋ฅ๋ฌ๋ ๊ธฐ์ด ๊ตฌ์ฑ
๋ฅ๋ฌ๋์ ์ฌ๋ฌ ๋จ๊ณ๋ฅผ ๊ฑฐ์ณ ๊ฒฐ์ ์ ๋ง๋ค์ด๋ด๋ ์ ํ ๋ชจ๋ธ์ ์ผ๋ฐํ๋ ๋ชจ์ต์ด๋ค.
๋จ์ธต Perceptron - single layer
x๊ฐ์ ๋ฃ์ด์ y๋ฅผ ์์ธกํ๊ณ ์ถ์ดํ๋ค.
x๊ฐ์ด ์ฌ๋ฌ ๊ฐ ์ด๊ธฐ ๋๋ฌธ์ w๊ฐ (๊ธฐ์ธ๊ธฐ) ๊ฐ๋ค์ ํ์ตํ๊ฒ ๋๋ค.
๋ค์ธต Perceptron
Hidden layer ๋ผ๋ ๋ฅ๋ฌ๋์ ํต์ฌ ๊ตฌ์กฐ๊ฐ ๋ค์ด๊ฐ๊ฒ ๋๋ค!
MLP์์๋ ๋จผ์ ์ค๊ฐ ๋จ๊ณ๋ฅผ ๊ตฌ์ฑํ๋ Hidden Unit์ ๊ณ์ฐํ๊ณ ์ด๋ฅผ ์ด์ฉํ์ฌ ์ต์ข ๊ฒฐ๊ณผ๋ฅผ ์ฐ์ถํ๊ธฐ ์ํด
๋ค์ ๊ฐ์ค์น(w) ํฉ์ ๊ณ์ฐํ๋ค. ์ฌ๋ฌ๊ฐ์ ๊ฐ์ค์น ํฉ์ ๊ณ์ฐํ ๋์ ์ผ๋ฐ ์ ํ๋ชจ๋ธ๋ณด๋ค ๊ฐ๋ ฅํ๊ฒ ๋ง๋ค๊ธฐ ์ํด
๊ฐ hidden unit์ ๊ฐ์๋ฅผ ์ ํ๊ณ ์ด๋ค์ ๊ฐ์ค์น ํฉ์ ๊ณ์ฐ → "๋น์ ํ" ํ์ฑ ํจ์(Activation Function) ์ ์ฉ→ ๊ฐ์ค์น ๊ฐ์ผ๋ก y ๋์ถ
์์ฝ: x ๋ฃ๊ณ ๊ฐ์ค์น ๋ฃ์ด์ ๊ฐ์ ๋์ถํ๋ ๊ฒ์ด ์๋ hidden unit์์ ๊ฐ์ค์น ํฉ์ ํ ๋ฒ ๋ ๊ณ์ฐํ๋๋ก!
x์์ y๋ก ๋ฐ๋ก ๋์ด๊ฐ๋ ๊ฒ์ด ์๋ x์์ ์ค๊ฐ hidden ๊ฐ์ ๊ฑฐ์น๋ฉฐ ๋น์ ํ ๊ด๊ณ๋ฅผ ํ์ตํ๊ณ y๊ฐ์ ๋์ถํ๋ค.
์ ๋ฅ๋ฌ๋์ด๋ผ๊ณ ๋ถ๋ฅด๋?
ํผ์ ํธ๋ก ์ด ์ฌ๋ฌ๊ฐ์ง layer๋ฅผ ๊ฐ์ง ์ ์๋ค. ์ํ๋ ๋งํผ ์์ ์ ์๋ค!
๋๊ท๋ชจ์ ์ ๊ฒฝ๋ง์ด ์๊ธฐ๋ฉด์ ๋ฅ๋ฌ๋์ด๋ผ๊ณ ๋ถ๋ฆฌ๊ฒ ๋์๋ค.
RNN - Recurrent Neuron Network
- ๋ํ์ด๋๋, ๋ฐ๋ณต๋๋, ์ฌ๋ฐ๋๋
์๊ฐ, ์์ ๋ผ๋ ๊ฐ๋ ์ด ๋ค์ด๊ฐ ๋ฅ๋ฌ๋์ ๊ฐ์ฅ ์ง์ด๊ฐ ๋๋ ๋ชจํ์ด๋ค.
ํนํ ์๊ณ์ด ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๋ค๋ฉด RNN์ ๋ฌด์กฐ๊ฑด์ ์ผ๋ก ์ฌ์ฉํด์ผํ๋ค๊ณ ๋ด์ผํ๋ค.
๊ธฐ๋ณธ์ปจ์
์ง๊ธ ์๊ฐ(t) ๊ทธ ์ ์๊ฐ(t-1)์ ๋ฐํ์ผ๋ก (context)์ดํดํ๋ค.
๊ณผ๊ฑฐ๋ฅผ ์๊ฐํ๊ณ ๊ธฐ์ตํ๋ฉด์ ์ง๊ธ์ ์ํฉ์ ํ๋จํ๋ ๊ฒ์ด๋ค.
RNN์ ์ค์ค๋ก๋ฅผ ๋ฐ๋ณตํ๋ฉด์ ์ด์ ๋จ๊ณ์ ์ป์ ์ ๋ณด๊ฐ ์ง์์ ์ผ๋ก ๊ธฐ์ต๋๋๋ก ํ๋ค.
RNN์ ๊ตฌ์กฐ
RNN์ ๊ธฐ์กด์ ANN๊ณผ๋ ๋ค๋ฅด๊ฒ ๋ฉ์ด๋ฆฌ์ง Unit๋ค์ด ์ด๋ฃจ์ด์ ธ์๋ ์ฌ์ฌ์ด๋ค.
Input x_t๋ฅผ ๋ฐ์์ h_t๋ฅผ ๋ด๋ณด๋ธ๋ค. ๋ค์๋จ๊ณ์์์ network๊ฐ ์ด์ ๋จ๊ณ์ ์ ๋ณด๋ฅผ ๋ฐ๋๋ค๋๊ฒ์ ์๋ฏธ!
๊ฐ ์ ๋์์ ๋ค์๊ณผ ๊ฐ์ ๋ณต์กํ ์ํ์์ด ๋์จ๋ค.
ํจ์์ ๊ฐ์ฅ ๊ธฐ๋ณธ๊ฐ๋ ์ธ y=f(x) ๋ฅผ ๋ณธ๋ฐ๊ณ ์๋ค.
์๊น์น ๋ถ๋ถ๋ค์ด f(x)๋ฅผ ์์ํ๋ ์ซ์๋ค์ด๊ณ ์ด ์ซ์๋ค์ ๋ฐ๋ณตํด์ ํ์ต์ํจ๋ค๊ณ ์๊ฐํ๋ฉด ์ฝ๋ค.
์์ธกํ๊ณ ์ํ๋ ๊ฐ: y_t
์์ธกํ๊ธฐ์ํ๋ ์์ : t
์์ธก์ input๊ฐ: h_t (์ ๋จ๊ณ์ hidden unit ๊ฐ - ์ด์ ์ํ๋ก ํ์ฌ ์ํ๋ฅผ ์์ธก)
์ดํ์ ๊ฐ์์์ ๋์ค๋๋ฐ, activation function ์ ํตํด์ ๋ค์ ๋จ๊ณ์์์ hidden unit์ด ๋์ค๊ฒ ๋๋ค. (??)
์ง๊ธ์ ์ํ๊ฐ(h_t)์ ์ ๋จ๊ณ์ hidden unit, state(h_t-1) ๊ฐ์ ๋ฐ๊ณ ์ง๊ธ์ input ๊ฐ(x_t)์ ๋ฐ์
์ง๊ธ์ y๊ฐ์ ์์ธกํ๋ค.
ํ์ฌ์์ ์ input์ธ x_t๋ง์ ๋ฐ๋๊ฒ ์๋๋ผ ๊ณผ๊ฑฐ ์์ ์ ์ํ์ธ h_{t-1} ์ด ๋ค์ด๊ฐ๋ค.
์ด๋ฌํ ์์(sequence)๊ฐ ๋ฐ๋ณต๋๋ฉด์ t=0์ input๊ณผ ์ํ๊ฐ ์ด๋์ ๋๋ t์์ ๊น์ง ๊ธฐ์ต๋๊ณ ์ฐ๊ฒฐ๋์ด์ง๋ฉฐ ์ด๋์ ๋ chain ํํ๋ฅผ ์ด๋ฃจ๊ฒ ๋๋ค.
RNN ์ฅ์
1) RNN์ Sequence๊ธธ์ด์ ์๊ด์์ด Input๊ณผ Output์ ๋ฐ์๋ค์ผ ์ ์๋ค.
One-to-One์ ๊ธฐ๋ณธ๊ฐ๋ ์ ๋์ด์์ One-to-many, many-to-one, many-to-many๋ฑ
๋ค์ํ ํํ๋ฅผ ๋ฐ์๋ค์ผ์ ์์ด NLP(์์ฐ์ด ์ฒ๋ฆฌ-natural language processing)์ ํนํ ํ์ฉ๋๊ฐ ๋๋ค.
2) sequence ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃฌ๋ค. sequence๊ฐ ๋ค์ด๋๋ฏนํ๋ค๋ฉด RNN ๋ชจํ์ด ๊ธฐ์ด๊ฐ ๋์ด์ผํ๋ค.
์๋ฅผ๋ค์ด ์ฌ์ง์ ํตํด ์ฌ๋ฌ๋จ์ด๋ค์ ์์ธกํ ์๋, ์ฌ๋ฌ๋จ์ด๋ค๋ก ํ๋์ ์ซ์๋ก ํํ๋๋ ๊ฐ์ฑ์ ์๋ฅผ ์์ธกํ ์๋, ๋จ์ด๋ค์ ํตํด ๋ค์๋จ์ด๋ค์ ์์ธกํ ์๋ ์๋ค.
์๋ฅผ ๋ค๋ฉด Google์ ์ด๋ฉ์ผ ์๋์์ฑ ๊ธฐ๋ฅ์ด ์ด๋ฐ ๋ชจํ์ ํตํด ๊ตฌํ๋ ์๋ ์๋ค.
RNN ํ๊ณ
ํ์ง๋ง ์ด๋ ๊ฒ ์ ์ฉํ๊ณ ์ธ๋ชจ์๋ RNN์ ๋จ์ ์ ์งง์ ๊ธฐ๊ฐ์ ์์กดํ๊ฒ ๋๋ ๊ตฌ์กฐ์์ ๋ฌธ์ ์ ์๋ค.
์๋ฅผ๋ค์ด "The clouds are in the sky"์ ๊ฒฝ์ฐ๋ sky๋ฅผ ์์ธกํ๊ธฐ์ํด 4๋จ์ด ์ ์ cloud์ ์ ๋ณด๊ฐ ํ์ํ๋ฐ ์๋์ ์ผ๋ก ์งง์์ ํฐ ๋ฌธ์ ๊ฐ ๋์ง ์๋๋ค. ํ์ง๋ง ํ์ฌ์์ ์ ์ ๋ณด๋ฅผ ์์ธกํ๊ธฐ ์ํด์ ๋ ๋ง์ ๋ฌธ๋งฅ์ ์ดํดํ๊ณ ๋ฉ๋ฆฌ์๋ ๋จ์ด๋ค์ ๊ธฐ์ตํ ํ์๊ฐ ์์์ ์๋ค.
'๐ฅ > AI ๐ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[2์ฃผ์ฐจ] ํ๋ผ๋ฉํฐ ํ๋2 (0) | 2021.10.06 |
---|---|
[2์ฃผ์ฐจ] ํ๋ผ๋ฉํฐ ํ๋ - 'ํน์ง' ์ด๋ฆฌ๊ธฐ (0) | 2021.10.02 |
[1์ฃผ์ฐจ] ์์ฝ & ๋ง๋ฌด๋ฆฌ (0) | 2021.09.29 |
[1์ฃผ์ฐจ] LSTM (0) | 2021.09.29 |
[1์ฃผ์ฐจ] ์์ ๋ชฉํ (0) | 2021.09.28 |