提交 e0897668 authored 作者: Iulian Vlad Serban's avatar Iulian Vlad Serban

Fixed test for local_elemwise_sub_zeros. Updated comment for Canonizer.

上级 7662490d
...@@ -4947,9 +4947,8 @@ class Canonizer(gof.LocalOptimizer): ...@@ -4947,9 +4947,8 @@ class Canonizer(gof.LocalOptimizer):
# theano/tensor/tests/test_opt.py:T_local_switch_sink # theano/tensor/tests/test_opt.py:T_local_switch_sink
new.tag.values_eq_approx = values_eq_approx_remove_inf_nan new.tag.values_eq_approx = values_eq_approx_remove_inf_nan
# Julian: Pascal, maybe you can help me implement the copying of the stacktrace for this class? # We need to implement the copy over of the stacktrace.
# Because, it's so general I think we need to copy over the stacktraces of all ops being replaced # See issue #5104.
# to every new op?
return [new] return [new]
else: else:
_logger.warning(' '.join(('CANONIZE FAILED: new, out = ', _logger.warning(' '.join(('CANONIZE FAILED: new, out = ',
......
...@@ -3482,7 +3482,7 @@ def test_local_fill_useless(): ...@@ -3482,7 +3482,7 @@ def test_local_fill_useless():
def test_local_elemwise_sub_zeros(): def test_local_elemwise_sub_zeros():
# Test opt local_elemwise_sub_zeros # Test opt local_elemwise_sub_zeros
# We test separetly for scalars, vectors and matrices # We test separately for scalars, vectors and matrices
scalar = T.scalar() scalar = T.scalar()
vect = T.vector() vect = T.vector()
mat = T.matrix() mat = T.matrix()
...@@ -3502,8 +3502,8 @@ def test_local_elemwise_sub_zeros(): ...@@ -3502,8 +3502,8 @@ def test_local_elemwise_sub_zeros():
f = function([scalar], scalar - scalar, mode=mode) f = function([scalar], scalar - scalar, mode=mode)
# Check optimized graph is correct # Check optimized graph is correct
assert isinstance(f.maker.fgraph.toposort()[0].op, T.Elemwise) assert isinstance(f.maker.fgraph.toposort()[0].op, T.Elemwise)
assert f.maker.fgraph.toposort()[0].op.name\ assert isinstance(f.maker.fgraph.toposort()[0].op.scalar_op,
== 'Elemwise{second,no_inplace}' theano.scalar.Second)
assert isinstance(f.maker.fgraph.toposort()[0].inputs[1], assert isinstance(f.maker.fgraph.toposort()[0].inputs[1],
T.TensorConstant) or\ T.TensorConstant) or\
isinstance(f.maker.fgraph.toposort()[0].inputs[1], isinstance(f.maker.fgraph.toposort()[0].inputs[1],
...@@ -3516,8 +3516,8 @@ def test_local_elemwise_sub_zeros(): ...@@ -3516,8 +3516,8 @@ def test_local_elemwise_sub_zeros():
f = function([vect], vect - vect, mode=mode) f = function([vect], vect - vect, mode=mode)
# Check optimized graph is correct # Check optimized graph is correct
assert isinstance(f.maker.fgraph.toposort()[0].op, T.Elemwise) assert isinstance(f.maker.fgraph.toposort()[0].op, T.Elemwise)
assert f.maker.fgraph.toposort()[0].op.name\ assert isinstance(f.maker.fgraph.toposort()[0].op.scalar_op,
== 'Elemwise{second,no_inplace}' theano.scalar.Second)
assert isinstance(f.maker.fgraph.toposort()[0].inputs[1], assert isinstance(f.maker.fgraph.toposort()[0].inputs[1],
T.TensorConstant) or\ T.TensorConstant) or\
isinstance(f.maker.fgraph.toposort()[0].inputs[1], isinstance(f.maker.fgraph.toposort()[0].inputs[1],
...@@ -3530,8 +3530,8 @@ def test_local_elemwise_sub_zeros(): ...@@ -3530,8 +3530,8 @@ def test_local_elemwise_sub_zeros():
f = function([mat], mat - mat, mode=mode) f = function([mat], mat - mat, mode=mode)
# Check optimized graph is correct # Check optimized graph is correct
assert isinstance(f.maker.fgraph.toposort()[0].op, T.Elemwise) assert isinstance(f.maker.fgraph.toposort()[0].op, T.Elemwise)
assert f.maker.fgraph.toposort()[0].op.name\ assert isinstance(f.maker.fgraph.toposort()[0].op.scalar_op,
== 'Elemwise{second,no_inplace}' theano.scalar.Second)
assert isinstance(f.maker.fgraph.toposort()[0].inputs[1], assert isinstance(f.maker.fgraph.toposort()[0].inputs[1],
T.TensorConstant) or\ T.TensorConstant) or\
isinstance(f.maker.fgraph.toposort()[0].inputs[1], isinstance(f.maker.fgraph.toposort()[0].inputs[1],
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论