Task04:机器翻译及相关技术;注意力机制与Seq2seq模型;Transformer知识点总结

机器翻译

把一种语言自动翻译为另一种,输出的是单词序列(其长度可能与原序列不同)

步骤为:数据预处理 —> Seq2Seq模型构建 —> 损失函数 —> 测试

数据预处理

  1. 读取数据。 处理编码问题,删除无效字符串
  2. 分词。把字符串转化为单词列表。
  3. 建立字典。把单词组成的列表转化为单词索引的列表
  4. 在tf、pytorch这类框架中要做padding操作,使一个batch数据长度相等
  5. 定义数据生成器。

Seq2Seq
6. 先用循环神经网络编码成一个向量再解码输出一个序列的元素。然后通过比较此序列元素和真实标签计算损失来学习。
7. 进行编码、解码过程中,数据皆以时间步展开
8. 模型复杂度可通过控制隐藏层层数和隐藏单元个数来控制
9. 编码器与解码器形状相同。解码器模型的隐藏状态由编码器输出的隐藏状态初始化

损失函数
10. 解码器输出向量和词典维度相同,其值对应向量索引位置对应词的分数,选分数高的作为最终输出
11.计算损失函数前去掉padding。

测试
11. 解码器测试时把模型的输出作为下一个时间步的输入
12. Beam Search: 选定Beam size (每一层选择?个概率较高选项) e.g. Beam size = 2, 即每一次生成词的时候,都选择概率最大的两个词直到结束符或达到最大长度。输出得分最高的两个序列。

注意力机制

Seq2Seq基于编码器-解码器,本质是两个RNN, 解码器根据具体任务把编码

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值