Github 項目推薦 用PyTorch 實現 OpenNMT
這是一個用 PyTorch 實現的 OpenNMT 的庫,OpenNMT 是一個神經機器翻譯系統。
Github:
https://github.com/mattiadg/SR-NMT
快速開始
一些有用的工具:
下面的例子使用了 Moss tokenizer (http://www.statmt.org/moses/) 來準備用於評估的數據和 moses BLEU 腳本。
wget https://raw.githubusercontent.com/moses-smt/mosesdecoder/master/scripts/tokenizer/tokenizer.perl
wget https://raw.githubusercontent.com/moses-smt/mosesdecoder/master/scripts/share/nonbreaking_prefixes/nonbreaking_prefix.de
wget https://raw.githubusercontent.com/moses-smt/mosesdecoder/master/scripts/share/nonbreaking_prefixes/nonbreaking_prefix.en
sed -i"s/$RealBin/../share/nonbreaking_prefixes//"tokenizer.perl
wget https://raw.githubusercontent.com/moses-smt/mosesdecoder/master/scripts/generic/multi-bleu.perl
WMT"16 多模式翻譯:Multi30k(de-en)
WMT"16多模式翻譯任務訓練示例(http://www.statmt.org/wmt16/multimodal-task.html)。
0)下載數據:
mkdir-p data/multi30k
wget http://www.quest.dcs.shef.ac.uk/wmt16_files_mmt/training.tar.gz && tar -xf training.tar.gz -C data/multi30k && rm training.tar.gz
wget http://www.quest.dcs.shef.ac.uk/wmt16_files_mmt/validation.tar.gz && tar -xf validation.tar.gz -C data/multi30k && rm validation.tar.gz
wget https://staff.fnwi.uva.nl/d.elliott/wmt16/mmt16_task1_test.tgz && tar -xf mmt16_task1_test.tgz -C data/multi30k && rm mmt16_task1_test.tgz
1) Preprocess the data.
1)預處理數據:
forlinen de;doforfindata/multi30k/*.$l;doif[["$f"!= *"test"* ]];thensed -i"$ d"$f;fi;done;done
forlinen de;doforfindata/multi30k/*.$l;doperl tokenizer.perl -a -no-escape -l$l-q $f.atok;done;done
python preprocess.py -train_src data/multi30k/train.en.atok -train_tgt data/multi30k/train.de.atok -valid_src data/multi30k/val.en.atok -valid_tgt data/multi30k/val.de.atok -save_data data/multi30k.atok.low -lower
2)訓練模型:
3)翻譯語句:
pythontranslate.py-gpu-model multi30k_model_e13_*.pt-src data/multi30k/test.en.atok -tgt data/multi30k/test.de.atok -replace_unk -verbose-output multi30k.test.pred.atok
4)評估:
perlmulti-bleu.perldata/multi30k/test.de.atok
預訓練模型:
以下預訓練模型可以下載並與 translate.py 一起使用(這些訓練有較舊版本的代碼;它們將很快更新)。
onmt_model_en_de_200k:基於 OpenNMT / IntegrationTesting 中 200k 句子數據集的英德翻譯模型。 Perplexity:21。
onmt_model_en_fr_b1M:一個英語 - 法語模型,以基準 -1M 為基礎進行培訓。 Perplexity:4.85。
從Python入門-如何成為AI工程師
BAT資深演算法工程師獨家研發課程
最貼近生活與工作的好玩實操項目
班級管理助學搭配專業的助教答疑
學以致用拿offer,學完即推薦就業
新人福利
關注 AI 研習社(okweiwu),回復1領取
【超過 1000G 神經網路 / AI / 大數據資料】
一文詳解如何用 R 語言繪製熱圖
※20 道面試題助你拿下微軟 AI offer
※看阿里 AliOS 神燈團隊在推薦系統上的獨門秘籍
TAG:AI研習社 |