简单长卷积用于序列建模的详细解析

203次阅读
没有评论

在序列建模中,我们一直在研究如何获得良好的性能,并开发了新的系统技术和深度学习架构。今天,我们将介绍一个简单的基准线方法,它可以取得出人意料的好效果:只需使用与输入序列相同大小的长卷积!事实证明,我们只需要简单的正则化,卷积就可以与复杂的序列模型(如 S4)在 Long Range Arena 和文本建模等基准测试中相媲美。[1]

长卷积的正则化:
我们首先提出了一个问题:如果将 SSMs(State Space Models)替换为长卷积,会发生什么?代码非常简单,我们可以使用 FFT 卷积以 O(NlogN) 的时间复杂度计算长卷积(而不是 PyTorch 的 Conv1D 中的 O(N^2))。然而,如果在 Long Range Arena 等基准测试上尝试这种方法,你会发现性能落后于 SSMs。[1]

为什么会这样呢?如果你可视化学习到的卷积核,你会发现一个潜在的答案:长卷积核非常不平滑和嘈杂!为了解决这个问题,我们发现只需应用一个简单的正则化操作——Squash 操作——到卷积核权重上即可。这个操作非常简单,只需要一个超参数 λ。如果在训练过程中应用这个操作,你会得到在时间域上更稀疏、在频率域上更平滑的卷积核。在 Long Range Arena 基准测试上,这个小改变就足以与 SSMs 的性能相匹配。[1]

长卷积的应用:
我们进一步评估了长卷积在图像分类、文本建模和脑 fMRI 分析等领域的性能,并发现长卷积在所有这些领域都表现出色。特别是在文本建模中,我们将 H3 层中的 SSMs 替换为卷积,发现这个新的 H3-Conv 模型在 PILE 数据集上的性能与 H3 相当,并且优于 Transformers。[1]

未来展望:
我们的论文中还包括更多关于长卷积在其他领域的评估,例如图像分类和脑 fMRI 分析等有趣的应用。我们还开发了一些新的系统优化方法,以提高长卷积的运行时性能。此外,我们还发现了长卷积与 Monarch 矩阵理论之间的有趣联系,这使得我们可以在卷积中插入额外的参数,从而获得更好的质量。[1]

结论:
简单的长卷积在序列建模中表现出色,并且只需添加简单的正则化操作就可以与复杂的序列模型相媲美。这种方法在多个领域都取得了良好的结果,并且具有较高的运行时性能。我们对这些方向非常感兴趣,并且希望能够在开放的环境中进一步发展这些方法。[1]


Learn more:

  1. Simple Long Convolutions for Sequence Modeling · Hazy Research
  2. Simple Hardware-Efficient Long Convolutions for Sequence Modeling | OpenReview
  3. GitHub – HazyResearch/safari: Convolutions for Sequence Modeling
正文完
 
评论(没有评论)