728x90

사실상 차이는 모든 데이터를 사용해 그래디언트를 계산하하느냐, 데이터 하나만 사용해 그래디언트를 계산하는냐에 있습니다.

 

코드는 https://github.com/han1057578619/MachineLearning_Zhouzhihua_ProblemSets/tree/master/ch5--%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/5.5-5.6 여기를 참조 바랍니다.

 

구현된 코드를 통해 살펴본 결과는 그래프와 같습니다. gd_cost의 수렴과정이 비교적 안정적입니다.

sgd_cost는 항상 최적의 방향으로 수렴하는 것은 아니지만 결국 수렴했고, 200번의 에포크를 돌렸을 때 결과는 크게 다르지 않습니다. 

하지만 확률적 경사하강법(sgd)에서는 매번 반복 할때 마다 하나의 샘플만 사용했기 때문에 계산량에서 큰 차이를 보입니다.

 

참조:https://zhuanlan.zhihu.com/p/47616848

+ Recent posts