提交 2f9368a2 authored 作者: nouiz's avatar nouiz

Merge pull request #859 from bouchnic/opt

Move optimization to opt.py.
差异被折叠。
差异被折叠。
...@@ -17,19 +17,21 @@ from theano.sparse.basic import ( ...@@ -17,19 +17,21 @@ from theano.sparse.basic import (
Cast, bcast, wcast, icast, lcast, fcast, dcast, ccast, zcast, Cast, bcast, wcast, icast, lcast, fcast, dcast, ccast, zcast,
HStack, hstack, VStack, vstack, HStack, hstack, VStack, vstack,
AddSSData, add_s_s_data, AddSSData, add_s_s_data,
MulSDCSC, mul_s_d_csc, MulSDCSR, mul_s_d_csr, MulSV, mul_s_v,
Multinomial, multinomial, Poisson, poisson, Multinomial, multinomial, Poisson, poisson,
Binomial, csr_fbinomial, csc_fbinomial, csr_dbinomial, csc_dbinomial, Binomial, csr_fbinomial, csc_fbinomial, csr_dbinomial, csc_dbinomial,
structured_monoid, structured_monoid,
structured_sigmoid, structured_exp, structured_log, structured_pow, structured_sigmoid, structured_exp, structured_log, structured_pow,
structured_minimum, structured_maximum, structured_add, structured_minimum, structured_maximum, structured_add,
MulSV, mul_s_v, MulSVCSR, mul_s_v_csr,
StructuredAddSV, structured_add_s_v, StructuredAddSV, structured_add_s_v,
StructuredAddSVCSR, structured_add_s_v_csr, SamplingDot, sampling_dot)
SamplingDot, sampling_dot, SamplingDotCSR, sampling_dot_csr)
# Also for compatibility # Also for compatibility
from theano.sparse.opt import ( from theano.sparse.opt import (
MulSDCSC, mul_s_d_csc, MulSDCSR, mul_s_d_csr,
MulSVCSR, mul_s_v_csr,
StructuredAddSVCSR, structured_add_s_v_csr,
SamplingDotCSR, sampling_dot_csr,
local_mul_s_d, local_mul_s_v, local_mul_s_d, local_mul_s_v,
local_structured_add_s_v, local_sampling_dot_csr) local_structured_add_s_v, local_sampling_dot_csr)
......
...@@ -25,13 +25,13 @@ from theano.sparse.basic import _is_dense_variable, _is_sparse_variable ...@@ -25,13 +25,13 @@ from theano.sparse.basic import _is_dense_variable, _is_sparse_variable
from theano.sparse import ( from theano.sparse import (
verify_grad_sparse, as_sparse_variable, verify_grad_sparse, as_sparse_variable,
CSC, CSR, CSM, CSMProperties, csm_properties, CSC, CSR, CSM, CSMProperties, csm_properties,
SparseType, CSMGrad, CSMGradC, SparseType, CSMGrad,
StructuredDot, StructuredDotCSC, StructuredDot,
StructuredDotGradCSC, StructuredDotGradCSR, StructuredDotGradCSC, StructuredDotGradCSR,
AddSS, AddSD, MulSS, MulSD, Transpose, Neg, Remove0, AddSS, AddSD, MulSS, MulSD, Transpose, Neg, Remove0,
add, mul, structured_dot, transpose, add, mul, structured_dot, transpose,
csc_from_dense, csr_from_dense, dense_from_sparse, csc_from_dense, csr_from_dense, dense_from_sparse,
Dot, Usmm, UsmmCscDense, sp_ones_like, GetItemScalar, Dot, Usmm, sp_ones_like, GetItemScalar,
SparseFromDense, SparseFromDense,
Cast, cast, HStack, VStack, AddSSData, add_s_s_data, Cast, cast, HStack, VStack, AddSSData, add_s_s_data,
Poisson, poisson, Binomial, Multinomial, multinomial, Poisson, poisson, Binomial, Multinomial, multinomial,
...@@ -42,6 +42,8 @@ from theano.sparse import ( ...@@ -42,6 +42,8 @@ from theano.sparse import (
Diag, diag, SquareDiagonal, square_diagonal, Diag, diag, SquareDiagonal, square_diagonal,
EnsureSortedIndices, ensure_sorted_indices, clean) EnsureSortedIndices, ensure_sorted_indices, clean)
from theano.sparse.opt import (StructuredDotCSC, UsmmCscDense, CSMGradC)
from theano.tests import unittest_tools as utt from theano.tests import unittest_tools as utt
from theano.tensor.basic import _allclose from theano.tensor.basic import _allclose
...@@ -1218,7 +1220,7 @@ class UsmmTests(unittest.TestCase): ...@@ -1218,7 +1220,7 @@ class UsmmTests(unittest.TestCase):
assert isinstance(topo[1].op, theano.tensor.DimShuffle) assert isinstance(topo[1].op, theano.tensor.DimShuffle)
assert isinstance(topo[2].op, theano.tensor.Subtensor) assert isinstance(topo[2].op, theano.tensor.Subtensor)
assert topo[3].op == theano.tensor.neg assert topo[3].op == theano.tensor.neg
assert isinstance(topo[4].op, theano.sparse.UsmmCscDense) assert isinstance(topo[4].op, UsmmCscDense)
if inplace: if inplace:
assert topo[4].op.inplace assert topo[4].op.inplace
elif not fast_compile: elif not fast_compile:
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论