项目简介
本项目借助Transformer模型开展英文到中文的翻译工作。Transformer模型由编码器与解码器组成,其核心为注意力机制,可整合上下文语义信息,有效处理各类复杂语言结构,达成较为精准的翻译效果。项目运用cmn数据集,该数据集包含24360条中英文对,经过数据处理后用于模型训练。
项目的主要特性和功能
数据处理
把cmn数据集构建成torch Dataset和dataloader,利用transformer库的tokenizer进行tokenize和padding操作,同时生成src_mask和target_mask,防止padding token参与attention计算。
输入嵌入
通过nn.Embedding
把输入文本序列转化为词向量,引入正余弦函数的位置编码来表征token位置信息,最终输出为词向量与位置向量相加后的token序列。
注意力层
包含三种不同的attention模块,分别是encoder中的multi - head self - attention、decoder中的masked multi - head self - attention和cross multi - head attention。采用多头机制增强模型上下文能力,计算时引入padding mask,避免padding token影响attention计算。
安装使用步骤
环境准备
确保已安装Python和PyTorch,以及项目所需的其他依赖库。
数据准备
从https://www.manythings.org/anki/ 下载cmn数据集,按项目要求格式放置于指定位置。
运行项目
在已下载源码文件的基础上,执行训练脚本进行模型训练,可通过修改脚本中的参数调整训练配置。训练完成后,运行测试脚本进行翻译测试。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】