一文弄懂Bert模型

01

引言

计算机一直难以理解语言,其中一个重要原因就是该任务需要更基本的语言语境。每个 NLP 任务都可以通过使用为每个任务创建的单独模型来解决。

2018 年,谷歌发布了论文BERT,旨在对模型进行预训练,这样就可以通过增加不同的层轻松地对模型进行微调,从而创建出最先进的模型,用于问题解答和语言推理等各种任务,而无需对特定任务的架构进行大量修改。

在本文中,我们将看到Bert是如何改变 NLP领域的模式,并了解它是如何发挥作用的。闲话少说,我们直接开始吧!

02

什么是Bert ?

BERT 是一个开源机器学习框架,用于更好地理解自然语言。BERT 是 Bidirectional Encoder Representation from Transformer 的缩写,顾名思义,BERT基于 Transformer 架构,在训练阶段使用编码器表示法从标记的左右两侧学习上下文信息。这就是它被称为双向编码表示的原因。

我们不妨来看个例子:

从上面的例子中我们可以看出,单词bank在两个句子中的含义是不同的。因此,如果模型不考虑双向的语境,那么至少会在其中一个句子中出错。

03

为什么需要BERT ?

在 BERT 之前,模型的主要局限性在于它们都是单向的,而BRET是双向语境。在这里,双向性指的是输入序列中的每个Token都可以从前面和后面的Token(分别称为左语境和右语境)中获得语义信息。

专业术语是,我们说注意力机制可以关注每个Token的前面和后面的标记。细分起来,我们可以回想一下,BERT 只对输入序列中的单词进行预测,而不会像 GPT 那样生成新的序列。因此,当 BERT 预测输入序列中的某个单词时,它可以结合周围所有单词的上下文线索。这就提供了两个方向的上下文语境,帮助 BERT 做出更明智的预测。

这与 GPT 等纯解码器模型形成鲜明对比,后者的目标是一次预测一个新词,以生成新的输出序列。每个预测的单词只能利用前面的单词(左语境)提供的语境,因为后面的单词(右语境)尚未生成。因此,这些模型被称为单向模型。

上图显示了使用双向上下文语境的典型 BERT 任务和使用单向上下文语境的典型 GPT 任务的示例。对于 BERT,这里的任务是预测 [MASK] 所指示的屏蔽词。由于这个单词的左右两边都有单词,因此两边的单词都可以用来提供上下文。如果作为人类,你在阅读这个句子时只有左右两边的单向上下文,那么你可能很难预测出这个屏蔽词。然而,有了双向上下文,你就更有可能猜出屏蔽词是 fishing。

对于 GPT,目标是执行经典的 NTP 任务。在这种情况下,目标是根据输入序列提供的上下文和输出中已生成的单词生成一个新序列。鉴于输入序列指示模型写一首诗,而目前生成的单词都是 Upon a,您可能会预测下一个单词是 river,然后是 bank。对于许多潜在的候选词,GPT(作为语言模型)会计算其词汇表中每个词出现在下一个词的可能性,并根据训练数据选择一个最有可能出现的词。

04

BERT模型结构

BERT架构建立在Transformer架构之上。BERT 模型使用的是Transformer模块中的编码器结构。在初始版本中,它有两个变体:

  • BERT Base: 12层,12个注意力头,110M参数

  • BERT Large:24层,16个注意力头,340M参数

05

嵌入层

我们无法直接向模型提供单词,我们首先要将单词转换成向量,这个过程称为嵌入。在 BERT 中,将单词转换为数字表示向量的嵌入有以下三种类型:

  • Position Embeddings: 与 BERT或Transformer一样,我们不按顺序传递数据,因此我们使用位置嵌入来表示每个标记在序列中的位置。这与我们在Transformer论文中看到的一样。

  • Segment Embedding: 由于 BERT 还将句子对作为各种任务的输入,因此每个标记都会添加句段嵌入,以表明某标记属于句子 A 还是句子 B。

  • Token Embedding: 第一句开头的输入词Token中添加一个 [CLS] 标记,并在每个句子的末尾插入一个 [SEP] 标记。

如上图所示,对于给定的标记,其输入表示是通过将相应的位置嵌入、句段嵌入和标记嵌入相加来构建的。

06

预训练

BERT 的训练分为两个阶段:预训练和微调。预训练包括使用 MLM 和 NSP 目标损失,在大量无标签文本数据的语料库上进行训练,使 BERT 能够学习上下文化的单词表征。

然后,微调会使用特定任务的标注数据,优化特定任务的训练目标,使预训练的 BERT 模型适应特定的下游任务。预训练和微调的结合使 BERT 能够出色地理解和解决各种 NLP 问题。

在训练语言模型时,确定训练目标是一个难题。为了克服这一挑战,BERT 采用了两种训练策略:MaskedLM (MLM) 和 Next Sentence Prediction (NSP)。

  • Masked LM (MLM)

这是一种用于无监督训练模型技术,MLM 将一定比例的输入标记替换为 [MASK] 标记,然后模型会尝试根据序列中单词提供的上下文来预测屏蔽标记的原始值,如下图所示:

其中训练MLM的核心点可总结为:

  • BERT 损失函数只考虑屏蔽值的预测,而忽略非屏蔽词。

  • 与标准语言模型训练相比,由于 MLM 只对每批中 15%的标记进行预测,因此需要更多的预训练步骤才能收敛。

  • 从编码器获得输出后,它会乘以嵌入矩阵,将其转换为词汇维度,并使用 Softmax 计算每个词的概率。

  • 在论文中,作者在 80% 的情况下用 [MASK] 替换单词。在 10% 的情况下,单词会被随机替换,而在另外 10% 的情况下,原始单词保持不变。这种方法可以确保编码器无法确定哪个单词需要预测,哪个单词已被随机替换。因此,每个标记的分布式上下文表征得以保持。

  • Next Sentence Prediction (NSP)

在 MLM的训练过程中,句子之间的关系在问题解答等任务中也起着重要作用,因此我们使用 NSP 来训练能理解这种关系的模型。

在训练阶段,我们选择一对句子作为输入,然后让模型学习预测这对句子中的第二个句子是否是原始文档中的后续句子。

在训练过程中,我们会选择这样的输入:50% 的输入是一对句子,即原始文档中标注为 "isNext "的后续句子,而另外 50%的输入则是语料库中标注为 "Not Next "的随机句子。这就转化成了一个有两个标签的分类问题。

我们只需计算输入序列,然后通过一个基于transformer的模型,使用一个简单的分类层将 [CLS] 标记的输出转换为 2*1 向量,并使用 Softmax 分配一个标签。

该模型同时使用 MLM 和 NSP 进行训练,以最小化两种策略的综合损失函数。

07

微调

在预训练之后,BERT 将使用标注数据对特定任务进行微调。在微调训练中,大多数超参数与 BERT 训练中的参数相同。

微调的目的是通过调整 BERT 模型的参数,使其更好地适应数据,从而优化 BERT 模型,使其在特定任务中表现出色。例如,可以在较小的电影评论数据集上对在大型文本数据语料库上预先训练好的 BERT 模型进行微调,以提高其准确预测特定评论情感的能力。

08

结论

通过实施双向语境,BERT 改变了自然语言处理方法,使模型能够在完整的上下文中理解词语。基于 Transformer 架构的 BERT 在各种 NLP 任务中的表现都优于早期的单向模型。它提高了 NLP 性能的标准,因为它可以在大型数据集上进行预训练,并针对特定工作进行微调,而无需对模型架构进行重大改动。由于其适应性和高效性,BERT 已成为改变计算机理解和处理人类语言方式的基本模型。

在大模型时代,我们如何有效的去学习大模型?

现如今大模型岗位需求越来越大,但是相关岗位人才难求,薪资持续走高,AI运营薪资平均值约18457元,AI工程师薪资平均值约37336元,大模型算法薪资平均值约39607元。
在这里插入图片描述

掌握大模型技术你还能拥有更多可能性

• 成为一名全栈大模型工程师,包括Prompt,LangChain,LoRA等技术开发、运营、产品等方向全栈工程;

• 能够拥有模型二次训练和微调能力,带领大家完成智能对话、文生图等热门应用;

• 薪资上浮10%-20%,覆盖更多高薪岗位,这是一个高需求、高待遇的热门方向和领域;

• 更优质的项目可以为未来创新创业提供基石。

可能大家都想学习AI大模型技术,也_想通过这项技能真正达到升职加薪,就业或是副业的目的,但是不知道该如何开始学习,因为网上的资料太多太杂乱了,如果不能系统的学习就相当于是白学。为了让大家少走弯路,少碰壁,这里我直接把都打包整理好,希望能够真正帮助到大家_。

👉[CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)]()👈

一、AGI大模型系统学习路线

很多人学习大模型的时候没有方向,东学一点西学一点,像只无头苍蝇乱撞,下面是我整理好的一套完整的学习路线,希望能够帮助到你们学习AI大模型。

在这里插入图片描述

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

在这里插入图片描述

三、AI大模型经典PDF书籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

在这里插入图片描述

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

四、AI大模型各大场景实战案例

在这里插入图片描述

结语

【一一AGI大模型学习 所有资源获取处(无偿领取)一一】
所有资料 ⚡️ ,朋友们如果有需要全套 《LLM大模型入门+进阶学习资源包》,扫码获取~

👉[CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)]()👈

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/463631.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTML5实现小鸟过管道小游戏源码

文章目录 1.设计来源1.1 主界面1.2 游戏中主界面1.3 游戏结束界面 2.效果和源码2.1 动态效果2.2 源代码 源码下载万套模板,程序开发,在线开发,在线沟通 作者:xcLeigh 文章地址:https://blog.csdn.net/weixin_43151418/…

Linux·进程控制(system V)

1. 共享内存 system V共享内存是最快的IPC形式,之前的管道是基于Linux内核开发的通讯方案,其读写接口都是现成的,因此内核设计者为了完成进程间通讯任务并不需要新增太多代码。而共享内存属于system V标准,是操作系统单独…

【Python+Pycharm】2024-Python安装配置教程

【PythonPycharm】2024-Python安装配置教程 一、下载装 Python 1、进入Python官网首页,下载最新的Python版本 Download Python | Python.org 选择对应版本下载 安装 测试安装情况 python如果安装失败 在系统环境变量添加安装路径 where pythonwin7安装路径添加…

文献阅读 11.3

文献阅读 Physics-informed neural networks for hydraulic transient analysis in pipeline systems (基于物理信息的管道系统水力瞬态分析神经网络) 一、文献摘要 该文献提出了一种新的基于物理和数据驱动的定向瞬态压力重建方法,无需建立完整的管道系统模型。…

MFC工控项目实例二十八模拟量信号每秒采集100次

用两个多媒体定时器,一个定时0.1秒计时,另一个定时0.01秒用来对模拟量信号采集每秒100次。 1、在SEAL_PRESSUREDlg.h中添加代码 class CSEAL_PRESSUREDlg : public CDialo { public:CSEAL_PRESSUREDlg(CWnd* pParent NULL); // standard constructor&a…

气膜冰雪项目:推动冰雪运动发展的新纪元—轻空间

随着2024年北京冬奥会的余温仍在延续,气膜冰雪项目在我国的冰雪运动发展中扮演着愈发重要的角色。气膜结构以其独特的优势,正吸引着越来越多的参与者,推动着冰雪运动的普及与发展。 突出的优势 气膜冰雪馆的设计理念充分体现了现代建筑的灵活…

市场分化!汽车零部件「变天」

全球汽车市场的动荡不安,还在持续。 本周,全球TOP20汽车零部件公司—安波福(Aptiv)发布2024年第三季度财报显示,三季度公司经调整后确认收入同比下降6%;按照区域市场来看,也几乎是清一色的下滑景…

ES6中数组新增了哪些扩展?

ES6中数组新增了哪些扩展? 1、扩展运算符的应⽤ ES6通过扩展元素符 … ,好⽐ rest 参数的逆运算,将⼀个数组转为⽤逗号分隔的参数序列 console.log(...[1, 2, 3]) // 1 2 3 3 console.log(1, ...[2, 3, 4], 5) // 1 2 3 4 5 [...documen…

基于物联网的户外环境检测装置教学文章

引言 随着物联网(IoT)技术的发展,越来越多的应用被广泛研究和应用于我们的日常生活中。户外环境检测装置是一种利用传感器、网络连接和数据分析技术,监测和分析环境数据(如温度、湿度、空气质量等)的设备。…

ubuntu20安装opencv3.2记录

系统环境 ubuntu20安装了ros-noetic,所以系统默认装了opencv4.2.0,但是跑fastlivo推荐的是opencv3.2.0,而且海康相机别人写的ros驱动(海康相机ros驱动)也是需要opencv3.2.0,最终还是选择安装多版本的openc…

全!新!LLM推理加速调研

本文主要内容 介绍一篇大模型推理加速综述论文,简单说明了LLM推理加速的基本内容。 介绍了推理阶段的prefilling(主要方向:计算优化)和decoding(主要方向:内存优化)差异。 prefilling优化方面…

大数据-206 数据挖掘 机器学习理论 - 多元线性回归 回归算法实现 算法评估指标

点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…

Python+Appium+Pytest+Allure自动化测试框架-安装篇

文章目录 安装安装ADT安装NodeJs安装python安装appium安装Appium Server(可选)安装Appium-Inspector(可选)安装allure安装pytest PythonAppiumPytestAllure框架的安装 Appium是一个开源工具,是跨平台的,用于…

Nature Methods | 新型三维光场显微成像技术

欢迎关注GZH《光场视觉》 近日,中科院脑科学与智能技术卓越创新中心王凯研究组在《自然方法》(Nature Methods)上,在线发表了题为Volumetric Voltage Imaging of Neuronal Populations in Mouse Brain by Confocal Light Field M…

深度学习基础—循环神经网络的梯度消失与解决

引言 深度学习基础—循环神经网络(RNN)https://blog.csdn.net/sniper_fandc/article/details/143417972?fromshareblogdetail&sharetypeblogdetail&sharerId143417972&sharereferPC&sharesourcesniper_fandc&sharefromfrom_link深…

基于向量检索的RAG大模型

一、什么是向量 向量是一种有大小和方向的数学对象。它可以表示为从一个点到另一个点的有向线段。例如,二维空间中的向量可以表示为 (𝑥,𝑦) ,表示从原点 (0,0)到点 (𝑥,𝑦)的有向线段。 1.1、文本向量 1…

Bartender 5 for Mac 菜单栏管理软件 安装教程【保姆级教程,操作简单小白轻松上手使用】

Mac分享吧 文章目录 Bartender 5 for Mac 菜单栏管理软件 安装完成,软件打开效果一、Bartender 5 菜单栏管理软件 Mac电脑版——v5.2.3⚠️注意事项:1️⃣:下载软件2️⃣:安装软件3️⃣:打开软件,根据自己…

国产操作系统重新安装软件商店

国产操作系统类似于手机的“应用商店”,都会有一个“软件商店”,方便用户安装管理电脑的软件。这个软件商店不仅有各种软件,还有各类外设驱动和移动应用环境模拟功能。软件商店可以下载安装软件,还可以更新、卸载软件。 软件商店 …

FastAPI中如果async def和def 路由的区别

在python的整体生态中,虽然已经有很多库支持了异步调用,如可以使用httpx或者aiohttp代替requests库发起http请求,使用asyncio.sleep 代替time.sleep, 但是依然还有很多优秀的第三方库是不支持异步调用也没有可代替的库&#xff0c…

Pinctrl子系统中Pincontroller和client驱动程序的编写

往期内容 本专栏往期内容: Pinctrl子系统和其主要结构体引入Pinctrl子系统pinctrl_desc结构体进一步介绍Pinctrl子系统中client端设备树相关数据结构介绍和解析inctrl子系统中Pincontroller构造过程驱动分析:imx_pinctrl_soc_info结构体Pinctrl子系统中c…