提交 25fd0aef authored 作者: Cesar Laurent's avatar Cesar Laurent

Corrected kwargs behaviour

上级 d42c2634
...@@ -3999,30 +3999,35 @@ def stack(*tensors, **kwargs): ...@@ -3999,30 +3999,35 @@ def stack(*tensors, **kwargs):
""" """
# ---> Remove this when moving to the new interface: # ---> Remove this when moving to the new interface:
if 'tensors' in kwargs: if not tensors and not kwargs:
tensors = kwargs['tensors'] raise Exception('theano.tensor.stack(tensors, axis) must have at least'
# <--- until here.
if len(tensors) == 0:
raise Exception('theano.tensor.stack(*tensors) must have at least'
' one parameter') ' one parameter')
# ---> Remove this when moving to the new interface: if not kwargs and not isinstance(tensors[0], (list, tuple)):
if isinstance(tensors[0], (list, tuple)): warnings.warn('stack(*tensors) interface is deprecated, use'
if len(tensors) == 1: ' stack(tensors, axis=0) instead.', DeprecationWarning,
if 'axis' in kwargs: stacklevel=3)
axis = kwargs['axis'] axis = 0
else: elif 'tensors' in kwargs:
axis = 0 tensors = kwargs['tensors']
if 'axis' in kwargs:
axis = kwargs['axis']
else: else:
axis = 0
else:
if len(tensors) == 2:
axis = tensors[1] axis = tensors[1]
elif 'axis' in kwargs:
axis = kwargs['axis']
else:
axis = 0
tensors = tensors[0] tensors = tensors[0]
else:
warnings.warn('stack(*tensors) interface is deprecated, use'
' stack(tensors, axis=0) instead.', stacklevel=3)
axis = 0
# <--- Until here. # <--- Until here.
if len(tensors) == 0:
raise Exception('tensors is empty. You should at least provide one'
' tensor to theano.tensor.stack(tensors, axis).')
# If all tensors are scalars of the same type, call make_vector. # If all tensors are scalars of the same type, call make_vector.
# It makes the graph simpler, by not adding DimShuffles and Rebroadcasts # It makes the graph simpler, by not adding DimShuffles and Rebroadcasts
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论