我计划使用神经网络来逼近强化学习算法中的值函数。我想这样做是为了在我如何表示状态和行动方面引入一些概括性和灵活性。
现在,在我看来,神经网络是实现这一目标的正确工具,但由于我不是人工智能专家,因此我对此的了解有限。特别是,如今神经网络似乎正在被其他技术取代,例如神经网络。支持向量机,但我不确定这是否是一个时尚问题,或者神经网络是否存在一些真正的限制,可能会毁掉我的方法。你有什么建议吗?
谢谢,
通努兹
神经网络确实不再像以前那样流行,但它们还没有消亡。它们失宠的一般原因是支持向量机的兴起,因为它们全局收敛并且需要更少的参数规范。
然而,SVM 的实施起来非常繁琐,并且不能像 ANN 那样自然地推广到强化学习(SVM 主要用于离线决策问题)。 如果您的任务适合,我建议您坚持使用人工神经网络,因为在强化学习领域,人工神经网络在性能方面仍然处于领先地位。
这是一个很好的起点;只需查看标题为“时间差异学习”的部分,因为这是 ANN 解决强化学习问题的标准方法。 但需要注意的是:机器学习的最新趋势是通过“bagging”或“boosting”一起使用许多不同的学习代理。虽然我在强化学习中没有看到太多这种情况,但我确信采用这种策略仍然比单独的人工神经网络更强大。但除非你
真的需要世界一流的性能(这就是赢得Netflix竞赛的原因),否则我会避开这种极其复杂的技术。 在我看来,神经网络正在卷土重来。例如,今年
ICML 2011上有一堆关于神经网络的论文
理论上,神经网络已经被证明可以逼近任何函数(给定无限数量的隐藏神经元和必要的输入),所以我不认为神经网络会被抛弃。
将神经网络与强化学习结合使用是标准且众所周知的,但要小心绘制和调试神经网络的收敛,以检查其是否正常工作,因为众所周知,神经网络很难正确实现和学习。
也要非常小心地对待你给神经网络的问题的表示(即:输入节点):你或者专家可以根据你给网络的输入来解决问题吗?很多时候,实现神经网络的人没有为神经网络提供足够的信息来进行推理,这种情况并不少见,所以要小心。