in code/src/data/loader.py [0:0]
def check_all_data_params(params):
"""
Check datasets parameters.
"""
# check attributes
assert sorted(params.attributes) == params.attributes
# check monolingual datasets
assert params.n_mono != 0
params.mono_dataset = params.mono_dataset.split(',')
assert len(params.mono_dataset) == 3
assert all(os.path.isfile(path) for path in params.mono_dataset)
# check parallel evaluation data
if not params.eval_para == '':
params.eval_para = [x.split(':') for x in params.eval_para.split(';')]
assert all(len(x) == 3 for x in params.eval_para)
assert len(params.eval_para) == len(set([x for x, _, _ in params.eval_para]))
params.eval_para = {name: (src, refs.split(',')) for name, src, refs in params.eval_para}
assert all(os.path.isfile(src) for src, _ in params.eval_para.values())
assert all(all(os.path.isfile(ref) for ref in refs) for _, refs in params.eval_para.values())
# check training / lambda parameters
assert params.train_ae or params.train_bt
assert not (params.lambda_ae == '0') ^ (params.train_ae is False)
assert not (params.lambda_bt == '0') ^ (params.train_bt is False)
# check coefficients # TODOO: update this
# assert not (params.lambda_dis == "0") ^ (params.n_dis == 0)
# max length / max vocab / sentence noise
assert params.max_len > 0
assert params.max_vocab == -1 or params.max_vocab > 0
assert params.word_shuffle == 0 or params.word_shuffle > 1
assert 0 <= params.word_dropout < 1
assert 0 <= params.word_blank < 1