如何访问小批量中每个示例的渐变?

时间:2017-04-19 23:08:40

标签: keras theano

我正在为Keras编写一个优化器,并希望某些参数的更新依赖于中的渐变的统计信息。因此,我需要一些方法来访问minibatch中每个示例的渐变。

有没有一种优雅的方式来做到这一点,例如,Theano?我现在不知道怎么样。 theano.gradients.grad将完整的小批量张量作为输入/输出,但没有明确的方法可以单独访问每个渐变,而无需完全重新定义所有操作和grad

或者,在Keras有一种不太优雅的方式吗?我可以在优化器的keras.model.train_on_batch内调用get_gradients,但这需要我可以访问优化器中的输入数据。目前情况并非如此;输入不是model的属性,无法访问。因此,代理问题如何从优化器中访问小批量输入/输出?

目前,不优雅的方式可能效率极低。更重要的是,我弄清楚这种优化算法是否真的有效。

0 个答案:

没有答案