Keras 如何访问小批量中每个示例的渐变?
我正在为Keras编写一个优化器,并希望某些参数的更新取决于minibatch中梯度的统计信息。因此,我需要一些方法来访问minibatch中每个示例的渐变 有没有一种优雅的方式可以做到这一点,例如,在Theano?我现在不知道该怎么做Keras 如何访问小批量中每个示例的渐变?,keras,theano,Keras,Theano,我正在为Keras编写一个优化器,并希望某些参数的更新取决于minibatch中梯度的统计信息。因此,我需要一些方法来访问minibatch中每个示例的渐变 有没有一种优雅的方式可以做到这一点,例如,在Theano?我现在不知道该怎么做theano.gradients.grad将一个完整的小批量张量作为输入/输出,但如果不完全重新定义所有操作和grad,就无法单独访问每个梯度 或者,在Keras中有没有一种不优雅的方式可以做到这一点?我可以从优化器的get\u gradients中调用keras
theano.gradients.grad
将一个完整的小批量张量作为输入/输出,但如果不完全重新定义所有操作和grad
,就无法单独访问每个梯度
或者,在Keras中有没有一种不优雅的方式可以做到这一点?我可以从优化器的get\u gradients
中调用keras.model.train\u on\u batch
,但这需要我能够从优化器中访问输入数据。目前情况并非如此;输入不是模型的属性,因此无法访问。因此,代理问题是如何从优化器中访问小批量输入/输出?
目前,这种不雅观的方式可能效率极低。更重要的是,我要弄清楚这个优化算法是否真的有效