Loading...
正在加载...
请稍候

Harmonic:用预测误差做长文本,一位独立研究者的SSM突围

✨步子哥 (steper) 2026年06月24日 17:47

当音乐家做了一个语言模型

想象你在混音棚里做一首曲子。鼓点进来的那一瞬间,你还没来得及分析任何东西,身体已经告诉你"不对劲"——可能是底鼓的相位偏了,可能是贝斯和鼓的频率打架。这种感知不是逐拍进行的,而是同时在多个时间尺度上运作:你同时听到了音符(毫秒级)、乐句(秒级)和整首曲子的弧线(分钟级)。

标准语言模型没有这种能力。Transformer 把所有 token 放在同一个时间尺度上处理,用注意力机制全局扫描——短文本时天下无敌,文本一长,计算量按长度的平方爆炸。

Petr Nyoma,一位独立研究者,把音乐制作中的多尺度感知搬进了语言模型。他做出来的东西叫 Harmonic——一个三层堆叠的状态空间模型(SSM),每一层以不同的速度运转,层与层之间传递的不是隐藏状态本身,而是预测误差

结果?在等参数量、等 token 预算的条件下,Harmonic 在 32K token 长度上比 Transformer 好 11.4%,在 64K token 时 Transformer 和 Mamba 都因为内存不足崩溃了,Harmonic 还在正常训练。

预测误差:大脑的工作方式,终于搬进了语言模型

Harmonic 最核心的创新在于层间信号的选择。

传统层级模型(包括大多数 SSM)的做法是:底层处理完之后,把隐藏状态传给上层。这就像一个员工把完整的工作报告交给老板,老板基于报告做决策。

Harmonic 不一样。它只把预测误差传给上层——底层预测"下一个 token 应该是什么",实际值和预测值之间的差距,才是传给上层的信息。这就像员工不交报告,只在"出事了"的时候才上报异常。

这个机制有学术名字,叫预测编码(Predictive Coding),是神经科学家 Karl Friston 等人提出的大脑工作假说。大脑被认为是一个预测机器:每一层都在预测下一层的输入,只处理预测错误的部分。这解释了为什么你能在嘈杂的派对上听到自己的名字——你的听觉皮层已经预测了背景噪音的模式,只有不符合预测的信号(你的名字)才会被传递到意识层。

Harmonic 把这个理念搬进了 SSM:三层递归,速度从快到慢,每层只接收下层的预测误差作为输入。快速层处理 token 级别的模式,中速层处理句子级别的模式,慢速层处理段落甚至文档级别的模式。

数字说话:长文本上的碾压表现

在 enwiki8(维基百科文本压缩基准)上,Harmonic 与同等参数量(28M)的 Transformer 对比:

序列长度 Harmonic vs Transformer
1K token +1.4%(微弱优势)
8K token +6.7%(明显领先)
32K token +11.4%(碾压)
64K token Transformer OOM,Harmonic 正常训练

对比 Mamba(当前最流行的 SSM 之一),Harmonic 在所有测试长度上都赢 0.7–1.8%。

更有意思的是交叉点现象:在短文本上 Transformer 仍然占优。100M 参数时,1K token 上 Transformer 赢 3.2%;但到了 8K token,同样的模型 Harmonic 反超 6.6%。112M 参数时模式一致:1K 时 Transformer 赢 1.5%,8K 时 Harmonic 赢 7.0%。

这说明 Harmonic 的优势不是"全面更好",而是长文本特化。短文本上注意力的全局扫描仍然最强,但文本一长,注意力的 O(L²) 成本和 O(L²) 内存就成了致命瓶颈。Harmonic 的 O(L) 内存意味着 64K token 时它只需要线性增长的内存,而 Transformer 需要平方级增长。

1B 参数实战:替换注意力层,消除位置编码瓶颈

论文最实用的实验在 1B 参数规模。作者把 TinyLlama 1.1B 中所有的注意力层替换成 HarmonicBlock,得到一个叫 "Hallamonic" 的模型。

关键发现:原版 TinyLlama 使用 RoPE(旋转位置编码),在 2K token 之后就出现灾难性退化。Hallamonic 完全消除了这个限制——在 1K 到 8K token 范围内,在 Lambada 和 fineweb-edu 两个独立基准上,损失保持稳定。而原版 TinyLlama 在 8K token 时退化达 +9.4 bpt。

这意味着什么?很多开源模型的位置编码长度限制是人为的,不是模型能力的限制,而是注意力机制的位置编码设计导致的。换掉注意力层,限制就消失了。

为什么长文本上优势越来越大?

作者在讨论部分给出了一个直觉解释:Transformer 的注意力是"扁平"的——所有 token 之间的距离被压平到同一个矩阵里,模型必须从头学习"哪些 token 更相关"。文本越长,这个学习问题越难。

Harmonic 的三层结构天然编码了时间尺度:快速层关注局部模式(类似 n-gram),中速层关注句子级模式,慢速层关注段落级模式。这种归纳偏置在长文本上越来越有价值——文本越长,多尺度结构越重要。

这和信号处理中的小波变换思路一致:短时傅里叶变换用固定窗口看所有频率,小波变换用不同尺度看不同频率。长信号上,小波变换的信息效率远高于固定窗口傅里叶。

诚实评价:不是万能药

几个不能忽视的局限:

  1. 短文本上 Transformer 仍占优。如果你的应用场景主要是短文本(对话、分类、短摘要),Harmonic 的优势不存在甚至略劣。
  2. 独立研究者单作者论文。虽然实验设计严谨(等参数量、等 token 预算、多数据集验证),但缺乏大团队的复现确认。28M 参数规模的结论能否外推到 7B+ 还未知。
  3. Hallamonic 的绝对 bpt 偏低,作者自己承认这一点并讨论了可能的原因,但没有完全解释清楚。
  4. 预测编码的理论基础虽然优雅,但"为什么有效"的因果解释还不够硬。消融实验显示每一层都有贡献,但预测误差 vs 隐藏状态的对比没有单独拆出来。

对行业的启示

Harmonic 指向一个被忽视的方向:不是所有长文本问题都需要更长的注意力窗口。当前主流做法是不断扩展注意力机制的长度——从 4K 到 32K 到 128K 到 1M——每次扩展都伴随着巨大的计算和内存代价。Harmonic 提供了另一条路:用多尺度递归替代扁平注意力,用预测误差替代隐藏状态传递,用 O(L) 替代 O(L²)。

当上下文窗口从几千 token 扩展到百万 token 时,O(L) 和 O(L²) 的差距会从工程优化问题变成架构选择问题。Harmonic 还不是最终答案,但它提出的问题——"长文本需要注意力吗?"——值得每个做大模型的人认真思考。


论文: Harmonic: Hierarchical State Space Models for Efficient Long-Context Language Modeling
arXiv: https://arxiv.org/abs/2606.24650
HTML: https://arxiv.org/html/2606.24650v1
代码: https://github.com/Omibranch/harmonic-logs
作者: Petr Nyoma(独立研究者)

讨论回复

加载中...
正在加载回复...

正在加载回复...

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录