首页 > 解决方案 > q 代理正在学习不采取任何行动

问题描述

我正在训练一个深度 q 网络来交易股票;它有两种可能的动作;0:等待,1:没买就买,买了就卖。作为输入,它获取所购买股票的价值、股票的当前价值以及与股票相关的前 5 个时间步长的股票价值。所以像

[5.78, 5.93, -0.1, -0.2, -0.4, -0.5, -0.3]

奖励只是销售价格和购买价格之间的差额。任何其他动作的奖励都是 0,尽管我尝试过让它为负数或其他没有结果的东西。

很简单,对吧?不幸的是,代理总是收敛于采取“0”行动。即使我放大了以盈利或任何数量出售的回报。我真的把头发拉出来了,我错过了什么明显的东西吗?

标签: pythonneural-networkq-learningdqn

解决方案


尽管代理本身可能有问题,但我编写的第二个代理表现出类似的行为。我终于通过降低学习率解决了这个问题;最后它必须比原来低一千倍


推荐阅读