{ "src_vocab": "vi.eole.vocab", "share_vocab": false, "report_every": 100, "tensorboard": true, "overwrite": true, "seed": 1234, "tensorboard_log_dir": "tensorboard", "src_vocab_size": 20000, "tgt_vocab": "en.eole.vocab", "tensorboard_log_dir_dated": "tensorboard/Jul-09_09-03-58", "vocab_size_multiple": 8, "save_data": "data", "valid_metrics": [ "BLEU" ], "tgt_vocab_size": 20000, "n_sample": 0, "transforms": [ "sentencepiece", "filtertoolong" ], "training": { "num_workers": 0, "accum_steps": [ 0 ], "valid_steps": 2000, "decay_method": "noam", "bucket_size": 128000, "batch_size_multiple": 8, "warmup_steps": 4000, "param_init_method": "xavier_uniform", "optim": "adamw", "accum_count": [ 8 ], "compute_dtype": "torch.float16", "attention_dropout": [ 0.1 ], "adam_beta2": 0.998, "gpu_ranks": [ 0 ], "label_smoothing": 0.1, "dropout": [ 0.1 ], "prefetch_factor": 32, "world_size": 1, "batch_type": "tokens", "learning_rate": 2.0, "keep_checkpoint": 4, "average_decay": 0.0001, "train_steps": 200000, "save_checkpoint_steps": 2000, "normalization": "tokens", "batch_size": 8000, "valid_batch_size": 4096, "model_path": "quickmt-vi-en-eole-model", "dropout_steps": [ 0 ], "max_grad_norm": 0.0 }, "model": { "hidden_size": 1024, "share_decoder_embeddings": false, "heads": 8, "transformer_ff": 4096, "position_encoding_type": "SinusoidalInterleaved", "share_embeddings": false, "architecture": "transformer", "encoder": { "layers": 8, "hidden_size": 1024, "heads": 8, "transformer_ff": 4096, "position_encoding_type": "SinusoidalInterleaved", "src_word_vec_size": 1024, "encoder_type": "transformer", "n_positions": null }, "decoder": { "decoder_type": "transformer", "layers": 2, "hidden_size": 1024, "heads": 8, "transformer_ff": 4096, "position_encoding_type": "SinusoidalInterleaved", "tgt_word_vec_size": 1024, "n_positions": null }, "embeddings": { "src_word_vec_size": 1024, "word_vec_size": 1024, "position_encoding_type": "SinusoidalInterleaved", "tgt_word_vec_size": 1024 } }, "transforms_configs": { "sentencepiece": { "src_subword_model": "${MODEL_PATH}/vi.spm.model", "tgt_subword_model": "${MODEL_PATH}/en.spm.model" }, "filtertoolong": { "tgt_seq_length": 256, "src_seq_length": 256 } }, "data": { "corpus_1": { "path_src": "train.vi", "path_tgt": "train.en", "path_align": null, "transforms": [ "sentencepiece", "filtertoolong" ] }, "valid": { "path_src": "valid.vi", "path_tgt": "valid.en", "path_align": null, "transforms": [ "sentencepiece", "filtertoolong" ] } } }