forked from mindspore-Ecosystem/mindspore
!6801 fix buf of pow bprop
Merge pull request !6801 from zhangbuxue/fix_bug_of_pow_bprop
This commit is contained in:
commit
094e701e50
|
@ -1185,10 +1185,6 @@ py::tuple RunOp(const py::args &args) {
|
||||||
std::ostringstream oss;
|
std::ostringstream oss;
|
||||||
trace::TraceGraphEval();
|
trace::TraceGraphEval();
|
||||||
trace::GetEvalStackInfo(oss);
|
trace::GetEvalStackInfo(oss);
|
||||||
// call py::print to output function call stack to STDOUT, in case of output the log to file, the user can see
|
|
||||||
// these info from screen, no need to open log file to find these info
|
|
||||||
py::print(oss.str());
|
|
||||||
MS_LOG(ERROR) << oss.str();
|
|
||||||
PynativeExecutor::GetInstance()->Clean();
|
PynativeExecutor::GetInstance()->Clean();
|
||||||
// re-throw this exception to Python interpreter to handle it
|
// re-throw this exception to Python interpreter to handle it
|
||||||
throw(py::error_already_set(ex));
|
throw(py::error_already_set(ex));
|
||||||
|
|
|
@ -526,6 +526,7 @@ def get_bprop_pow(self):
|
||||||
|
|
||||||
def bprop(x, power, out, dout):
|
def bprop(x, power, out, dout):
|
||||||
bc_dx = power * pow_op(x, power - 1.0) * dout
|
bc_dx = power * pow_op(x, power - 1.0) * dout
|
||||||
|
x[x < 0] = 1
|
||||||
bc_dpower = out * ln(x) * dout
|
bc_dpower = out * ln(x) * dout
|
||||||
return binop_grad_common(x, power, bc_dx, bc_dpower)
|
return binop_grad_common(x, power, bc_dx, bc_dpower)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue