Backpropagation์ ์ ์ฒด๋ฅผ ์ ๋๋ก ์๊ฒ๋ ๊ฑด ํ๋ถ 4ํ๋ ๋ deep learning ์์ ๋๋ฌธ์ด์๋ค. ๋น์ ์ํ๊ณ ์ฌ๊ฑด ์ดํ๋ก ๋จธ์ ๋ฌ๋๊ณผ ๋ฅ๋ฌ๋์ ํตํด AI์ ๋ํ ๊ด์ฌ์ด ๋์ค์ผ๋ก๋ถํฐ๋ ์ปค์ง ๋ ์๊ฑด๋ง, ์ง๊ธ ์๊ฐํด๋ณด๋ฉด ๊ฐ๊ฑด๋ ๋ถ๊ตฌ๊ฒฝํ๋ฏ ๊ทธ์ ๋ฐ๋ผ๋ง ๋ณธ ์ฑ ์๊ฐ๋ง ํ๋ ค ๋ณด๋ด๊ณ ์์๋ ๊ฒ ๊ฐ๋ค. 3ํ๋ ๋ ํผ์ ํธ๋ก ์ ๊ฐ๋ ์ ๊ณต๋ถํ ๋๋ ๋จธ์ ๋ฌ๋์ด ์ ๊ธฐํ๋ค๋ ์๊ฐ์ด ๋ง์ฐํ๊ฒ ์๋ฆฌํ๊ณ ์์์ง๋ง, backpropagation ์ฒ๋ผ ์ด๋ ๊ฒ ๊ตฌ์ฒด์ ์ธ ์์์ผ๋ก ํํ๋๋ ์ค์ ๋ชฐ๋๋ค. ์ด์ฐ๋์๋ ์ง์ ์ธ๊ณต ์ ๊ฒฝ๋ง์ด ํ์ต์ด ๋๋๊ฑธ ๊ณ์ฐํ๊ณ ํ๋ผ๋ฏธํฐ๋ฅผ ์ ๋ฐ์ดํธ ํ๋ ์๊ฐ ๋ฐ์๋ ์ ์ ํ ์ถฉ๊ฒฉ์ ์์ง๋ ์์ํ๋ค. ์ค๋์ ์ญ์ ํ์ ๋ํด์ ๊ธ์ ์์ฑํด๋ณด์.
์ญ์ ํ(Backpropagation)์ ๊ธฐ๋ณธ ๊ฐ๋ ๊ณผ ์ง๊ด์ ์ดํด
์ญ์ ํ๋ ๋ฌด์์ธ๊ฐ?
์ญ์ ํ(Backpropagation)๋ ์ธ๊ณต ์ ๊ฒฝ๋ง์ ํ์ต์ํค๋ ํต์ฌ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก, ์์ค ํจ์์ ๊ทธ๋๋์ธํธ(๊ธฐ์ธ๊ธฐ)๋ฅผ ์ถ๋ ฅ์ธต์์ ์ ๋ ฅ์ธต ๋ฐฉํฅ์ผ๋ก ‘์ญ์ผ๋ก ์ ํ’ํ๋ฉฐ ๊ณ์ฐํ๋ ํจ์จ์ ์ธ ๋ฐฉ๋ฒ์ด๋ค. ์ด ์๊ณ ๋ฆฌ์ฆ์ 1986๋ Rumelhart, Hinton, Williams๊ฐ ๋ฐํํ ๋ ผ๋ฌธ์์ ๋์คํ๋์์ผ๋ฉฐ, ํ๋ ๋ฅ๋ฌ๋์ ๊ธฐ๋ฐ์ด ๋๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. hinton์ ์ด๋ ๋ถํฐ ์ค์ ์๊ณ ๋ฆฌ์ฆ์ ๋ง๋ ์ฌ๋์ด ์๊ตฌ๋ ใทใท
๊ฐ๋จํ ๋งํ์๋ฉด, ์ญ์ ํ๋ ์ ๊ฒฝ๋ง์ ์์ธก ์ค๋ฅ๋ฅผ ์ต์ํํ๊ธฐ ์ํด ๊ฐ ๊ฐ์ค์น๊ฐ ์ต์ข ์ค๋ฅ์ ์ผ๋ง๋ ๊ธฐ์ฌํ๋์ง ๊ณ์ฐํ๊ณ , ์ด ์ ๋ณด๋ฅผ ๋ฐํ์ผ๋ก ๊ฐ์ค์น๋ฅผ ์ ๋ฐ์ดํธํ๋ ๊ณผ์ ์ด๋ค.
์ญ์ ํ์ ์ง๊ด์ ์ดํด
์ธ๊ณต์ ๊ฒฝ๋ง์ ํ์ต ๊ณผ์ ์ ํฌ๊ฒ ๋ ๋จ๊ณ๋ก ์ด๋ฃจ์ด์ง๋ค:
- ์์ ํ(Forward Propagation): ์ ๋ ฅ ๋ฐ์ดํฐ๊ฐ ์ ๊ฒฝ๋ง์ ํต๊ณผํ์ฌ ์์ธก๊ฐ์ ์์ฑ
- ์ญ์ ํ(Backpropagation): ์์ธก๊ฐ๊ณผ ์ค์ ๊ฐ์ ์ฐจ์ด(์ค์ฐจ)๋ฅผ ๊ณ์ฐํ๊ณ , ์ด ์ค์ฐจ๋ฅผ ์ญ์ผ๋ก ์ ํํ์ฌ ๊ฐ ๊ฐ์ค์น์ ์ ๋ฐ์ดํธ ๋ฐฉํฅ๊ณผ ํฌ๊ธฐ๋ฅผ ๊ฒฐ์
์ญ์ ํ๊ฐ ์๋ํ๋ ์๋ฆฌ๋ฅผ ์ง๊ด์ ์ผ๋ก ์ดํดํด ๋ณด์:
- ๋คํธ์ํฌ๋ ๋ง์น ๋ณต์กํ ํจ์์ ๊ฐ๋ค: ์ ๋ ฅ โ [๋ธ๋๋ฐ์ค] โ ์ถ๋ ฅ
- ์ฐ๋ฆฌ์ ๋ชฉํ๋ ์ํ๋ ์ถ๋ ฅ์ด ๋์ค๋๋ก ์ด ๋ธ๋๋ฐ์ค์ ๋ด๋ถ ์ค์ (๊ฐ์ค์น)์ ์กฐ์ ํ๋ ๊ฒ
- ์ถ๋ ฅ์์ ๋ฐ์ํ ์ค์ฐจ๋ฅผ ๋ด๋ถ ์ค์ ์ ์กฐ์ ๋ฐฉํฅ์ผ๋ก ๋ณํํ๋ ๊ฒ์ด ๋ฐ๋ก ์ญ์ ํ
์ ์ฉ ์นด๋ ๋ถ์ ๊ฑฐ๋ ํ์ง ์์คํ ์ ์๋ก ๋ค๋ฉด:
- ์์คํ ์ด ์ ์ ๊ฑฐ๋๋ฅผ ๋ถ์ ๊ฑฐ๋๋ก ์๋ชป ๋ถ๋ฅํจ (์ค๋ฅ ๋ฐ์)
- ์ญ์ ํ๋ฅผ ํตํด “์ด๋ค ๋ด๋ถ ์ฐ๊ฒฐ(๊ฐ์ค์น)์ด ์ด ์ค๋ถ๋ฅ์ ๊ฐ์ฅ ํฐ ์ํฅ์ ๋ฏธ์ณค๋๊ฐ?“๋ฅผ ์ฐพ์๋
- ํด๋น ์ฐ๊ฒฐ์ ์ ์ ํ ์กฐ์ ํ์ฌ ๋ค์์๋ ์ ์ฌํ ์ ์ ๊ฑฐ๋๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ๋ถ๋ฅํ๋๋ก ํจ
์ญ์ ํ์ ์ํ์ ์ ์์ ์๋ ์๋ฆฌ
๊ธฐ๋ณธ ์์๊ณผ ํ๊ธฐ๋ฒ
์ธ๊ณต ์ ๊ฒฝ๋ง์์ ์ญ์ ํ๋ฅผ ์ดํดํ๊ธฐ ์ํ ๊ธฐ๋ณธ ์์์ ์์๋ณด์. $L$๊ฐ์ ์ธต์ผ๋ก ๊ตฌ์ฑ๋ ์ ๊ฒฝ๋ง์ ๊ฐ์ ํ ๋:
- $W^l$: $l$๋ฒ์งธ ์ธต์ ๊ฐ์ค์น ํ๋ ฌ
- $b^l$: $l$๋ฒ์งธ ์ธต์ ํธํฅ ๋ฒกํฐ
- $z^l = W^l a^{l-1} + b^l$: $l$๋ฒ์งธ ์ธต์ ๊ฐ์คํฉ(weighted sum)
- $a^l = \sigma(z^l)$: $l$๋ฒ์งธ ์ธต์ ํ์ฑํ ์ถ๋ ฅ
- $\sigma$: ํ์ฑํ ํจ์ (ReLU, sigmoid ๋ฑ)
- $L$: ์ ๊ฒฝ๋ง์ ์ด ์ธต ์
- $C$: ๋น์ฉ ํจ์ (์: ํ๊ท ์ ๊ณฑ ์ค์ฐจ)
์ญ์ ํ ์๊ณ ๋ฆฌ์ฆ์ ๋จ๊ณ๋ณ ์ค๋ช
์ญ์ ํ๋ ๋ค์๊ณผ ๊ฐ์ ๋จ๊ณ๋ก ์งํ๋๋ค:
-
์์ ํ ๋จ๊ณ: ์ ๋ ฅ ๋ฐ์ดํฐ $x = a^0$๋ก ์์ํ์ฌ ๋ชจ๋ ์ธต์ ํต๊ณผ์ํค๋ฉฐ ์ต์ข ์ถ๋ ฅ $a^L$์ ๊ณ์ฐํ๋ค. $$a^l = \sigma(W^l a^{l-1} + b^l) \quad \text{for } l = 1, 2, \ldots, L$$
-
์ถ๋ ฅ์ธต ์ค์ฐจ ๊ณ์ฐ: ์์ธก๊ฐ $a^L$๊ณผ ์ค์ ๊ฐ $y$ ์ฌ์ด์ ์ค์ฐจ๋ฅผ ๊ณ์ฐํ๊ณ , ์ด๋ฅผ ๋น์ฉ ํจ์ $C$์ ๊ทธ๋๋์ธํธ๋ก ํํํ๋ค. $$\delta^L = \nabla_a C \odot \sigma’(z^L)$$ ์ด ์์์ ๋ถํดํด์ ์ดํด๋ณด๋ฉด
$\nabla_a C$ : ์ถ๋ ฅ์ธต ํ์ฑํ ๊ฐ $a^L$์ ๋ํ ๋น์ฉ ํจ์ $C$์ ํธ๋ฏธ๋ถ์ด๋ค. ์ฆ, ์ถ๋ ฅ๊ฐ์ด ๋ณํ ๋ ์ค์ฐจ๊ฐ ์ด๋ป๊ฒ ๋ณํ๋์ง๋ฅผ ๋ํ๋ธ๋ค.
$\sigma’(z^L)$ : ์ถ๋ ฅ์ธต์ ํ์ฑํ ํจ์์ ๋ฏธ๋ถ๊ฐ์ด๋ค. ์ ๋ ฅ๊ฐ $z^L$์ ๋ํ ํ์ฑํ ํจ์์ ๋ณํ์จ์ ๋ํ๋ธ๋ค.
$\odot$ : ์์๋ณ ๊ณฑ์ (element-wise multiplication)์ผ๋ก, ๋ ๋ฒกํฐ์ ๋์๋๋ ์์๋ผ๋ฆฌ ๊ณฑํ๋ ์ฐ์ฐ์ด๋ค.
์ฌ๊ธฐ์ $\odot$๋ ํ๋ค๋ง๋ฅด ๊ณฑ์ด๋ผ๊ณ ๋ ํ๋ฉฐ, ๋ด์ , ํ๋ ฌ๊ณฑ๊ณผ ๋ค๋ฅด๋ค. ์์๋ณ ๊ณฑ์ (element-wise multiplication)์ ์๋ฏธํ๋ค. -
์ค์ฐจ ์ญ์ ํ: ์ถ๋ ฅ์ธต์์ ๊ณ์ฐ๋ ์ค์ฐจ๋ฅผ ์ด์ ์ธต์ผ๋ก ์ญ์ผ๋ก ์ ํํ๋ค. $$\delta^l = ((W^{l+1})^T \delta^{l+1}) \odot \sigma’(z^l) \quad \text{for } l = L-1, L-2, \ldots, 1$$
-
๊ทธ๋๋์ธํธ ๊ณ์ฐ: ๊ฐ ์ธต์ ๊ฐ์ค์น์ ํธํฅ์ ๋ํ ๋น์ฉ ํจ์์ ๊ทธ๋๋์ธํธ๋ฅผ ๊ณ์ฐํ๋ค. $$\nabla_{W^l} C = \delta^l (a^{l-1})^T$$ $$\nabla_{b^l} C = \delta^l$$
-
๊ฐ์ค์น ๋ฐ ํธํฅ ์ ๋ฐ์ดํธ: ๊ณ์ฐ๋ ๊ทธ๋๋์ธํธ๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ค์น์ ํธํฅ์ ์ ๋ฐ์ดํธํ๋ค. $$W^l \leftarrow W^l - \eta \nabla_{W^l} C$$ $$b^l \leftarrow b^l - \eta \nabla_{b^l} C$$ ์ฌ๊ธฐ์ $\eta$๋ ํ์ต๋ฅ ์ด๋ค.
์ฒด์ธ ๋ฃฐ(Chain Rule)์ ์ค์์ฑ
์ญ์ ํ์ ํต์ฌ์ ๋ฏธ์ ๋ถํ์ ์ฒด์ธ ๋ฃฐ(chain rule)์ ํ์ฉํ๋ ๊ฒ์ด๋ค. ๋ณต์กํ ํฉ์ฑ ํจ์์ ๋ฏธ๋ถ์ ๊ฐ ๊ตฌ์ฑ ํจ์์ ๋ฏธ๋ถ์ ๊ณฑ์ผ๋ก ํํํ ์ ์๋ค๋ ์๋ฆฌ๋ฅผ ์ด์ฉํ๋ค.
์๋ฅผ ๋ค์ด, $z = f(y)$์ $y = g(x)$๋ผ๋ฉด, $\frac{dz}{dx} = \frac{dz}{dy} \cdot \frac{dy}{dx}$์ด๋ค.
์ ๊ฒฝ๋ง์์๋ ์ ๋ ฅ๋ถํฐ ์ถ๋ ฅ๊น์ง ์ฌ๋ฌ ์ธต์ ์ฐ์ฐ์ด ์ค์ฒฉ๋์ด ์์ผ๋ฏ๋ก, ์ต์ข ์ค์ฐจ๊ฐ ๊ฐ ๊ฐ์ค์น์ ๋ฏธ์น๋ ์ํฅ์ ๊ณ์ฐํ๊ธฐ ์ํด ์ฒด์ธ ๋ฃฐ์ ๋ฐ๋ณต์ ์ผ๋ก ์ ์ฉํ๋ค.
์ญ์ ํ ๊ณผ์ | ์์ | ์ง๊ด์ ์๋ฏธ |
---|---|---|
์ถ๋ ฅ์ธต ์ค์ฐจ ๊ณ์ฐ | $\delta^L = \nabla_a C \odot \sigma’(z^L)$ | “์ต์ข ์ค์ฐจ๊ฐ ์ผ๋ง์ธ๊ฐ?” |
์ค์ฐจ ์ญ์ ํ | $\delta^l = ((W^{l+1})^T \delta^{l+1}) \odot \sigma’(z^l)$ | “์ด์ ์ธต์ ๊ฐ ๋ด๋ฐ์ด ์ต์ข ์ค์ฐจ์ ์ผ๋ง๋ ๊ธฐ์ฌํ๋๊ฐ?” |
๊ทธ๋๋์ธํธ ๊ณ์ฐ | $\nabla_{W^l} C = \delta^l (a^{l-1})^T$ | “๊ฐ ๊ฐ์ค์น๊ฐ ์ต์ข ์ค์ฐจ์ ์ผ๋ง๋ ๊ธฐ์ฌํ๋๊ฐ?” |
๊ฐ์ค์น ์ ๋ฐ์ดํธ | $W^l \leftarrow W^l - \eta \nabla_{W^l} C$ | “์ต์ข ์ค์ฐจ๋ฅผ ์ค์ด๊ธฐ ์ํด ๊ฐ ๊ฐ์ค์น๋ฅผ ์ด๋ป๊ฒ ์กฐ์ ํ ๊ฒ์ธ๊ฐ?” |
์ญ์ ํ ์๊ณ ๋ฆฌ์ฆ์ ์ค์ ๊ตฌํ
๊ฐ๋จํ ์ ๊ฒฝ๋ง์์์ ์ญ์ ํ ์์
2๊ฐ์ ์ ๋ ฅ ๋ด๋ฐ, 2๊ฐ์ ์๋์ธต ๋ด๋ฐ, 1๊ฐ์ ์ถ๋ ฅ ๋ด๋ฐ์ผ๋ก ๊ตฌ์ฑ๋ ๊ฐ๋จํ ์ ๊ฒฝ๋ง์ ์๋ก ๋ค์ด ์ญ์ ํ๋ฅผ ๋จ๊ณ๋ณ๋ก ์ดํด๋ณด์.
์ ๋ ฅ: $x = [x_1, x_2]^T$ ๋ชฉํ ์ถ๋ ฅ: $y$
์์ ํ:
- ์๋์ธต ์ ๋ ฅ: $z^1 = W^1 x + b^1$
- ์๋์ธต ์ถ๋ ฅ: $a^1 = \sigma(z^1)$
- ์ถ๋ ฅ์ธต ์ ๋ ฅ: $z^2 = W^2 a^1 + b^2$
- ์ถ๋ ฅ์ธต ์ถ๋ ฅ: $a^2 = \sigma(z^2)$
- ์ค์ฐจ ๊ณ์ฐ: $C = \frac{1}{2}(a^2 - y)^2$
์ญ์ ํ:
- ์ถ๋ ฅ์ธต ์ค์ฐจ: $\delta^2 = (a^2 - y) \cdot \sigma’(z^2)$
- ์ถ๋ ฅ์ธต ๊ฐ์ค์น ๊ทธ๋๋์ธํธ: $\nabla_{W^2} C = \delta^2 \cdot (a^1)^T$
- ์ถ๋ ฅ์ธต ํธํฅ ๊ทธ๋๋์ธํธ: $\nabla_{b^2} C = \delta^2$
- ์๋์ธต ์ค์ฐจ: $\delta^1 = (W^2)^T \delta^2 \odot \sigma’(z^1)$
- ์๋์ธต ๊ฐ์ค์น ๊ทธ๋๋์ธํธ: $\nabla_{W^1} C = \delta^1 \cdot x^T$
- ์๋์ธต ํธํฅ ๊ทธ๋๋์ธํธ: $\nabla_{b^1} C = \delta^1$
๊ฐ์ค์น ์ ๋ฐ์ดํธ:
- $W^2 \leftarrow W^2 - \eta \nabla_{W^2} C$
- $b^2 \leftarrow b^2 - \eta \nabla_{b^2} C$
- $W^1 \leftarrow W^1 - \eta \nabla_{W^1} C$
- $b^1 \leftarrow b^1 - \eta \nabla_{b^1} C$
ํ์ฑํ ํจ์์ ๊ทธ ๋ฏธ๋ถ
์ญ์ ํ ๊ณผ์ ์์๋ ํ์ฑํ ํจ์์ ๋ฏธ๋ถ ๊ฐ์ด ํ์ํ๋ค. ์ฃผ์ ํ์ฑํ ํจ์์ ๊ทธ ๋ฏธ๋ถ์ ๋ค์๊ณผ ๊ฐ๋ค:
ํ์ฑํ ํจ์ | ์ ์ | ๋ฏธ๋ถ |
---|---|---|
Sigmoid | $\sigma(x) = \frac{1}{1 + e^{-x}}$ | $\sigma’(x) = \sigma(x)(1 - \sigma(x))$ |
ReLU | $\text{ReLU}(x) = \max(0, x)$ | $\text{ReLU}’(x) = \begin{cases} 1 & \text{if } x > 0 \ 0 & \text{if } x \leq 0 \end{cases}$ |
tanh | $\tanh(x) = \frac{e^x - e^{-x}}{e^x + e^{-x}}$ | $\tanh’(x) = 1 - \tanh^2(x)$ |
Leaky ReLU | $\text{LReLU}(x) = \begin{cases} x & \text{if } x > 0 \ \alpha x & \text{if } x \leq 0 \end{cases}$ | $\text{LReLU}’(x) = \begin{cases} 1 & \text{if } x > 0 \ \alpha & \text{if } x \leq 0 \end{cases}$ |
์ค์ ๊ตฌํ ์ ๊ณ ๋ ค์ฌํญ
1. ์์น์ ์์ ์ฑ
- ์ค๋ฒํ๋ก์ฐ/์ธ๋ํ๋ก์ฐ ๋ฐฉ์ง: ์ง์ ํจ์๋ ๋ก๊ทธ ํจ์ ์ฌ์ฉ ์ ์ฃผ์
- ๋ก๊ทธ-ํฉ ํธ๋ฆญ(log-sum trick)๊ณผ ๊ฐ์ ๊ธฐ๋ฒ ํ์ฉ
2. ๋ฐฐ์น ์ฒ๋ฆฌ
- ๋ฏธ๋๋ฐฐ์น ๊ฒฝ์ฌ ํ๊ฐ๋ฒ ์ฌ์ฉ: ์ฌ๋ฌ ์ํ์ ๊ทธ๋๋์ธํธ ํ๊ท ์ผ๋ก ๊ฐ์ค์น ์ ๋ฐ์ดํธ
- ๋ฐฐ์น ์ ๊ทํ(Batch Normalization) ์ ์ฉ: ๋ด๋ถ ๊ณต๋ณ๋ ์ด๋(internal covariate shift) ๊ฐ์
3. ๊ทธ๋๋์ธํธ ์์ค/ํญ๋ฐ ๋ฌธ์
- ๊ทธ๋๋์ธํธ ํด๋ฆฌํ(gradient clipping) ์ ์ฉ
- ์ ์ ํ ๊ฐ์ค์น ์ด๊ธฐํ ๋ฐฉ๋ฒ ์ ํ(Xavier, He ์ด๊ธฐํ ๋ฑ)
- ์์ฐจ ์ฐ๊ฒฐ(residual connections) ์ฌ์ฉ
4. ๊ณ์ฐ ํจ์จ์ฑ
- ํ๋ ฌ ์ฐ์ฐ ์ต์ ํ
- GPU ๊ฐ์ ํ์ฉ
- ์๋ ๋ฏธ๋ถ(Automatic Differentiation) ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉ
์ญ์ ํ์ ํ๊ณ์ ์ต์ ๊ฐ์ ๊ธฐ๋ฒ
๊ธฐ์กด ์ญ์ ํ์ ํ๊ณ์
1. ๊น์ ์ ๊ฒฝ๋ง์์์ ๊ทธ๋๋์ธํธ ์์ค/ํญ๋ฐ
- ์ธต์ด ๊น์ด์ง์๋ก ๊ทธ๋๋์ธํธ๊ฐ 0์ ๊ฐ๊น์์ง๊ฑฐ๋(์์ค) ๋งค์ฐ ์ปค์ง๋(ํญ๋ฐ) ๋ฌธ์ ๋ฐ์
- ๊ฒฐ๊ณผ์ ์ผ๋ก ๊น์ ์ธต์ ํจ๊ณผ์ ์ผ๋ก ํ์ต๋์ง ์์
2. ๋นํจ์จ์ ์ธ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ
- ์์ ํ ๊ณผ์ ์ ๋ชจ๋ ์ค๊ฐ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํด์ผ ํจ
- ๋ฉ๋ชจ๋ฆฌ ์๊ตฌ๋์ด ๋คํธ์ํฌ ๊น์ด์ ๋น๋กํ์ฌ ์ฆ๊ฐ
3. ์์ฐจ์ ๊ณ์ฐ์ ํ๊ณ
- ๋ณธ์ง์ ์ผ๋ก ์์ฐจ์ ์ธ ์๊ณ ๋ฆฌ์ฆ์ด๋ฏ๋ก ๋ณ๋ ฌํ์ ์ ํ์ด ์์
- ํนํ ์ํ ์ ๊ฒฝ๋ง(RNN)์์ ์ํ์ค ๊ธธ์ด๊ฐ ๊ธธ ๊ฒฝ์ฐ ๋นํจ์จ์
์ต์ ๊ฐ์ ๊ธฐ๋ฒ
1. ๊ตฌ์กฐ์ ๊ฐ์
- ์์ฐจ ์ฐ๊ฒฐ(Residual Connections): ๊ทธ๋๋์ธํธ๊ฐ ๋ณด๋ค ์ง์ ์ ์ผ๋ก ์ด์ ์ธต์ผ๋ก ํ๋ฅผ ์ ์๋ ์ง๋ฆ๊ธธ ์ ๊ณต
- ๊ณ ์๋๋ก ๋คํธ์ํฌ(Highway Networks): ์ ๋ณด ํ๋ฆ์ ์ ์ดํ๋ ๊ฒ์ดํ ๋ฉ์ปค๋์ฆ ๋์
- ๋ฐ์ง ์ฐ๊ฒฐ(Dense Connections): ๋ชจ๋ ์ธต์ด ์ด์ ์ ๋ชจ๋ ์ธต๊ณผ ์ง์ ์ฐ๊ฒฐ๋๋ ๊ตฌ์กฐ
2. ์ต์ ํ ์๊ณ ๋ฆฌ์ฆ ๊ฐ์
- Adam, RMSprop: ์ ์์ ํ์ต๋ฅ ์ ์ฌ์ฉํ์ฌ ์๋ ด ์๋ ๊ฐ์
- Lookahead: ์ฌ๋ฌ ์ต์ ํ ๋ฐฉํฅ์ ๋์์ ํ์
3. ๊ณ์ฐ ํจ์จ์ฑ ๊ฐ์
- ๊ทธ๋๋์ธํธ ์ฒดํฌํฌ์ธํ (Gradient Checkpointing): ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ์ ์ค์ด๊ธฐ ์ํด ์ผ๋ถ ์ค๊ฐ ๊ฒฐ๊ณผ๋ง ์ ์ฅ
- ์ญ์ ํ ์๋ ํ์ต(Training without Backpropagation): ํฉ์ฑ๊ณฑ ์ ๊ฒฝ๋ง์์ ์ญ์ ํ ๋์ ์ง์ญ์ ํ์ต ๊ท์น ์ฌ์ฉ
4. ๋ณ๋ ฌํ ๋ฐ ๋ถ์ฐ ํ์ต
- ๋ชจ๋ธ ๋ณ๋ ฌํ: ๋ชจ๋ธ์ ์ฌ๋ฌ ๋๋ฐ์ด์ค์ ๋ถ์ฐ
- ํ์ดํ๋ผ์ธ ๋ณ๋ ฌํ: ๋ฏธ๋๋ฐฐ์น๋ฅผ ์ฌ๋ฌ ๋ถ๋ถ์ผ๋ก ๋๋์ด ๋ณ๋ ฌ ์ฒ๋ฆฌ
๊ฒฐ๋ก ๋ฐ ์ค์ฉ์ ํ
์ญ์ ํ์ ์ค์์ฑ ์์ฝ
์ญ์ ํ ์๊ณ ๋ฆฌ์ฆ์ ํ๋ ๋ฅ๋ฌ๋์ ํต์ฌ ๊ธฐ์ ๋ก, ๋ณต์กํ ์ ๊ฒฝ๋ง์ ํจ์จ์ ์ธ ํ์ต์ ๊ฐ๋ฅํ๊ฒ ํ๋ค. ์ฒด์ธ ๋ฃฐ์ ํ์ฉํ์ฌ ์ถ๋ ฅ์ธต์ ์ค์ฐจ๋ฅผ ์ญ์ผ๋ก ์ ํํจ์ผ๋ก์จ ๊ฐ ๊ฐ์ค์น๊ฐ ์ต์ข ์ค์ฐจ์ ๊ธฐ์ฌํ๋ ์ ๋๋ฅผ ๊ณ์ฐํ๊ณ , ์ด๋ฅผ ๋ฐํ์ผ๋ก ๊ฐ์ค์น๋ฅผ ํจ๊ณผ์ ์ผ๋ก ์ ๋ฐ์ดํธํ๋ค.
์ค์ฉ์ ํ
1. ๋๋ฒ๊น ์ ๋ต
- ์์น ๋ฏธ๋ถ(numerical differentiation)์ผ๋ก ์ญ์ ํ ๊ตฌํ ๊ฒ์ฆ
- ๊ทธ๋๋์ธํธ ๋ ธ๋ฆ(norm) ๋ชจ๋ํฐ๋ง์ผ๋ก ํ์ต ์ํ ํ์ธ
- ์์ ๋คํธ์ํฌ๋ถํฐ ์์ํ์ฌ ์ ์ง์ ์ผ๋ก ๋ณต์ก๋ ์ฆ๊ฐ
2. ํ์ดํผํ๋ผ๋ฏธํฐ ํ๋
- ์ ์ ํ ํ์ต๋ฅ ์ ํ: ๋๋ฌด ํฌ๋ฉด ๋ฐ์ฐ, ๋๋ฌด ์์ผ๋ฉด ๋๋ฆฐ ์๋ ด
- ๋ฏธ๋๋ฐฐ์น ํฌ๊ธฐ ์กฐ์ : ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋๊ณผ ์ผ๋ฐํ ์ฑ๋ฅ ์ฌ์ด์ ๊ท ํ
- ๊ฐ์ค์น ์ด๊ธฐํ ๋ฐฉ๋ฒ ์ ํ: ํ์ฑํ ํจ์์ ๋ง๋ ์ด๊ธฐํ ๊ธฐ๋ฒ ํ์ฉ
3. ๋ชจ๋ํฐ๋ง ์งํ
- ํ๋ จ/๊ฒ์ฆ ์์ค ์ถ์ด ๊ด์ฐฐ
- ๊ฐ ์ธต์ ํ์ฑํ ๋ถํฌ ๋ฐ ๊ทธ๋๋์ธํธ ๋ถํฌ ํ์ธ
- ๊ฐ์ค์น ๋ฐ ํธํฅ์ ๋ณํ๋ ๋ชจ๋ํฐ๋ง
์ฐธ๊ณ ๋ฌธํ
- Rumelhart, D. E., Hinton, G. E., & Williams, R. J. (1986). Learning representations by back-propagating errors. Nature, 323(6088), 533-536.
- LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436-444.
- Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning. MIT Press.
...