[ml-agents] batch size , episode, epoch
Unity3D/ml-agent 2021. 11. 14. 13:21
배치 크기 는 기계 학습 에서 사용되는 용어 로 한 번의 반복 에서 사용되는 훈련 예제의 수를 나타냅니다 .
하나의 에피소드 = 최종 상태로 끝나는 상태, 작업 및 보상의 시퀀스입니다.
예를 들어, 전체 게임을 플레이하는 것은 하나의 에피소드로 간주될 수 있으며, 한 플레이어가 패/승/무를 했을 때 최종 상태에 도달하게 됩니다. 때로는 한 에피소드를 여러 게임으로 정의하는 것을 선호할 수 있습니다( 예 : "각 플레이어는 게임이 21점까지 올라가기 때문에 각 에피소드는 수십 게임입니다").
하나의 epoch = 신경망 용어에서 모든 훈련 예제의 하나의 정방향 패스와 하나의 역방향 패스입니다.
언급한 논문에서 epoch의 의미와 관련하여 더 유연한 것 같습니다. 한 epoch를 특정 양의 가중치 업데이트로 정의하기 때문입니다. 따라서 질문에서 언급한 것처럼 한 에포크를 에피소드 루프 주변의 외부 루프로 볼 수 있습니다.
- 배치 크기 = 하나의 정방향/역방향 패스에서 훈련 예제의 수. 배치 크기가 클수록 더 많은 메모리 공간이 필요
- 하나의 epoch = 모든 훈련 예제 의 하나의 정방향 패스와 하나의 역방향 패스
신경망은 가중치 업데이트에 사용된 오류 추정치가 훈련 데이터 세트의 하위 집합을 기반으로 계산되는 경사 하강법을 사용하여 훈련됩니다.
오차 기울기 추정에 사용된 훈련 데이터 세트의 예제 수를 배치 크기 라고 하며 학습 알고리즘의 역학에 영향을 미치는 중요한 하이퍼파라미터입니다.
모델을 최대한 활용하려면 모델의 역학을 탐색하는 것이 중요합니다.
이 튜토리얼에서는 경사하강법의 세 가지 다른 특징과 학습 프로세스에 대한 배치 크기의 영향을 탐색하고 진단하는 방법을 발견할 것입니다.
- 배치 크기는 신경망을 훈련할 때 오차 기울기 추정의 정확도를 제어합니다.
- Batch, Stochastic 및 Minibatch 경사 하강법은 학습 알고리즘의 세 가지 주요 특징입니다.
- 배치 크기와 학습 프로세스의 속도 및 안정성 사이에는 긴장이 있습니다.
모든 예제에 대한 단계별 자습서 와 Python 소스 코드 파일을 포함하여 내 새 책 Better Deep Learning으로 프로젝트 를 시작하세요 .
참고
https://github.com/Unity-Technologies/ml-agents/issues/2252
https://machinelearningmastery.com/difference-between-a-batch-and-an-epoch/
https://github.com/Unity-Technologies/ml-agents/blob/main/docs/Training-Configuration-File.md
'Unity3D > ml-agent' 카테고리의 다른 글
[ml-agents 2.0] MLDino with GAIL, BC (0) | 2021.11.16 |
---|---|
--time-scale (0) | 2021.11.16 |
Training-Configuration-File (0) | 2021.11.11 |
Learning Environment Design Agents (0) | 2020.12.28 |
Class Academy (0) | 2020.12.28 |