attention is all you need pytorch
1.0.0
これは、「注意が必要なのは、注意が必要です」(Ashish Vaswani、Noam Shazeer、Niki Parmar、Jakob Uszkoreit、Llion Jones、Aidan N. Gomez、Lukasz Kaiser、Illia Polosukhin、Arxiv、2017)におけるトランスモデルのPytorch実装です。
シーケンスフレームワークの新しいシーケンスは、畳み込み操作や再発構造ではなく、自己触媒メカニズムを利用し、 WMT 2014 English-to-German翻訳タスクで最先端のパフォーマンスを実現します。 (2017/06/12)
公式のTensorFlowの実装は、Tensorflow/Tensor2Tensorにあります。
自己関節のメカニズムの詳細については、「構造化された自己attentive文の埋め込み」を読むことができます。
プロジェクトは、トレーニングモデルを使用したトレーニングと翻訳をサポートしています。
このプロジェクトはまだ進行中の作業であることに注意してください。
BPE関連部品はまだ完全にテストされていません。
提案やエラーがある場合は、お気軽に問題を解決してください。 :)
WMT'16マルチモーダル翻訳タスク(http://www.statmt.org/wmt16/multimodal-task.html)のトレーニングの例。
# conda install -c conda-forge spacy
python -m spacy download en
python -m spacy download depython preprocess.py -lang_src de -lang_trg en -share_vocab -save_data m30k_deen_shr.pklpython train.py -data_pkl m30k_deen_shr.pkl -log m30k_deen_shr -embs_share_weight -proj_share_weight -label_smoothing -output_dir output -b 256 -warmup 128000 -epoch 400python translate.py -data_pkl m30k_deen_shr.pkl -model trained.chkpt -output prediction.txtインターフェイスは統合されていないため、
main_wo_bpeからMain_WO_BPEにメイン関数呼び出しをmainに切り替える必要があります。
python preprocess.py -raw_dir /tmp/raw_deen -data_dir ./bpe_deen -save_data bpe_vocab.pkl -codes codes.txt -prefix deenpython train.py -data_pkl ./bpe_deen/bpe_vocab.pkl -train_path ./bpe_deen/deen-train -val_path ./bpe_deen/deen-val -log deen_bpe -embs_share_weight -proj_share_weight -label_smoothing -output_dir output -b 256 -warmup 128000 -epoch 400