谁能告诉我在Keras如何进行反向传播?我读到在火炬中非常容易并且在Caffe中很复杂,但是我无法找到与Keras一起做的事情。我正在Keras(一个非常初学者)实现我自己的层,并想知道如何进行向后传播。
提前谢谢
答案 0 :(得分:13)
你根本就没有。
Keras会自动进行反向传播。除了使用fit
方法之一训练模型之外,您无需做任何事情。
你只需要处理一些事情:
self.add_weight()
方法中的build
方法在自定义图层中定义。见writing your own keras layers。 +
,-
,*
,/
或backend等基本操作符。通过后端,还支持tensorflow / theano / CNTK功能。 这就是让自动反向传播正常工作所需的一切。
如果您的图层不具有可训练的权重,则您不需要自定义图层,而是创建Lambda
图层(仅计算,不训练权重)。