qlabs-eng/noise
Speedrun for pretraining without backpropagation
它解决了什么问题
反向传播是训练神经网络的标准方法,但它需要对模型进行反向传递。Noise 提供了一个受控的基准测试,用于测试从不运行反向传递的替代学习算法,仅使用前向传递来衡量损失并更新权重。它旨在解决更通用的、基于搜索的信用分配是否能够匹配或超越反向传播的问题。
工作原理
Noise 固定了模型、数据和评分标准:一个 37.7M 参数的 Transformer,一个源自 FineWeb 的 30M token 训练集,以及验证集上的交叉熵。共有三条赛道:(1) 一个 epoch 后的最低验证损失,(2) 达到 3.5 验证损失的最快时间,以及 (3) 与赛道 1 相同但架构可自由修改。所有参赛作品必须遵守严格规则:禁止反向传播,禁止自动微分(前向或反向模式),禁止手写反向传递。学习信号必须仅来自评估模型的前向过程,且信用分配最多只能通过一个非线性步骤。提交通过 pull requests 进行,排行榜显示当前记录。
适用人群
对非反向传播学习算法(如进化策略或其他仅前向方法)感兴趣的研究人员和工程师。它也适合任何希望参与结构化竞赛以改进此类算法,并观察它们与既定基准相比表现如何的人。
亮点
- 固定的 Transformer 模型和数据集,确保提交内容之间进行公平的直接比较。
- 三条赛道:验证损失、达到目标损失的速通,以及开放架构变体。
- 赛道 1 和 2 的当前记录是使用名为 "Boost → Cut" 的方法在 1 小时 43 分钟内实现的 3.409 验证损失。
- 提供基准反向传播结果以供参考:带有学习率衰减的 Adam 达到 3.419,块矩阵上的 ANVIL II 加上其他地方的 Adam 达到 3.340。目标是以较大优势超越这些结果。
相关
- 项目
- 项目
- 项目
- 项目