๋ฅ๋ฌ๋ ๋ชจ๋ฉํ (Momentum) ์์ ์ ๋ฆฌ - ๊ฐ๋ , ์๋ฆฌ, ์์, ์ค์ ์ ์ฉ
๐ ๋ชฉ์ฐจ
1. ๋ชจ๋ฉํ ์ด๋ ๋ฌด์์ธ๊ฐ?
1-1. ๊ธฐ๋ณธ ๊ฒฝ์ฌํ๊ฐ๋ฒ์ ํ๊ณ
๋ฅ๋ฌ๋์์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ํ์ต ๋ฐฉ๋ฒ์ ๊ฒฝ์ฌํ๊ฐ๋ฒ(Gradient Descent)์ ๋๋ค. ํ์ง๋ง ์ด ๋ฐฉ์์ ์์ค ํจ์์ ํํ๊ฐ ๋ณต์กํ๊ฑฐ๋ ๊ตด๊ณก์ด ์ฌํ ๊ฒฝ์ฐ ์ง๋ํ๊ฑฐ๋ ์๋ ด์ด ๋งค์ฐ ๋๋ ค์ง๋ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ํนํ ์์ค ๊ณก๋ฉด์ด ํ๊ณก์ฒ๋ผ ๊ธธ๊ณ ์ข์ ๊ฒฝ์ฐ, ๊ฒฝ์ฌํ๊ฐ๋ฒ์ ์ข์ฐ๋ก ์ง๋ํ๋ฉฐ ํจ์จ์ ์ผ๋ก ๋ด๋ ค๊ฐ์ง ๋ชปํฉ๋๋ค.
1-2. ๋ชจ๋ฉํ ์ ์ ์์ ๊ฐ๋
์ด๋ฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฑ์ฅํ ๊ฒ์ด ๋ชจ๋ฉํ (Momentum)์ ๋๋ค. ๋ฌผ๋ฆฌํ์์ '์ด๋๋'์ด๋ผ๋ ๊ฐ๋ ์์ ์ฐจ์ฉํ ๊ฒ์ผ๋ก, ์ด์ ์ ์ด๋ ๋ฐฉํฅ์ ๊ณ ๋ คํ์ฌ ๊ด์ฑ์ ๊ฐ์ง ์ฑ๋ก ๋ค์ ์์น๋ฅผ ์ ๋ฐ์ดํธํฉ๋๋ค. ์ฆ, ์ด์ ์ ํฅํ๋ ๋ฐฉํฅ์ ์ผ์ ๋ถ๋ถ ์ ์งํ๋ฉฐ ์๋ก์ด ๊ธฐ์ธ๊ธฐ์ ๊ฒฐํฉํด ํ๋ผ๋ฏธํฐ๋ฅผ ์ ๋ฐ์ดํธํฉ๋๋ค.
2. ๋ชจ๋ฉํ ์ ์์๊ณผ ์๋ ์๋ฆฌ
2-1. ์์์ผ๋ก ์ดํดํ๋ ๋ชจ๋ฉํ
๋ชจ๋ฉํ ์๊ณ ๋ฆฌ์ฆ์ ๋ค์๊ณผ ๊ฐ์ ์์์ผ๋ก ํํ๋ฉ๋๋ค:
v(t) = β * v(t-1) + (1 - β) * ∇L(θ)
θ = θ - α * v(t)
- v(t): ํ์ฌ ์๋ (์ด์ ๋ฐฉํฅ + ํ์ฌ ๊ธฐ์ธ๊ธฐ)
- β: ๋ชจ๋ฉํ ๊ณ์, ์ผ๋ฐ์ ์ผ๋ก 0.9 ์ฌ์ฉ
- ∇L(θ): ํ์ฌ ๊ธฐ์ธ๊ธฐ (gradient)
- α: ํ์ต๋ฅ (learning rate)
์ด ๋ฐฉ์์ ์ผ์ข ์ ๋์ ๋ ์ ๋ฐ์ดํธ๋ฅผ ์ด์ฉํด, ๊ธ๊ฒฉํ ๋ฐฉํฅ ๋ณํ ์์ด ์์ ์ ์ผ๋ก ์๋ ดํฉ๋๋ค.
2-2. ์๊ฐ์ ์ผ๋ก ์ดํดํ๊ธฐ
๋ง์น ๊ณต์ด ๊ฒฝ์ฌ์ง ๋ฉด์ ๋ฐ๋ผ ๊ตด๋ฌ ๋ด๋ ค๊ฐ ๋, ์ค๊ฐ์ ์๊ณ ์์ ๊ตฌ๋ฉ์ด๋ฅผ ์ง๋์น๋ฏ์ด, ๋ชจ๋ฉํ ์ ์ด๋ฌํ ์ฅ์ ๋ฌผ์ ๋๊ธฐ ์ฌ์ด ๊ตฌ์กฐ์ ๋๋ค. ๋จ์ํ ๊ฒฝ์ฌํ๊ฐ๋ฒ์ด ‘๋จ์ด์ง๊ณ ๋ฉ์ถ๊ณ ’๋ฅผ ๋ฐ๋ณตํ๋ค๋ฉด, ๋ชจ๋ฉํ ์ ‘์๋๋ฅผ ๋ถ์ฌ ๊พธ์คํ’ ๋ด๋ ค๊ฐ๋๋ค.
3. ๋ชจ๋ฉํ ์ ์ฅ์ ๊ณผ ํจ๊ณผ
3-1. ์ง๋ ๊ฐ์์ ๋น ๋ฅธ ์๋ ด
๋ชจ๋ฉํ ์ ์ ์ฉํ๋ฉด ๋ชจ๋ธ์ด ์ง๋ ์์ด ์์ ์ ์ผ๋ก ์๋ ดํฉ๋๋ค. ํนํ, ์์ค ๊ณก๋ฉด์ด ์ข์ฐ๋ก ๊ธ๊ฒฉํ ํ๋ค๋ฆฌ๋ ๊ตฌ๊ฐ์์๋ ์ง๋์ ์ค์ฌ์ฃผ๊ณ ์๋ ด ์๋๋ฅผ ํฌ๊ฒ ๋์ ๋๋ค. ์ด๋ ํ์ต ์ด๊ธฐ์ ๋งค์ฐ ์ ๋ฆฌํ๊ฒ ์์ฉํ๋ฉฐ, ์์ฃผ ์ฌ์ฉํ๋ ์ด์ ์ค ํ๋์ ๋๋ค.
3-2. ์ค์ ์ฌ๋ก์ ํจ๊ณผ ๋ถ์
SGD๋ง ์ฌ์ฉํ ๊ฒฝ์ฐ๋ณด๋ค SGD + Momentum ์กฐํฉ์ด ๋ ๋์ ์ฑ๋ฅ์ ๋ณด์ด๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์ด๋ฏธ์ง ๋ถ๋ฅ๋ ์์ฐ์ด ์ฒ๋ฆฌ ๋ชจ๋ธ์์ ์ด๊ธฐ ์์ค ๊ฐ์ ์๋์ ์ต์ข ์ ํ๋ ๋ชจ๋์์ ์ฐจ์ด๋ฅผ ๋ณด์ ๋๋ค.
4. ์ค์ ์์์ ๋ชจ๋ฉํ ํ์ฉ
4-1. ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์
๋ชจ๋ฉํ ์ ์ฌ์ฉํ ๋๋ ์ผ๋ฐ์ ์ผ๋ก ๋ค์๊ณผ ๊ฐ์ ์ค์ ์ ์ถ์ฒํฉ๋๋ค:
- β (๋ชจ๋ฉํ ๊ณ์): 0.9 ~ 0.99
- ํ์ต๋ฅ (learning rate): 0.01 ๋๋ 0.001
๋๋ฌด ํฐ β๋ ๋ฐ์ฐ ๊ฐ๋ฅ์ฑ์ด ์์ผ๋ ์คํ์ ์ผ๋ก ์กฐ์ ํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
4-2. Nesterov Momentum
๋ชจ๋ฉํ ์ ๊ฐ์ ํ์ธ Nesterov Accelerated Gradient (NAG)๋ ๋จผ์ ์์ธก๋ ์์น์์ ๊ธฐ์ธ๊ธฐ๋ฅผ ๊ณ์ฐํ ๋ค ์ ์ฉํฉ๋๋ค. ์ฆ, ํ ๋ฐ ์์ ๋ณธ ๋ค์ ์กฐ์ ํ๋ ๋ฐฉ์์ผ๋ก ๋ ์ ๋ฐํ๊ณ ๋น ๋ฅธ ์๋ ด์ ์ ๋ํฉ๋๋ค.
v(t) = β * v(t-1) + α * ∇L(θ - β * v(t-1))
θ = θ - v(t)
5. ์ ๋ฆฌ ๋ฐ ๋ง๋ฌด๋ฆฌ
๋ฅ๋ฌ๋์์ ๋ชจ๋ฉํ ์ ๋จ์ํ ๊ธฐ์ ์ด์์ ๋๋ค. ํ๋ผ๋ฏธํฐ๊ฐ ๋ ์์ ์ ์ผ๋ก, ๋ ๋น ๋ฅด๊ฒ ์๋ ดํ๋๋ก ๋์์ฃผ๋ ์ ๋ต์ ๊ธฐ๋ฒ์ด๋ฉฐ, ๋๋ถ๋ถ์ ๋ฅ๋ฌ๋ ํ๋ ์์ํฌ์์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ง์๋ฉ๋๋ค. SGD์ ํจ๊ป ์ฌ์ฉํ๋ฉด ์ฑ๋ฅ์ ๋์ด์ฌ๋ฆด ์ ์๊ณ , ๋ ๋์๊ฐ Adam ๊ฐ์ ๊ณ ๊ธ ์ตํฐ๋ง์ด์ ์ ํต์ฌ ์์๋ก๋ ํ์ฉ๋ฉ๋๋ค.
๋ชจ๋ธ์ด ํ๋ค๋ฆฌ๊ฑฐ๋ ์๋ ด์ด ๋๋ฆด ๋, ๋ชจ๋ฉํ ์ ๊ผญ ๊ณ ๋ คํด๋ณด์ธ์.