H-Net 新版:从原始字节学分词的效率跃迁 · 干货攻略

  • 链接: https://x.com/omarsar0/status/2115602312165302329
  • 分类: x-tips
  • 来源: X @omarsar0(引用 @_albertgu 的长推线程)
  • 作者: Jay
  • 更新: 2026-10-29
  • 仓库: https://github.com/goombalab/hnet (arXiv:2507.07955 配套代码;本次报道的改进版架构官方称"计划发布",截至成文未见公开代码)

这是什么

原始帖(elvis,@omarsar0,2026-10-29 00:31 UTC 发布)只有一句话推荐:"最近一年我最喜欢的研究方向之一。从原始字节学习,以及它带来的效率提升潜力。疯狂的是,这才只是冰山一角。" 链接指向 Albert Gu(Cartesia 首席科学家、CMU 助理教授,@_albertgu)在 2026-10-28 发布的推文长线程,主题是 H-Net(Hierarchical Networks)新版本——一个不依赖 BPE 分词器、直接从原始字节端到端学习"分块"(chunking)的语言模型架构系列。

核心思想一句话讲清:把"分词"从模型外部的手工预处理,变成模型内部学出来的动态分块。H-Net 的结构是"编码器 → 学习式分块 → 主网络(在粗粒度 chunk 上跑,类比 token)→ 解块回字节分辨率并加残差 → 解码器"。1-stage 的 H-Net 相当于"带学习式分词的普通 LM";主网络本身还可以是 H-Net,从而递归嵌套出多层级抽象(字符→词→短语→概念)。

Gu 的原话给出了两个关键数字:改进版 H-Net 在受控 scaling law 实验中取得 3–5 倍效率提升;在更大规模上,用约 1/10 的数据和算力追平一个用 11T tokens 训练的开源模型。

官方博客(Cartesia Research,2026-10-28,标题 From Tokens to Bytes I: Scaling Hierarchical Networks)是这次发布的正文来源,post 一共四部分:Part 1 讲 scaling law,Part 2 是另一篇文章(讲更多模型与迁移分析,本次未读),Part 3 讲学到的行为,Part 4 讲向 DNA / 音频 / 视觉等其他模态扩展。


核验来源

已读官方来源(两次):

  1. Cartesia 官方博客:https://www.cartesia.ai/blog/from-tokens-to-bytes-part-1 (标题 From Tokens to Bytes I: Scaling Hierarchical Networks,作者署名 Cartesia Research,2026-10-28)
  2. arXiv 摘要页:https://arxiv.org/abs/2507.07955 (Dynamic Chunking for End-to-End Hierarchical Sequence Modeling,Sukjun Hwang、Brandon Wang、Albert Gu,2025-07-10 提交,v2 2025-07-15)

交叉搜索仅一次,用于确认官方博客与论文的对应关系。

数字逐条核对表

说法 官方出处与原文结论 状态
"3–5x 效率提升" 博客 Part 1:"carefully controlled 1-stage H-Nets provide meaningful compute efficiency gains (up to 3-5x)" ✅
"用约 1/10 数据和算力追平 11T tokens 的开源模型" 博客:2-stage 字节 H-Net 3.67B 参数 vs SmolLM3-3B 的 3.08B;FLOPs/byte 4.44 vs 4.36(算力对齐在 2% 以内);H-Net 约 1T tokens 达到 SmolLM3 约 11T tokens 时的六任务平均分(SmolLM3 预训练为 8T/2T/1T 三阶段,共 11.1T tokens) ✅
"1T vs 11T" 的含义 原文:"The H-Net reaches SmolLM3's final average score after ~1T tokens compared to ~11T tokens."因为两者按每字节算力对齐,FLOPs 节省与 token 数节省成比例 ✅
1-stage H-Net 具体倍数 验证集 bpb 1.28×、Paloma 1.83×、OLMES 2.06×(图 4) ✅
代码上的优势 训练混合内 15 种语言 compute 倍数 1.49×(Markdown)~2.40×(Go),中位数 2.04×;训练混合外 10 种语言(OCaml、Prolog、Lean、Fortran 等)中位数 3.10×,最高 5.37×(Prolog) ✅
"3–5x"具体指哪部分 3–5x 对应代码子域及 out-of-domain 代码的区间,不是全指标 3–5 倍;全指标为 1.28–2.06× ⚠️ 需按此口径理解
官方 X 线程 https://x.com/_albertgu/status/2115502110578290900 ,Gu 原话:"up to 3-5x efficiency gains in controlled scaling law experiments... matches an open-source model trained on 11T tokens with ~10x less data and compute" ✅
原始帖 https://x.com/omarsar0/status/2115602312165302329 ,含被引用的推文卡片 ✅

实验设置要点(博客原文)

  • 数据混合(按字节计):70% 英文、20% 代码、5% 数学、5% 多语言;BPE 与字节两种处理方式在同一文档边界切分,确保文本完全一致。
  • 指标:bits-per-byte(bpb),用于跨 tokenizer 归一化。
  • 基线 BPE:在语料上重训的 128k 词表 BPE(对齐 Llama-3 词表规模),平均 4.57 bytes/token,Llama-3 原生为 4.45。用语料内 tokenizer 相比现成 tokenizer 本身又带来约 1.1× 算力收益。
  • Scaling ladder:从 L08(221M)到 L28(2.62B);隐藏维度 D/L ≈ 75、head dim 128、SwiGLU 中间维 3.6D;Muon 优化器 + WSD 学习率调度;每个 BPE 阶梯 rung 逐个改造成 1-stage H-Net,backbone 架构与超参直接复用,外层网络在 FLOPs 与参数量上对齐原 token embedding / unembedding 层,压缩率用强辅助损失对齐 4.57。
  • 2-stage 架构:最外层字节级 stage 用 4 层 Mamba-2 编码器 + 4 层解码器;再一层为滑动窗口注意力 + 每侧 4 层 Mamba-2;主网络是 40 层 Transformer(每层形状与 SmolLM3 相同,每层全局注意力),目标压缩比 4× 与 2×,实测主网络约 7.6× 压缩(约每 8 字节一个位置),比 SmolLM3 在同样文本上少处理约 40% 的 token,代价是外层编解码器吃掉约 43% 的 FLOPs(tokenized 模型里 embedding + LM head 只占 8%)。
  • DNA 方向(Part 4):核苷酸分辨率输入,H-Net 目标压缩比 6×,在三个评测集上算力增益 5.95×(验证集 bpb)、5.83×(gtdb_valid_small)、7.06×(gtdb_test);训练数据为 OpenGenome 的 GTDB 原核基因组约 274B 核苷酸,切成 ≤8192 片段。训练任务只有"下一个字母预测",但模型自发切出了密码子边界、启动/终止密码子、启动子等生物学结构。
  • 新涌现行为:in-context tokenization(推理时也会重新分块)——遇到生词会先切成多个 chunk、随重复出现逐步合并;重复句式会进一步压缩;能发现字母块(LURD/WHYV/FYB)、数字块(2526/3987/3526)这类隐含重复母题。英文分块边界是语义驱动而非模式驱动(英语里 "a" 常与后名词合并,意大利语里则不同)。

上手步骤

  1. 先读官方博客 Part I(本文数据全部出处):https://www.cartesia.ai/blog/from-tokens-to-bytes-part-1 —— 含可交互的 H-Net 分块可视化(图 1 / 10 / 11 / 12),以及 DNA 分块演示。
  2. 对照原始论文建立架构细节:arXiv:2507.07955 的 HTML 全文 https://arxiv.org/html/2507.07955v1 (该文给出动态分块的机制推导、1-stage/2-stage 对比、30B 字节即超过 tokenized Transformer 的结论,以及中国语 XWinograd-zh 59.9→66.3、DNA 数据效率约 3.6× 等早期结论)。
  3. 跑官方已发布的代码:git clone https://github.com/goombalab/hnet (该仓库是 2025 年论文的配套实现;本次报道的"much improved version"官方明确写的是"which we plan to release",仓库内具体的依赖安装与训练命令请以仓库 README 为准,不要照抄本文推断)。论文页脚同时给出 Hugging Face 组织页 https://huggingface.co/cartesia-ai 。
  4. 在自有语料上试字节级 vs BPE 的受控对比(这是博客方法论的核心,也是最容易复现的一步):同一份语料同时产出 bytes 与 BPE 两种切分(文档边界对齐),用 bpb 做归一化指标,跑一条 iso-FLOP 阶梯,量 H-Net 达到 BPE 基线同一 loss 所需的算力比。
  5. 想看"为什么有效",接着读 Part 2(From Tokens to Bytes II,https://www.cartesia.ai/blog/from-tokens-to-bytes-part-2 )——本次未读,仅确认链接存在。

适用边界

  • 这是预训练架构研究,不是可以直接拿来用的产品模型:官方结论全部来自 scaling law 实验与特定基线对照,迁移到自有任务需要重跑全套对照才有意义。
  • 效率增益高度依赖数据形态:代码、无明显分词边界的语言(CJK、印地语)、DNA 等 BPE 表现差的地方收益最大(代码中位数 2.04×,OOD 语言最高 5.37×);纯英文自然语言 web 文本上只有 1.28×(验证 bpb),把"3–5 倍"当成通用结论会高估。
  • 对照方法本身有争议,官方自己承认:BPE 压缩英语更多、压缩代码更少,H-Net 相反,所以不可能同时做到数据对齐与算力对齐;H-Net 在代码上花更少算力却效果更好,是否该按"每来源算力对齐"来比,是尚未解决的开放问题。用任何单一"倍数"横向比不同架构都有失真风险。
  • 算力对齐不等于参数对齐:2-stage H-Net 参数量反而更高(3.67B vs 3.08B),且 43% FLOPs 花在外层编解码器上,长序列场景下这部分开销与显存占用需要单独评估。
  • 多模态部分属于"ongoing research":DNA 有具体数字,但音频、视觉在博客里是方向性描述,没有可比对的量化结果。
  • 成本门槛:原文 LLM 论文的量级是"约 1.3B 参数 / 100B tokens / FineWeb-Edu"起,本次的 3.67B H-Net 对齐的是 SmolLM3-3B 完整配方——个人复现应先降一两个数量级做 ladder 验证,别直接照抄。
  • 发布状态:改进版 H-Net 尚未公开发布(原文措辞为"计划发布"),目前可获取的代码是 2025 年版本;想要逐位复现本次数字,短期内做不到。

不确定与未覆盖

  • 本篇只核验了 Cartesia Part I 与 arXiv:2507.07955;Part 2(更多模型与迁移分析)未读,其结论未纳入。
  • 官方博客中 Figure 5(逐语言代码倍数)、Figure 7(SmolLM3 对照训练曲线)、Figure 8b(38 个数据来源的压缩/算力对比)、Figure 13–14(DNA)的数值来自图片与正文描述,正文只给出关键倍率,未逐图核对全部读数。
  • 仓库 https://github.com/goombalab/hnet 存在且可访问,但是否已包含改进版 H-Net 未经核实,本文按官方"计划发布"的表述保守处理。
  • 原始帖是纯推荐性质,未对数字做任何背书;本篇所有数字均来自 Cartesia 官方博客与 arXiv,作者为同一团队(Gu 兼任),尚未见第三方独立复现。