본문 바로가기
반응형

stochasticgradientdescent2

딥러닝) optimizer ( SGD , Momentum , AdaGrad , RMSProp, Adam ) 1. Stochastic Gradient Descent (SGD) SGD는 현재 위치에서 기울어진 방향이 전체적인 최솟값과 다른 방향을 가리키므로 지그재그 모양으로 탐색해나간다. 즉, SGD의 단점은 비등방성(anisotropy)함수에서는 탐색 경로가 비효율적이라는 것이다. 무작정 기울어진 방향으로 나아가는 방식보다 더 효율적인 방식이 필요하다. SGD를 보완한 기법으로 Momentum, AdaGrad, Adam이 있다. class SGD: def __init__(self, lr = 0.01): self.lr = lr def update(self, params, grads): for key in params.keys(): params[key] -= self.lr * grads[key] 2. Momentu.. 2021. 3. 23.
딥러닝) 신경망 학습 알고리즘 , Stochasitc Gradient Descent , epoch, iteration , batch size 1. 신경망 학습 알고리즘 구현신경망에는 적응 가능한 가중치와 편향이 있고, 이 가중치와 편향을 training data에 적응하도록 조정하는 과정을 '학습'이라 한다. 신경망의 학습은 4가지 단계로 이루어진다. 1단계 - 미니배치training data 중 일부를 random으로 가져온다. 선별된 데이터를 미니배치라 하며, 미니배치의 손실 함수 값을 줄이는 것이 목표이다. 2단계 - 기울기 산출미니배치의 손실 함수 값을 줄이기 위해 손실 함수의 값을 가장 작게하는 방향을 제시해주는 각 가중치 매개변수의 기울기를 구한다. 3단계 - 매개변수 갱신가중치 매개변수를 기울기 방향으로 갱신한다. 4단계 - 반복1~3단계를 반복한다. 신경망의 학습은 경사 하강법으로 매개변수를 갱신하는 과정이다. 하지만 매개변수를.. 2021. 3. 2.
728x90
반응형