Я предварительно использую кодовую базу pacman для обучения своей собственной модели глубокого подкрепления.В то время как большинство компонентов кажутся мне разумными и понятными, есть две вещи, которые кажутся мне неясными:
Как определить размер памяти воспроизведения?В настоящее время, поскольку я установил полный шаг обучения как 4000 (обратите внимание, что в указанной кодовой базе это значение установлено как 4000000), поэтому я просто пропорционально уменьшаю replay_memory_size
как 400. Это имеет смысл?
Какое возвращаемое значение epsilon
при вызове функции PiecewiseSchedule
?Я также пропорционально уменьшаю его параметры следующим образом:
epsilon = PiecewiseSchedule([(0, 1.0),
(40, 1.0), # since we start training at 10000 steps
(80, 0.4),
(200, 0.2),
(400, 0.1),
(2000, 0.05)], outside_value=0.01)
replay_memory = PrioritizedReplayBuffer(replay_memory_size, replay_alpha)
, где исходный вызов функции выглядит так:
epsilon = PiecewiseSchedule([(0, 1.0),
(10000, 1.0), # since we start training at 10000 steps
(20000, 0.4),
(50000, 0.2),
(100000, 0.1),
(500000, 0.05)], outside_value=0.01)
replay_memory = PrioritizedReplayBuffer(replay_memory_size, replay_alpha)
И вообще, каков принцип(руководство) за настройкой хорошего размера «памяти воспроизведения» и вызова функции PiecewiseSchedule
?Спасибо!