无监督神经机器翻译代码解读

    最近,在复现Facebook无监督神经机器翻译(Github: https://github.com/facebookresearch/UnsupervisedMT), 将代码解读为以下几部分,方便同行们参考:

step1. 数据预处理(Moses脚本分词处理、fastBPE进行子词处理、fastText训练源语言与目标语言的单语词向量、MUSE训练源语言与目标语言之间的跨语言词向量)

step2. 无监督神经机器翻译的训练

1> 参数检验(包括数据集、神经网络模型)

2> 初始化实验(包括参数的存储、日志文件的输出、程序运行命令、设置随机种子、环境变量)

3> 加载数据(平行数据集、单语数据集、字典、反向)

4> 建立神经网络模型(Transformer、seq2seq、biLSTM + attention)

      --->> Encoder、Decoder、损失函数、语言模型、epoch设置

5> 开始训练(迭代训练)....

      ----->> 对抗训练、语言模型训练(attention网络)、MT训练(平行数据、反向平行数据)、单语数据的自编码训练、反向翻译

     关于实验中的各种坑:。。。。(后续更新)

你可能感兴趣的:(自然语言处理,机器翻译,Machine,Translation)