| 第25行: |
第25行: |
| | 最初关于模型顿悟的研究大多在transformer执行模运算任务上进行<ref name="Power_grokking" /><ref name=":0">{{cite journal | author1=Nanda N | author2=Chan L | author3=Lieberum T | author4=Smith J | author5=Steinhardt J | year=2023 | title=Progress measures for grokking via mechanistic interpretability | journal=International Conference on Learning Representations (ICLR) | volume= | issue= | page= | url=https://openreview.net/forum?id=9XFSbDPmdW }}</ref>。为什么使用模运算?是因为小型算法数据集在研究神经网络泛化能力方面具有重要作用。通过在这些数据集上进行实验,可以更显著地展现神经网络的泛化能力,因为在数据有限、规则清晰的情况下,模型需要更好地理解数据中的模式和规律才能实现泛化,有助于快速验证顿悟理论和假设,加深对神经网络泛化能力的理解。 | | 最初关于模型顿悟的研究大多在transformer执行模运算任务上进行<ref name="Power_grokking" /><ref name=":0">{{cite journal | author1=Nanda N | author2=Chan L | author3=Lieberum T | author4=Smith J | author5=Steinhardt J | year=2023 | title=Progress measures for grokking via mechanistic interpretability | journal=International Conference on Learning Representations (ICLR) | volume= | issue= | page= | url=https://openreview.net/forum?id=9XFSbDPmdW }}</ref>。为什么使用模运算?是因为小型算法数据集在研究神经网络泛化能力方面具有重要作用。通过在这些数据集上进行实验,可以更显著地展现神经网络的泛化能力,因为在数据有限、规则清晰的情况下,模型需要更好地理解数据中的模式和规律才能实现泛化,有助于快速验证顿悟理论和假设,加深对神经网络泛化能力的理解。 |
| | | | |
| − | 数据集由形如<nowiki><math>a \circ b mod p = c</math></nowiki>的方程组成,其中每个元素"<nowiki><math>a</math></nowiki>"、"<nowiki><math>\circ</math></nowiki>"、"<nowiki><math>b</math></nowiki>"、"<nowiki><math>mod</math></nowiki>"、"<nowiki><math>p</math></nowiki>"、"<nowiki><math>=</math></nowiki>"和"<nowiki><math>c</math></nowiki>"均为独立标记。由于通常只有a,b三个变量,所以很多研究只关注a,b与aob的关系,<x><op><y><=><xoy>,其中op是运算符。研究者们已经在多种模运算上验证了顿悟的存在。
| + | 数据集通常由形如<math>a \circ b mod p = c</math>的方程组成,其中每个元素"<math>a</math>"、"<math>\circ</math>"、"<math>b</math>"、"<math>mod</math>"、"<math>p</math>"、"<math>=</math>"和"<math>c</math>"均为独立token。由于通常只有<math>a,b,c</math>三个变量,<math><c><=><aob><=><a><op><b></math>,其中op是运算符。研究者们已经在多种模运算上验证了顿悟的存在,下一节将给出几个典型的例子。 |
| | | | |
| | === 其他算法任务 === | | === 其他算法任务 === |
| − | '''群运算:'''Chughtai 等人<ref>{{cite journal | author1=Chughtai B | author2=Chan L | author3=Nanda N | year=2023 | title=A toy model of universality: Reverse engineering how networks learn group operations | journal=International Conference on Machine Learning (ICML), PMLR | volume= | issue= | page= | url= }}</ref>训练MLP模型在阶数为∣G∣=n的有限群上执行群组合运算,发现MLP模型表现出"顿悟"现象。模型输入为有序对 (a,b)(其中a,b∈G),训练目标是预测群元素 c=ab。值得注意的是,Nanda等人<ref name=":0" />提出的任务是该任务的特例——因为模113加法运算等价于 113阶循环群的组合运算。 | + | '''群运算:'''Chughtai 等人<ref>{{cite journal | author1=Chughtai B | author2=Chan L | author3=Nanda N | year=2023 | title=A toy model of universality: Reverse engineering how networks learn group operations | journal=International Conference on Machine Learning (ICML), PMLR | volume= | issue= | page= | url= }}</ref>训练MLP模型在阶数为<math>∣G∣=n</math>的有限群上执行群组合运算,发现MLP模型表现出"顿悟"现象。模型输入为有序对 <math>(a,b)</math>(其中<math>a, b \in G</math>),训练目标是预测群元素 <math>c=ab</math>。值得注意的是,Nanda等人<ref name=":0" />提出的任务是该任务的特例——因为模113加法运算等价于 113阶循环群的组合运算。 |
| | | | |
| − | '''n位k稀疏奇偶校验:'''这是一个典型离散搜索问题。Barak等人<ref>{{cite journal | author1=Barak B | author2=Edelman B | author3=Goel S | author4=Kakade S | author5=Malach E | author6=Zhang C | year=2022 | title=Hidden progress in deep learning: SGD learns parities near the computational limit | journal=Advances in Neural Information Processing Systems | volume=35 | issue= | page=21750–21764 | url= }}</ref>通过大量实验证明,使用标准初始化(均匀、高斯、伯努利)和标准训练(SGD)的各种神经网络架构(包括 2 层 MLP、特定设计的单神经元网络、Transformer、PolyNet),能够在训练步数接近计算极限 n^{O(k)} 的情况下,成功学习 k-稀疏 n 位奇偶函数,即从 n 个比特中找出 k 个关键比特并计算它们的异或作为标签。 | + | '''n位k稀疏奇偶校验:'''这是一个典型离散搜索问题。Barak等人<ref>{{cite journal | author1=Barak B | author2=Edelman B | author3=Goel S | author4=Kakade S | author5=Malach E | author6=Zhang C | year=2022 | title=Hidden progress in deep learning: SGD learns parities near the computational limit | journal=Advances in Neural Information Processing Systems | volume=35 | issue= | page=21750–21764 | url= }}</ref>通过大量实验证明,使用标准初始化(均匀、高斯、伯努利)和标准训练(SGD)的各种神经网络架构(包括 2 层 MLP、特定设计的单神经元网络、Transformer、PolyNet),能够在训练步数接近计算极限<math> n^{O(k)}</math> 的情况下,成功学习 k-稀疏 n 位奇偶函数,即从<math> n </math>个比特中找出 <math>k </math>个关键比特并计算它们的异或作为标签。 |
| | | | |
| | 2023年,Nanda等人<ref name=":0" />发现有限数据是顿悟现象的必要条件,而无限数据会导致模型直接泛化,并在以下三种运算中证实这一现象: | | 2023年,Nanda等人<ref name=":0" />发现有限数据是顿悟现象的必要条件,而无限数据会导致模型直接泛化,并在以下三种运算中证实这一现象: |
| 第61行: |
第61行: |
| | OpenAI团队在发现顿悟最初就对模型输出层的权重进行了可视化(使用 t-SNE),发现网络学到的符号嵌入中出现了可识别的数学结构<ref name="Power_grokking" />,例如在模加法任务中,嵌入空间中出现了圆形拓扑结构,表现出模运算的循环性质;在对称群S5任务中,嵌入空间中出现了子群和陪集的结构,显示出网络对群结构的理解。尽管输入是无内在结构的符号(如字母、数字代号),网络仍能从它们的交互中推断出结构,并形成有意义的嵌入表示,这表明神经网络不仅能记忆训练数据,还能从有限样本中归纳出抽象关系。 | | OpenAI团队在发现顿悟最初就对模型输出层的权重进行了可视化(使用 t-SNE),发现网络学到的符号嵌入中出现了可识别的数学结构<ref name="Power_grokking" />,例如在模加法任务中,嵌入空间中出现了圆形拓扑结构,表现出模运算的循环性质;在对称群S5任务中,嵌入空间中出现了子群和陪集的结构,显示出网络对群结构的理解。尽管输入是无内在结构的符号(如字母、数字代号),网络仍能从它们的交互中推断出结构,并形成有意义的嵌入表示,这表明神经网络不仅能记忆训练数据,还能从有限样本中归纳出抽象关系。 |
| | [[文件:随训练嵌入结构变化.png|缩略图|在模加法运算中,对模型的输入嵌入层在不同训练阶段的结构进行可视化,发现在泛化发生之前,嵌入点是混乱无结构的;而当泛化发生时,这些嵌入点突然形成了一个完美的圆形。]] | | [[文件:随训练嵌入结构变化.png|缩略图|在模加法运算中,对模型的输入嵌入层在不同训练阶段的结构进行可视化,发现在泛化发生之前,嵌入点是混乱无结构的;而当泛化发生时,这些嵌入点突然形成了一个完美的圆形。]] |
| − | 刘子鸣在他们的论文<ref name=":1" />里更明确地指出,泛化的发生与输入嵌入高度结构化的出现直接相关。他们发现,在玩具模型(如加法)中,这种结构表现为嵌入向量形成平行四边形结构;在模运算中,表现为圆形结构。当且仅当模型学到了这种结构,它才能进行泛化。为了精确衡量结构化程度,他们还提出了一个可量化的指标——表征质量指数(RQI )。RQI 衡量的是学习到的嵌入在多大程度上满足任务所要求的数学关系(例如,在加法中,检查有多少 <code>(i, j, m, n)</code> 四元组满足 <code>E_i + E_j = E_m + E_n</code>)。实验表明,RQI 与模型的泛化准确率高度一致,证实了结构化表征是泛化的直接原因。 | + | 刘子鸣在他们的论文<ref name=":1" />里更明确地指出,泛化的发生与输入嵌入高度结构化的出现直接相关。他们发现,在玩具模型(如加法)中,这种结构表现为嵌入向量形成平行四边形结构;在模运算中,表现为圆形结构。当且仅当模型学到了这种结构,它才能进行泛化。为了精确衡量结构化程度,他们还提出了一个可量化的指标——表征质量指数(RQI )。RQI 衡量的是学习到的嵌入在多大程度上满足任务所要求的数学关系(例如,在加法中,检查有多少 <math>(i, j, m, n)</math> 四元组满足 <math>E_i + E_j = E_m + E_n</math>)。实验表明,RQI 与模型的泛化准确率高度一致,证实了结构化表征是泛化的直接原因。 |
| | | | |
| | === 时钟和披萨算法 === | | === 时钟和披萨算法 === |
| 第93行: |
第93行: |
| | === 特征学习 === | | === 特征学习 === |
| | | | |
| − | 而从训练动力学的角度探索模型,可将神经网络的训练动态分为两个阶段,惰性训练动态和丰富的特征学习动态。在惰性训练动态阶段,网络参数 w 几乎停留在初始点 w0附近,网络行为接近一个关于参数的线性模型:网络通过初始神经切线核(NTK)提供的特征来拟合数据,此时训练相当于进行一次固定核的核回归(Kernel Regression)。随着训练推进,参数更新幅度逐渐增大,网络不再保持线性近似。这时网络不再依赖初始NTK,而是通过学习生成新的特征空间,更好地捕捉数据的结构。 | + | 而从训练动力学的角度探索模型,可将神经网络的训练动态分为两个阶段,惰性训练动态和丰富的特征学习动态。在惰性训练动态阶段,网络参数 w 几乎停留在初始点 w0 附近,网络行为接近一个关于参数的线性模型:网络通过初始神经切线核(NTK)提供的特征来拟合数据,此时训练相当于进行一次固定核的核回归(Kernel Regression)。随着训练推进,参数更新幅度逐渐增大,网络不再保持线性近似。这时网络不再依赖初始NTK,而是通过学习生成新的特征空间,更好地捕捉数据的结构。 |
| | | | |
| | 为了让训练发生从惰性到特征学习的转变,需要同时满足: | | 为了让训练发生从惰性到特征学习的转变,需要同时满足: |
| 第99行: |
第99行: |
| | * 初始特征未对齐(misaligned NTK):若初始NTK特征与任务标签方向接近,则惰性模型已能泛化,不会出现顿悟。 | | * 初始特征未对齐(misaligned NTK):若初始NTK特征与任务标签方向接近,则惰性模型已能泛化,不会出现顿悟。 |
| | * 中等规模数据集 | | * 中等规模数据集 |
| − | * 惰性初始(小步长 / 大α值):训练初期参数变化缓慢,维持线性化状态,使得网络需较长时间才过渡到特征学习阶段。 | + | * 惰性初始(小步长 / 大<math>\alpha</math>值):训练初期参数变化缓慢,维持线性化状态,使得网络需较长时间才过渡到特征学习阶段。 |
| | | | |
| | 这些条件共同导致训练曲线出现延迟分离和突然收敛的顿悟现象<ref><ref name="Kumar_grokking_dynamics">{{cite web | author1=Kumar T | author2=Bordelon B | author3=Gershman S J | author4=Pehlevan C | year=2024 | title=Grokking as the Transition from Lazy to Rich Training Dynamics | website=Twelfth International Conference on Learning Representations (ICLR) | url=https://openreview.net/forum?id=vt5mnLVIVo }}</ref>。 | | 这些条件共同导致训练曲线出现延迟分离和突然收敛的顿悟现象<ref><ref name="Kumar_grokking_dynamics">{{cite web | author1=Kumar T | author2=Bordelon B | author3=Gershman S J | author4=Pehlevan C | year=2024 | title=Grokking as the Transition from Lazy to Rich Training Dynamics | website=Twelfth International Conference on Learning Representations (ICLR) | url=https://openreview.net/forum?id=vt5mnLVIVo }}</ref>。 |