多模态基础---BERT
1. BERT简介
BERT用于将一个输入的句子转换为word_embedding,本质上是多个Transformer的Encoder堆叠在一起。
其中单个Transformer Encoder结构如下:

BERT-Base采用了12个Transformer Encoder。
BERT-large采用了24个Transformer Encoder。
2. BERT的输入
原始的句子中包含[CLS] 和 [SEP]两个字符,其中 [SEP]是两个句子间的分隔符,[CLS]则用于做二分类任务,即判断前后两个句子是否相邻。
BERT的输入由三部分组成:
Input = Token Embedding + Segment Embedding + Position Embedding
Token Embedding:将原始句子(包含字符)进行编码
Segment Embedding :第一个句子中每个word彼此编码一致,第二个句子中每个word彼此编码一致,
Position Embedding:位置编码,不同于原始Transformer中的positional encoding的正余弦编码方式,这里采用可学习参数的编码方式。

3. BERT的预训练
BERT的训练任务包括:
- 预测被遮挡的单词
- 预测两个句子是否是相邻的句子
1和2是同时训练的
3.1 MLM 任务(Model Language Mask)

由于BERT在预训练时的数据集很多都是无标签的,因此采用无监督学习方式。
常见的无监督模型包括:
- Auto Regressive(AR),自回归模型,只能考虑单侧信息,典型的就是GPT。

- Auto Encoding, 自编码模型,可使用上下文信息,BERT使用的就是AE。

AE的缺点:忽略了mask和mask之间的联系

3.2 NSP 任务 (Next Sentence Prediction)

3.2.1 NSP样本
- 正样本:从训练语料库中取出两个连续的段落作为正样本。
- 负样本:从不同文档中随机创建一对段落作为负样本。
缺点:
将主题预测和连贯性预测合并为一个单项任务。由于主题预测任务比较简单,因此降低了整体任务的难度。
改进方式:
从同一篇文档中抽取两个不连续的段落作为负样本
4. BERT的四种用法
- 预测句子的类别:输入一个句子,输出一个类别
- 预测句子中每个单词的类别:输入一个句子,输出每个单词的类别
- 预测两个句子是否相邻:输入两个句子,输出判断是否相邻的类别
- 预测某个问题在文章中的答案:输入一个问题和一篇文章,输出问题在文章中答案的位置(索引)didj
case1:

case2:
case3:
case4:



相关文章:
多模态基础---BERT
1. BERT简介 BERT用于将一个输入的句子转换为word_embedding,本质上是多个Transformer的Encoder堆叠在一起。 其中单个Transformer Encoder结构如下: BERT-Base采用了12个Transformer Encoder。 BERT-large采用了24个Transformer Encoder。 2. BERT的…...
图表示学习 Graph Representation Learning chapter2 背景知识和传统方法
图表示学习 Graph Representation Learning chapter2 背景知识和传统方法 2.1 图统计和核方法2.1.1 节点层次的统计和特征节点的度 节点中心度聚类系数Closed Triangles, Ego Graphs, and Motifs 图层次的特征和图的核节点袋Weisfieler–Lehman核Graphlets和基于路径的方法 邻域…...
OpenMVG(计算两个球形图像之间的相对姿态、细化重建效果)
目录 1 Bundle Adjustment(细化重建效果) 2 计算两个球形图像之间的相对姿态 1 Bundle Adjustment(细化重建效果) 数...
【QT+QGIS跨平台编译】之三十四:【Pixman+Qt跨平台编译】(一套代码、一套框架,跨平台编译)
文章目录 一、Pixman介绍二、文件下载三、文件分析四、pro文件五、编译实践一、Pixman介绍 Pixman是一款开源的软件库,提供了高质量的像素级图形处理功能。它主要用于在图形渲染、合成和转换方面进行优化,可以帮助开发人员在应用程序中实现高效的图形处理。 Pixman的主要特…...
2.17学习总结
tarjan 【模板】缩点https://www.luogu.com.cn/problem/P3387 题目描述 给定一个 �n 个点 �m 条边有向图,每个点有一个权值,求一条路径,使路径经过的点权值之和最大。你只需要求出这个权值和。 允许多次经过一条边或者…...
Unity类银河恶魔城学习记录7-7 P73 Setting sword type源代码
Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili Sword_Skill_Controller.cs using System.Collections; using System.Col…...
安卓版本与鸿蒙不再兼容,鸿蒙开发工程师招疯抢
最近,互联网大厂纷纷开始急招华为鸿蒙开发工程师。这是一个新的信号。在Android和iOS长期霸占市场的今天,鸿蒙的崛起无疑为整个行业带来了巨大的震动。 2023年11月10日,网易更新了高级/资深Android开发工程师岗位,职位要求参与云音…...
《白话C++》第9章 泛型,Page842~844 9.4.2 AutoPtr
源起: C编程中,最容易出的问题之一,就是内存泄露,而new一个对象,却忘了delete它,则是造成内存泄露的主要原因之一 例子一: void foo() {XXXObject* xo new XXXObject;if(!xo->DoSomethin…...
服务流控(Sentinel)
引入依赖 <!-- 必须的 --> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId> </dependency><!-- sentinel 核心库 --> <dependency><groupId>com.ali…...
点亮代码之灯,程序员的夜与电脑
在科技的海洋里,程序员是那些驾驶着代码船只,穿梭于虚拟世界的探险家。他们手中的键盘是航行的舵,而那台始终不愿关闭的电脑,便是他们眼中永不熄灭的灯塔。有人说,程序员不喜欢关电脑,这究竟是为什么呢&…...
ClickHouse--07--Integration 系列表引擎
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 Integration 系列表引擎1 HDFS1.1 语法1.2 示例: 2 MySQL2.1 语法2.2 示例: 3 Kafka3.1 语法3.2 示例:3.3 数据持久化方法 Integ…...
前端架构: 脚手架框架之yargs的11种基础核心特性的应用教程
脚手架框架之yargs的基础核心特性与应用 1 )概述 yargs 是脚手架当中使用量非常大的一个框架进入它的npm官网: https://www.npmjs.com/package/yargs 目前版本: 17.7.2Weekly Downloads: 71,574,188 (动态数据)最近更新:last month (github)说明这是一个…...
MySQL性能调优篇(6)-主从复制的配置与管理
MySQL数据库主从复制是一种常用的数据复制和高可用性解决方案。它允许将一个MySQL主服务器上的数据自动复制到多个从服务器上,从而提供了数据冗余备份、读写分离等优势。本文将详细介绍MySQL数据库主从复制的配置与管理。 1. 原理概述 MySQL主从复制是基于二进制日…...
Linux第49步_移植ST公司的linux内核第1步_获取linux源码
已知ST公司的linux源码路径: /home/zgq/linux/atk-mp1/stm32mp1-openstlinux-5.4-dunfell-mp1-20-06-24/sources/arm-ostl-linux-gnueabi/linux-stm32mp-5.4.31-r0 1、创建“my_linux”目录 打开第1个终端 输入“ls回车” 输入“cd linux/回车”,切换…...
怎样学习Windows下命令行编写
第一:Windows下命令行指的是cmd和powershell命令行编写 第二:必须要用好help或/?命令,这个命令是最基本的也是最常用的命令列表和语法查看命令 第三:cmd命令使用help查看命令列表或“一串带参数的命令 /?"(不…...
数据结构第十六天(二叉树层序遍历/广度优先搜索(BFS)/队列使用)
目录 前言 概述 接口 源码 测试函数 运行结果 往期精彩内容 前言 从前的日色变得慢,车,马,邮件都慢,一生,只够爱一个人。 概述 二叉树的层序遍历可以使用广度优先搜索(BFS)来实现。具体步骤如下&…...
6.s081 学习实验记录(八)Networking
文章目录 network driver network driver //TODO...
图解贝塞尔曲线生成原理
贝塞尔曲线是一种在计算机图形学中广泛使用的参数曲线,主要用于二维图形应用程序中。它是由法国工程师皮埃尔贝塞尔在1962年提出的,主要用于汽车车身设计。贝塞尔曲线的主要特点是,只要确定了控制点,就可以生成一条平滑的曲线。 …...
租房招聘|在线租房和招聘平台|基于Springboot的在线租房和招聘平台设计与实现(源码+数据库+文档)
在线租房和招聘平台目录 目录 基于Springboot的在线租房和招聘平台设计与实现 一、前言 二、系统功能设计 三、系统实现 1、房屋管理 2、招聘管理 3、平台资讯管理 4、平台资讯类型管理 四、数据库设计 1、实体ER图 六、论文参考 七、最新计算机毕设选题推荐 八、源…...
简单试验:用Excel进行爬虫
文章目录 Excel的版本具体操作实例从网站上爬取工商银行的汇率Excel的版本 office 2016,2019,365这几个版本都可以 具体操作 #mermaid-svg-NlIVMivGoJbdyWW0 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-NlIVMi…...
为什么你的Perplexity搜索总返回噪音结果?7步精准提示工程诊断流程
更多请点击: https://intelliparadigm.com 第一章:Perplexity搜索结果噪音现象的本质剖析 Perplexity 作为基于大语言模型的语义搜索引擎,其结果页中高频出现的“噪音”并非传统关键词匹配失准所致,而是源于其底层推理机制与用户…...
基于牛顿–拉夫逊法的 IEEE 9 节点电力系统潮流计算实现与分析(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 🎁…...
Skill 不是 Prompt 模板,而是 Code Agent 的领域知识接口
很多人第一次把 Code Agent 接进老项目,都会经历一个落差: Demo 里它能十分钟写完一个 CRUD;一进真实业务系统,它开始犯一些“刚入职新人”才会犯的错。 它能看懂 Controller,却不知道这个字段为什么不能改ÿ…...
CircuitJS1:浏览器中的电子电路仿真神器完全指南
CircuitJS1:浏览器中的电子电路仿真神器完全指南 【免费下载链接】circuitjs1 Electronic Circuit Simulator in the Browser 项目地址: https://gitcode.com/gh_mirrors/ci/circuitjs1 想要学习电子电路却苦于没有实验设备?需要验证电路设计却不…...
基于SUMO与PPO的智能换道决策实战:从环境构建到模型部署
1. 环境准备与基础配置 在开始构建智能换道决策系统之前,我们需要先搭建好开发环境。这里我推荐使用Anaconda来管理Python环境,它能很好地解决不同项目之间的依赖冲突问题。我习惯为每个项目创建独立的环境,比如这次我们可以命名为"sumo…...
Agent+可穿戴设备:心率、睡眠、活动数据如何变成有价值的健康建议
可穿戴设备每天都会产生心率、睡眠、步数、活动强度等数据,但开发者真正要解决的不是“采集更多指标”,而是把这些指标转成可解释、可追踪、可配置的健康提示。本文从工程角度搭建一个简化版 Agent 服务,演示如何完成数据接入、趋势计算、规则…...
工业 DC-DC 标准封装设计探讨 钡特电源 DB2-12D15D 与金升阳 A1215D-2WR3 工业模块电源盘点
在工业控制与嵌入式系统设计中,12V 输入转 15V 输出的 2W 隔离供电方案,是模拟电路、信号调理模块的核心供电选择。伴随国内电子制造技术持续突破,国产直流电源模块在标准化封装、电气性能稳定性上不断贴合行业通用规范,成为推动国…...
RT-Thread USB HID设备数据发送失败排查:ops参数与报告ID的深度解析
1. 问题背景与核心需求解析 最近在捣鼓RT-Thread,想用它来实现一个USB HID设备,完成和电脑之间的双向数据收发。HID,也就是人机接口设备,大家最熟悉的可能就是键盘鼠标了,它的好处是免驱动,在主流操作系统…...
py每日spider案例之某website壁纸接口(无加密)
import requestsheaders = {"accept": "*/*","accept-language": "zh-CN,zh;q=0.9","cache-control": "no-cache","pragma"...
从OpenMV2到4代,我踩过的那些坑:画面变绿、传感器接触不良与内存擦除的避坑实录
从OpenMV2到4代:硬件升级中的稳定性挑战与实战解决方案 作为一名长期使用OpenMV系列开发视觉项目的工程师,我从OpenMV2一路升级到4代,见证了硬件性能的飞跃,也深刻体会到稳定性问题带来的困扰。其中最令人头疼的莫过于"画面变…...
