pullwall
Well done! 코딩
pullwall
전체 방문자
오늘
어제
  • 분류 전체보기 (151)
    • 개발환경 (2)
    • java study (21)
    • 백준 단계별 (51)
    • 알고리즘 (3)
    • AI (43)
    • 클라우드 (3)
      • Kubernetes in Google (3)
    • 논문 (5)
    • 리눅스 (1)
    • AWS (4)
    • 수학 (15)
    • 기타 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 선택정렬
  • 자바독학
  • 알고리즘
  • 논문리뷰
  • pytorch
  • Kubernetes
  • 정렬알고리즘
  • 자바
  • 백준
  • 단계별
  • 쿠버네티스
  • dataset
  • 백준 단계별
  • AWS
  • Java
  • 정렬
  • LLM
  • Ai
  • Google
  • 수학

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
pullwall

Well done! 코딩

AI

mini-batch SGD

2024. 9. 1. 16:31
728x90
해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.

https://welldonecode.tistory.com/126

 

SGD (Stochastic Gradient Descent)

해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.  2차식인 loss fuction의 Gradient Descent 과정을 contour plot(등고선 그래프)으로 그려보면 위 그림과 같다.  SGD는 데이터 중 임의로

welldonecode.tistory.com

 

GD(Gradient Descent)는 방향을 너무 신중하게 (모든 데이터를 전부 고려해서) 결정해서 문제이고,

 

SGD는 데이터를 하나씩만 보기 때문에 너무 성급하게 방향을 결정한다는 문제점이 있다.

 

이 둘의 절충안이 mini-batch SGD이다.

 

batch size만큼 데이터를 뽑아서 방향을 결정한다. (단, 뽑지 않는 데이터가 없게 하기 위해 mini-batch size=5 지만 마지막에 3개가 남았다면 그냥 3개만 뽑아서 결정한다.)

 

 


 

 

 

https://arxiv.org/abs/1706.02677

 

Accurate, Large Minibatch SGD: Training ImageNet in 1 Hour

Deep learning thrives with large neural networks and large datasets. However, larger networks and larger datasets result in longer training times that impede research and development progress. Distributed synchronous SGD offers a potential solution to this

arxiv.org

 

batch size는 크기가 클수록  경사하강법에서 더 신중하게 많은 데이터를 가지고 방향을 결정하기 때문에 유리하다. 하지만100% 맞는 말은 아니다.

 

위 논문에 의하면 batch size는 약 8k까지가 제일 적당하다.

 

8k까지는 아래와 같은 방법으로 커버가 가능하다.

  • learning rate를 batch size와 정비례하게 같이 증가시킨다.
  • learning rate warmup을 사용한다. (처음부터 너무 크면 좋지 않다)

 

 

 

 

 

 

728x90

'AI' 카테고리의 다른 글

Momentum vs RMSProp  (0) 2024.09.01
파라미터 (parameter) vs 하이퍼파라미터 (hyperparameter)  (0) 2024.09.01
SGD (Stochastic Gradient Descent)  (0) 2024.09.01
가중치 초기화 기법 (Weight Initialization)  (0) 2024.09.01
경사하강법 (Gradient descent)  (0) 2024.08.31
    'AI' 카테고리의 다른 글
    • Momentum vs RMSProp
    • 파라미터 (parameter) vs 하이퍼파라미터 (hyperparameter)
    • SGD (Stochastic Gradient Descent)
    • 가중치 초기화 기법 (Weight Initialization)
    pullwall
    pullwall

    티스토리툴바