我有一个前馈神经网络(NN
),对于它,在损失函数中,我需要考虑当前值之前所有输入的值。
考虑到NN
只是时间的函数,对于所有小于NN(t)
的值,NN
的损失是t
的函数(例如均方根)。
这是我以目前对TensorFlow的理解进行尝试的方式:
def NN(t):
u = neural_net(t, weights, biases)
return u
def NN_past(t):
t_past = tf.range(0, t, 0.1)[:, None]
nn_past = tf.map_fn(lambda s: NN, t_past)
return nn_past
尽管如此,当我将t
的占位符传递给NN
op时,出现了错误:
ValueError: Shape must be rank 0 but is rank 2 for 'limit' for 'range_1' (op: 'Range') with input shapes: [], [?,1], [].
完整问题的工作示例在这里:https://colab.research.google.com/drive/18fRIxD3Akg5zDCnj5154Zam5XwUtxy14