赞
踩
基于原生transformer实现,在一块T4 GPU上训练,预计时间是5天完成10个epoch的训练
此模型的实现,主要基于pytorch实现的原生transformer,使用AI Challenger Translation 2017数据集 中的train.en和train.zh 来训练。
模型的实现主要有:
模型构建详细的解析,可以参考这篇,我基本上是借鉴的这个实现:
Pytorch入门实战(5):基于nn.Transformer实现机器翻译(英译汉)_基于transformer的机器翻译 运行演示_iioSnail的博客-CSDN博客
软硬件环境还是使用之前在腾讯云的Tesla T4 GPU 来训练,之前部署其他大模型的软件环境。
想了解部署大模型的文章可以参考我之前写的:
一个小白如何学习AIGC,并产出自己的应用_有意思科技的博客-CSDN博客
AIGC - ChatGLM大模型:ChatGLM2-6B模型推理部署-CSDN博客
目前设置的是10个epoch训练,5000步记录保存一下模型文件,如果中途出啥问题,可以用保存的模型文件接着训练。
开始训练:
后台训练,并记录打印日志: nohup python -u en_to_zh_train.py >> train.log 2>&1 &
中途训崩过一次,由于硬盘满了,所以后面使用每5000步保存的模型文件,继续训练了3个epoch,整体的话,最终训练到了,1.7左右的loss,后面会降的越来越慢了,我就没有再继续训练了。
训练好的模型如下,中途保存的被我删除了,只保留几个,红框为loss为1.69的模型
模型推理完整代码参见我的github工程中的en_to_zh_demo.py,这只是一个简单使用,有兴趣可以弄一个命令行模式测试。
使用刚刚训练好的模型,进行一波翻译推理
设置模型文件为最终训练好的 model_475000.pt
调用模型翻译:
模型实现github地址:GitHub - JsDoingYJ/transformer_model: 基于原生transformer训练各类模型
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。