๐ํด๋น ์๋ฃ ๋ด์ฉ์ ์์ฒํฅ๋ํ๊ต ๋น ๋ฐ์ดํฐ๊ณตํ๊ณผ ๊น์ ํ ๊ต์๋์ ์์ ์๋ฃ์ ๊ธฐ๋ฐํ์์ผ๋ฉฐ ์์ ์๋ฃ์ ์ ์๊ถ ๋ฌธ์ ๋ก ์ธํด ์์ ์๋ฃ๋ฅผ ์ง์ ์ด์ฉํ์ง ์๊ณ ์์ ์๋ฃ์ ๋ด์ฉ์ ์ฐธ๊ณ ํ์ฌ ๋ณธ์ธ์ด ์ง์ ์์ฑํ์์ผ๋ฏ๋ก ์ ์๊ถ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ง ์์์ ํํ ์๋ ค๋๋ฆฝ๋๋ค.
์ ๋ฒ ํฌ์คํ ์์ ์ด๋ฏธ์ง ๋ถ๋ฅ ๋ฌธ์ ๋ฅผ ํ์ด๋๊ฐ๋ ๋ฐ ๊ฐ์ฅ ํฐ ๊ณตํ์ ํ CNN(Convolutional Neutral Network)์ ๋ํด ์์๋ณด์๋ค. ์ด๋ฒ ํฌ์คํ ์์๋ '์์'๊ฐ ์ค์ํ ์๋ฏธ๋ฅผ ๊ฐ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด๋๊ฐ๋ ๋ฐ ๋ง์ ๋์์ ์ค RNN(Recurrent Neural Network)์ ๋ํด ์์๋ณธ๋ค.
์ฐ์ 'Recurrent' ์ ์ฌ์ ์ ์๋ฏธ๋ '์ฌ๋ฐํ๋', '๋ํ์ด', '์ฌ๊ท์ ์ธ' ์ด๋ค. ๋ง ๋ป ๋๋ก ๋ฌด์ธ๊ฐ ๊ณ์ ๋ํ์ดํ๋ค๋ ์๋ฏธ๋ฅผ ๋ดํฌํ๊ณ ์๋ค.
์ด์ RNN์ ๋ํด ๋ณธ๊ฒฉ์ ์ผ๋ก ํํค์ณ ๋ณด์. ๋ชฉ์ฐจ ์์๋ ๋ค์๊ณผ ๊ฐ๋ค.
1. RNN์ด๋?
2. RNN์ ๊ธฐ๋ณธ ๊ตฌ์กฐ
3. RNN์ ์ข ๋ฅ
4. ๋ฌธ์ฅ ์๋์์ฑ์ RNN์ด ํ๋ ๊ฒ์ด๋ค!
1. RNN์ด๋?
๊ทธ๋ ๋ค๋ฉด RNN์ ๋์ฒด ๋ฌด์์ ๋ฐ๋ณตํ๋ค๋ ๊ฑธ๊น? ๋ฐ๋ก NN ์ฆ, ๋ด๋ด ๋คํธ์ํฌ๋ฅผ ๋ฐ๋ณตํ๋ค๋ ๊ฒ์ด๋ค. ์ด๋ป๊ฒ ๋ด๋ด ๋คํธ์ํฌ๋ฅผ ๋ฐ๋ณตํ๋ค๋ ๊ฒ์ด์ง? ํ๋ ์๊ฐ์ด ๋ค๋ฉฐ ๊ฐ์ด ์ค์ง ์๋๋ค๋ฉด ๋ค์ ๊ทธ๋ฆผ์ ๋ณด์.
์ผ์ชฝ ๊ทธ๋ฆผ์ RNN ๊ตฌ์กฐ๋ฅผ ๊ฐ๋จํ๊ฒ ๋ํ๋ธ ๊ฒ์ด๋ค. ์ผ์ชฝ ๊ทธ๋ฆผ์ ์ง๊ด์ ์ผ๋ก ์ดํดํ๊ธฐ ์ํด์ 'Unfold' ์ํจ ์ค๋ฅธ์ชฝ ๊ทธ๋ฆผ์ ๋ณด์. ์ค๋ฅธ์ชฝ ๊ทธ๋ฆผ์ ๋ณด๋ฉด์ RNN์ ์ดํดํ๊ธฐ ์ํ ๊ธฐ๋ณธ์ ์ธ ์ฉ์ด์ ๋ํด์ ์ง๊ณ ๋์ด๊ฐ์.
- X : ์ ๋ ฅ ๋ฐ์ดํฐ๋ฅผ ์๋ฏธํ๋ค.
- h : RNN Cell์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. ์ด RNN cell์์๋ ํน์ ๊ฐ์์ ๋ ธ๋(๋ด๋ฐ)๋ค์ด ์กด์ฌํ๋ค. ์ฆ, ์ด๊ณณ์ ๋ด๋ด๋คํธ์ํฌ ๊ตฌ์กฐ๊ฐ ์กด์ฌํ๋ค๊ณ ๋ณด๋ฉด ๋๋ค.
- U : ์ ๋ ฅ๋ฐ์ดํฐ X์ Weight๊ฐ ๊ณฑํด์ ธ h(RNN Cell)์์ ์กด์ฌํ๋ ๋ ธ๋๋ค์ ์ถ๋ ฅ๊ฐ์ผ๋ก ๋์ถ์ํจ๋ค. ์ด ๋ 'Weight'๊ฐ ๋ฐ๋ก U์ด๋ค. ๋ณดํต U์ size๋ input_size * neuron_size ๊ฐ ๋๋ค.
- O : RNN Cell์์ ๋์ค๋ ์ถ๋ ฅ๊ฐ์ ์๋ฏธํ๋ค. ์ด ์ถ๋ ฅ๊ฐ์ RNN Cell์ด ๋ง์ง๋ง์ธ์ง ์ฌ๋ถ์ ๋ฐ๋ผ ์ค๊ฐ์ถ๋ ฅ๊ฐ ๋๋ ์ต์ข ์ถ๋ ฅ๊ฐ์ ์๋ฏธํ๋ค. ์ฆ, ๋ง์ง๋ง RNN Cell์ ์ ์ธํ ์ค๊ฐ ๋จ๊ณ์ RNN Cell์์ ์ถ๋ ฅ๋๋ ๊ฒ๋ค์ ๋ชจ๋ '์ค๊ฐ' ์ถ๋ ฅ๊ฐ๋ค์ด ๋๊ฒ ๋ค.
- W : h(RNN Cell)์์ ์กด์ฌํ๋ ๋ ธ๋๋ค๊ณผ Weight๊ฐ ๊ณฑํด์ ธ O(์ค๊ฐ ๋๋ ์ต์ข ์ถ๋ ฅ๊ฐ)๋ฅผ ๋ง๋ค์ด๋ด๋๋ฐ, ์ด ๋ 'Weight'๊ฐ ๋ฐ๋ก W์ด๋ค.
- V : 'state'๋ผ๊ณ ํ๋ฉฐ RNN์ ๊ฐ์ฅ ํฌ์ธํธ๋ผ๊ณ ํ ์ ์๋ค. ๋ฐ๋ก h_t-1(์ด์ RNN Cell)์์ h_t(ํ์ฌ RNN Cell)๋ก ์ ๋ฌํด์ฃผ๋ ๊ฐ์ด๋ค. ์ฆ, h_t์๊ฒ h_t-1์ ์์๋ ์ ๋ณด์ ๋ํด ์๋ ค์ฃผ๋ ์ ์ด๋ค. ์ด ๋ V๋ผ๋ state๋ฅผ ์ ๋ฌํด์ค ๋๋ ๋ฐ๋ก Weight๊ฐ์ ๊ณฑํด์ค๋ค. ์๊ฐ ์ถ๋ง๋ค ๋๊ฒจ ์ฃผ๋ state์ ๊ณฑํด์ฃผ๋ Weight๋ ๋ชจ๋ RNN Cell์์ ๋์ผํ๋ค๋ ๊ฒ๋ ์์ง๋ง์. (bias๋ ์ถ๊ฐํ๊ธฐ๋ ํ๋ค)
2. RNN์ ๊ธฐ๋ณธ๊ตฌ์กฐ
์ด์ RNN์ ๋ํ ์ฉ์ด๋ฅผ ์์๋ณด์์ผ๋ ์์์ ๋ณด์๋ RNN ๊ตฌ์กฐ๋ฅผ ์ข ๋ ์ฌ์ธต์ ์ผ๋ก ํ์ ํด๋ณด์.
์ฐ์ , ์์์ด ๋ฑ์ฅํ๋ค๊ณ ๋ฌด์์ํ์ง ๋ง์. ์ฐ๋ฆฌ๊ฐ ๊ทธ๋์ ๋ฐฐ์์๊ณ ์ ์ํํด์๋ ๊ธฐ๋ณธ์ ์ธ ๋ด๋ด๋คํธ์ํฌ์ ์์๊ณผ ๋น์ทํ๋ค. ๋จผ์ ์ ์ฒด์ ์ธ ํ๋ฆ๋๋ก ์๊ฐํด๋ณด์. ๊ฐ์ฅ ๋จผ์ t ๋ผ๋ ์๊ฐ์ถ์ผ ๋ x_t๋ผ๋ ์ ๋ ฅ ๋ฐ์ดํฐ๊ฐ h_t๋ผ๋ RNN Cell์ ๋ค์ด์ค๊ฒ ๋ ๊ฒ์ด๋ค. h_t๋ก ๋ค์ด์ค๊ฒ ๋ ๋ ์ ๋ ฅ ๋ฐ์ดํฐ x_t์ ๊ณฑํด์ค ๊ฒ์ ๋ฐ๋ก W_xh๋ผ๋ Weight ๊ฐ์ด๋ค. ๋ชฉ์ฐจ 1๋ฒ์์ ๋ฐฐ์ ๋ ์ฉ์ด์ ๋์์์ผ๋ณธ๋ค๋ฉด 'U'๊ฐ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ถ๊ฐ์ ์ผ๋ก ํ ๊ฒ์ ๊ธฐ๋ณธ์ ์ธ ๋ด๋ด๋คํธ์ํฌ์๋ ๊ทธ๋ฌ๋ฏ์ด b_h๋ผ๋ bias๊ฐ์ ๋ํด์ค๋ค.
์, ์ฌ๊ธฐ๊น์ง๋ ๊ธฐ๋ณธ ๋ด๋ด๋คํธ์ํฌ์ ๋จ๊ณ์ ๋น์ทํ๋ค. RNN์ด ๋๊ธฐ ์ํด์๋ ํ ๊ฐ์ง๋ง ์ถ๊ฐํด์ฃผ๋ฉด ๋๋ค. ๋ฐ๋ก t-1์๊ฐ ์ถ์ RNN Cell์ธ h_t-1์์ ๋๊ฒจ์ฃผ๋ state๋ฅผ ์ฐธ์กฐํด์ฃผ๋ ๊ฒ์ด๋ค. ์ด state๋ ์ ๊ทธ๋ฆผ์์ W_hh * h_t-1์ ์๋ฏธํ๋ค. h_t-1์ ์ด์ state๋ฅผ ์๋ฏธํ๋ฉฐ W_hh๋ ์ด์ state๋ฅผ ํ์ฌ๋ก ๋๊ฒจ์ค ๋ ๊ณฑํด์ฃผ๋ ์ผ์ข ์ Weight๊ฐ์ด๋ค.(๋ชฉ์ฐจ 1๋ฒ์์ ์ฉ์ด 'V'์ ๋ํด ์ค๋ช ํ ๋ "V๋ผ๋ state๋ฅผ ์ ๋ฌํด์ค ๋๋ ๋ฐ๋ก Weight๊ฐ์ ๊ณฑํด์ค๋ค"๋ผ๊ณ ํ๋๋ฐ ์ด Weight๊ฐ ๋ฐ๋ก W_hh์ด๋ค)
์ง๊ธ๊น์ง ์ ๋ ฅ ๋ฐ์ดํฐ์ Weight์ ๊ณฑํ๊ณ Bias๋ ๋ํ๋ค. ๋ ์ด์ state์ ์ ๋ณด๋ฅผ ๋ฐ์ ๋ํด์ฃผ์๋ค. ๋ง์ง๋ง์ผ๋ก ์ต์ข ์ h_t๊ฐ์ ๋ง๋ค๊ธฐ ์ํด์ ํ์ฑํจ์์ธ ํ์ ํธ ํ์ดํผ๋ณผ๋ฆญ ํจ์๋ฅผ ์ ์ฉํ๋ค.
๋ค์์ผ๋ก ์งํํด์ผ ํ ๋จ๊ณ๋ (์ค๊ฐ ๋๋ ์ต์ข )์ถ๋ ฅ๊ฐ์ธ y_t๋ฅผ ๋์ถํด์ผ ํ๋ค. y_t๋ฅผ ๋ง๋ค๊ธฐ ์ํด์ ๋ฐฉ๊ธ๊น์ง ๋ง๋ค์๋ h_t๊ฐ์์ ์ถ๋ฐํ๋๋ฐ, ๊ณผ์ ์ x_t(์ ๋ ฅ ๋ฐ์ดํฐ)์์ h_t๋ฅผ ๋ง๋ค ๋ ๊ณผ์ ๊ณผ ๋์ผํ๋ค. ๋จ y_t๋ฅผ ๋ง๋ค ๋๋ ์ด์ state๋ฅผ ์ฐธ๊ณ ํ๋ ๊ณผ์ ์ ๊ฑฐ์น์ง ์๋๋ค. ์๋ํ๋ฉด ์ด๋ฏธ h_t๋ฅผ ๋ง๋ค ๋ ์ด์ state๋ฅผ ์ฐธ๊ณ ํ๋ ๊ณผ์ ์ ๊ฑฐ์ณค๊ธฐ ๋๋ฌธ์ด๋ค.
๋ฐ๋ผ์ h_t์๋ค๊ฐ Weight(W_hy)๋ฅผ ๊ณฑํด์ฃผ๊ณ bias๋ฅผ ๋ํด์ค๋ค. ๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ์ ๋์ด ์๋๋ผ ์ ๊ทธ๋ฆผ์์๋ ์๋ต๋์์ง๋ง, ์ค์ ๋ก๋ ์ ๊ทธ๋ฆผ y_t์ ํ์ฑํจ์ Softmax๋ฅผ ์ฌ์ฉํด 0~1์ฌ์ด์ ํ๋ฅ ๊ฐ์ผ๋ก ๋ง๋ค์ด์ฃผ๊ณ arg_max๋ฅผ ์ทจํด์ฃผ์ด One-hot vector ํํ๋ก ๋ง๋ค์ด์ฃผ๋ ๊ฒฝ์ฐ๋ ๋น๋ฒํ๋ค. ๋ฌผ๋ก ๊ฒฝ์ฐ์ ๋ฐ๋ผ Softmax๊ฐ ์๋ ๋ค๋ฅธ ์ข ๋ฅ์ ํ์ฑํจ์๋ ์ฌ์ฉํ๊ธฐ๋ ํ๋ค.
์, ์ด์ ๋จ์ผ ๊ตฌ์กฐ์ ๋ํด ์ธ๋ถ์ ์ผ๋ก ๋ฐฐ์๋ดค์ผ๋ ์ด ๊ตฌ์กฐ๊ฐ ์ฌ๋ฌ๊ฐ ์๋ RNN ๊ตฌ์กฐ ๊ทธ๋ฆผ์ ๋ณด์. ์ดํดํ๊ธฐ๊ฐ ํจ์ฌ ์์ํ ๊ฒ์ด๋ค.
์ ๊ทธ๋ฆผ์ ๋ํด์ ์์ธํ ์ค๋ช
์ ์๋ตํ๊ฒ ๋ค. ์ ๋จ์ผ ๊ตฌ์กฐ์์ ๋ฐฐ์ ๋ ๊ฒ์ ๊ทธ๋๋ก ์ ์ฉํด์ ์๊ฐํด๋ณด์. ์ ๋ ํ ๋ฒ์ ์ดํดํ ํ์๋ ์๋ค. ์ฒ์ฒํ, ๋ ๋ฒ ๊ทธ๋ฆฌ๊ณ ์ธ ๋ฒ์ฉ ์ฝ์ด๊ฐ๋ฉด์ ์ดํดํด๋ณด์. ํ์๋ 10๋ฒ ์งธ ๋์์ผ ์ดํดํ ๋ฏ ํ๋ค.
3. RNN์ ์ข ๋ฅ
๋ค์์ RNN์ ์ข ๋ฅ์ด๋ค. ํ๋จ์ ๊ทธ๋ฆผ์ ๋ณด๊ณ ๊ฐ๊ด์ ์ธ ๊ตฌ์กฐ๋ฅผ ์ดํด๋ณด์. ๊ฐ ๊ตฌ์กฐ์์ ๋ค๋ฅธ ์ ์ด๋ผ๊ณ ํ๋ค๋ฉด, RNN Cell ๊ฐ์๋ ๋ ์ ์์ง๋ง ๊ตฌ์ฒด์ ์ธ ์ข ๋ฅ๋ฅผ ๋๋๊ฒ ํ๋ ๊ธฐ์ค์ '์ ๋ ฅ ๋ฐ์ดํฐ์ ๊ฐ์์ ์ค๊ฐ ์ถ๋ ฅ๊ฐ์ ๊ฐ์' ์ด๋ค.
3-1. One to One
๊ฐ์ฅ ์ผ์ชฝ์ RNN Cell์ด 1๊ฐ์ธ ๊ตฌ์กฐ์ด๋ค. ์ฌ์ค์ ์ด๋ ๊ธฐ๋ณธ ๋ด๋ด ๋คํธ์ํฌ์ ๋์ผํ๋ค๊ณ ๋ณผ ์ ์๋ค. ์๋ํ๋ฉด RNN์ ์ด์ state๋ฅผ ํตํด ์ ์ด์ ์ ๋ณด๋ฅผ ์ ๋ฌํ๋ ๊ฐ๋ ์ด ํฌ์ธํธ์ธ๋ฐ, RNN Cell์ด ํ๊ฐ๋ผ๋ฉด ์ด์ state๋ฅผ ์ ๋ฌํ ๋ค๋ฅธ RNN Cell์ด ์กด์ฌํ์ง ์๊ธฐ ๋๋ฌธ์ด๋ค.
3-2. One to Many
์ ๋ ฅ ๋ฐ์ดํฐ๊ฐ ํ๊ฐ(One)๊ฐ ๋ค์ด๊ฐ๊ณ ์ถ๋ ฅ์ด ์ฌ๋ฌ๊ฐ(Many) ๋์ถ๋๋ ๊ตฌ์กฐ์ด๋ค. ์ด ๊ตฌ์กฐ๋ ์ฃผ๋ก Image Captioning์ ์ฌ์ฉ๋๋ค. Image Captioning์ ์ ๋ฒ CNN ํฌ์คํ ์์๋ ์ ๊น ์ธ๊ธํ๊ธด ํ์ง๋ง ๋จธ์ ๋ฌ๋์ด ์ด๋ฏธ์ง๋ฅผ ๋ณด๊ณ ์ด๋ฏธ์ง์ ๋ํ ์ค๋ช ์ ํ ์คํธ๋ก ๋ด๋ฑ๋ ๊ฒ์ ๋งํ๋ค. ์ด์ ๋ํ ์์ธํ ์ค๋ช ์ ๋ฐ์งํธ๋์ ํฌ์คํ ์ ์ฐธ๊ณ ํ์. RNN ๊ณผ CNN์ ๊ฒฐํฉํ ํฅ๋ฏธ์๋ ๋ด์ฉ์ด๋ ์ด๋ฏธ์ง ์ฒ๋ฆฌ์ ๊ด์ฌ์๋ ๋ถ๋ค์ ๊ผญ ์ฝ์ด๋ณด์๊ธธ ์ถ์ฒ๋๋ฆฐ๋ค.
3-3. Many to One
One to Many์๋ ๋ฐ๋๋ก ์ ๋ ฅ ๋ฐ์ดํฐ๊ฐ ์ฌ๋ฌ๊ฐ(Many)๊ฐ ๋ค์ด๊ฐ๊ณ ์ต์ข ์ถ๋ ฅ๋ง ํ๊ฐ(One)๋ง์ด ๋์ถ๋๋ ๊ตฌ์กฐ์ด๋ค. ์ด ๊ตฌ์กฐ๋ ์ฃผ๋ก ๊ฐ์ฑ๋ถ์์ ์ฌ์ฉ๋๋ค. ์ฆ, ํ ์คํธ ๋ฐ์ดํฐ๊ฐ ์ ๋ ฅ ๋ฐ์ดํฐ๋ก ๋ค์ด๊ฐ๊ณ ์ต์ข ์ถ๋ ฅ๊ฐ์ผ๋ก ํด๋น ํ ์คํธ์ ๊ฐ์ (๊ธ์ ๋๋ ๋ถ์ )๊ฐ์ด ์ถ๋ ฅ๋๋ค.
3-4. Many to Many
์ ๋ ฅ ๋ฐ์ดํฐ๊ฐ ์ฌ๋ฌ๊ฐ๊ฐ ๋ค์ด๊ฐ๊ณ ์ถ๋ ฅ์ด ์ฌ๋ฌ๊ฐ๊ฐ ๋์ถ๋๋ ๊ตฌ์กฐ์ด๋ค. ๊ทธ๋ฐ๋ฐ Many to Many ๊ตฌ์กฐ๋ ์์ธํ ๋ณด๋ฉด 2๊ฐ์ง์ ์ข ๋ฅ๋ก ๋๋๋ค.
์ ๊ทธ๋ฆผ์์ ์ผ์ชฝ์ผ๋ก๋ถํฐ 3๋ฒ์งธ, 4๋ฒ์งธ ๊ทธ๋ฆผ์ ์๋ก ๋น๊ตํด๋ณด์.
3๋ฒ์งธ ๊ตฌ์กฐ๋ ๋ฐ์ดํฐ๊ฐ ์ ๋ ฅ๋๋ค๊ฐ ๋ง์ง๋ง ๋ฐ์ดํฐ๊ฐ ์ ๋ ฅ๋๊ณ ๋๋๋ ๋์์ ์ถ๋ ฅ๊ฐ๋ค์ด ๋์ถ๋๊ธฐ ์์ํ๋ค. ์ด๋ฐ ๊ตฌ์กฐ๋ ์ด๋ค ๊ฒฝ์ฐ์ ์ฌ์ฉ๋ ๊น? Machine Trasnlation ์ฆ, ๊ธฐ๊ณ ๋ฒ์ญ์ ์ฌ์ฉ๋๋ค. ์๋ํ๋ฉด ๋ฌธ๋งฅ์ ๊ณ ๋ คํด์ผ ํ๊ธฐ ๋๋ฌธ์ด๋ค. ์ฆ, ์ ๋ ฅ ๋ฐ์ดํฐ๊ฐ RNN์ ๋ค์ด๊ฐ๋ ๋์ ๋ฌธ๋งฅ์ ๊ณ ๋ ค(์ด์ state๋ฅผ ์ ๋ฌ ๋ฐ์)ํ๊ณ ์ ๋ ฅ ๋ฐ์ดํฐ๊ฐ ๋ค ๋ค์ด๊ฐ ํ ์ด์ ๋ฒ์ญ๋ ๋ฌธ์ฅ์ธ ์ถ๋ ฅ๊ฐ์ ๋์ถํด์ผ ํ๊ธฐ ๋๋ฌธ์ด๋ค.
์ด๋ฌํ ๊ตฌ์กฐ๋ ์ฐ๋ฆฌ๊ฐ ์์ฃผ ์ฌ์ฉํ๋ '๊ตฌ๊ธ ๋ฒ์ญ๊ธฐ', '๋ค์ด๋ฒ ํํ๊ณ '๊ฐ ๋ฐ๋ก ์ด๋ฌํ ์ข ๋ฅ์ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ์ ์ด ์์๋ค.(๋ฌผ๋ก ํ์ฌ๋ ์ด ๊ตฌ์กฐ๋ณด๋ค ํจ์ฌ ๋ ๋ฐ์ ๋ ๋ชจ๋ธ์ ์ฌ์ฉํ๊ณ ์์ ๊ฒ์ด๋ค) 3๋ฒ์งธ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ ๊ตฌ์กฐ๋ฅผ 'seq2seq' ๋ชจ๋ธ ์ฆ, 'encoder-decoder' ๋ชจ๋ธ์ด๋ผ๊ณ ๋ถ๋ฅด๋๋ฐ, ์ด ๊ฐ๋ ์ ๋ํด์๋ ์ค๋ช ์ด ์๋ ๋ฐ์งํธ๋์ ๊ธ์ด ์์ด ๊ณต์ ํ๋ค.
๋ค์ 4๋ฒ์งธ ๊ตฌ์กฐ๋ 3๋ฒ์งธ์ ๋ฌ๋ฆฌ ์ ๋ ฅ ๋ฐ์ดํฐ๊ฐ ๋ค์ด๊ฐ ๋๋ง๋ค ๋ฐ๋ก ์ถ๋ ฅ๊ฐ์ด ๋์ถ๋๋ค. ์ด๋ฌํ ๊ตฌ์กฐ๋ ๋ฐ๋ก๋ฐ๋ก ์ถ๋ ฅ์ ํด์ผํ๋ ์ฃผ๋ก Video Classification์ ์ฌ์ฉ๋๋ค.
4. ๋ฌธ์ฅ ์๋์์ฑ์ RNN์ด ํ๋ ๊ฒ์ด๋ค!
์ฐ๋ฆฌ๊ฐ ์ธํฐ๋ท ๋๋ ๊ตฌ๊ธ ๋ฅ์ค, ํธ๋ํฐ์ ์ฌ์ฉํ ๋ ํน์ ๋จ์ด๋ฅผ ์น๋ค๋ณด๋ฉด ๊ธฐ๊ณ๊ฐ ์์์ ๋ฌธ์ฅ์๋์์ฑ์ ํด์ฃผ๋ ๊ฒ์ ๋ณผ ์ ์๋ค. ์ด ๋ฌธ์ฅ์๋์์ฑ ๊ธฐ๋ฅ์ด ๋ฐ๋ก RNN์ ํตํด ๊ตฌํ๋๋ ๊ฒ์ด๋ค.
๊ตฌ์ฒด์ ์ผ๋ก ๋ฌธ์ฅ์๋์์ฑ์ 'Many to Many'์ RNN ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ๋ค. ์ ๊ทธ๋ฆผ์ ์์๋ก ๋ค์๋ฉด, ๋จ์ด 'suggestions'์ ์ํ๋ฒณ ํ๋ํ๋๊ฐ ์ ๋ ฅ๋ฐ์ดํฐ๋ก ๋ค์ด๊ฐ RNN์ ํตํด ํ์ต์ ํ๊ณ ๋ค์์ ์ฌ ์ํ๋ฒณ์ ์์ธกํด์ฃผ๋ ๊ฒ์ด๋ค.
๊ตฌ์ฒด์ ์ผ๋ก ์ด๋ป๊ฒ ๋ค์ ์ํ๋ฒณ์ ์์ธกํ๋ ๊ฒ์ธ์ง ๋ณด๊ธฐ ์ํด 'hello'์ 'o'๋ฅผ ์์ธกํ๊ธฐ ์ํด RNN์ ์ฌ์ฉํ๋ ์์๋ฅผ ์ดํด๋ณด์.
๋ฌธ์ฅ ์๋์์ฑ์ด ์ด๋ฃจ์ด์ง๋ ๋ด๋ถ์ ์ธ RNN ๊ตฌ์กฐ๋ ์์ ๊ฐ๋ค. h, e, l, l ์ด RNN์ ๊ฐ ์ ๋ ฅ ๋ฐ์ดํฐ๋ก ๋ค์ด๊ฐ๋ค. ๊ทธ๋ฆฌ๊ณ ์ ๋ ฅ ๋ฐ์ดํฐ๊ฐ ํ๋์ฉ ๋ค์ด๊ฐ ๋๋ง๋ค ๋ค์์ ์ฌ ๋จ์ด๋ฅผ ์ค๊ฐ์ถ๋ ฅ๊ฐ์ผ๋ก ๋์ถ์ํจ๋ค. ํ๋ ์์๋ฅผ ๋ณด์๋ฉด, ์ฒซ ๋ฒ์งธ ์ํ๋ฒณ 'h'๊ฐ ๋ค์ด๊ฐ์ ๋ ์ค๊ฐ ์ถ๋ ฅ๊ฐ์ผ๋ก 'e'์ ํด๋นํ๋ ๊ฐ์ด ๋์ถ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ค์ ์ ๋ ฅ ๋ฐ์ดํฐ 'e'๊ฐ ๋ค์ด๊ฐ์ ๋ ์ค๊ฐ ์ถ๋ ฅ๊ฐ์ ๋ด๊ธฐ ์ํด ์ํ๋ฒณ 'h'๊ฐ ๋ค์ด๊ฐ์ ๋ ๋ฐ์ํ ์ ๋ณด(์ด์ state)๋ฅผ ์ฐธ์กฐํด ๋ ๋ฒ์งธ ์ถ๋ ฅ๊ฐ์ธ 'l' ์ ๋์ถ์ํจ๋ค.
์ด๋ ๊ฒ ๋๊ฐ์ด ๋ค๋ฅธ ์ ๋ ฅ๋ฐ์ดํฐ๋ค์๋ ์ ์ฉํด ์ต์ข ์ถ๋ ฅ๊ฐ์ธ 'o'๋ฅผ ์ถ๋ ฅํ๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
# Reference
ratsgo.github.io/natural%20language%20processing/2017/03/09/rnnlstm/
'Data Science > Machine Learning' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ML] Hyperparameter tuning & Optimization in DNN (0) | 2020.10.31 |
---|---|
[ML] How to improve Deep Neural Network? (2) | 2020.10.24 |
[ML] Class imbalance ํด๊ฒฐ์ ์ํ ๋ค์ํ Sampling ๊ธฐ๋ฒ (0) | 2020.09.20 |
[ML] How to correlate one or two categorical variables? (0) | 2020.09.15 |
[ML] Multivariate regression(๋ค๋ณ๋ ํ๊ท๋ถ์) ํ๋ก์ธ์ค (0) | 2020.09.08 |