我有一个有状态的LSTM模型。我需要自己调用我自己的K.function()
几次来获取相同的数据,这样我就可以测量预测的不确定性。我假设模型的状态实际上不会被更新,因为这将通过更新操作完成,Keras通常会传递给K.function(), updates = parameter
。这是正确的假设吗?
答案 0 :(得分:1)
正确,将updates=None
或updates=[]
传递到K.function
只会评估outputs
。只要您的K.function()
参数本身不做任何更改,您就可以了。
这可以在tesorflow backend source code中看到:
该调用仅评估self.outputs
,因为self.updates_op
将是一个空的操作。
我还没与其他后端合作,但我已经查看了cntk_backend.py
和theano_backend.py
来源:他们也是这样做的。