mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-07-24 19:43:35 +00:00
Add gradient registration for Abs. (#6139)
This commit is contained in:
parent
aa49e476b0
commit
8fd085801a
4 changed files with 13 additions and 0 deletions
|
|
@ -1506,5 +1506,12 @@ IMPLEMENT_GRADIENT_BUILDER(GetClipGradient) {
|
|||
return output;
|
||||
}
|
||||
|
||||
IMPLEMENT_GRADIENT_BUILDER(GetAbsGradient) {
|
||||
return std::vector<NodeDef>{
|
||||
NodeDef("Sign", {I(0)}, {IA("Sign_Input")}),
|
||||
NodeDef("Mul", {GO(0), IA("Sign_Input")}, {GI(0)})
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace training
|
||||
} // namespace onnxruntime
|
||||
|
|
|
|||
|
|
@ -70,6 +70,7 @@ DECLARE_GRADIENT_BUILDER(GetExpGradient)
|
|||
DECLARE_GRADIENT_BUILDER(GetFlattenGradient)
|
||||
DECLARE_GRADIENT_BUILDER(GetTopKGradient)
|
||||
DECLARE_GRADIENT_BUILDER(GetClipGradient)
|
||||
DECLARE_GRADIENT_BUILDER(GetAbsGradient)
|
||||
|
||||
} // namespace training
|
||||
} // namespace onnxruntime
|
||||
|
|
|
|||
|
|
@ -101,6 +101,7 @@ void GradientBuilderRegistry::RegisterGradientBuilders() {
|
|||
REGISTER_GRADIENT_BUILDER("Flatten", GetFlattenGradient);
|
||||
REGISTER_GRADIENT_BUILDER("TopK", GetTopKGradient);
|
||||
REGISTER_GRADIENT_BUILDER("Clip", GetClipGradient);
|
||||
REGISTER_GRADIENT_BUILDER("Abs", GetAbsGradient);
|
||||
};
|
||||
|
||||
} // namespace training
|
||||
|
|
|
|||
|
|
@ -427,6 +427,10 @@ TEST(GradientCheckerTest, NegGrad) {
|
|||
UnaryOpGradientTest("Neg");
|
||||
}
|
||||
|
||||
TEST(GradientCheckerTest, AbsGrad) {
|
||||
UnaryOpGradientTest("Abs");
|
||||
}
|
||||
|
||||
TEST(GradientCheckerTest, LogGrad) {
|
||||
TensorShape shape({2, 5, 6});
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue