[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer

[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer

  • 做笔记的目的
  • Transformer
    • Encodr
    • Decoder
    • 训练的技巧
      • Guided Attention
      • Beam Search
      • Scheduled Sampling

做笔记的目的

1、监督自己把50多个小时的视频看下去,所以每看一部分内容做一下笔记,我认为这是比较有意义的一件事情。
2、路漫漫其修远兮,学习是不断重复和积累的过程。怕自己看完视频不及时做笔记,学习效果不好,因此想着做笔记,提高学习效果。
3、因为刚刚入门深度学习,听课的过程中,理解难免有偏差,也希望各位大佬指正。

Transformer

Sequence-to-Sequence模型可以解决非常多的问题,并且很多自然语言处理问题都可以堪称QA模型。
[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第1张图片
Multi-label Classification问题也是可以用Sequence-to-Sequence模型来解决。
[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第2张图片

Encodr

[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第3张图片
Encoder可以在放大成下图
[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第4张图片
在下图中运用了残差连接
[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第5张图片
[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第6张图片
当然这个Encoder得模型不一定是最好的,也有人对其进行了改进,如下图中的b,就取得了不错的效果。
[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第7张图片

Decoder

[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第8张图片
在做Decoder得时候要先输入一个Begin同时也要定义end来决定什么时候Decoder结束,在Decoder里面涉及到了 Masked Self-attention,做法如下图:
[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第9张图片
[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第10张图片
其实当你计算 a 2 a^2 a2的时候并没有 a 3 a^3 a3 a 4 a^4 a4,所以只能考虑左边的东西。
Autoregressive和not Autoregressive
[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第11张图片
虽然在NAT里面我们不知道什么时候End,但是有方法可以克服这一点:

  1. learn一个模型来告诉我们有多长
  2. 假设输出很长,只考虑End之前的
    NAT的优点:
  3. Decoder比较能控制输出的长度
  4. 平行计算所以比较快
    但是NAT的结果并不是很好,所以有待进一步研究。
    从Encoder到Decoder,有两个输出来自Encoder,cross attention。在论文里面是最后一个Eecoder输入到Decoder,但是也不一定非要这么做,有很多种做法如下图,结果是好是坏就不知道了,可能不同任务不一样把。
    [2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第12张图片
    [2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第13张图片
    Decoder损失函数是交叉熵,类似于分类,同时可以看到在训练的时候,会给他正确答案,这个技术是Teacher Forcing。
    [2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第14张图片

训练的技巧

在做很多任务的时候,输出是从输入里抄的,比如聊天机器人、自动摘要,所以复制的能力是有必要的,这里可以用pointer network来实现。
[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第15张图片

Guided Attention

[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第16张图片
guided attention在语音合成和语音辨识比较重要,让attention从左到右,可以避免一些错误。

Beam Search

[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第17张图片
Greedy Decoding并不一定是最好的结果,同时最好的路也不一定符合人的尝试。beam search可以找到green这条路,但是green这条路不一定很好,所以Beam search有的时候有用有的时候不行。所以需要看任务本身的特性,对于确定的任务beam search可能有用比如语言识别。但是在需要创造的任务的时,beam search比较不行,比如自动写诗、自动补全文章等等,需要随机性。对于TTS任务也是Beam search并不管用。

Scheduled Sampling

给输入一些错误的输出,但是这一个技巧可能会影响Transform平行化,但是也有方法解决:
[2022]李宏毅深度学习与机器学习第五讲(必修)-Transformer_第18张图片

你可能感兴趣的:(深度学习,李宏毅深度学习笔记,深度学习,transformer)