Я пытаюсь реализовать 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
, похоже, не имеет к этому доступа.
Как получить доступ к выходам нейронной сети? Или я просто ошибаюсь?