Bert理论浅析
大名鼎鼎的Bert其实就是在Transform的基础上利用Transform的encode部分实现的。
Bert的具体实现这里就不讲了,可以去看bert的论文和李宏毅老师的课程,讲的挺清楚的。
下面主要来解释几个我阅读过程中的问题:
1、bert是怎么训练的?
bert的pre-train其实有两个部分组成。
第一种:
bert是一个无监督的模型,利用的是一个类似完形填空的直觉实现label生成和训练。总的来说,bert的实质就是:一切过往皆为序章!
如下图所示:我们随机在一个序列的某个位置设为MASK,然后将这个位置的预测值输入进入一个线性的弱分类器进行预测mask位置的值。
这里有几点需要注意:
由于pre-train和fine-tune的方式的不匹配,mask选取的概率是15%,而且对这15%的word选取其中80%的替换为mask,10%不替换,10%替换为其他词。
第二种方法:
利用两个连续的句子的预测,判断两个句子是不是连续出现的句子。
2、bert是怎么用的呢?
a、句子分类。
b、句子中词汇情感分类?
c、根据前提判断假设是否正确
d、阅读理解
这里的s,e分别是起始和结束位置的word_index。
bert链接