확률 적 그라디언트 디센트는 각 반복을 다른 훈련 데이터 세트 샘플로 업데이트하여 역 전파를 사용하여 신경망을 최적화하는 데 사용될 수 있음을 이해합니다. 배치 크기는 얼마나 커야합니까?
확률 적 그라디언트 디센트는 각 반복을 다른 훈련 데이터 세트 샘플로 업데이트하여 역 전파를 사용하여 신경망을 최적화하는 데 사용될 수 있음을 이해합니다. 배치 크기는 얼마나 커야합니까?
답변:
"샘플 크기는"당신은라고도 대해 얘기하고 배치 크기 , . 배치 크기 매개 변수는 미니 배치 SGD (Stochastic Gradient Descent)를 사용하여 신경망을 학습 할 때 튜닝 할 하이퍼 파라미터 중 하나이며 데이터에 따라 다릅니다. 하이퍼 파라미터 검색의 가장 기본적인 방법은 학습 속도와 배치 크기에 대한 그리드 검색을 수행하여 네트워크를 수렴시키는 쌍을 찾는 것입니다.
배치 크기를 이해하려면 배치 그라디언트 디센트, 온라인 SGD 및 미니 배치 SGD 간의 관계를 확인하는 것이 중요합니다. 다음은 세 가지 유형의 일반화 인 미니 배치 SGD의 가중치 업데이트 단계에 대한 일반 공식입니다. [ 2 ]
1을 사용하면 손실 함수는 더 이상 임의 변수가 아니며 확률 근사값이 아닙니다.
SGD는 훈련 세트의 무작위로 선택된 서브 세트를 본 후 가중치를 업데이트하기 때문에 일반 "배치"그라디언트 디센트보다 빠르게 수렴합니다. 하자 우리의 훈련 세트를하고하자 . 배치 크기 는 의 카디널리티 일뿐입니다 ..
배치 그라데이션 하강는 가중치를 갱신 전체 데이터 세트의 그라데이션을 사용하여 ; 반면 SGD는 미니 배치 대한 평균 그래디언트를 사용하여 가중치를 업데이트합니다 . 합계와 반대로 평균을 사용하면 데이터 집합이 매우 큰 경우 알고리즘이 너무 큰 단계를 수행하지 못합니다. 그렇지 않으면 데이터 집합의 크기에 따라 학습 속도를 조정해야합니다. SGD에 사용 된 기울기의 확률 적 근사는 배치 구배 기울기에서 사용 된 결정적 기울기와 같습니다. .
샘플을 채취하고 가중치를 업데이트 할 때마다이를 미니 배치 라고합니다 . 전체 데이터 세트를 실행할 때마다이를 epoch 라고합니다 .
데이터 벡터가 있는데 , 우리의 신경망을 매개 변수화하는 초기 가중치 벡터 인 , 손실 함수 우리가 최소화하려는 . 우리가있는 경우 교육 예제와의 배치 크기 , 우리는 C 미니 배치에 그 교육 사례를 분할 할 수 있습니다 :
간단히하기 위해 T를 B로 균등하게 나눌 수 있다고 가정 할 수 있습니다. 그렇지 않은 경우가 많지 않더라도 각 미니 배치에 적절한 가중치를 크기의 함수로 할당해야합니다.
에포크가있는 SGD에 대한 반복 알고리즘 은 다음과 같습니다.
참고 : 실제로 우리는 메모리에서 이러한 교육 예제 데이터를 읽고 있으며 컴퓨터에서 수행하는 캐시 프리 페치 및 기타 메모리 트릭으로 인해 메모리 액세스가 통합 되면 (예 : 메모리를 읽을 때) 알고리즘이 더 빠르게 실행됩니다. 순서대로 무작위로 뛰어 다니지 마십시오. 따라서 대부분의 SGD 구현은 데이터 세트를 섞은 다음 읽을 순서대로 예제를 메모리에로드합니다.
위에서 설명한 바닐라 (운동량 없음) SGD의 주요 매개 변수는 다음과 같습니다.
나는 엡실론을 신기원 수부터 학습 속도까지의 함수로 생각하고 싶습니다. 이 기능을 학습률 일정 이라고 합니다 .
학습 속도를 고정 시키려면 엡실론을 상수 함수로 정의하십시오.
배치 크기에 따라 가중치를 업데이트하기 전에 몇 개의 예를 볼지 결정됩니다. 낮을수록 훈련 신호가 더 시끄러울수록 높을수록 각 단계의 기울기를 계산하는 데 시간이 오래 걸립니다.
인용 및 추가 자료 :
For simplicity we can assume that D is evenly divisible by B
. T 를 B로 균등하게 나눌 수 있다는 것을 의미하지 않습니까?
B is typically chosen between 1 and a few hundreds, e.g. B = 32 is a good default value, with values above 10 taking advantage of the speed-up of matrix-matrix products over matrix-vector products.
Bengio의 2012 년 논문에서