我正在尝试实现 TD-Gammon,如本文所述,它使用 TD-Lambda 学习算法。这已经在这里完成了,但它已有 4 年历史并且不使用 Tensorflow 2。我正在尝试在 Tensorflow 2 中执行此操作,并认为我需要创建一个自定义优化器来执行链接中所述的权重更改以上。
我知道要创建自定义优化器,您需要继承 Optimizer 类并实现create_slots
、resource_apply_dense
、resource_apply_sparse
和get_config
方法。然而,TD-Lambda 的权重变化算法需要神经网络输出(Y_t-1
以及Y_t
在论文中),并且该resource_apply_dense
方法似乎无法访问它。
如何访问神经网络输出?还是我只是以错误的方式解决这个问题?