forked from mindspore-Ecosystem/mindspore
!35182 [bug] fix taylor rule of log
Merge pull request !35182 from chenzhuo/taylor_log
This commit is contained in:
commit
8cabd14dcd
|
@ -165,7 +165,7 @@ def taylor_log(self):
|
|||
for k in range(1, series_num + 1):
|
||||
for i in range(1, k):
|
||||
tmp = i * inputs[k - i] * series[i] / (factorial[k - i] * factorial[i])
|
||||
series[k] -= tmp
|
||||
series[k] += tmp
|
||||
series[k] = (inputs[k] - factorial[k - 1] * series[k]) / inputs[0]
|
||||
return series
|
||||
|
||||
|
|
|
@ -102,10 +102,10 @@ def test_jet_single_input_single_output_with_scalar_graph_mode():
|
|||
primals = Tensor([2., 2.])
|
||||
series = Tensor([[1., 1.], [0., 0.], [0., 0.]])
|
||||
net = SingleInputSingleOutputWithScalarNet()
|
||||
expected_primals = np.array([10.328085, 10.328085]).astype(np.float32)
|
||||
expected_series = np.array([[-3.1220534, -3.1220534], [2.943144, 2.943144],
|
||||
[-4.551988, -4.551988]]).astype(np.float32)
|
||||
out_primals, out_series = jet(net, primals, series)
|
||||
expected_primals = np.array([10.328085, 10.328085]).astype(np.float32)
|
||||
expected_series = np.array([[-3.1220534, -3.1220534], [6.0652323, 6.0652323],
|
||||
[-18.06463, -18.06463]]).astype(np.float32)
|
||||
assert np.allclose(out_series.asnumpy(), expected_series, atol=1.e-4)
|
||||
assert np.allclose(out_primals.asnumpy(), expected_primals, atol=1.e-4)
|
||||
|
||||
|
|
Loading…
Reference in New Issue