网站title重复的后果,施工员证查询官方网站,wordpress主题去版权乱码,wordpress 文章美化文章目录 BERT是Bidirectional Encoder Representations from Transformers的首字母简写#xff0c;中文意思是#xff1a;Transformer的双向编码器表示。它是谷歌发布的最先进的嵌入模型。BERT在许多NLP任务中提供了更好的结果#xff0c;如问答、文本生成、句子分类等中文意思是Transformer的双向编码器表示。它是谷歌发布的最先进的嵌入模型。BERT在许多NLP任务中提供了更好的结果如问答、文本生成、句子分类等从而在NLP领域取得了重大突破。BERT成功的一个主要原因在于它是一个基于上下文的嵌入模型而其他流行的嵌入模型如word2vec则是上下文无关的。
首先让我们了解基于上下文和上下文无关嵌入模型之间的区别。考虑以下两个句子
句子AHe got bit by Python.
句子BPython is a popular programming language.
通过阅读上述两个句子我们可以理解到“Python”这个词在两个句子中的意思不同。在句子A中“Python”指的是蛇而在句子B中“Python”指的是编程语言。
现在如果我们使用word2vec这样的嵌入模型为上述两个句子中的“Python”这个词获取嵌入那么“Python”的嵌入在两个句子中将是相同的这使得“Python”在两个句子中的意思相同。这是因为word2vec是一个上下文无关模型它会忽略上下文总是为“Python”提供相同的嵌入无论上下文如何。
与之不同BERT是一个基于上下文的模型。它会理解上下文然后基于上下文生成单词的嵌入。因此对于上述两个句子它会根据上下文为“Python”提供不同的嵌入。但这是如何工作的BERT是如何理解上下文的让我们更深入地探讨这个问题。
让我们以句子A为例He got bit by Python.。首先BERT将句子中的每个单词与句子中的所有其他单词关联起来以理解每个单词的上下文意义。因此为了理解“Python”这个词的上下文意义BERT将“Python”这个词与句子中的所有单词关联起来。通过这样做BERT可以理解句子A中的“Python”通过“咬”这个词指的是蛇如下所示 图2.1 – 将“Python”这个词与所有其他单词关联
现在让我们看看句子BPython is a popular programming language.
同样地BERT将句子中的每个单词与句子中的所有单词关联起来以理解每个单词的上下文意义。因此BERT将“Python”这个词与句子中的所有单词关联起来以理解“Python”这个词的意思。通过这样做BERT理解句子B中的“Python”与编程语言有关通过使用“编程”这个词如下所示 图2.2 – 将“Python”这个词与所有其他单词关联
因此与word2vec这样的上下文无关模型不同后者无论上下文如何都生成静态嵌入BERT基于上下文生成动态嵌入。
好了问题是BERT究竟是如何工作的它是如何理解上下文的现在我们有了BERT的基本概念接下来我们将更详细地探讨BERT并找到这些问题的答案。 感谢您的阅读欢迎关注