今天学习超级火热的Bert模型来进行词向量的学习。
BERT(Bidirectional Encoder Representations from Transformers)是基于Transfomer机制的,大有替换Word2Vec的趋势。
原始词向量,诸如Word2Vec和GloVe的表示方法是无法解决多义词问题,基ELMO(基于RNN)可以解决多义词问题,但是无法并行化,深度也不会很深(无法提取更深层特征)。
一:Bert结构
Bert是利用Transformer模型的Encoder部分进行词向量训练的,至于有什么优点,那就是都继承于Transformer了。这也是我上一篇博文学习Transformer的原因,因为如果了解了Transformer的结构和计算过程,Bert也就自然不再话下了。
因此我就不多余画它的结构了,要是不熟悉的可以去看看Transformer模型的Encoder部分的结构。
1:可以并行化,放到GPU加速。
2:有attention机制在关注全局信息的同事,也能关注到有用关键部分信息
3:没有RNN结构的梯度消失,因此可以做到长期依赖。
4:可以设计更高层结构抽取深层特征,RNN顶多就几层。
5:跟ELMO一样,词向量也是包含有上下文信息的,能解决多义词问题。

我们知道Transformer模型的Encoder部分是由多个小的encoder组成的,一般设计会有几十层。
二:Bert的训练
它的训练很多方法,这里列举两个常用的方法。
方法一:句子中有15%的词汇被随机mask掉(你可以当做不存在,或者设置关注度为0)。交给如下模型去预测被mask掉的词汇是什么。对于中文来说,一般是字,英文是是词。

本文深入探讨BERT模型,解释其基于Transformer的Encoder结构如何解决多义词问题,并能进行并行化计算。BERT通过两种训练方法——词汇预测和句子逻辑判断,学习上下文信息。在问答系统、情感分析、词性标注和逻辑判断等任务中展现出广泛应用。
最低0.47元/天 解锁文章
597

被折叠的 条评论
为什么被折叠?



