预训练语言模型(笔记)

news/2025/2/8 13:35:31 标签: 人工智能, 深度学习

笔记来源:Transformer、GPT、BERT,预训练语言模型的前世今生(目录) - B站-水论文的程序猿 - 博客园

预训练语言模型的发展并不是一蹴而就的,而是伴随着诸如词嵌入、序列到序列模型及 Attention 的发展而产生的。

一、从图像领域引入预训练思想

假设我们现在有一个任务:阿猫、阿狗、阿虎的图片各十张,然后让我们设计一个深度神经网络,通过该网络把它们三者的图片进行分类。

然而用30张图片设计一个深度神经网络基本是不可能的,因为深度学习一个弱项就是在训练阶段对于数据量的需求特别大。但是我们可以利用网上现有的大量已做好分类标注的图片。比如 ImageNet 中有 1400 万张图片,并且这些图片都已经做好了分类标注。

上述利用网络上现有图片的思想就是预训练的思想,具体做法就是:

  1. 通过 ImageNet 数据集我们训练出一个模型A
  2. 我们可以对模型 A 做出一部分改进得到模型 B(两种方法):
    1. 冻结:浅层参数使用模型 A 的参数,高层参数随机初始化,浅层参数一直不变,然后利用 30 张图片训练参数
    2. 微调:浅层参数使用模型 A 的参数,高层参数随机初始化,然后利用30 张图片训练参数,但是在这里浅层参数会随着任务的训练不断发生变化

预训练思想总结: 

对于一个具有少量数据的任务 A,我们可以先利用现有的大量数据搭建一个模型 A,再搭建一个模型B,模型B利用模型A的参数初始化后再用任务A的少量数据训练。模型B就是对应任务A的模型。

二、语言模型 

语言模型通俗点讲就是计算一个句子的概率。也就是说,对于语言序列 𝑤1,𝑤2,⋯,𝑤𝑛,语言模型就是计算该序列的概率,即 𝑃(𝑤1,𝑤2,⋯,𝑤𝑛)。

下面通过两个实例具体了解上述所描述的意思:

  1. 假设给定两句话 “判断这个词的磁性” 和 “判断这个词的词性”,语言模型会认为后者更自然。转化成数学语言也就是:𝑃(判断,这个,词,的,词性)>𝑃(判断,这个,词,的,磁性)
  2. 假设给定一句话做填空 “判断这个词的____”,则问题就变成了给定前面的词,找出后面的一个词是什么,转化成数学语言就是:𝑃(词性|判断,这个,词,的)>𝑃(磁性|判断,这个,词,的)

通过上述两个实例,可以给出语言模型更加具体的描述:

1.给定一句由 𝑛 个词组成的句子 𝑊=𝑤1,𝑤2,⋯,𝑤𝑛,计算这个句子的概率 𝑃(𝑤1,𝑤2,⋯,𝑤𝑛)

2.计算根据上文计算下一个词的概率 𝑃(𝑤𝑛|𝑤1,𝑤2,⋯,𝑤𝑛−1)。

语言模型有两个分支,分别是统计语言模型和神经网络语言模型。

 2.1统计语言模型

1.计算句子概率的公式:P(w1,w2,⋯,wn)=P(w1)P(w2|w1)P(w3|w1,w2)⋯p(wn|w1,w2,⋯,wn−1)=∏iP(wi|w1,w2,⋯,wi−1)

2.对于第二个问题可以用二元语言模型计算更简便。

二元语言模型的使用举例:

2.2 神经网络语言模型 

神经网络语言模型则引入神经网络架构来估计单词的分布,并且通过词向量的距离衡量单词之间的相似度,因此,对于未登录单词,也可以通过相似词进行估计,进而避免出现数据稀疏问题


http://www.niftyadmin.cn/n/5844900.html

相关文章

VERA: 基于视觉-语言模型的解释性视频异常检测框架

文章目录 速览摘要01 引言1.1 关键观察与研究问题1.2 我们的方法1.3 贡献 02 相关工作2.1 视频异常检测2.2 针对VLM的语言化学习 03 VERA框架3.1 视频异常检测的任务定义3.2 在VERA中通过语言化学习寻找VAD指导性问题训练目标训练数据通过学习者与优化器更新 Q Q Q学习者与优化…

2025.2.6 数模AI智能体大更新,更专业的比赛辅导,同提示词效果优于gpt-o1/o3mini、deepseek-r1满血

本次更新重新梳理了回复逻辑规则,无任何工作流,一共3.2k字细节描述。具体效果可以看视频,同时也比对了gpt-o1、gpt-o3mini、deepseek-r1-67BI,从数学建模题目解答上来看,目前我的数模AI智能体具有明显优势。 AI智能体优…

vmware ubuntu 扩展硬盘系统文件大小

首先,在VMware中添加扩展硬盘大小: 通过lsblk指令,可以看到添加的未分配硬盘大小情况: NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS fd0 2:0 1 4K 0 disk loop0 7:0 0 4K 1 loop /snap/bare/5 loop1…

Qt —— 加载百度离线地图、及简单绘图(附源码)

效果 说明 软件代码已下载了某区域的离线瓦片地图,通过百度离线api进行调用的地图效果。 源码 void PointMapTEST

第二章:QT核心机制(一)

作业 1> 手动将登录项目实现,不要使用拖拽编程 并且,当点击登录按钮时,后台会判断账号和密码是否相等,如果相等给出登录成功的提示,并且关闭当前界面,发射一个跳转信号,如果登录失败&#xf…

数据库操作与数据管理——Rust 与 SQLite 的集成

第六章:数据库操作与数据管理 第一节:Rust 与 SQLite 的集成 在本节中,我们将深入探讨如何在 Rust 中使用 SQLite 数据库,涵盖从基本的 CRUD 操作到事务处理、数据模型的构建、性能优化以及安全性考虑等方面。SQLite 是一个轻量…

ES6 Set 数据结构用法总结

1. Set 基本概念 Set 是 ES6 提供的新的数据结构,类似于数组,但成员的值都是唯一的,没有重复的值。Set 本身是一个构造函数,用来生成 Set 数据结构。 1.1 基本用法 // 创建一个空Set const set new Set();// 创建一个带有初始…

Elasticsearch 生产集群部署终极方案

Elasticsearch 集群部署 1.集群部署1.1 新增用户1.2 优化操作系统1.3 JDK1.4 elasticsearch1.5 开机自启动 2.安全认证功能2.1 生成CA证书2.2 生成密钥2.3 上传至其他节点2.4 修改属主、属组2.5 配置文件添加参数2.6 各节点添加密钥库密码2.7 设置用户密码 1.集群部署 1.1 新增…