BERT模型入门(1)BERT的基本概念

文章目录


BERT是B idirectional E ncoder R epresentations from Transformers的首字母简写,中文意思是:Transformer的双向编码器表示。它是谷歌发布的最先进的嵌入模型。BERT在许多NLP任务中提供了更好的结果,如问答、文本生成、句子分类等,从而在NLP领域取得了重大突破。BERT成功的一个主要原因在于它是一个基于上下文的嵌入模型,而其他流行的嵌入模型,如word2vec,则是上下文无关的。

首先,让我们了解基于上下文和上下文无关嵌入模型之间的区别。考虑以下两个句子:

句子A:He got bit by Python.

句子B:Python 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"这个词与所有其他单词关联

现在,让我们看看句子B:Python is a popular programming language.

同样地,BERT将句子中的每个单词与句子中的所有单词关联起来,以理解每个单词的上下文意义。因此,BERT将"Python"这个词与句子中的所有单词关联起来,以理解"Python"这个词的意思。通过这样做,BERT理解句子B中的"Python"与编程语言有关,通过使用"编程"这个词,如下所示:

图2.2 -- 将"Python"这个词与所有其他单词关联

因此,与word2vec这样的上下文无关模型不同,后者无论上下文如何都生成静态嵌入,BERT基于上下文生成动态嵌入。

好了,问题是BERT究竟是如何工作的?它是如何理解上下文的?现在我们有了BERT的基本概念,接下来我们将更详细地探讨BERT,并找到这些问题的答案。


感谢您的阅读,欢迎关注!


相关推荐
dr_yingli5 分钟前
MedGemma皮肤肿瘤6分类LLM fineturn流程
人工智能·深度学习
搬砖者(视觉算法工程师)5 分钟前
计算机视觉与计算摄影测量学第三讲图像直方图:理论、统计特性与点运算变换
人工智能·算法·计算机视觉
风落无尘6 分钟前
AIGC(Stable Diffusion 生态)常用知识与参数速查手册
人工智能·stable diffusion·aigc
星秀日10 分钟前
Spring Boot + Sa-Token 实时聊天系统:用户注册流程源码深度剖析
java·人工智能·spring·状态模式
Yingjun Mo10 分钟前
3. Meta-Harness:模型基座外壳的端到端优化
人工智能·算法
Agent产品评测局11 分钟前
标准化产品vs定制开发,制造业自动化方案选型横评:2026工业智能体落地深度指南
运维·人工智能·ai·chatgpt·自动化
放下华子我只抽RuiKe511 分钟前
React 从入门到生产(一):JSX 与组件思维
前端·javascript·人工智能·pytorch·深度学习·react.js·前端框架
QYR_Jodie13 分钟前
全电动注塑机械市场深度研判:36.13亿美元赛道,节能化转型如何驱动精密制造升级?
人工智能·市场报告
RSTJ_162514 分钟前
PYTHON+AI LLM DAY FIFITY
人工智能·深度学习