Skip to content

Commit d826ad7

Browse files
committed
bugfix in DelayedUpdateTrainer
1 parent c676d9b commit d826ad7

File tree

8 files changed

+17
-22
lines changed

8 files changed

+17
-22
lines changed

neuralmonkey/dataset.py

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -364,18 +364,6 @@ def itergen():
364364
return func(iterators)
365365
return itergen
366366

367-
def _add_preprocessed_series(iterators, s_name, prep_sl):
368-
preprocessor, source = prep_sl[s_name]
369-
if s_name in iterators:
370-
return
371-
if source in prep_sl:
372-
_add_preprocessed_series(iterators, source, prep_sl)
373-
if source not in iterators:
374-
raise ValueError(
375-
"Source series {} for series-level preprocessor nonexistent: "
376-
"Preprocessed series '', source series ''".format(source))
377-
iterators[s_name] = _make_sl_iterator(source, preprocessor)
378-
379367
# First, prepare iterators for series using file readers
380368
for s_name, source_spec in zip(series, data):
381369
if match_type(source_spec, ReaderDef): # type: ignore
@@ -398,8 +386,12 @@ def _add_preprocessed_series(iterators, s_name, prep_sl):
398386
# Second, prepare series-level preprocessors.
399387
# Note that series-level preprocessors cannot be stacked on the dataset
400388
# specification level.
401-
for s_name in prep_sl:
402-
_add_preprocessed_series(iterators, s_name, prep_sl)
389+
for s_name, (preprocessor, source) in prep_sl.items():
390+
if source not in iterators:
391+
raise ValueError(
392+
"Source series {} for series-level preprocessor nonexistent: "
393+
"Preprocessed series '', source series ''".format(source))
394+
iterators[s_name] = _make_sl_iterator(source, preprocessor)
403395

404396
# Finally, dataset-level preprocessors.
405397
for s_name, func in prep_dl.items():

neuralmonkey/decoders/decoder.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,6 @@ def __init__(self,
115115
name: Name of the decoder. Should be unique accross all Neural
116116
Monkey objects.
117117
max_output_len: Maximum length of an output sequence.
118-
reuse: Reuse the model variables.
119118
dropout_keep_prob: Probability of keeping a value during dropout.
120119
embedding_size: Size of embedding vectors for target words.
121120
embeddings_source: Embedded sequence to take embeddings from.
@@ -143,13 +142,13 @@ def __init__(self,
143142
vocabulary=vocabulary,
144143
data_id=data_id,
145144
max_output_len=max_output_len,
146-
reuse=reuse,
147145
dropout_keep_prob=dropout_keep_prob,
148146
embedding_size=embedding_size,
149147
embeddings_source=embeddings_source,
150148
tie_embeddings=tie_embeddings,
151149
label_smoothing=label_smoothing,
152150
supress_unk=supress_unk,
151+
reuse=reuse,
153152
save_checkpoint=save_checkpoint,
154153
load_checkpoint=load_checkpoint,
155154
initializers=initializers)

neuralmonkey/decoders/transformer.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,6 @@ def __init__(self,
9696
name: Name of the decoder. Should be unique accross all Neural
9797
Monkey objects.
9898
max_output_len: Maximum length of an output sequence.
99-
reuse: Reuse the model variables.
10099
dropout_keep_prob: Probability of keeping a value during dropout.
101100
embedding_size: Size of embedding vectors for target words.
102101
embeddings_source: Embedded sequence to take embeddings from.

neuralmonkey/trainers/delayed_update_trainer.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,3 +240,13 @@ def summaries(self) -> Dict[str, tf.Tensor]:
240240
tf.get_collection("summary_train")),
241241
"histogram_summaries": tf.summary.merge(
242242
tf.get_collection("summary_gradients"))}
243+
244+
@property
245+
def fetches(self) -> Dict[str, tf.Tensor]:
246+
return {"train_op": self.train_op,
247+
"losses": self.objective_values,
248+
"batch_size": self.batch_size,
249+
"_update_ops": tf.get_collection(tf.GraphKeys.UPDATE_OPS),
250+
"accumulators": self.accumulate_ops,
251+
"counter": self.cumulator_counter,
252+
"resets": self.reset_ops}

neuralmonkey/trainers/generic_trainer.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,6 @@ def __init__(self,
7676
if self.var_collection is None:
7777
self.var_collection = tf.GraphKeys.TRAINABLE_VARIABLES
7878

79-
self.objectives = objectives
80-
8179
self.regularizers = [] # type: List[Regularizer]
8280
if regularizers is not None:
8381
self.regularizers = regularizers

tests/beamsearch.ini

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ postprocess=None
1313
evaluation=[("target_beam.rank001", "target", evaluators.BLEU)]
1414
logging_period=20
1515
validation_period=60
16-
runners_batch_size=5
1716
random_seed=1234
1817

1918
[tf_manager]

tests/mrt.ini

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ postprocess=None
1313
evaluation=[("target", evaluators.BLEU)]
1414
logging_period=20
1515
validation_period=60
16-
runners_batch_size=1
1716
random_seed=1234
1817

1918
[tf_manager]

tests/transformer.ini

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,6 @@ n_heads_enc=2
7979
[trainer]
8080
class=trainers.delayed_update_trainer.DelayedUpdateTrainer
8181
batches_per_update=5
82-
l2_weight=1.0e-8
8382
clip_norm=1.0
8483
objectives=[<obj>]
8584
optimizer=<lazyadam_g>

0 commit comments

Comments
 (0)