Training-Configuration-File
Unity3D/ml-agent 2021. 11. 11. 14:53https://github.com/Unity-Technologies/ml-agents/blob/main/docs/Training-Configuration-File.md
#https://github.com/Unity-Technologies/ml-agents/blob/main/docs/Training-Configuration-File.md
behaviors:
RollerBall:
#(기본값 = ppo) 트레이너의 유형은 사용 : ppo, sac, 또는 poca.
trainer_type: ppo
hyperparameters:
batch_size: 10 #각 반복에서의 경험 수
buffer_size: 100 #모델을 학습하거나 업데이트하기 전에 수집해야 하는 경험의 수에 해당합니다.
learning_rate: 3.0e-4 #훈련이 불안정하고 보상이 지속적으로 증가하지 않는 경우 일반적으로 이 값을 줄여야 합니다.
beta: 5.0e-4 #이 값을 늘리면 더 많은 임의 작업이 수행됩니다.
epsilon: 0.2 #이 값을 작게 설정하면 더 안정적인 업데이트를 얻을 수 있지만 훈련 프로세스가 느려집니다.
#낮은 값은 현재 가치 추정치에 더 많이 의존하는 것에 해당하고,
#높은 값은 환경에서 받는 실제 보상에 더 많이 의존하는 것에 해당합니다
#일반 적인 범위 0.9 ~ 0.95
#0.99라는 것은 실제 보상에 더 많이 의존 한다는것
lambd: 0.99
#이 값을 줄이면 학습 속도가 느려지지만 더 안정적인 업데이트가 보장됩니다.
#일반적인 범우 3 ~ 10
num_epoch: 3
learning_rate_schedule: linear #학습률이 시간에 따라 어떻게 변하는지 결정합니다
#시간이 지남에 따라 베타가 변경되는 방식을 결정합니다.
#constant는 전체 훈련 실행 동안 베타를 일정하게 유지합니다.
beta_schedule: constant
#시간이 지남에 따라 엡실론이 어떻게 변하는지 결정합니다.
#linear은 엡실론을 선형으로 감쇠하여 max_steps에서 0에 도달합니다.
epsilon_schedule: linear
network_settings:
#벡터 관찰 입력에 정규화가 적용되는지 여부입니다.
#기본값 false
#더 간단한 이산 제어 문제에서는 해로울 수 있습니다.
normalize: false
#관찰 입력의 직접적인 조합인 간단한 문제의 경우 이 값은 작아야 합니다.
#동작이 관찰 변수 간의 매우 복잡한 상호 작용인 문제의 경우 이 값이 더 커야 합니다.
#일반적인 범위 : 32 ~ 512
hidden_units: 128
#신경망의 숨겨진 레이어 수입니다.
#간단한 문제의 경우 더 적은 수의 레이어가 더 빠르고 효율적으로 훈련될 가능성이 높습니다.
#더 복잡한 제어 문제에는 더 많은 레이어가 필요할 수 있습니다.
#일반적인 범위 1 ~ 3
num_layers: 2
#보상 신호
reward_signals:
#외부 보상
extrinsic:
#에이전트가 먼 미래의 보상을 준비하기 위해 현재에 행동해야 하는 상황에서는 이 값이 커야 합니다.
#보상이 더 즉각적인 경우에는 더 작을 수 있습니다. 1보다 엄격하게 작아야 합니다.
#일반적인 범위 0.8 ~ 0.995
gamma: 0.99
#환경이 제공하는 보상을 곱하는 요소입니다.
#일반적인 범위 1.00
strength: 1.0
#Common Trainer Configurations
#교육 프로세스를 종료하기 전에 환경(또는 여러 환경을 병렬로 사용하는 경우 모든 환경에서)에서 취해야 하는 총 단계
#(즉, 수집된 관찰 및 취한 조치)입니다.
#Typical range: 5e5 - 1e7
max_steps: 500000
#피소드 내에서 보상이 빈번하거나 에피소드가 엄청나게 많은 경우에는 더 적은 수를 사용하는 것이 더 이상적일 수 있습니다.
#이 숫자는 에이전트의 일련의 작업 내에서 모든 중요한 동작을 캡처할 수 있을 만큼 충분히 커야 합니다.
#Typical range: 32 - 2048
time_horizon: 64
#훈련 통계를 생성하고 표시하기 전에 수집해야 하는 경험의 수입니다. 이것은 Tensorboard에서 그래프의 세분성을 결정합니다.
#(기본값 = 50000)
summary_freq: 10000
'Unity3D > ml-agent' 카테고리의 다른 글
--time-scale (0) | 2021.11.16 |
---|---|
[ml-agents] batch size , episode, epoch (0) | 2021.11.14 |
Learning Environment Design Agents (0) | 2020.12.28 |
Class Academy (0) | 2020.12.28 |
ml-agents v1.0 : Overview (0) | 2020.12.28 |