๐Ÿ“– Theory/AI & ML

[ML] Gradient Descent Algorithms (๊ฒฝ์‚ฌํ•˜๊ฐ•๋ฒ•) ๊ฐœ๋…

๋ญ…์ฆค 2022. 1. 13. 00:13
๋ฐ˜์‘ํ˜•

Gradient Descent (๊ฒฝ์‚ฌํ•˜๊ฐ•๋ฒ•)์€ 1์ฐจ ๊ทผ์‚ฟ๊ฐ’ ๋ฐœ๊ฒฌ์šฉ ์ตœ์ ํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ํ•จ์ˆ˜์˜ ๊ธฐ์šธ๊ธฐ๋ฅผ ๊ตฌํ•˜๊ณ  ๊ฒฝ์‚ฌ์˜ ๋ฐ˜๋Œ€ ๋ฐฉํ–ฅ์œผ๋กœ ๊ณ„์† ์ด๋™์‹œ์ผœ ๊ทน๊ฐ’์— ์ด๋ฅผ ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค.

 

๋จธ์‹ ๋Ÿฌ๋‹์—๋Š” Gradient Descent ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋ธ์˜ ์˜ค์ฐจ(Loss)๊ฐ€ ์ž‘์•„์ง€๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ๋ชจ๋ธ์„ ์—…๋ฐ์ดํŠธ(ํ•™์Šต)์‹œํ‚ค๋Š” ๊ฒƒ

 

 

 

SGD(Stochastic Gradient Descent)

  • Batch Gradient Descent : ์ „์ฒด Dataset์— ๋Œ€ํ•ด parameter ๋“ค์˜ gradient๋ฅผ ๊ตฌํ•จ(๋งŽ์€ memory ํ•„์š”)
  • SGD : ์ „์ฒด dataset์—์„œ mini-batch ๋งŒํผ์˜ gradient๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ parameter update
  • Batch gradient descent ๋ณด๋‹ค ๋น ๋ฅด์ง€๋งŒ local minima๋ฅผ ์ž˜ ๋น ์ ธ๋‚˜๊ฐ€์ง€๋Š” ๋ชปํ•จ

 

 
Momentum

 

  • SGD+Momentum : momentum ์„ฑ๋ถ„์„ ์ถ”๊ฐ€ํ•˜์—ฌ local minima๋ฅผ ํƒˆ์ถœํ•  ์ˆ˜ ์žˆ์Œ
  • ๋‹จ์  : Global minima์—์„œ ๋ฉˆ์ถ”์ง€ ๋ชปํ•˜๊ณ  ๋„˜์–ด๊ฐ€ ๋ฒ„๋ฆด ์ˆ˜ ์žˆ์Œ

 

 

 

NAG(Nesterov Accelerated Gradient)

 

- Momentum step์„ ๋ฐŸ๊ณ  ์ด๋™ํ•œ ์œ„์น˜์—์„œ gradient ๊ณ„์‚ฐํ•˜์—ฌ ์ด๋™ -> minima์— ์•ˆ์ •์ ์œผ๋กœ ๋„๋‹ฌ ๊ฐ€๋Šฅ

- ๋‹จ์  : ๋ชจ๋“  Parameter๋“ค์˜ step size๊ฐ€ ๋™์ผ(์ตœ์ ํ™”์— ๊ฐ€๊นŒ์›Œ์ง„ ๊ฐ’๋„ ์žˆ๊ณ  ๋จผ ๊ฐ’๋„ ์žˆ์„ ํ…Œ๋‹ˆ๊นŒ)

 

 

Adagrad(Adaptive Gradient)

 

  • Gt ๋Š” gradient ๊ฐ’์„ ๋ฐ›์•„ ์–ผ๋งˆ๋‚˜ ๋ณ€ํ•ด์™”๋Š”์ง€๋ฅผ ์•Œ ์ˆ˜ ์žˆ๊ณ , Gt-1 ๊ฐ’์„ ์ถ”๊ฐ€ํ•˜์—ฌ ์ด์ „ ๊ฐ’์„ ์ถ”๊ฐ€
  • ์–ผ๋งˆ๋‚˜ ๋ณ€ํ•ด์™”๋Š”์ง€์— ๋Œ€ํ•œ ๊ฐ’์„ ๋ฐ˜๋น„๋ก€์‹œ์ผœ ๊ณฑํ•˜๋ฏ€๋กœ ๊ฐ parameter๊ฐ’์ด ๋ณ€ํ•œ ์ •๋„์— ๋”ฐ๋ผ Learning rate๋ฅผ ์กฐ์ ˆ
  • ๋‹จ์  : Gt์˜ ๊ฐ’์ด ๊ณ„์† ๋”ํ•ด์ ธ ๊ฐ€๋ฏ€๋กœ ๋ฐœ์‚ฐํ•  ์ˆ˜ ์žˆ์Œ -> Step size๊ฐ€ ๋งค์šฐ ์ž‘์•„์ง

 

 

 
RMSProp

 

  • Gt์— γ ๊ฐ’์„ ์ถ”๊ฐ€ํ•ด์„œ ๋ฐœ์‚ฐํ•˜์ง€ ์•Š๋„๋ก ์กฐ์ ˆ -> step size ์ž‘์•„์ง€๋Š” ๊ฒƒ ๋ฐฉ์ง€

 

 
 
Adam(Adaptive Momentum Estimation)

  • NAG์™€ RMSprop์˜ ์žฅ์ ์„ ํ•ฉ์นจ
  • β_1=0.9,β_2=0.999 ์ผ ๋•Œ, (1-β_1 )=0.1,(1-β_2 )=0.001 ์ด ๋˜์–ด, m>>v -> ์ฒซ step ๋„ˆ๋ฌด ์ปค์ง
๋ฐ˜์‘ํ˜•