Merge pull request #583 from yu239/recurrent_static_input

fix the has_LayerOutput boolean for StaticInput as the input of recurrent_group
avx_docs
Tao Luo 9 years ago committed by GitHub
commit 32a9f98057

@ -2853,11 +2853,11 @@ def recurrent_group(step,
:type targetInlink: LayerOutput|SubsequenceInput :type targetInlink: LayerOutput|SubsequenceInput
:param is_generating: If is generating, none of input type should be LayerOutput; :param is_generating: If is generating, none of input type should be LayerOutput;
else, for training or testing, one of the input type must else, for training or testing, one of the input type must
be LayerOutput. be LayerOutput.
: type is_generating: bool : type is_generating: bool
:return: LayerOutput object. :return: LayerOutput object.
:rtype: LayerOutput :rtype: LayerOutput
""" """
@ -2905,15 +2905,16 @@ def recurrent_group(step,
seq_reversed=reverse, seq_reversed=reverse,
target_inlinkname=targetInlinkName) target_inlinkname=targetInlinkName)
in_args = [] in_args = []
has_LayerOutput = True has_LayerOutput = False
for each_input in input: for each_input in input:
assert is_single_input(each_input) assert is_single_input(each_input)
if isinstance(each_input, LayerOutput): if isinstance(each_input, LayerOutput):
in_args.append(each_input) in_args.append(each_input)
has_LayerOutput = True
elif isinstance(each_input, SubsequenceInput): elif isinstance(each_input, SubsequenceInput):
in_args.append(each_input.input) in_args.append(each_input.input)
has_LayerOutput = True
else: else:
has_LayerOutput = False
mem_name = "__%s_memory__" % each_input.input.name mem_name = "__%s_memory__" % each_input.input.name
mem = memory( mem = memory(
name=mem_name, name=mem_name,

Loading…
Cancel
Save