提交 4a775db9 authored 作者: Arnaud Bergeron's avatar Arnaud Bergeron

Gradient of eigenvectors is sensitive so we lower the epsilon a bit.

上级 9a48f202
...@@ -15,33 +15,12 @@ from theano.tests.test_rop import break_op ...@@ -15,33 +15,12 @@ from theano.tests.test_rop import break_op
from theano.tests import unittest_tools as utt from theano.tests import unittest_tools as utt
from theano import config from theano import config
from theano.tensor.nlinalg import ( MatrixInverse, from theano.tensor.nlinalg import (
matrix_inverse, MatrixInverse, matrix_inverse, MatrixPinv, pinv,
MatrixPinv, AllocDiag, alloc_diag, ExtractDiag, extract_diag, diag,
pinv, trace, Det, det, Eig, eig, Eigh, EighGrad, eigh,
AllocDiag, matrix_dot, _zero_disconnected, qr, matrix_power,
alloc_diag, norm, svd, TensorInv, tensorinv, tensorsolve)
ExtractDiag,
extract_diag,
diag,
trace,
Det,
det,
Eig,
eig,
Eigh,
EighGrad,
eigh,
matrix_dot,
_zero_disconnected,
qr,
matrix_power,
norm,
svd,
TensorInv,
tensorinv,
tensorsolve
)
from nose.plugins.attrib import attr from nose.plugins.attrib import attr
from nose.plugins.skip import SkipTest from nose.plugins.skip import SkipTest
...@@ -462,9 +441,9 @@ class test_Eigh(test_Eig): ...@@ -462,9 +441,9 @@ class test_Eigh(test_Eig):
def test_grad(self): def test_grad(self):
S = self.S S = self.S
utt.verify_grad(lambda x: self.op(x)[0], [S], rng=self.rng) utt.verify_grad(lambda x: self.op(x)[0], [S], rng=self.rng)
utt.verify_grad(lambda x: self.op(x)[1], [S], rng=self.rng) utt.verify_grad(lambda x: self.op(x)[1], [S], rng=self.rng, eps=1e-4)
utt.verify_grad(lambda x: self.op(x, 'U')[0], [S], rng=self.rng) utt.verify_grad(lambda x: self.op(x, 'U')[0], [S], rng=self.rng)
utt.verify_grad(lambda x: self.op(x, 'U')[1], [S], rng=self.rng) utt.verify_grad(lambda x: self.op(x, 'U')[1], [S], rng=self.rng, eps=1e-4)
class test_Eigh_float32(test_Eigh): class test_Eigh_float32(test_Eigh):
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论