【Datawhale AI夏令营】讯飞机器翻译挑战赛-基于 Seq2Seq的Baseline复现

131 阅读1分钟

方案思路

Task2的任务的主要的思路是使用RNN网络构建encoder,decoder,通过构建seq2seq的网络结构对文本进行相关翻译。

代码解读

运行命令创建文件夹放置后期的model和数据

创建文件夹+安装相关软件包.png

安装相关的软件包 安装相关软件包.png

个别软件在线安装较慢,下载到本地然后上传到魔搭平台进行本地安装 本地安装包安装.png

获取中英文的tokenizer 获取中英文tokenizer.png

对数据进行处理 数据处理.png

数据tokenizer化 数据tokenize化.png

生成中英文的batch数据 生成中英文batch.png

load_data函数 load_data函数.png

Encoder函数 Encoder函数.png

attention函数 attention函数.png

Decoder函数 Decoder函数.png

seq2seq函数 seq2seq函数.png

统计运行时间函数 统计时间函数.png

训练函数 训练函数.png

评估训练结果函数 评估函数.png

对文本进行翻译函数 翻译函数.png

计算翻译效果的bleu值分数 bleu函数.png

主训练函数,多轮次进行训练,保存最好的模型到本地,评估训练中间的模型,打印训练的日志 train_model.png

设定相关参数,设置相关数据的时候注意相对路径 set_param.png

运行主程序进行训练 训练模型主程序.png

对训练好的模型在验证集上进行测试 开发集上测试.png

生成测试结果 生成测试结果.png

提交评分