16GB显卡挑战极限数独:深度与流匹配的启示

个人实验表明,有效深度与推理时计算分配是突破数独准确率平台期的关键。
作者在单张 16GB GPU 上训练 1654 万参数模型解极限数独,发现早期训练加速技巧虽改善学习曲线,却无法突破约 60% 的验证准确率天花板。将有效深度提升至 120 层后准确率升至约 76%,且 12 层网络重复 10 次与独立 120 层网络效果相当。引入流匹配训练后,通过增加积分步数、多轨迹采样和中间结果回退精炼,在固定权重下将成功率推过 99%。改进采样过程使约 96% 准确率所需的名义层评估预算缩减约 50 倍。架构简化后,2D RoPE+Transformer+流匹配即可达到相近性能,显式数独专用机制并非必要。作者强调这些发现是个人实验记录,比较需对齐条件。
从极限数独出发:一场关于深度、流匹配与测试时计算的个人实验
在单张 16 GB 显存的 GPU 上训练一个 1654 万参数的模型,去解 sapientinc/sudoku-extreme 的完整训练集——这听起来像是算力受限下的自娱自乐,但 Reddit 上一位研究者分享的实验记录,却触及了当前推理模型设计中几个相当核心的问题:有效深度、迭代精炼,以及推理阶段计算预算的分配方式。
作者明确表示,这是一份个人研究记录,而非受控的基准测试论文。部分实现和评估细节仍需补充才能复现。但恰恰是这种“非正式”的分享,保留了实验过程中那些更真实的转折和意外。

早期加速的幻觉:学得快不等于天花板高
作者最初的目标是让模型在单次前向传播中完成更多推理。他尝试了中间监督、数独专用损失、架构调整,以及受强化学习启发的目标——比如鼓励浅层产生对深层解题有帮助的隐藏状态。部分改动让早期训练曲线变得非常好看:一个 epoch 内准确率能涨 10 甚至 20 个百分点,而不是通常的几个点。
但问题在于,这些模型最终大多在 60% 验证准确率附近停滞。换损失函数、加软中间目标、增加深度和参数量、让部分格子提前停止更新、反复训练困难样本——早期学习曲线各不相同,但大约十个 epoch 后,最终结果往往收敛到同一水平。
作者对此的总结相当克制:改善模型的学习速度,并不必然改善它最终能达到的准确率。 那个 60% 的天花板可能只是反映了当时的架构、优化选择或可用算力,而非单次推理存在某种根本限制。
有效深度:突破平台期的关键
转机来自一篇关于千层网络用于自监督强化学习的论文。残差层更新隐藏状态的形式是 h[l+1] = h[l] + Δh[l],这让作者联想到迭代优化:一串小步更新或许能解决短计算无法处理的问题。当然,这只是类比,残差更新并不自动等同于梯度下降。
他把网络加到 120 层,准确率终于越过 60%,达到约 76%。随后他尝试去掉此前添加的大量技巧,模型仍能保持约 76%。更关键的是,一个 12 层网络重复 10 次、有效深度同样为 120 层的设计,在训练进度和最终准确率上与不共享权重的 120 层网络大致相当。
这个结果改变了对早期实验的解读:那些精巧的损失和架构改动或许帮助了优化,但足够的有效深度才是打破平台期的更关键因素。继续加深可能还有收益,只是训练成本在有限硬件上已难以承受。
有效深度指模型在推理时实际执行的非线性变换层数,而非静态参数层数。对于权重共享的循环网络,同一组权重被多次应用,等效于一个很深的网络:例如 12 层骨干重复 10 次,有效深度为 120 层。有效深度决定模型单次前向能执行多少串行计算,直接影响其解决需要多步推理问题的能力。增加有效深度有几种途径:堆叠更多独立层(参数随之增长)、循环应用同一模块(参数可控但需设计迭代机制),或通过迭代采样过程在推理时动态增加计算。文中 60% 平台期的突破,正是通过将有效深度从浅层提升到 120 层实现的,而 12 层×10 次与 120 层独立网络效果相当,说明关键在计算深度而非参数数量。
绕道图像生成,遇见流匹配
作者意识到,数独算是可以当作结构化图像生成问题:输入不完整的网格,输出完整的网格。这让他花了不少时间在生成模型上——离散潜表示与量化方案、重建损失与对抗损失、CNN、Transformer、MLP-Mixer,以及按列或按块的自回归生成。
在这些尝试中,流匹配在小规模图像实验里表现最好。后来读到 GRAM 的工作,又让他重新相信神经网络有能力处理这类困难数独。一个思想实验让连接变得清晰:如果想让模型拥有 10000 层的有效深度,该怎么训练?只监督最终输出显然困难;中间监督可能有帮助;权重共享能让参数量可控;一个小网络反复应用就能提供深度。而流匹配,恰好是训练这种迭代状态精炼过程的自然方式。

流匹配(Flow Matching) 是一类训练连续时间生成模型的方法,核心思想是学习一个速度场,将简单先验分布(如高斯噪声)沿常微分方程(ODE)轨迹输运到数据分布。与扩散模型需要模拟复杂的随机前向过程不同,流匹配直接回归条件速度场,训练目标更简单稳定。推理时从先验采样,用数值积分器(如欧拉法)迭代求解 ODE,积分步数即函数评估次数(NFE),构成可调的计算预算。在数独这类结构化生成任务中,流匹配天然适配迭代精炼:模型可视为对当前网格状态做一系列小步更新,每一步都增加有效深度,且训练时只需监督最终输出,无需复杂的中间标签。
推理计算成为可调旋钮
实现流匹配方法后,作者每 5000 个训练步评估一次。在固定推理预算下,准确率快速攀升,再次达到约 76%。真正更大的变化发生在训练之后、权重固定的情况下。
他尝试了几件事:增加积分步数(即函数评估次数 NFE);采样多条轨迹;以及把一个中间结果移回更早的流时间点再次精炼——因为单纯延长轨迹并不总能持续改善结果。这些改动合在一起,把成功率推过了 99%。
模型规模是 1654 万参数、12 层骨干。记录的结果如下:
| 最大尝试次数 | 每次步数 | 解题准确率 |
|---|---|---|
| 1 | 10 | 73.23% |
| 1 | 20 | 75.98% |
| 1 | 50 | 78.32% |
| 1 | 100 | 79.87% |
| 1 | 200 | 81.39% |
| 5 | 10 | 79.76% |
| 10 | 10 | 82.56% |
| 20 | 10 | 85.21% |
| 50 | 10 | 88.81% |
| 50 | 20 | 92.19% |
| 100 | 10 | 91.54% |
| 100 | 20 | 94.28% |
| 100 | 50 | 96.26% |
| 1,000 | 20 | 98.22% |
| 1,000 | 50 | 99.29% |
需要区分的是:99.29% 用了最多 1000 次尝试、每次 50 步;而单次尝试 50 步的结果是 78.32%。多尝试结果在概念上类似 pass@k 中允许多个候选解,但不应读作单轨迹准确率,也不是正式的 pass@k 估计。作者还让模型多训练了几天,希望看到后期性能跃升,但那次运行中并未出现。
函数评估次数(NFE, Number of Function Evaluations) 是衡量迭代生成模型推理计算量的常用指标,指求解 ODE 或迭代精炼过程中模型前向传播被调用的次数。在流匹配中,NFE 直接对应积分步数;步数越多,轨迹离散化越精细,生成质量通常越高,但计算成本也线性增长。文中将 NFE 作为可调旋钮:单次尝试增加步数从 10 到 200,准确率从 73.23% 升至 81.39%;而通过多次尝试并配合步数调整,可在总预算约束下灵活分配计算。需要注意的是,NFE 与骨干层评估次数不同——后者等于 NFE 乘以每次前向的层数,更能反映实际计算深度。作者在比较采样改进时使用“名义最大层评估预算”正是为了统一核算口径。
采样过程本身价值巨大
高准确率的初始配置很昂贵。作者随后在保持相同权重的前提下改进推理效率。改动采样过程之前,96.26% 对应的是:
100 次尝试 × 50 步 × 12 层 = 60,000 次层评估
改动采样过程之后,大约 96% 的准确率对应的是:
5 次尝试 × 20 步 × 12 层 = 1,200 次层评估
这是名义最大层评估预算上约 50 倍的缩减,而不是实测的 50 倍墙钟加速。这些乘积只是预算估计,并不能说明每个已解谜题的平均计算量或吞吐量,后者还取决于提前停止、批处理和采样开销。
作者随后进一步简化架构。实验中,显式的数独专用行、列、宫机制似乎并不必要:2D RoPE + Transformer + 流匹配给出了基本相同的性能。这并不意味着模型没有归纳偏置——网格表示、位置编码、架构和训练目标依然存在;被移除的是此前内建在网络中的额外数独专用机制。
相关工作与比较的边界
准备论文时,作者发现了两项密切相关的工作:Flow Reasoning Models 和 Thinking with Looped Flows,二者都探索基于流的推理方法,包括极限数独。鉴于重叠,他决定将这份记录作为实验分享,而非把整体想法当作全新提出。
他特别关注降低推理所需的深度。后期一些实验暗示,每条轨迹约 240 层或更少的有效深度可能有用。这个数字要和多尝试的总计算区分开:12 层骨干走 20 步,单条轨迹本身就是 240 次层评估。
作者没有声称在基准上胜过这些论文。他的实验使用了完整训练集,而 FRM 使用的是 1000 样本设置;训练数据量、采样和评估条件都需要对齐才能做有意义的比较。更多训练数据本身也不能证明泛化或排除记忆。他还在图着色和 N-Queens 上试了流匹配方法,结果令人鼓舞,但缺少详细指标,只能视为初步观察。
pass@k 是评估生成模型在多候选采样下解题能力的常用指标:允许模型生成 k 个候选解,只要其中任意一个正确即算成功。其估计通常通过每个问题采样 n 个解(n ≥ k),计算至少一个正确的概率并经组合校正。文中作者明确区分了多尝试结果与 pass@k:多尝试是固定权重下独立采样多条轨迹并取最佳,概念上类似 pass@k,但由于采样策略、提前停止和评估条件不同,不应直接读作单轨迹准确率或正式的 pass@k 估计。这种区分至关重要,因为高 pass@k 可能来自极低的单次成功率与大量采样,掩盖了模型单次推理能力的不足,而实际部署中采样预算往往受限。
对推理模型扩展方式的再思考
这个项目改变了作者对推理模型扩展的理解。增加计算有几种方式:增加参数量以提升容量;生成更长序列以允许更多显式中间计算,如思维链;通过循环或迭代精炼提升有效深度;以及采样更多候选轨迹来探索不同解。
这些方式相关但不可互换,其价值取决于任务、训练目标和推理过程。对数独实验而言,最有用的教训是:学会一个好的迭代更新,以及决定在推理时如何应用它,两者都是性能的核心。 架构和损失改动有帮助,但深度和采样才是把结果推过平台期的因素。
作者怀疑,将这些扩展形式与强化学习结合可能产生更强的推理系统——但这是假设,数独实验本身并不能确立这一点。他也不认为可以从这些结果或关于专有模型的传闻中推断其内部架构。最后他抛出一个开放问题:比较这类方法时,哪种计算核算最有信息量——总函数评估次数、骨干层评估次数、FLOPs,还是固定解率下的实测延迟?
相关推荐
科技前沿Textly:Mac上任意位置抓取文字和表格的效率神器
Textly是一款Mac菜单栏效率工具,支持从截图、PDF、视频和应用中框选捕获文字与表格,保持行列完整并导出CSV、Markdown、TSV,还内置即时翻译和剪贴板历史。
科技前沿Frameboy:World Labs Atlas 世界模型浏览器实时体验
World Labs 在 Product Hunt 发布 Frameboy,基于 Atlas 世界模型的浏览器实时演示,移动相机即可在云端 GPU 生成新视角,最高 15 fps 串流,探索 AI 生成的可漫游世界。
科技前沿Keypause:一键锁定Mac键盘,清洁时不再误触
Keypause是一款Mac菜单栏应用,一键锁定键盘所有按键,方便清洁时避免误触。本文介绍其功能、使用体验、潜在风险及适用场景,帮你判断是否值得尝试。