답변:
다른 설명을 해보려면 :
신경망에서 가장 강력한 기능 중 하나는 기능이 매우 복잡하여 입력 및 출력 데이터 간의 매우 복잡한 관계를 배울 수 있다는 것입니다. 이러한 관계에는 시대별로 데이터가 공급되는 순서와 같이 예상치 못한 사항이 포함될 수 있습니다. 각 에포크 내에서 데이터의 순서가 동일하면 모델이이를 훈련 오류를 줄이는 방법으로 사용할 수 있으며 이는 일종의 과적 합입니다.
속도와 관련하여 : 미니 배치 방법은 확률 적 경사 하강 (및 그에 따른 개선)에 의존합니다. 즉, 최소값을 찾기 위해 임의성에 의존합니다. 미니 배치를 섞으면 그라디언트가 더 다양해 지므로 좋은 방향에 도달 할 가능성이 높아 지므로 수렴에 도움이됩니다.
참고 :이 답변 전체에서 나는 교육 손실 최소화를 언급하며 유효성 검사 손실과 같은 중지 기준에 대해서는 논의하지 않습니다. 중지 기준의 선택은 아래 설명 된 프로세스 / 개념에 영향을 미치지 않습니다.
고정 데이터 세트를 사용하여 네트워크를 훈련 할 때, 훈련 중 절대 섞이지 않는 데이터를 의미합니다. 40,70, -101,200 등과 같이 매우 높고 매우 낮은 무게를 얻을 가능성이 큽니다. 이는 단순히 네트워크에서 학습 데이터를 학습하지 않았지만 학습 데이터의 소음을 학습했음을 의미합니다. 과적 합 모델의 클래식 사례. 이러한 네트워크를 통해 훈련에 사용한 데이터에 대한 예측을 파악할 수 있습니다. 다른 입력을 사용하여 테스트하면 모델이 분해됩니다. 이제 각 에포크 (전체 세트의 반복) 후에 트레이닝 데이터를 섞을 때, 단순히 각 에포크에서 뉴런에 다른 입력을 공급하고 단순히 가중치를 조절하여 가중치가 제로에 가까워 질수록 "더 낮은"가중치를 얻을 가능성이 높아집니다. 즉, 네트워크에서 더 나은 일반화를 수행 할 수 있습니다.
나는 그것이 분명했으면 좋겠다.
보다 직관적 인 설명은 다음과 같습니다.
그래디언트 디센트를 사용할 때는 손실이 그래디언트 방향으로 줄어들기를 원합니다. 그라디언트는 각 가중치 업데이트 라운드마다 단일 미니 배치의 데이터로 계산됩니다. 우리가 원하는 것은이 미니 배치 기반 그라디언트는 대략 인구 그라디언트입니다. 이는 더 빠른 수렴을 생성 할 것으로 예상되기 때문입니다. (네트워크에 하나의 미니 배치로 100 개의 class1 데이터를 공급하고 다른 미니 배치로 100 개의 class2 데이터를 공급하면 네트워크가 호버링한다고 가정 해보십시오. 더 작은 방법은 각 미니 배치에서 50 개의 class1 + 50 개의 class2를 공급하는 것입니다.)
미니 배치에서 모집단 데이터를 사용할 수 없으므로이를 달성하는 방법은 무엇입니까? 통계 기술은 다음과 같이 알려줍니다. 모집단을 섞고 첫 번째 batch_size 데이터 조각이 모집단을 나타낼 수 있습니다. 그렇기 때문에 인구를 섞어 야합니다.
즉, 모집단에서 데이터를 샘플링하고 샘플이 합리적인 기울기를 생성 할 수있는 다른 방법이 있다면 셔플 링이 필요하지 않습니다.
그게 내 이해 야 도움이 되길 바랍니다.