背景

目前我们输入的都是一个向量,最后输出类别或者数值(例如一张图片分类或检测task)
假设现在输入变成一个向量序列,同时长度会改变,那该怎么解决呢?
20230601185145

第一个例子:
词汇序列转换:一个单词对应一个向量,一个句子就是一排长度不一的向量,如何把一个单词表示成一个向量呢?
有两种做法:one-hot Encoding和Word Embeding
one-hot Encoding缺点是每个词汇之间我们看不到任何联系
Word Embedding每个词向量是有语义顺序的,画出来就会是动物在一块(dog,cat,rabbit),植物在一块(tree,flower)等
20230601185332

第二个例子:
一段声音其实就是一排向量,我们取一段语音信号作为窗口,把其中的信息描述为一个向量(帧),滑动这个窗口就得到这段语音的所有向量,一分钟有6000个声音向量

transfoemer的结构

20230601184754

可以看出它是一个典型的seq2seq结构(encoder-decoder结构),Encoder里面有N个重复的block结构,Decoder里面也有N个重复的block结构。

20230601184835