Нестабильные прогнозы DQN
Я реализовал DQN с нуля на java, все сделано на заказ. Я сделал это для игры в змейку, и результаты действительно хорошие. Но у меня проблема.
Чтобы сделать сеть максимально стабильной, я использую replay memory
а также target network
. Сеть действительно хорошо сходится. Но через какое-то время просто ломается.
Это график (X - сыгранные матчи, Y - среднее количество набранных очков)
Этот "перерыв" обычно случается в нескольких играх после обновления. target
сеть с policy
сеть.
Настройки, которые я использую для DQN:
discount factor: 0.9
learning rate: 0.001
steps to update target network: 300 000 (means every 300k steps i update target network with policy)
replay memory size: 300 000
replay memory batch size: 256 (every step i take 256 samples from replay memory and train network)
Есть идеи, что может быть не так? Спасибо за ответы.
1 ответ
Найдите "катастрофическое забывание"
Попробуйте настроить размер памяти воспроизведения и количество шагов для обновления целевой сети.