大语言模型-Bert-Bidirectional Encoder Representation from Transformers

news2024/11/24 18:36:53

一、背景信息:

Bert是2018年10月由Google AI研究院提出的一种预训练模型。
主要用于自然语言处理(NLP)任务,特别是机器阅读理、文本分类、序列标注等任务。
BERT的网络架构使用的是多层Transformer结构,有效的解决了长期依赖问题。

二、整体结构:

BERT由多个Transformer Encoder一层一层地堆叠起来。
BERT全名叫做Bidirectional Encoder Representation from Transformers,下图中用Trm表示Transformer中的Encoder模块。Encoder中在编码一个token的时候会同时利用了其上下文的token,即为Bidirectional双向的体现。

在这里插入图片描述

三、Bert 的输入

Bert 的输入向量,由x的三种向量求和而成,三种向量分别为x的词向量、句子分类向量、位置向量。
其中
词向量Token Embeddings,第一个词是[CLS]标志,通常会用在分类任务中;[SEP]标志分句符号,用于断开输入语料中的两个句子或者表示句子的结束。
句子分类向量Segment Embeddings,用来区别两种句子,有两种情况;问答等任务全部所有token全为0,其余任务第一句句所有token为0第二句所有为1。
位置向量Position Embeddings,这里的位置向量为可学习的绝对位置编码,优点是可以学习到不同位置的不同编码,而不是固定的编码。因为位置编码的维度是固定的,需要设定最大长度,不能预测超过长度的句子。
在这里插入图片描述

四、Bert训练

BERT的训练包含预训练fine-tune两个阶段。

Bert预训练:

Bert预训练(Pre-training)任务是由MLM和NSP两个自监督任务组成。

MLM:

MLM随机在输入语料上Mask掉一些词,并通过上下文预测该词。其中15%的WordPiece Token会被随机Mask掉。

  • 80%的时候会直接替换为[Mask]
  • 10%的时候将其替换为其它任意单词
  • 10%的时候会保留原始Token。
1、若句子中的某个Token 100%都会被mask掉,那么在fine-tuning的时候模型就会有一些没有见过的单词。
2、加入随机Token的原因是因为Transformer要保持对每个输入token的分布式表征。
3、因为一个单词被随机替换掉的概率只有15%*10% =1.5%,单词带来的负面影响可以忽略不计。
4、每次只预测15%的单词,因此模型收敛的比较慢。
# 优点:
# 10%的概率用任意词替换赋予Bert一定文本纠错能力;
# 10%的概率保留原始Token,缓解了finetune时与预训练时的输入不匹配。
# 缺点:
# Mask汉字割裂了连续汉字之间的相关性
NSP:

Next Sentence Prediction(NSP)任务判断句子B是否是句子A的下文。如果是的话输出’IsNext‘,否则输出’NotNext‘。

Bert的微调

基于Bert模型的微调应用近些年来,已经越来越丰富了,下面介绍三种具有代表性的简单版本的微调应用。当然如今的bert微调应用是不仅仅只有下面这零星的几个例子。

1、单文本分类

在需要进行分类的文本的开头和结尾分别加上CLS和SEP标记

[CLS] 文本 [SEP]

Bert模型输出的[CLS]标记的向量,表示整个文本序列的语义信息。
文本分类微调需要新增一个全连接层,将[CLS]标记的向量输入到全连接层,输出各类别的概率分布。

2、问答任务

从给定的上下文中找到问题的答案。输入包含上下文和问题两部分

[CLS] 上下文 [SEP] 问题 [SEP]

Bert模型的顶部添加两个分类层,分别用于预测答案的起始位置和终止位置。

3、信息抽取

对句子中语义连贯的词汇或短语逐个字的标注。
Bert模型的最后一层输出每个token的表示向量。通常在Bert模型顶部添加一个分类器,用于预测每个token是否是命名实体的token。例如:TPLinker

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【网络安全】CrowdStrike 的 Falcon Sensor 软件导致 Linux 内核崩溃

CrowdStrike的Falcon Sensor软件,上周导致大量Windows电脑出现蓝屏故障,现在还被发现Linux内核系统崩溃也与CrowdStrike有关。 六月份,Red Hat警告其客户在使用版本为5.14.0-427.13.1.el9_4.x86_64的内核启动后,由Falcon Sensor进…

基于神经网络的聚类分析

神经网络是一种非常有用的机器学习模型,具有无数的应用。今天,我们将分析一个数据集,看看我们是否可以通过应用无监督聚类技术来查找数据中的模式和隐藏分组,从而获得新的见解。 我们的目标是对复杂数据进行降维,以便…

基于R语言复杂数据回归与混合效应模型【多水平/分层/嵌套】技术与代码

回归分析是科学研究特别是生态学领域科学研究和数据分析十分重要的统计工具,可以回答众多科学问题,如环境因素对物种、种群、群落及生态系统或气候变化的影响;物种属性和系统发育对物种分布(多度)的影响等。纵观涉及数…

PyTorch计算机视觉之Vision Transformer 整体结构

【图书推荐】《PyTorch深度学习与计算机视觉实践》-CSDN博客 Vision Transformer(ViT)模型是最新提出将注意力机制应用在图像分类的模型。Vision Transformer算法会将整幅图像拆分成小图像块,然后把这些小图像块的线性映射序列作为注意力模块…

昇思25天学习打卡营第29天 | 基于MindSpore通过GPT实现情感分类

基于MindSpore框架通过GPT模型实现情感分类展示了从项目设置、数据预处理到模型训练和评估的详细步骤,提供了一个完整的案例来理解如何在自然语言处理任务中实现情感分析。 首先,环境配置是任何机器学习项目的起点。项目通过安装特定版本的MindSpore和相…

基于机器学习的旅游景区评论情感分析算法设计与实现

1 绪论 1.1 背景与意义 1.1.1 背景 旅游业是全球范围内一个快速发展的行业,旅游景区作为旅游业的核心组成部分,对于吸引游客和提升旅游体验起着重要作用。随着社交媒体和在线评论平台的普及,越来越多的游客在网上分享他们对旅游景区的评论…

[路由器]IP-MAC的绑定与取消

背景:当公司的网络不想与外部人员进行共享,可以在路由器页面配置IP-MAC的绑定,让公司内部人员的手机和电脑的mac,才能接入到公司。第一步:在ARP防护中,启动IP-MAC绑定选项,必须启动仅允许IP-MAC…

OpenAI发布“最具性价比”模型 GPT-4o mini,GPT-3.5 Turbo 已成过去式

GPT-4o mini 相较于 GPT 3.5 在多个方面实现了显著的性能提升: 得分率提升:GPT-4o mini 在 MMLU(一个涉及多种语言理解任务的基准测试)上的得分率为 82%,优于 GPT-4,并且明显高于 GPT-3.5 2。 成本效益&am…

U盘数据危机:应对文件或目录损坏无法读取的全面解析

一、U盘数据损坏的困境与挑战 U盘,作为我们日常生活中不可或缺的便携存储设备,承载着大量的工作文档、学习资料及珍贵回忆。然而,当U盘中的文件或目录突然无法读取,甚至提示损坏时,我们往往会陷入焦急与无助之中。这种…

Modbus转BACnet/IP网关快速对接Modbus协议设备与BA系统

摘要 在智能建筑和工业自动化领域,Modbus和BACnet/IP协议的集成应用越来越普遍。BA(Building Automation,楼宇自动化)系统作为现代建筑的核心,需要高效地处理来自不同协议的设备数据,负责监控和管理建筑内…

华清数据结构day5 24-7-22

1>使用栈,完成进制转换输入:一个整数,进制数输出:该数的对应的进制数 seqstack.h #ifndef SEQSTACK_H #define SEQSTACK_H #define MAX 10 #include"myhead.h" typedef int datatype;typedef struct {datatype *d…

ReadAgent,一款具有要点记忆的人工智能阅读代理

人工智能咨询培训老师叶梓 转载标明出处 现有的大模型(LLMs)在处理长文本时受限于固定的最大上下文长度,并且当输入文本越来越长时,性能往往会下降,即使在没有超出明确上下文窗口的情况下,LLMs 的性能也会随…

Java查询ES报错 I/O 异常解决方法: Request cannot be executed; I/O reactor status: STOPPED

问题 ES Request cannot be executed; I/O reactor status: STOPPED 报错解决 在使用ES和SpringBoot进行数据检索时,在接口中第一次搜索正常。第二次在搜索时在控制台就会输出Request cannot be executed; I/O reactor status: STOPPED错误 原因 本文错误是因为在使…

高清视频,无损音频,LDR6023——打造极致视听与高效充电的双重享受!

Type-C PD(Power Delivery)芯片是一种支持USB Type-C接口规范的电源管理单元,其主要功能包括: 快速充电:Type-C PD芯片支持高功率传输,能够提供更快的充电速度,使电子设备在短时间内充满电&…

自然语言处理之RNN实现情感分类

前言 IMDB数据集经过分词处理后需要进行额外的预处理,包括将Token转换为index id,并统一文本序列长度。使用MindSpore.dataset接口进行预处理操作,包括text.Lookup和PadEnd接口。此外,还需要将label数据转换为float32格式。 模型…

.NET下支持多框架的托盘功能NotifyIconEx(WPF / WinForms / Avalonia / WinUI / MAUI / Wice)

支持 WPF / WinForms / Avalonia / WinUI / MAUI / Wice 应用。 先看效果: using NotifyIconEx;var notifyIcon new NotifyIcon() {Text "NotifyIcon",Icon Icon.ExtractAssociatedIcon(Process.GetCurrentProcess().MainModule?.FileName!)! }; not…

Kafka Producer之事务性

文章目录 1. 跨会话幂等性失效2. 开启事务3. 事务流程原理 事务性可以防止跨会话幂等性失效,同时也可以保证单个生产者的指定数据,要么全部成功要么全部失败,不限分区。不可以多个生产者共用相同的事务ID。 1. 跨会话幂等性失效 幂等性开启…

redis的学习(二):常见数据结构及其方法

简介 redis常见的数据结构和他们的常用方法 redis的数据结构 redis是一个key-value的nosql,key一般是字符串,value有很多的类型。 j基本类型: stringhashlistsetsortedSet 特殊类型: GEOBitMapHyperLog key的结构 可以使用…

VScode连接虚拟机运行Python文件的方法

声明:本文使用Linux发行版本为rocky_9.4 目录 1. 在rocky_9.4最小安装的系统中,默认是没有tar工具的,因此,要先下载tar工具 2. 在安装好的vscode中下载ssh远程插件工具 3. 然后连接虚拟机 4. 查看python是否已经安装 5. 下载…

Maven的核心概念

Maven的核心概念 —2020年06月11日 什么是Maven Maven是一款服务于Java平台的自动化构建工具。 约定的目录结构 目录结构: 根目录:工程名src目录:源码pom.xml文件:Maven工程的核心配置文件main目录:存放主程序tes…