柏虎资源网

专注编程学习,Python、Java、C++ 教程、案例及资源

简单明了易懂的基于Transformer模型的Pytorch训练和预测程序代码

程序代码如果用文本方式呈现,格式会乱掉。Python又是以缩进方式编码,所以只能以图片方式展示。

1、PositionalEncoding是位置编码功能

2、Transformer模型算法

其中的nn.Embedding调用pytorch的词向量嵌入模块,nn.Transformer调用pytorch的注意力计算模块,还包括自回归掩码(确保解码器在生成序列时只能看到当前位置及之前的词)和序列长度不足时词占位填充掩码(..._mask)功能。

3、构造训练数据

为了演示的简单明了易懂,只构造了三组序列数据。

4、前两个嵌套for循环是用数据训练模型

5、给定源序列(句子),预测目标序列(句子)

随机给定一个源序列,目标序列从起始符1开始,通过最后一个for循环,一个词接一个词地预测和拼接。

6、打印预测出的目标序列(句子)




发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言