Oneflow-Inc / OneFlow-Benchmark

OneFlow models for benchmarking.
104 stars 31 forks source link

relu6实现有误 #166

Open MARD1NO opened 3 years ago

MARD1NO commented 3 years ago

使用 flow.clip(x, 0, 6) 数值表现是跟 Relu6一致的 但是在求梯度的时候行为不一致

clip在边界值,如上例的0, 6 时候,梯度为1

而 Relu6在边界值的表现,梯度为0

现在正在开发 Relu6算子

daquexian commented 3 years ago

输入会恰好等于 0 或者 6 吗

MARD1NO commented 3 years ago

输入会恰好等于 0 或者 6 吗

是的,如果恰好等于这两个边界值,梯度的表现是不一样的

daquexian commented 3 years ago

是的,如果恰好等于这两个边界值,梯度的表现是不一样的

什么情况会恰好等于边界值呢