我正在尝试使用TensorFlow库TF代理进行强化学习。定义适当的环境后,将以TimeStep的形式收集数据
tf_agents.trajectories.time_step.TimeStep(
step_type, reward, discount, observation
)
观察结果为:"A NumPy array, or a nested dict, list or tuple of arrays."
我想知道在某些情况下是否有可能以ragged tensor的形式获得观测结果,例如在重置环境时。
我已经尝试通过以下方式定义观察值:
def _reset(self):
self._state = tf.ragged.constant([[1,0,0],[0,1,0],[0,0,1],[1]])
return ts.restart(self._state)
但是当尝试运行我的代码时,出现以下错误
ValueError:无法将NumPy数组转换为张量(不受支持的对象类型RaggedTensor)。
有什么办法可以使张量参差不齐的观察结果,还是应该重新格式化数据?