微软GFPO:有效减少思考膨胀问题,system2也可以很自信

《Sample More to Think Less: Group Filtered Policy Optimization for Concise Reasoning》 解决大语言模型在通过强化学习(RL)提升准确率时,普遍存在的“响应长度膨胀”问题。作者指出,许多模型为了追求更高的分数,会生成大量冗长、重复的“填充”性文本,这在推理时造成了不必要的计算浪费。为解决此问题,论文提出了GFPO (Group Filtered Policy Optimization,组过滤策略优化)。其核心思想:在训练阶段“想得更多”,通过采样更大的响应组,并根据响应长度和**token效率(每token奖励)**这两个关键指标进行过滤,只在最优的样本上进行训练,从而教会模型在推理(测试)阶段“想得更少”,生成更简洁的回答。在多个STEM和编程基准测试中,长度膨胀减少了46-85%,同时保持了准确率。此外,自适应难度GFPO (Adaptive Difficulty GFPO),它能根据问题的实时难度动态分配训练资源,实现了效率与准确性的更优平衡。 用一次性的训练时间计算,换取持续的、部署时的推理时间计算节省,这为高效推理模型的开发提供了极具价值的新思路。 Group Filtered Policy Optimization GFPO的核心思想是:与其在所有生成的响应上进行无差别训练,不如引入一个“过滤”步骤,有选择性地学习。其关键流程被拆解为: 1)扩大采样:对每个问题,从当前策略中采样一个比GRPO更大的响应组$\mathcal{G}=\{o_{1},...,o_{G}\}$。 2)度量与排序:根据一个用户指定的度量函数(如响应长度、token效率等),对组内所有$G$个响应进行评分和排序。 3)拒绝采样与筛选:只保留排序后最优的$k$个响应,形成子集$\mathcal{S}$(其中$k < G$)。这个过程通过一个二进制掩码$m \in \{0,1\}^G$来实现,被选中的响应$m_i=1$,被拒绝的$m_i=0$。 4)修正优势计算:这是最关键的一步。优势值的计算只在被选中的子集$\mathcal{S}$内部进行。其公式被定义为:$\hat{A}*{i,t}^{(m)}=\frac{R(q,o*{i})-\mu_{S}}{\sigma_{S}}m_{i}$。其中,$\mu_S$和$\sigma_S$分别是子集$\mathcal{S}$的奖励均值和标准差。对于被拒绝的响应($m_i=0$),它们的优势值被直接置为零,因此它们对策略更新的梯度贡献也为零。模型只从那些“表现出期望属性”(如简洁)的样本中学习如何获得高奖励。 GFPO变体: token效率GFPO (Token Efficiency GFPO):它使用的过滤指标不是纯粹的长度,而是奖励与长度的比率 (reward/length)。这鼓励模型生成“性价比”高的响应,允许在获得足够高奖励的前提下产生较长的回答,从而追求简洁与效果的平衡。 自适应难度GFPO (Adaptive Difficulty GFPO):这是一个更智能的策略。它首先通过样本的平均奖励来实时估计问题的难度,然后动态地调整保留的样本数量$k$。对于简单问题,它采用更激进的过滤(更小的$k$)来强制模型简洁;对于难题,它保留更多的样本(更大的$k$)以鼓励充分探索。 将优势函数中的基线计算范围从整个样本组(G)缩小到经过筛选的子集(S),并将被拒绝样本的优势直接清零。这是一个极其简洁而强大的干预手段。它没有去设计复杂的惩罚项,而是让不符合期望的样本在梯度更新中“沉默”,从而以一种非常高效和直接的方式引导策略的优化方向。 实验分析 模型与基线方面,使用仅经过监督微调(SFT)的Phi-4-reasoning作为基础模型,并与经过标准GRPO训练的Phi-4-reasoning-plus进行对比,确保了比较的公平性。数据集方面,虽然训练集包含7.2万个数学问题,但作者特意限制模型在100个训练步内只看到6400个问题,这与基线的训练量完全一致,从而排除了数据量差异带来的影响。奖励函数的设计是加权的准确率和n-gram重复惩罚,值得注意的是,这个奖励函数本身已经包含了对长度的惩罚,但作者在引言中已论证其不足以抑制GRPO的长度膨胀,这反过来加强了GFPO方法的必要性。 本章最重要的贡献之一是定义了关键评估指标——超额长度缩减率 (Excess Length Reduction, ELR),其公式为:$ELR=\frac{L_{GRPO}-L_{GFPO}}{L_{GRPO}-L_{SFT}}$。这个指标衡量的是GFPO在多大程度上“抵消”了由GRPO训练所引入的额外长度。例如,100%的ELR意味着GFPO将响应长度完全恢复到了SFT基线的水平。这是一个比单纯比较绝对长度更具洞察力的指标,因为它精确地量化了新方法对“问题”(即长度膨胀)的解决程度。在组规模设置上,作者将GFPO的采样组规模G设置为8、16、24,但保留的组规模k始终小于等于8,以确保其接收的策略梯度信号数量与GRPO基线(G=8)相当,这是一个严谨的实验设计,旨在公平地隔离出“过滤”这一操作本身的效果。 结果分析 GFPO能否在保持准确率的同时,有效抑制响应长度的膨胀?其不同变体和参数(如$k$和$G$)的效果如何?作者通过在多个标准数学和代码推理基准(AIME 24/25, GPQA, Omni-MATH, LiveCodeBench)上评估三种GFPO变体(Shortest k/G, Token Efficiency, Adaptive Difficulty),得出了一系列强有力的结论。 首先,实验明确了**“想得更少,需要采得更多”**。仅在与GRPO相同的组规模内进行子采样(如Shortest 6/8),长度缩减效果微乎其微。必须扩大初始采样池(即增大$G$),才能为过滤提供足够多的优质(短)候选。其次,保留率 (k/G) 是控制长度的关键杠杆,降低保留率能有效缩短响应长度。 在所有变体中,token效率 (Token Efficiency) GFPO 表现最为亮眼,它在所有任务上都实现了最大幅度的长度缩减(高达70.9%-84.6%),同时统计上并未显著降低准确率,证明了“每token奖励”是比纯长度更优的简洁性度量。自适应难度 (Adaptive Difficulty) GFPO 则展示了其智能性,在与固定k值方法计算成本相当的情况下,它通过动态分配探索预算(即k值),在多个基准上取得了更优的长度-准确率平衡。 ...

August 14, 2025 · 小茄墩

苹果开源超大规模Embedding交互可视化工具

《apple/embedding-atlas》 《EMBEDDING ATLAS: Low-Friction, Interactive Embedding Visualization》 现有的高维数据可视化工具(Embedding Visualization Tools)在使用上存在很多“摩擦点”,比如数据处理繁琐、扩展性差、无法与其他分析流程顺畅结合等,这大大降低了用户使用这些工具探索数据的意愿和效率。为了解决这些问题,论文提出了一款名为EMBEDDING ATLAS的新工具。该工具旨在提供一种“低摩擦”的交互式体验,让用户能尽可能轻松地探索大规模高维数据。它的关键做法是利用了现代网页技术(如WebAssembly)、高效算法(如基于密度的聚类和自动标签)以及强大的后端支持,从而实现了在浏览器中就能快速、流畅地分析数百万个数据点,并且该工具是开源的,方便社区在此基础上进行二次开发和研究。 3. EMBEDDING ATLAS 特性 首先,通过一个分析约20万条红酒评论的实例,生动地展示了用户(数据分析师ROBIN)如何通过简单的拖拽文件、点击选择,就能自动完成数据嵌入、降维、聚类和可视化,并结合价格、产地等元数据进行交互式探索,最终还能将筛选出的数据子集方便地导出。这体现了其“低摩擦”的设计理念。接着,文章提炼了8大核心特性(F1-F8):F1,实现了对海量数据的快速交互式渲染;F2,提供了嵌入视图、图表、表格等多种视图的协同联动;F3,能自动对数据进行聚类并生成标签;F4,支持通过密度等高线图来快速识别数据分布的疏密;F5,可以实时搜索并查找任何数据点的近邻;F6,提供了可选的在浏览器内直接计算向量和降维的功能,免去了环境配置的麻烦;F7,支持从本地或Hugging Face等多种来源灵活导入标准格式的数据;F8,具备高度的可扩展性,可以在网页、Python Notebook、命令行等多种环境中使用。此外,还介绍了很多“提升使用体验”的设计细节,比如避免颜色混合顺序影响视觉效果的“顺序无关透明度”技术、基于密度快速生成聚类标签的算法、以及自动处理空值和无穷值的智能图表等。在实现层面,其关键是利用了Mosaic框架和DuckDB数据库技术,使得大规模数据的复杂查询和过滤能直接在浏览器中通过WebAssembly高效执行,而无需后端服务器支持;可视化渲染则采用了先进的WebGPU技术,保证了流畅的交互体验。 4. 评估 (EVALUATION) 评估部分从两个方面证明了EMBEDDING ATLAS的先进性。第一部分是“竞争性分析”,作者们将EMBEDDING ATLAS的8个核心特性与其它5个主流工具(WizMap, Nomic Atlas, DataMap Plot, Latent Scope, Embedding Projector)进行了逐一对比。结果(如表格1所示)清晰地表明,虽然大多数工具都能处理大规模数据(F1),但很少有工具能像EMBEDDING ATLAS一样,全面支持与元数据的多视图协同分析(F2)、丰富的自动化数据探索功能(F3-F5)、灵活的部署和扩展性(F6, F8)。这凸显了EMBEDDING ATLAS在功能完整性和易用性上的巨大优势。第二部分是“渲染性能”测试,通过实验展示了该工具在渲染不同数量的数据点时的性能表现(即每秒帧数FPS)。结果令人印象深刻:在处理高达400万个点时,依然能保持60fps的流畅度,即使用户处理超过1000万个点,也能维持在25fps,这远超出了许多传统工具的能力范围。这项测试有力地证明了其技术架构在处理海量数据时的卓越性能和可扩展性。

August 13, 2025 · 小茄墩

Anthropic最新研究:大模型中的人格向量

《Persona vectors: Monitoring and controlling character traits in language models》 大型语言模型常常会表现出类似人类的“个性”,但这些个性非常不稳定,有时会突然变得很奇怪甚至有害,比如微软的聊天机器人“Sydney”突然对用户示爱并进行威胁,或者xAI的Grok自称为“机械希特勒”。这些问题的根源在于我们不清楚模型内部的神经网络是如何形成这些“人格特质”的。为了更精确地控制模型的行为,研究者们提出了一种叫做“人格向量”的新技术。这篇论文的关键启发在于,它提出我们可以在模型的神经网络内部,识别出一些特定的活动模式,这些模式就像人脑在体验不同情绪时被“点亮”的区域一样,直接控制着模型的性格特点。通过监控、抑制这些向量,或者利用它们来筛选训练数据,我们就能更科学、更精确地控制人工智能,确保它们的行为符合我们的预期。 如何提取人格向量 提取人格向量的做法是找到并量化模型在表现特定人格(如“邪恶”)与不表现该人格时,其内部神经网络活动的“差异”。 首先,研究人员为一种人格特质(比如“邪恶”、“谄媚”或“产生幻觉”)下一个清晰的定义。然后,他们建立一个自动化流程,该流程能自动生成大量引导性的问题(prompts),一部分问题旨在激发模型产生“邪恶”的回答,另一部分则引导其产生“不邪恶”的正常回答。当模型回答这两类问题时,研究人员会记录下其内部神经网络的激活状态数据。最关键的一步是,他们通过计算这两组激活状态数据的平均差异,从而得出一个特定的方向向量,这个向量就被定义为控制该人格的“人格向量”。为了验证这个向量真的有效,他们还采用了名为“引导”(steering)的技术,即在模型生成回答时,人为地将这个“邪恶”向量注入到模型的计算过程中,结果发现模型果然开始说一些不道德的话,这证明了他们找到的向量与模型的行为之间存在直接的因果关系。 人格向量的应用 这部分详细阐述了人格向量的三个强大用途,每个用途都提供了一套可操作的解决方案。 1. 在模型部署后监控其人格变化: 这里的关键做法是将人格向量作为一个“监测器”。模型在与用户互动或长期运行中,其性格可能会慢慢改变。通过持续测量特定人格向量(比如“谄媚”向量)的激活强度,我们就能实时了解模型当前的“精神状态”。如果“谄媚”向量的激活值突然升高,就意味着模型可能在说一些奉承话,而不是提供客观直接的答案。论文中的图表演示了这一做法的有效性:研究人员用不同强度的引导性指令(从抑制到鼓励特定人格)来测试模型,发现人格向量的激活强度(图中的x轴)能准确预测模型接下来是否会表现出对应的人格。这个监测是发生在模型生成回答之前的,因此具有预测性,可以提前预警。 2. 在训练中减弱不期望的人格变化: 这一部分最具启发性的做法是提出了一种类似“给模型打疫苗”的创新方法来防止模型在训练中学坏。研究者发现,用一些看似无害但有问题的数据库(比如包含错误答案的数学题集)来训练模型,有时会意外地让模型变得“邪恶”或“谄媚”。传统的做法是等模型训练完了,再通过反向引导来抑制坏的人格,但这样做会损害模型的智能水平。而创新的“预防性引导”(Preventative Steering)则反其道而行之:在训练过程中,主动地、轻微地向模型注入不期望的人格向量(比如注入一点“邪恶”向量)。这样做的逻辑是,通过人为地提供这种人格信号,模型就不再需要通过改变自身网络结构来适应训练数据中的“邪恶”内容,因为它已经“满足”了数据带来的压力,从而避免了将这种坏特质固化下来。实验证明,这种“疫苗”方法既能有效防止模型学坏,又几乎不影响其在通用能力(如MMLU基准测试)上的表现。 3. 标记有问题的训练数据: 这个应用的关键做法是利用人格向量作为“数据审查工具”,在训练开始前就预测出某个数据集可能带来的负面影响。具体来说,他们通过分析训练数据中的每个样本会如何激活特定的人格向量,来计算一个“投射差异”(projection difference)值,这个值可以估算出该样本在多大程度上会增强模型的某种人格。研究人员用一个包含一百万个真实用户对话的大型数据集(LMSYS-Chat-1M)验证了此方法。他们筛选出能高度激活“谄媚”向量的样本、低度激活的样本和随机样本,然后分别用这三组数据去训练模型。结果证明,用“高激活”数据训练出的模型果然最谄媚,反之亦然。更有价值的是,这个方法能识别出一些人类或普通语言模型都难以察觉的“有毒”数据,比如发现某些请求角色扮演的对话会增强模型的谄媚倾向。 结论 像Claude这样的大型语言模型被设计为有益、无害和诚实的,但它们的个性有时会出问题。人格向量这项技术为我们提供了一个强有力的工具,让我们能够理解模型个性的来源,监控它们如何随时间变化,并更有效地进行控制。这不仅仅是一种理论,更是一套可行的技术方案,旨在确保人工智能的发展始终与人类的价值观保持一致,这对构建更安全、更可靠的人工智能系统至关重要。

August 12, 2025 · 小茄墩

强化学习的各种方法还可比吗?

《Part I: Tricks or Traps? A Deep Dive into RL for LLM Reasoning》 它揭示了当前“用强化学习提升大模型推理能力”这个领域充满了各种看似高深但又相互矛盾的技术,让实践者感到困惑。作者没有提出更复杂的新算法,而是返璞归真,在一个统一、开源的框架下对现有流行技术(所谓的“tricks”)进行了系统性的独立评估。他们最大的发现是,一个仅包含两种基本技术的极简组合“Lite PPO”,在提升基础模型(非对齐模型)的推理能力上,其性能竟然稳定超过了那些集成了五六种复杂技术的GRPO和DAPO等主流算法。这启发我们,在应用强化学习时,不应盲目堆砌技术,而应深入理解每个技术的核心作用,并根据具体场景(如模型类型、数据难度)做出明智选择,有时候“少即是多”。 当前研究领域的“混乱现象”及其背后的可能原因。例如,有的研究(GRPO)说“组级归一化”好,有的(REINFORCE++)则认为“批次级归一化”更优;有的算法在归一化时使用方差,有的却建议去掉方差以避免“难度偏见”。这种矛盾让从业者无所适从。作者认为,造成这种现象的根本原因在于各研究的实验设置、训练数据和初始模型千差万别,导致结论缺乏可比性。因此,本章启发我们,在评估或应用一个新技术时,必须高度关注其“实验背景”,并提出了一个关键问题引导后续研究:现有技术各自适用于什么场景?是否存在一个简单普适的组合来稳定地优化模型策略? 实验设计 统一框架: 所有实验都在一个开源的ROLL框架下进行,避免了因不同实现方式带来的差异。 多维度模型: 实验覆盖了不同尺寸(Qwen3-4B, 8B)和不同类型(Base基础模型 vs. Aligned对齐模型)的模型。这使得结论更具普适性,能够揭示技术对不同模型的敏感度。 分级数据: 使用了开源数据集,并创新性地将其划分为“简单”、“中等”、“困难”三个等级。这使得分析技术在不同难度任务下的表现成为可能,增加了研究的深度。 通过初步的基线实验,他们还发现了一个有趣的现象:对齐模型虽然起点高,但通过强化学习提升有限;而基础模型潜力巨大,更适合作为评估RL技术效果的“试金石”。 分析 4.1 归一化 (Normalization): 归一化的核心作用是稳定梯度,但如何归一化大有讲究。 启发1 (组级 vs. 批次级): “组级归一化”通常更稳定,因为它只在同一问题的多个答案间比较,不易受全局数据分布影响。而“批次级归一化”在奖励分布倾斜时容易崩溃,但若奖励范围拉大(如从{0, 1}变为{-1, 1}),它又能恢复效果。这表明归一化方法对奖励机制非常敏感。 启发2 (标准差的作用): 在简单任务中,模型输出的答案奖励可能高度一致(全对或全错),导致奖励的“标准差(std)”趋近于零。此时若用标准差去做分母进行归一化,会导致优势值被无限放大,引发梯度爆炸。因此,在这种场景下,去掉标准差项,仅用均值做中心化,反而能让训练更稳定。 启发3 (鲁棒的组合方式): 作者最终发现了一个更稳健的组合:使用“组级”的均值来计算奖励的相对好坏,同时使用“批次级”的标准差来进行缩放。这种“局部均值、全局标准差”的混合模式,既利用了组内比较的精确性,又通过全局标准差避免了因局部标准差过小而引发的不稳定问题。 4.2 更高上限的裁剪 (Clip-Higher): 这是对PPO中裁剪机制的改进。 启发4 (适用场景): 提高裁剪上限(如从0.2到0.28)主要对对齐模型(instruct model)有效。因为对齐模型本身推理能力较强,放宽更新限制能鼓励它探索更多样的解题路径,缓解“熵坍塌”(模型思维固化)。而基础模型由于探索能力本就较弱,放宽限制也难有作为,甚至会起反作用。 启发5 (语言学视角): 标准的裁剪会过度压制“therefore”、“if”等逻辑连接词的生成概率,因为这些词往往是开启新推理路径的关键,其概率变化较大。而提高裁剪上限则给予了模型更多使用这些连接词的自由,让推理结构更多样化。这揭示了超参数背后对模型生成内容风格的深远影响。 启发6 (参数的“缩放定律”): 对于小模型(4B),裁剪上限越高,性能似乎越好,呈现出一种“缩放”关系。但对于大模型(8B),这种关系消失了,存在一个最佳值(如0.28)。这提醒我们超参数的设置并非能简单地随模型尺寸线性缩放。 4.3 损失聚合 (Loss Aggregation): 启发7 (Token级 vs. 序列级): 这两种聚合方式的选择也依赖于模型类型。Token级损失(每个token贡献等同)更适合基础模型,因为它能确保模型从每个token中学到东西,这对于从零开始学习推理至关重要。而序列级损失(每个完整答案贡献等同)更适合对齐模型,因为它能更好地保持高质量答案的整体逻辑连贯性,避免因个别token的优化而破坏整体结构。 4.4 超长过滤 (Overlong Filtering): ...

August 12, 2025 · 小茄墩

深度解析 Attention Sinks 究竟为啥有效?

《How Attention Sinks Keep Language Models Stable》 语言模型在处理长对话时之所以会“崩溃”,是因为当为了节省内存而移除最开始的几个token时,模型会失去稳定性。研究者发现,模型会将大量的注意力“倾倒”在最初的几个token上,把它们当作“注意力池”,用来存放那些无处安放的注意力(因为Softmax函数强制要求所有注意力权重加起来等于1)。基于此,作者提出了StreamingLLM方案,即永久保留最初的4个token,其余部分则正常使用滑动窗口,从而让模型能稳定处理超过400万个token的超长文本。这一机制已被OpenAI、HuggingFace和英伟达等公司采纳。OpenAI在其最新的开源模型中,通过为每个注意力头增加一个可学习的标量$b$来实现类似功能,其公式为:$a_i' = softmax(q_i^T K + b)$。这个简单的改动,让模型在必要时可以选择“不关注任何token”,其设计思想正是源于这项研究。 流式处理的挑战与意外发现 者在2023年暑期实习时面临一个根本性问题:如何让大模型处理超出其预训练长度的对话?直接的方案是使用“滑动窗口”,即只保留最近一部分token的键值缓存(KV Cache),丢掉最旧的。这种方法虽然高效,但实验结果却出乎意料地失败了。一旦最开始的几个token(哪怕只是一个起始符或“the”之类的普通词)被从缓存中移除,模型的困惑度(Perplexity)就会急剧飙升,输出的文本瞬间变得语无伦次。这个现象令人费解,因为这些初始token在语义上似乎并不重要,但移除它们却导致了灾难性的后果,这激发了作者深入探究其背后原因的好奇心。 “注意力池”的发现与数学原理 为了解开谜团,作者对Llama-2等模型的注意力分布进行了可视化分析,结果发现了一个惊人的固定模式:在模型的多数层中,无论当前模型在预测哪个词,总有大量的注意力会“回头看”,集中在序列最开始的几个token上。这种行为让作者联想到了图论中的“汇点”(Sink Node),即一个只进不出的节点。这些初始token就像汇点一样,吸收了来自序列中其他位置的注意力,因此作者将其命名为“注意力池”(Attention Sinks)。其背后的数学原理源于Transformer架构的核心——Softmax函数:$softmax(z)_i = \frac{e^{z_i}}{\sum_{j=1}^{K} e^{z_j}}$。这个函数有一个硬性约束:$\sum_{i=1}^{n} w_i = 1.0$,即所有注意力权重之和必须等于1。这意味着注意力机制不能“弃权”,必须把注意力分配到某个地方。当一个注意力头找不到特别相关的上下文时,它就会把这份“预算”投向那些因在训练中频繁出现而具有轻微偏见的初始位置,这些位置逐渐演变成专门存放闲置注意力的“泄压阀”。 问题的症结与简单的解决方案 这个发现让之前滑动窗口失败的原因豁然开朗。当移除初始token时,我们不只是丢掉了旧的上下文,而是破坏了Softmax函数分母中的一个重要部分,从而摧毁了模型维持注意力稳定的基础机制。解决方案因此变得异常简单:既然模型如此依赖这些注意力池,那我们就永远不要丢掉它们。作者提出的StreamingLLM方法,就是对传统KV缓存管理做了一个微小但关键的修改:永久保留最开始的4个“池”token,同时对其余内容使用滑动窗口。这个简单的改动带来了惊人的效果,像Llama这样原本处理几千个token就崩溃的模型,现在可以在超过400万个token的长度上保持稳定的低困惑度,实现了近乎无限长度的文本生成。 注意力池数量的探究与预训练实验 为什么恰好需要保留4个注意力池?为了回答这个问题,作者进行了一项预训练实验。他们从头训练了两个模型,一个采用标准方式,另一个则在每个训练样本的开头都加入了一个专门的[SINK](池)token。结果揭示了一个深刻的现象:标准模型在流式处理时需要保留大约4个初始token才能稳定,因为它是在“挪用”普通内容token作为隐式的注意力池;而被投喂了专用[SINK]token的模型,在流式处理时只需要保留这1个专用的池token就足够了,而且其训练收敛效果甚至更好。这个实验证明,模型天生就需要注意力池这个功能,并且可以通过预训练让它更高效地学会使用一个专门设计的“池”,而不是临时征用多个内容token。 两种实现路径:StreamingLLM与OpenAI的设计对比 OpenAI的实现代表了解决同一问题的不同思路。作者的StreamingLLM方法是在序列开头设置一个专门的、可学习的池token $k_0$,其注意力计算方式为:$Attention(q_i, K) = softmax(q_i^T K_c, q_i^T k_0)$,其中$K_c$是内容token。而OpenAI则采用了一个更简洁的通用标量方法:$a_i' = softmax(q_i^T K + b)$`。两者的核心区别在于:StreamingLLM的设计允许不同token与“池”建立不同的关系(更具表达性),而OpenAI的设计则将“池”视为一个对所有token都一样的通用“逃生通道”(更简洁)。这体现了两种不同的设计哲学:一个是将“池”视为一个可学习的组件,另一个则是将其作为一种架构上的必需品。 注意力池的科学解释与实际应用 有研究表明,注意力池可以充当“泄压阀”,防止深度模型在处理长序列时出现“信息过度混合”(over-mixing)的病态现象,即不同token的表征变得模糊不清。注意力池通过吸引注意力,限制了信息和噪声的过度传播,从而使模型更稳健。这一效应在LLaMA 3.1 405B这样的大模型中尤为明显,其80%的注意力头都表现出注意力池现象。另一项研究则指出,如果用不要求权重和为1的其他注意力操作替换Softmax,注意力池现象就会消失,这从根本上证实了其与Softmax归一化约束的直接关系。这些理论洞见也催生了实际应用,例如CushionCache技术利用精心设计的注意力池前缀来平滑激活峰值,从而改善模型的量化效果。这也让人推测,OpenAI模型内置的注意力池机制,可能是其能够实现激进的4-bit量化的关键技术之一。 从研究到现实:一个思想的快速演进 这个始于实习期工程难题的研究,最终演变成了对Transformer架构的深刻洞见。从2023年10月英特尔集成StreamingLLM,到12月HuggingFace和苹果手机上的演示,再到2024年1月英伟达TensorRT-LLM的采纳,最后到2025年8月OpenAI开源内置注意力池的模型,这项技术在不到两年的时间里迅速从学术论文走向了全行业的主流应用。这个故事告诉我们,有时重大的科学发现并非源于宏大的理论突破,而是来自于对那些被他人忽视的、微小而奇特现象的刨根问底。通过质疑几个看似无意义的token为何如此重要,作者团队揭示了一个隐藏在所有Transformer模型中、至关重要的底层机制。

August 12, 2025 · 小茄墩

Qwen团队:GSPO算法

《Group Sequence Policy Optimization》 稳定、高效地训练大语言模型。与以往算法在单个token层面计算重要性比例不同,GSPO 在整个序列的似然度(sequence likelihood)基础上定义重要性比例,并在序列级别上进行裁剪、奖励分配和优化。研究表明,GSPO相比于GRPO算法,在训练效率和模型性能上都表现更优,并且显著稳定了混合专家(MoE)模型的强化学习训练过程,还有简化强化学习基础设施的潜力。这些优点最终促成了最新的Qwen3模型的显著性能提升。 预备知识 理解GSPO所需要的基础知识。用 $\pi_{\theta}$ 表示自回归语言模型策略,x代表问题(query),y代表回答(response)。然后回顾了两种关键的现有算法。一是“近端策略优化”(Proximal Policy Optimization, PPO),它通过裁剪机制将策略更新限制在旧策略附近,其目标函数为 PPO的主要挑战是严重依赖一个与策略模型大小相当的价值模型(value model),这带来了巨大的计算和内存开销,而且价值模型的可靠性难以保证 。二是“群体相对策略优化”(Group Relative Policy Optimization, GRPO),它通过计算同一问题下多个回答之间的相对优势,从而绕开了对价值模型的需求。GRPO的目标函数为 其中优势函数 $\hat{A}_{i,t}$ 是通过将单个回答的奖励与一组回答的平均奖励进行比较得出的。 动机 在进行大规模RL训练时,为了充分利用硬件,通常需要很大的批次大小(batch size),并通过多轮小批次(mini-batch)更新来提高样本效率,这就引入了off-policy学习的场景,即用于优化的数据来自于旧策略 $\pi_{\theta_{old}}$ 而非当前策略 $\pi_{\theta}$ 。尽管PPO和GRPO中的裁剪机制是为了应对这种偏离,但作者指出GRPO的目标函数存在一个更根本的设计缺陷。这个缺陷源于对重要性采样权重的不当使用 。重要性采样的原理 $E_{z\sim\pi_{tar}}[f(z)]=E_{z\sim\pi_{beh}}[\frac{\pi_{tar}(z)}{\pi_{beh}(z)}f(z)]$ 要求通过对多个样本的加权平均来修正分布差异。然而,GRPO在每个token(token)级别上应用权重$\frac{\pi_\theta\left(y_{i, t} \mid x, y_{i,

July 25, 2025 · 小茄墩

Gemini 2.5 Pro 制胜 IMO 的提示词全解析

《Gemini 2.5 Pro Capable of Winning Gold at IMO 2025》 整个流程被分解为以下6步: 步骤 1:生成初始解决方案; 步骤 2:自我改进; 步骤 3:验证解决方案并生成错误报告; 步骤 4:审查错误报告; 步骤 5:根据错误报告修正或改进解决方案; 步骤 6:接受或拒绝。 作者发现模型存在“思考预算”(即token限制),一次性生成完整复杂的证明非常困难。因此,他们让模型先生成初步解答,再让它自己“审阅和改进”,这相当于给了模型第二次机会和额外的思考预算来深化推理,这是一个非常实用的技巧。 其次,验证者的设计至关重要。它被指令扮演一个极其严格的IMO阅卷人,其任务不是修正错误,而是找出所有问题。最巧妙的做法是将问题分为两类:“关键错误”(Critical Error)和“论证缺陷”(Justification Gap)。如果发现关键错误,该证明路径就被中止;如果只是论证不够严谨,验证者会**“假设此步骤结论为真”**,然后继续检查后续逻辑。这种做法能够最大化地利用部分正确的证明,避免因小瑕疵而全盘放弃。同时,流程中还包括了审查(步骤4),以纠正验证者自身可能犯的错误,最终一个解法需要连续通过5次验证才被接受,确保了结果的高度可靠性。 实验设置 在参数上,他们选择低“温度” (temperature=0.1),以减少模型输出的随机性,确保逻辑的稳定性;同时用满了模型的“思考预算” (32768 tokens),给予模型最充分的思考空间。 初始解题提示词(Step 1 Prompt):核心指令是**“严谨性至上”(Rigor is Paramount)**,明确告诉模型“逻辑错误的正确答案等于失败”。它还引导模型,如果无法得出完整解,就必须诚实地只提交自己能严格证明的“部分成果”,并给出了“部分成果”的定义(如证明一个关键引理)。这种设计极大地抑制了模型的幻觉和猜测行为。 Step 1 Prompt 核心指令 严谨至上:您的首要目标是产出完整且经过严谨论证的解法。解法中的每一步都必须逻辑严密、解释清晰。任何基于有缺陷或不完整推理得出的正确最终答案,均视为失败。 对完整性保持诚实:如果您无法找到完整的解法,绝不能猜测或编造看似正确但包含隐藏缺陷或论证空白的解法。您只应呈现能严格证明的重要部分结果。若一个部分结果代表了向完整解法迈出的实质性进展,则该结果被认为是重要的。例如: 证明一个关键引理。 在一个逻辑严密的分类讨论证明中,完全解决一个或多个案例。 确立问题中数学对象的某一关键属性。 对于优化问题,证明一个上界或下界,而无需证明该界限是可达的。 为所有数学内容使用 TeX: 所有数学变量、表达式和关系式都必须用 TeX 分隔符包围(例如:‘ Let $n$ be an integer .)。 输出格式 您的回复必须严格按照以下确切顺序,结构化为下列部分。 摘要 提供您研究结果的简明概述。此部分必须包含两个部分: a. 定论:清楚说明您是找到了完整的解法,还是部分解法。 对于完整的解法:陈述最终答案,例如:“我已成功解决该问题。最终答案是……” 对于部分解法:陈述您能够严格证明的主要结论,例如:“我未能找到完整的解法,但我已严格证明……” b. 方法简述: 呈现您解法的高层次概念性大纲。该简述应能让专家在不阅读完整细节的情况下理解您论证的逻辑流程。它应包括: ...

July 23, 2025 · 小茄墩

当今旗舰开源大语言模型架构大比拼

大语言模型架构大比拼 图 1:本文所涵盖的部分架构。 自最初的 GPT 架构开发以来,已经过去了七年。乍一看,回顾 GPT-2(2019 年)并展望 DeepSeek-V3 和 Llama 4(2024-2025 年),人们可能会惊讶于这些模型在结构上仍然如此相似。当然,位置嵌入已从绝对位置嵌入演变为旋转位置嵌入(RoPE),多头注意力(Multi-Head Attention)已在很大程度上让位于分组查询注意力(Grouped-Query Attention),而更高效的 SwiGLU 也取代了像 GELU 这样的激活函数。但在这些微小的改进之下,我们是否真正看到了突破性的变化,还是我们仅仅在打磨相同的架构基础? 比较大语言模型以确定促成其良好(或不那么好)性能的关键因素是出了名的困难:数据集、训练技术和超参数差异巨大,且通常没有详细记录。然而,我认为,审视架构本身的结构性变化,看看大语言模型开发者在 2025 年都在做些什么,仍然具有很大的价值。(图 1 中展示了其中的一部分。) 所以,在本文中,我不会着重介绍基准性能或训练算法,而是将焦点放在定义当今旗舰开源模型的架构发展上。 1. DeepSeek V3/R1 1.1 Multi-Head Latent Attention (MLA) 所以,GQA 的核心思想是通过在多个查询头之间共享键头和值头,从而减少其数量。这样做有两点好处:(1) 降低了模型的参数量;(2) 减少了推理过程中键张量和值张量的内存带宽占用,因为需要从 KV 缓存中存储和检索的键和值变少了。 虽然 GQA 主要是一种旨在提升 MHA 计算效率的变通方案,但消融研究(例如原始 GQA 论文和 Llama 2 论文中的研究)表明,在 大语言模型建模性能方面,其表现与标准 MHA 不相上下。现在,多头潜在注意力 (Multi-Head Latent Attention, MLA) 提供了另一种不同的内存节省策略,该策略与 KV 缓存的结合效果也特别好。与 GQA 共享键头和值头的方式不同,MLA 在将键张量和值张量存入 KV 缓存之前,会先将它们压缩到一个更低维度的空间。 在推理期间,这些被压缩的张量在使用前会被投影回原始尺寸,如下图 3 所示。这个过程增加了一次额外的矩阵乘法,但减少了内存占用。 ...

July 19, 2025 · 小茄墩

Qwen存在严重数据污染,基于Qwen的RL论文可靠性存疑

《Reasoning or Memorization? Unreliable Results of Reinforcement Learning Due to Data Contamination》 本文对为什么像Qwen这样的大语言模型在使用随机甚至错误的奖励信号进行强化学习后,在数学推理任务上表现反而更好——提出了一个基于“数据污染”的合理解释。研究者没有轻易接受“模型能力强”或“强化学习有奇效”的表面结论,而是设计了一系列实验来验证他们的怀疑。关键做法是,他们发现Qwen模型家族在MATH-500等著名数学基准测试上表现出的惊人性能,很可能是因为它在预训练时接触过这些基准测试的题目和答案。为了证明这一点,他们创建了一个全新的、完全合成的、保证无泄漏的数学计算数据集RandomCalculation。在这个干净的数据集上,先前观察到的“奇迹”消失了:只有准确的奖励信号才能稳定提升模型的推理能力,而错误或随机的奖励则毫无助益。这一过程为我们揭示了在评估大模型能力时,必须警惕和排除数据污染问题,否则可能会得出不可靠甚至错误的结论。 研究者观察到,强化学习(RL)技术能显著提升大语言模型(LLMs)的推理能力,特别是Qwen系列模型在数学基准测试上取得了SOTA(顶尖水平)的结果。但奇怪的是,一些研究声称,即使给予Qwen模型随机或错误的奖励信号,其性能也能提升,而这种现象在Llama等其他模型上却不成立 。为了解释这个现象,论文提出了两个对立的假设: (1)数据污染:Qwen在海量网络数据预训练时,可能无意中“背诵”了评测基准(如MATH-500)的题目和答案。因此,看似随机的奖励实际上是触发了模型去回忆这些背过的答案。 (2)基线数学能力强:Qwen本身数学基础就好,所以即使是噪声奖励也能帮助它。为了验证哪个假设是正确的,作者设计了明确的步骤:首先,通过“部分提示词补全”实验来检测模型是否对基准数据存在记忆;其次,构建一个全新的、无污染的合成数据集RandomCalculation 。 最后,在这个干净的数据集上重新进行强化学习实验,观察不同奖励信号的真实效果 。 相关工作 第一条线是关于在Qwen2.5上应用强化学习提升数学推理能力的研究。作者们列举了多种新兴的RL方法,如RLVR(基于可验证奖励的强化学习)、TTRL(测试时强化学习)以及各种利用熵或自洽性作为内在奖励信号的技术,并承认它们在Qwen上取得了显著成功。但同时,他们也引用了质疑这些成果普适性的研究,特别是那些指出随机奖励仅对Qwen有效而对Llama等模型无效的论文,从而引出“模型特定性”的问题。 第二条线是预训练语料对推理能力的影响 。作者指出,模型的数学能力很大程度上由其预训练数据决定,不同模型(如Qwen和Llama)对强化学习的反应不同,根源可能就在于其接触的训练数据存在差异。通过梳理这两方面工作,作者巧妙地将“RL在Qwen上的奇特效果”与“预训练数据的重要性”联系起来,为后续的数据污染调查铺平了道路。 实验设置 首先,在模型选择上,他们选取了参数量相当的Qwen2.5和Llama3.1系列模型进行对比,这遵循了控制变量的原则,旨在分离出模型本身的特性而非规模带来的差异。其次,核心的创新在于记忆能力评估的设计。他们没有采用常规的完整问题测试,而是提出了两个巧妙的指标: (1)部分提示词补全率:只给模型问题的前40%或60% ,看它能否准确生成剩余的部分。这通过ROUGE-L(衡量最长公共子序列)和EM(完全匹配)来量化,如果模型能高概率补全,则说明它很可能“见过”原题。 (2)部分提示词答案准确率:在只给出部分提示的情况下,看模型能否直接给出正确答案。如果模型在问题不完整时仍能答对,这是数据污染的强烈信号。最后,在强化学习评估中,他们为自己创建的RandomCalculation数据集设计了一个连续奖励函数:$r = 1 - 0.5 \cdot min(|a-b|, 1) - 0.5 \cdot min(\frac{|a-b|}{|b|+\epsilon}, 1)$ 。这个函数同时考虑了预测值与真实值的绝对和相对误差,解决了新数据集中答案是高精度小数、传统0/1奖励过于稀疏难以训练的问题,确保了RL训练的稳定性和有效性。 结果与分析 复现问题:研究者首先在MATH-500数据集上成功复现了反常现象——随机和错误奖励确实提升了Qwen-Math-7B的性能,但对Llama却有负面影响。他们还敏锐地发现,Qwen基础模型的部分性能提升,仅仅是因为学习适应了评测时使用的对话模板,这揭示了评估中需要注意的陷阱。 定位原因:通过前述的“部分提示词”测试,他们拿出了数据污染的“铁证”。结果显示,在MATH-500这类旧基准上,当只给出60%的问题时,Qwen2.5-Math-7B能以高达54.6%的概率精确补完剩余问题,并且依然能正确解答;而Llama的对应得分几乎为零。更具说服力的是,在一个模型发布后才创建的新基准LiveMathBench上,Qwen的补全率骤降至0%,与Llama表现一致。这强有力地证明了Qwen对旧基准存在记忆,所谓的“随机奖励提升性能”实际上是触发了模型的记忆提取机制。 第三步,验证结论:为了彻底排除干扰,他们在自创的、无污染的RandomCalculation数据集上进行了最终实验。结果非常清晰:在这个干净的环境里,“魔法”消失了。无论是Qwen还是Llama,都只有在获得正确奖励信号时,性能才会稳定提升,而随机或错误奖励则完全无效。这直接证实了数据污染才是根本原因,而非模型本身有什么特异功能。

July 16, 2025 · 小茄墩

关于 OpenAI 的一些思考 -- Calvin French-Owen

《Reflections on OpenAI》 2025年7月15日 我是三周前离开 OpenAI 的,而我加入公司是在 2024 年 5 月。 我想分享我的思考,是因为外界对 OpenAI 的所作所为众说纷纭、传闻不断,但却鲜有人亲口讲述在那儿工作的真实文化氛围。 Nabeel Quereshi 写过一篇很棒的文章,叫《关于 Palantir 的一些思考》,文中他详细阐述了 Palantir 的特别之处。我也想趁着记忆犹新,为 OpenAI 写下同样的文字。你在这里不会看到任何商业机密,更多的是关于这个史上最引人入胜的组织之一,在当前这个极不寻常时期的一些个人感悟。 首先声明:我决定离开并非出于任何个人恩怨——实际上,这个决定曾让我内心无比纠结。从一个创业公司的创始人,转变为一个三千人大机构的员工,这个过程并不容易。眼下,我渴望的是一个全新的开始。 这份工作的魅力完全有可能再次将我吸引回来。毕竟,很难想象有什么工作能比构建通用人工智能 (AGI) 更具影响力了,而大语言模型 (LLM) 无疑是这十年来的顶尖技术创新。能够亲身见证一些技术进展,并参与 Codex 项目的发布,我深感幸运。 当然,这些仅为个人观察,不代表公司立场。OpenAI 是个庞大的机构,本文只是我管中窥豹,所见一斑。 文化 了解 OpenAI,首先要知道它的发展速度有多惊人。我刚加入时,公司才 1000 多人。一年后,员工数已超过 3000,而按司龄算,我已经排进了前 30%。几乎所有领导层当前的工作,都和他们两三年前的职责大相径庭。 当然,如此迅猛的扩张之下,各种问题都会暴露出来:公司层面的沟通方式、汇报结构、产品交付流程、人员管理与组织、招聘过程等等。不同团队的文化也大相径庭:有些团队始终在全力冲刺,有些则需要时刻盯着大型计算任务,还有一些则保持着更为稳健的节奏。在 OpenAI 没有所谓的单一体验,研究、应用和市场(GTM)团队的运作周期和视角也截然不同。 OpenAI 有一个特别之处:所有事情——我是说所有事情——都在 Slack 上进行。这里没有电子邮件。我在那里的全部时间里,大概总共只收到过 10 封邮件。如果你不善于整理信息,会觉得这种工作方式极易让人分心。但如果你能精心管理自己的频道和通知,它还是相当高效的。 OpenAI 的文化是高度自下而上的,在研究领域尤其如此。我刚加入时,曾询问下一季度的路线图。得到的答复是:“我们没有那东西”(不过现在有了)。好的想法可以来自任何地方,而且事先往往很难判断哪个想法会最有成效。这里没有宏大的“总体规划”,所谓的进展,是在新研究不断结出硕果的过程中,一步步探索出来的。 正是得益于这种自下而上的文化,OpenAI 也非常任人唯贤。长久以来,公司领导者的晋升,主要看他们是否能提出好想法并将其付诸实践。许多能力超群的领导者,其实并不擅长在全员大会上演讲或玩弄办公室政治。但在 OpenAI,这些能力远不如在其他公司那么重要。最终,最好的想法总能脱颖而出。 这里有一种强烈的行动偏好(即“先做再说”)。不同团队(即使业务不相关)不约而同地想到一块儿去,是常有的事。我最初就参与了一个与 ChatGPT Connectors 类似的内部并行项目。在我们决定正式推出 Codex 之前,公司内部至少同时存在三到四个不同的原型。这些项目通常由少数几个人在没有申请许可的情况下自发启动。一旦项目显现出潜力,团队就会迅速围绕它们组建起来。 Andrey(Codex 项目负责人)曾对我说,你应该把每个研究员都看作是独立的“迷你 CEO”。他们有强烈的自主性,喜欢专注于自己的项目,看最终能做出什么。这里有一个推论——大部分研究课题,都是通过用一个极具吸引力的技术难题去“钓”(nerd-sniping)一个研究员来解决的。如果一件事被认为是无聊或“已解决”的,那它很可能就没人去做了。 优秀的研究经理影响力巨大,同时也极其稀缺。最顶尖的经理能将许多不同研究方向的成果串联起来,整合成更大规模的模型训练。优秀的 PM(产品经理)也是如此(在此特别感谢 ae)。 我合作过的 ChatGPT 团队的 EM(工程经理)们(Akshay、Rizzo、Sulman)是我见过的最沉着冷静的“客户”。你真的会觉得,他们在这个位置上已经见过了各种大风大浪。他们中的大多数人管理风格都比较放手,但他们会招募优秀的人才,并努力为这些人创造成功所需的一切条件。 ...

July 16, 2025 · 小茄墩