Hongming Zhang
Hongming Zhang
I write a version base on this repo with freezing target network.[FlappyBird_DQN_with_target_network](https://github.com/initial-h/FlappyBird_DQN_with_target_network)
you can cancel the FPS restriction and comment the pygame.display.update() function when train,and then it can run faster depending on your computer.
+1
我也在关心这个问题,也一直没有弄明白。有个问题是如果按照论文说法,是在给树的节点赋值的时候加上概率并添加噪声,那么每次扩展节点的时候,每个概率都会有误差,那么很多次搜索都是在瞎搜,即使网络拟合的策略概率已经很好了,但是每次把tau=0.001并添加噪声,都会破坏拟合好的概率,导致学到程度后不再提升,而且网络的拟合loss也跟高。不知道我的理解对不对。
这种方式我觉得和论文的描述更贴近。也有一点问题,在于tau=0.001了再加噪声,会使得策略网输出的最优节点的概率为0.75,剩下的概率很小。那么树的探索很多次都会走向那个概率为0.75的分支,除非那个点输的情况特别多,否则即使它不如其中某一些节点效果好,也会因为visit次数多而仍然选择这个节点下棋。然后再下一次计算这个状态的下子概率的时候,这个突出的节点又会因为visit次数最多而得到最高的π(a|s)。虽然原文的意思是为了减小探索,但是在搜索次数有限的情况下,会不会陷入一种走子里面再也出不来,也就是说MCTS并没有提升棋力。方便加个微信交流一下吗?
还有一个不理解的地方是,为什么在走子的时候添加了噪声,而网络在拟合概率分布的时候拟合的是不带噪声的概率。这里论文里也挺模糊的,很好奇论文里是怎么做的,特别是30步之后,tau取无穷小再加上狄利克雷噪声的时候,拟合的概率是tau=1的概率分布还是tau取无穷小再加上狄利克雷噪声的分布?
我把模型保存下来,之后再加载进去继续训练,explained_var_old:0.000,explained_var_new:0.000一直出现,这是为什么呢。我看了一下,memory的数据收集没有问题,网络的prob输出没有问题,唯独value输出全都一样,都为0.这是为什么呢? batch i:1, episode_len:16 batch i:2, episode_len:19 kl:0.00000,lr_multiplier:1.500,loss:4.583380222320557,entropy:3.5835189819335938,explained_var_old:-0.000,explained_var_new:0.000 batch i:3, episode_len:19 kl:0.00000,lr_multiplier:2.250,loss:4.583160877227783,entropy:3.5835165977478027,explained_var_old:0.000,explained_var_new:0.000 batch i:4, episode_len:18 kl:0.00000,lr_multiplier:3.375,loss:4.582594871520996,entropy:3.5835118293762207,explained_var_old:0.000,explained_var_new:0.000 batch i:5, episode_len:9 kl:0.00001,lr_multiplier:5.062,loss:4.581911563873291,entropy:3.5834879875183105,explained_var_old:0.000,explained_var_new:0.000 batch i:6, episode_len:16 kl:0.00009,lr_multiplier:7.594,loss:4.583174228668213,entropy:3.5833580493927,explained_var_old:-0.000,explained_var_new:-0.000 batch i:7, episode_len:15 kl:0.00214,lr_multiplier:11.391,loss:4.579413890838623,entropy:3.58164644241333,explained_var_old:0.000,explained_var_new:-0.000 batch i:8,...
Thank you very much! And the agent's direction is also presented in the third array right? I'm trying to find some logic that what kind of features are put together...
if you sample enough data,it's all ok. but in practice we can't, and so it's important to substract it.
Hi, I find another confusion in rlsaber.trainer. In class Trainer, the loop will break if the game is done and reset, but in the class BatchTrainer, when an env is...