Tensorflow 如何计算 reduce_min 操作的梯度?

数据挖掘 机器学习 Python 张量流 梯度下降
2021-09-14 12:41:03

对于不可微操作,例如最小化,Tensorflow如何计算梯度?某种软最小近似如果是这样,我可以检索特定梯度的分析计算吗?

1个回答

最小运算是可微的,或者至少您可以轻松地表达其输入的偏导数:

F=一世n(X1,X2,X3...Xn)

FX一世={1,如果 一个rG一世n一世(X一世)=一世0,否则

当多个值共享相同的最小值时,这并不严格成立。然而,这对于 TensorFlow 中基于梯度的优化器在实践中不是问题,它可以简单地将所有绑定索引设置为具有 1 的偏导数(或分数1n一世n),对最终结果的影响很小,因为价值的联系很少发生。在基于 ReLU 的网络中,Ties 可能发生得足够频繁,以至于 TensorFlow 开发人员认为这是对他们的最佳响应——我不知道 TensorFlow 在这种情况下具体做了什么。