MCPcopy Create free account
hub / github.com/DeepRec-AI/DeepRec / ReverseGrad

Function ReverseGrad

tensorflow/core/ops/array_grad_test.cc:452–472  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

450}
451
452std::vector<Tensor> ReverseGrad(const Tensor& x, const Tensor& dims,
453 const Tensor& dy) {
454 auto T = DT_FLOAT;
455 auto gdef = test::function::GDef(
456 {f::NDef("x", "Placeholder", {}, {{"dtype", T}}),
457 f::NDef("dims", "Placeholder", {}, {{"dtype", DT_BOOL}}),
458 f::NDef("dy", "Placeholder", {}, {{"dtype", T}}),
459 f::NDef("dx", "SymbolicGradient", {"x", "dims", "dy"},
460 {{"f", FDH::FunctionRef("Reverse", {{"T", T}})},
461 {"Tin", DataTypeSlice{T, DT_BOOL, T}},
462 {"Tout", DataTypeSlice{T, DT_BOOL}}})});
463 VLOG(1) << DebugStringWhole(gdef);
464 auto sess = NewSession();
465 TF_CHECK_OK(sess->Create(gdef));
466 std::vector<Tensor> out;
467 TF_CHECK_OK(sess->Run({{"x:0", x}, {"dims:0", dims}, {"dy:0", dy}},
468 {"dx:0", "dx:1"}, {}, &out));
469 CHECK_EQ(out.size(), 2);
470 TF_CHECK_OK(sess->Close());
471 return out;
472}
473
474TEST(ArrayGradTest, ReverseGrad) {
475 Tensor x(DT_FLOAT, {2, 3});

Callers 1

TESTFunction · 0.70

Calls 8

GDefFunction · 0.85
NDefFunction · 0.85
DebugStringWholeFunction · 0.85
NewSessionFunction · 0.70
CreateMethod · 0.45
RunMethod · 0.45
sizeMethod · 0.45
CloseMethod · 0.45

Tested by

no test coverage detected