深q学习(dqn)与神经拟合q-迭代之间的差异

问题描述 投票:1回答:1

深度学习(dqn)与“人体控制通过深度强化学习”和“神经拟合Q迭代 - 第一次经验与数据有效神经强化学习方法”的神经拟合q迭代有什么区别?链接分别如下。 https://www.nature.com/articles/nature14236.pdf http://ml.informatik.uni-freiburg.de/former/_media/publications/rieecml05.pdf

根据我的理解,他们似乎做了同样的事情,除了dqn每C步更新目标网络。

reinforcement-learning
1个回答
1
投票

除了在DQN中存在目标网络之外,神经拟合Q迭代仅使用可用的历史观察并且不执行任何探索。换句话说,没有必要有一个环境,只有循环列车步骤:

D = historical data
for e in range(epochs):
  b = get_batch from D
  train_step(b)

而在DQN中有两个循环:

D = []
for e in range(max_episode):
  done = False
  s = env.reset()
  while (!done)
   a = policy.get_action(s)
   s',r, done = env.step(a)
   D.append(s,a,r,s')
   if D.size > min_replay_mem:
    b = get_batch
    train_step(b)

train_step中,两者都获得target值,然后使用欧几里德损失函数。为了获得target值,DQN使用目标网络,尽管拟合Q迭代使用当前策略。

实际上,神经拟合Q迭代被认为是批量RL算法,假设没有任何可用的环境。

© www.soinside.com 2019 - 2024. All rights reserved.