| 第265行: |
第265行: |
| | 该定义赋予“涌现”比“在某个任务上性能突增”更广的含义:它要求模型学习到对多个能力都有下游影响的结构性知识,并因此在多个任务上表现出突然的性能提升。从这个角度看,“涌现”的其实是结构,而我们观察到的是模型能力的变化,如果能通过分析那些同时出现性能跃升的任务,推测出它们之间所共享的结构,并据此设计评估指标,那么就有可能预测在一次独立训练中能力何时会突然出现。 | | 该定义赋予“涌现”比“在某个任务上性能突增”更广的含义:它要求模型学习到对多个能力都有下游影响的结构性知识,并因此在多个任务上表现出突然的性能提升。从这个角度看,“涌现”的其实是结构,而我们观察到的是模型能力的变化,如果能通过分析那些同时出现性能跃升的任务,推测出它们之间所共享的结构,并据此设计评估指标,那么就有可能预测在一次独立训练中能力何时会突然出现。 |
| | | | |
| − | Lubana等人<ref name=":Percolation" />提出一个基于渗流模型的理论框架来建模那些需要模型组合未见过的实体和描述性属性的能力的涌现过程。他们提出概念类的结构,并将概念类抽象为二分图,并将其学习过程建模为二分图上的渗流问题。在以二分图表征的大语言模型训练过程中,节点(如实体、属性等)通过边(如实体与属性的配对)连接在一起。随着训练数据和参数规模的增加,节点之间逐渐形成一个“连通子图”,一旦这个子图的规模突破某个阈值,模型就会展现出新的能力 。这一过程与渗流模型中“临界阈值”概念相似,表示模型从局部学习到全局能力的跃升。 | + | Lubana等人<ref name=":Percolation" />提出一个基于渗流模型的理论框架来建模那些需要模型组合未见过的实体和描述性属性的能力的涌现过程。他们提出概念类(concept class)的结构,将概念类抽象为二分图(concept class),并将语言学习过程建模为二分图上的渗流问题。在以二分图表征的语言模型训练过程中,节点(如实体、属性等)通过边(如实体与属性的配对)连接在一起。随着训练数据和参数规模的增加,节点之间逐渐形成一个“连通子图”,一旦这个子图的规模突破某个阈值,模型就会展现出新的能力 。这一过程与渗流模型中“临界阈值”概念相似,表示模型从局部学习到全局能力的跃升。 |
| | | | |
| | === 概念类 === | | === 概念类 === |
| | | | |
| − | “主语”和“宾语”统称为实体(entities),所有实体组成集合<math>E</math>。描述性和关系性的词语统称为属性(properties),所有属性构成集合<math>K</math>。一个概念类(concept class)被定义为一个属性子集<math>K_C \subseteq K</math>,表示属于该类的实体所具备的属性。 | + | “主语”和“宾语”统称为实体(entities),所有实体组成集合<math>E</math>。描述性和关系性的词语统称为属性(properties),所有属性构成集合<math>K</math>。一个概念类(concept class)被定义为一个属性子集<math>K_C \subseteq K</math>,表示属于该类的实体所具备的属性。从一个概念类中随机采样的两个实体,往往共享部分属性——这为训练模型提供了判断它们是否属于同一类的信号。 |
| | + | |
| | + | === 类型约束图 === |
| | + | |
| | + | 类型约束图<math>G=\left ( E,K,I \right ) </math>是一个二分图(bipartite graph),其中节点为实体集<math>E</math>与属性集<math>K</math>,边集<math>I</math>表示实体是否具备某一属性(即是否连接)。 |
| | + | |
| | + | [[文件:概念类二分图.png|无|缩略图|800x800px|各类实体与描述词、动词之间的连接关系]] |
| | | | |
| | === 数据的矩阵表示 === | | === 数据的矩阵表示 === |
| | | | |
| − | Lubana等人用概念密度矩阵来表示概念类的数据分布:矩阵的行和列分别对应实体和属性,矩阵值表示每个组合的数据密度(例如实体-描述词配对的出现频次)。
| + | 概念密度矩阵用于表示概念类的数据分布:矩阵的行和列分别对应实体和属性,矩阵值表示每个组合的数据密度(例如实体-描述词配对的出现频次)。 |
| | | | |
| | '''概率密度矩阵:'''设<math>D</math>是一个<math>\left | E \right | \times \left | K \right |</math>的矩阵,其元素为0到1之间的实数。每个元素<math>D_{ek}</math>表示实体-属性对<math>\left ( e,k \right ) </math>的密度(例如表示该特定组合的数据量),其中<math>e\in \left \{ 1,...,\left | E \right | \right \} </math>和<math>k\in \left \{ 1,...,\left | K \right | \right \}</math>分别是实体和属性的索引。 | | '''概率密度矩阵:'''设<math>D</math>是一个<math>\left | E \right | \times \left | K \right |</math>的矩阵,其元素为0到1之间的实数。每个元素<math>D_{ek}</math>表示实体-属性对<math>\left ( e,k \right ) </math>的密度(例如表示该特定组合的数据量),其中<math>e\in \left \{ 1,...,\left | E \right | \right \} </math>和<math>k\in \left \{ 1,...,\left | K \right | \right \}</math>分别是实体和属性的索引。 |
| 第293行: |
第299行: |
| | 渗流阈值对应于模型从对组合的稀疏学习转向完整表征概念类的临界点。当边数量超过阈值时,模型能够推断未见过的组合,即使这些实体-属性对未在训练数据中显式共现。模型还应能在此阈值后区分不同的概念类;在社区检测问题(如随机块模型)中,分区检测阈值与<math>p_c</math>具有相同的标度律。由于在线学习中的迭代次数增加应对应于<math>p</math>的增加(即在数据中看到更多组合),模型性能发生转变的迭代点应与<math>\sqrt{\left | E \right | \left | K \right | } </math> 成正比。 | | 渗流阈值对应于模型从对组合的稀疏学习转向完整表征概念类的临界点。当边数量超过阈值时,模型能够推断未见过的组合,即使这些实体-属性对未在训练数据中显式共现。模型还应能在此阈值后区分不同的概念类;在社区检测问题(如随机块模型)中,分区检测阈值与<math>p_c</math>具有相同的标度律。由于在线学习中的迭代次数增加应对应于<math>p</math>的增加(即在数据中看到更多组合),模型性能发生转变的迭代点应与<math>\sqrt{\left | E \right | \left | K \right | } </math> 成正比。 |
| | | | |
| − | === 语言学习中的涌现能力 === | + | === 实验验证 === |
| | + | |
| | + | Lubana等人使用形式语言构建实验系统进一步研究语言学习中的涌现能力,即在线学习场景下数据扩展引发的涌现。 |
| | | | |
| − | Lubana等人使用形式语言构建实验系统进一步研究语言学习中的涌现能力,即在线学习场景下数据扩展引发的涌现。实验使用的形式语言是最小上下文敏感的,其句法规则由上下文无关语法定义,而上下文敏感性则通过后验的类型约束实现。
| + | 在Lubana等人的实验中,训练模型执行如下三种任务: |
| | + | |
| | + | * 自由生成(Free generation):模型需生成一个完全合法的句子,即同时符合语法规则与类型约束。 |
| | + | |
| | + | * 打乱复原(Unscrambling):给定一个被随机打乱的句子 token 集合,模型需将其复原为一个合法句子。 |
| | + | |
| | + | * 条件生成(Conditional Generation):给定一组包含实体或属性的 token,模型需在生成句子时正确地使用这些 token 并保持合法性。 |
| | + | |
| | + | {| class="wikitable" |
| | + | |+ 任务示例 |
| | + | |- |
| | + | ! 任务类型 !! 输入样例 !! 输入样例 |
| | + | |- |
| | + | | 自由生成(Free) || [null] || tall man slowly walked to small library. |
| | + | |- |
| | + | | 条件生成(Cond) || [man, walked] || tall man slowly walked to small library. |
| | + | |- |
| | + | | 打乱复原(Unscr) || [library, walked, ..., to, slowly] || tall man slowly walked to small library. |
| | + | |} |
| | + | |
| | + | Lubana等人将模型的表现绘制为训练迭代次数的函数,由于实验处于一个在线学习 + 恒定步长的训练设定中,该分析等价于研究数据扩展的效果。结果如下图所示,揭示出模型学习动态中存在三个清晰的阶段。 |
| | | | |
| | [[文件:Learning.png|无|缩略图|800x800px|对结构的学习驱动能力的涌现]] | | [[文件:Learning.png|无|缩略图|800x800px|对结构的学习驱动能力的涌现]] |
| | | | |
| − | 在Lubana等人的实验中,大语言模型的学习过程分为三个阶段:
| |
| | | | |
| | '''阶段1:语法获取''' | | '''阶段1:语法获取''' |
| | | | |
| − | 模型首先学习生成合乎语法的句子(通过语法性指标衡量)。在语法性提升的同时,词元准确率开始改善。这表明模型对数据通用结构(即语法)的学习会影响其他能力的学习。
| + | 最初阶段,模型迅速学习生成符合语法规则的句子(该过程可由“语法性准确率”指标衡量),在大约 100 次迭代内,模型就能生成高度语法正确的句子。但在这一阶段,打乱复原(unscrambling)和条件生成(conditional generation)等任务的表现仍然很差。不过,正当语法性显著提升时,逐 token 准确率开始提升,表明模型对一种广义结构(即语法)的掌握,正在对其他能力的学习产生影响。 |
| | | | |
| | '''阶段2:关系性类型约束的获取''' | | '''阶段2:关系性类型约束的获取''' |
| | | | |
| | 性能提升是由那些主要需要语法正确性和关系性类型约束的句子驱动的。一旦学习到语法和关系性类型约束,模型就会学习使用它们来解决不需要描述性属性知识的输入,从而导致损失和准确性的突然提高。 | | 性能提升是由那些主要需要语法正确性和关系性类型约束的句子驱动的。一旦学习到语法和关系性类型约束,模型就会学习使用它们来解决不需要描述性属性知识的输入,从而导致损失和准确性的突然提高。 |
| | + | |
| | + | 在大约第 1000 次迭代时,模型在“关系型类型检查”上的表现突然从几乎为零跳跃至近乎完美。这一跃迁正好伴随着所有任务(尤其是自由生成任务)的损失突降。 |
| | + | 这一涌现恰好发生在模型首次达到最高语法性准确率的时间点。这表明,一旦模型学会了数据的第一个结构(语法),它很快就会学习第二个结构(关系型类型约束)。 |
| | + | 描述型约束(descriptive constraints)的表现也有所提升(因而“整体类型检查”准确率上升),但仍徘徊在略高于 0.1 的水平。 |
| | + | 因此,模型在此阶段主要依赖其语法知识,并未真正掌握描述型类型约束。 |
| | + | 在该阶段中,可以观察到打乱复原与条件生成任务的表现也突然跃升,所有评估指标均显著改善。尤其是这些任务的损失曲线也显示出再次下降的趋势(图d)。 |
| | + | 图e显示,这些性能提升主要来源于无需依赖描述约束的句子(即只需语法与关系型知识即可完成的任务)。 |
| | | | |
| | '''阶段3:描述性类型约束的学习''' | | '''阶段3:描述性类型约束的学习''' |
| | | | |
| − | 模型基于类型约束图的结构进行隐式推理,哪些属性和实体构成了有效的上下文。这个阶段的结束对应着从记忆到通用解的转变。
| + | 在第二阶段中,模型在描述类型检查上的表现几乎无增长。 |
| − | | + | 然而,随着训练继续推进,模型进入第三阶段。此阶段以表现增长率的斜率突变为边界特征,表现为描述型类型检查的准确率从饱和区突然转为与 log(数据量/迭代数) 成正比的增长。 |
| − | 其研究基于物理学和复杂系统等领域的相变现象提出了神经网络能力涌现的现象学定义——在涌现点模型会获取对特定能力学习至关重要的通用结构;这些结构的掌握进而导致多项任务性能的突然提升。通过与相变现象的类比,该模型强调语法性和类型约束在此充当序参量,能够近似预测任务性能突跃的时间。研究人员进一步通过形式语言学习任务验证了这一观点:模型先学习语言的两大基础结构(语法和类型约束),随后在数据中观察到具体任务的性能提升。
| + | 随后不久,可以观察到打乱复原与条件生成任务也出现类似增长趋势。这说明在本阶段,模型终于开始学习并利用描述性约束来提升更复杂任务的性能。 |
| | + | 通过放大图中的曲线,可以观察到在这些任务上仍存在一个微小但清晰的损失跳跃。 |
| | + | 考虑到此时模型仅接受了约 10⁴ 次迭代训练,而实体-属性组合的训练样本只覆盖了 15% 左右(即 p=0.15),那么模型最高只能获得约 15% 的表现(这与实际观察相符),理论最大也不超过 20%。 |
| | + | 然而我们观察到该任务最终可达到 30–35% 的准确率,说明模型已经超越记忆性学习,开始泛化出新的实体-属性配对。 |
| | + | 若模型仅靠记忆,它无法在未见过的配对上表现良好。因此可以说明模型正在根据类型约束图的结构,隐式地推理哪些实体和属性可以共同出现。 |
| | + | 这表明第二阶段主要以“记忆”为主,而第三阶段标志着从记忆式解决方案向泛化式解决方案的过渡。 |
| | | | |
| | =总结= | | =总结= |