PARL icon indicating copy to clipboard operation
PARL copied to clipboard

在dqn中terminal==True的时候感觉应该不需要再跑一次网络的,会造成没用的运算

Open tangmingkai opened this issue 3 years ago • 7 comments

在dqn中terminal==True的时候感觉应该不需要再跑一次网络的,会造成没用的运算

tangmingkai avatar Jul 09 '22 08:07 tangmingkai

是的,因为最后还是拼了个0上去哈哈哈。从计算性能角度来看,影响不大,比如一个episode有1000步,最后一步包含terminal的样本只占了1/1000,优化了这个计算对整体性能影响提升不大。

TomorrowIsAnOtherDay avatar Jul 09 '22 11:07 TomorrowIsAnOtherDay

但是可能在一些情况下,模型里面要加一些特判,否则会运行错误

tangmingkai avatar Jul 11 '22 09:07 tangmingkai

比如?

TomorrowIsAnOtherDay avatar Jul 11 '22 14:07 TomorrowIsAnOtherDay

相当于在terminal的时候,可以选择的action为空集,例如说用RL求TSP问题,网络自动从所有候选点中选择下一个点走,在terminal的时候,候选点为空集,就会出错。

tangmingkai avatar Jul 11 '22 15:07 tangmingkai

TSP问题,你在调用value函数前,先判断一下是否已经选够那么多个点了不就可以了吗?

TomorrowIsAnOtherDay avatar Jul 12 '22 01:07 TomorrowIsAnOtherDay

如果你非要让网络输出,那你像NLP领域一样,增加一个结束标志在action set里面不也可以吗?

TomorrowIsAnOtherDay avatar Jul 12 '22 01:07 TomorrowIsAnOtherDay

“TSP问题,你在调用value函数前,先判断一下是否已经选够那么多个点了不就可以了吗?” 我打算用DQN,如果最后一次不去学的话,相当于最后一步的数据学不到了

"如果你非要让网络输出,那你像NLP领域一样,增加一个结束标志在action set里面不也可以吗?" 这种方案确实可以

tangmingkai avatar Jul 16 '22 03:07 tangmingkai