说说BERT

尝试仅仅用文字来解释BERT,锻炼表达、备忘。

当然,作为备忘是会附带图片的,但文字内容不依赖于图片。

Transformer

说BERT一定要说Transformer,就像???。Transformer要做的是seq2seq。

那就先说说seq2seq。seq2seq的一种常见做法分两步来做。比如seq1到seq2,第一步,把seq1的信息提炼出来(embedding),第二步,用提炼出来的信息生成seq2(language model),RNN似乎很适合做这个差事。

image-20201224232423807

但是RNN做这个活是有问题的,她不能并行化,她总是要从一边到另一边,一部部的提取出信息,然后一步步的生成新的sequence。

Transformer用到一个玩意叫Self-attention。这里又用到了attention,那就提一嘴attention,Attention还是得好好说说。

之前说到seq2seq的第一步是提炼出信息,这个信息当然就是一个vector了。问题是一个vector够吗?那不够的话就需要多个不同的vector,那怎么生成多个不同的vector呢?不同的attention(注意力),注意力集中在1、3、5生成一个vector,注意力在2、4、6又生成一个vector。

所谓的注意力,就是给inputs加一组权重,哪里权重大就说注意力集中在哪里。那这个系数怎么来呢,普通方法(RNN)不是可以得到一个vector吗,用这个vector和inputs运算便可以得到。所以说,Attention其实就是一个vec和一堆vec(inputs)两两运算,然后得到在那一堆vec(inputs)上的一组权重。

image-20201225002154299

终于要进入正题了,Self-attention。

Self-attention这个名字就已经清楚了,是自己和自己做attention。首先想想,Self-attention也是要做seq2seq,输入是多个,输出也是多个。我们先考虑若干输出中的一个,这一个要和所有的输

posted @ 2020-12-25 00:35  zoheth  阅读(71)  评论(0)    收藏  举报