社区计算机视觉课程文档
Hyena
并获得增强的文档体验
开始使用
Hyena
概述
什么是 Hyena
虽然 Transformer 是一种成熟且功能非常强大的架构,但二次计算成本是需要付出的昂贵代价,尤其是在推理中。
Hyena 是一种新型算子,可以替代注意力机制。它由 Hazy Research 开发,具有亚二次计算效率,通过交错隐式参数化的长卷积和数据控制的门控构建。
长卷积类似于标准卷积,只是内核大小与输入大小相同。它等同于拥有全局感受野而不是局部感受野。拥有隐式参数化卷积意味着卷积滤波器值不是直接学习的。相反,学习一个可以恢复这些值的函数是首选的。
门控机制控制信息在网络中流动的路径。它们有助于定义信息应该被记住多久。通常,它们由逐元素乘法组成。一篇关于门控的有趣博客文章可以在这里找到。
Hyena 算子由递归计算卷积和乘法元素级门控操作组成,每次执行一个投影,直到所有投影都耗尽。这种方法建立在 Hungry Hungry Hippo (H3) 机制之上,该机制也由同一批研究人员开发。H3 机制的特点是其数据控制的参数分解,充当代理注意力机制。
理解 Hyena 的另一种方式是将其视为 H3 层的推广,用于任意数量的投影,其中 Hyena 层以不同的长卷积参数化选择递归扩展 H3。
从注意力机制到 Hyena 算子
注意力机制具有两个基本属性
- 它具有全局上下文感知能力,使其能够评估序列中视觉标记对之间的交互。
- 它是数据相关的,这意味着注意力方程的操作根据输入数据本身而变化,特别是输入投影,,.
注意力机制由三个投影定义:查询,键,值,这些投影通过将输入视觉标记与三个矩阵相乘生成,和这些矩阵在训练期间学习。
对于给定的视觉标记,我们可以使用这些投影计算注意力分数。注意力分数决定了对输入图像的其他部分给予多少关注。
有关注意力的详细解释,您可以参考这篇图文并茂的博客文章。
为了复制这些特性,Hyena 算子结合了两个关键要素
- 它采用长卷积来提供全局上下文感,类似于注意力机制的第一个属性。
- 对于数据依赖性,Hyena 使用逐元素门控。这本质上是输入投影的逐元素乘法,反映了传统注意力机制的数据依赖性。
在计算效率方面,Hyena 算子的评估时间复杂度为),表明处理速度显着提高。
Hyena 算子
让我们深入研究 Hyena 算子的二阶递归,这简化了其表示以用于说明目的。
在这个阶数中,我们计算 3 个类似于,和来自注意力机制的注意力向量的投影。
然而,与注意力机制通常使用单个密集层将输入序列投影到表示不同,Hyena 结合了密集层和在每个通道上执行的标准卷积(称为,和在模式上),但这在实践中是显式卷积。softmax 函数也被丢弃。
核心思想是将快速评估的线性算子重复应用于输入序列其中是序列的长度。由于全局卷积具有大量参数,因此训练成本很高。一个值得注意的设计选择是使用隐式卷积。与标准卷积层不同,卷积滤波器是通过一个小型神经网络隐式学习的(也称为 Hyena 滤波器)。该网络将位置索引和可能的位置编码作为输入。从
的输出 可以构造一个 Toeplitz 矩阵.这意味着我们不是直接学习卷积滤波器的值,而是学习从时间位置编码到值的映射,这在计算上更有效,特别是对于长序列。
隐式卷积
线性卷积可以公式化为矩阵乘法,其中一个输入被重塑为 Toeplitz 矩阵。
这种转换带来了更高的参数效率。不是直接学习固定的内核权重值,而是采用参数化函数。此函数在网络的前向传递期间智能地推导出内核权重的数值及其维度,从而优化资源使用。
在实践中,通过 Cooley-Tukey 快速傅里叶变换 (FFT) 算法,卷积加速到亚二次时间复杂度。已经进行了一些工作来加速这种计算,例如基于 Monarch 分解的 FastFFTConv。
总结
本质上,Hyena 可以分两步执行
- 计算一组 N+1 个线性投影,类似于注意力机制(可以超过 3 个投影)。
- 混合投影:矩阵由矩阵乘法的组合定义。
为什么 Hyena 很重要
H3 机制的提议接近多头注意力机制的困惑度,但在困惑度方面仍然存在需要弥合的狭窄差距。
在过去几年中,人们提出了各种注意力机制的替代方案,并且在探索阶段评估新架构的质量仍然具有挑战性。创建一个通用的层,可以在深度神经网络中有效地处理 N 维数据,同时保持良好的表达性,这是一个重要的持续研究领域。
经验表明,Hyena 算子能够显着缩小与大规模注意力机制的质量差距,以较小的计算预算实现相似的困惑度和下游性能,并且无需混合注意力机制。它已经在 DNA 序列建模方面取得了最先进的地位,并在具有 Stripped-Hyena-7B 的大型语言模型领域显示出巨大的前景。
与注意力机制类似,Hyena 可以用于计算机视觉任务。在图像分类中,当从头开始在 ImageNet-1k 上训练时,Hyena 能够在准确性方面与注意力机制相媲美。
Hyena 已应用于 N 维数据,使用 Hyena N-D 层,并且可以用作 ViT、Swin、DeiT 主干中的直接替代。
这里,随着图像块数量的增加,GPU 内存效率显着提高。
Hyena Hierarchy 促进了用于长序列的更大、更高效的卷积模型的开发。Hyena 类型模型在计算机视觉方面的潜力在于更高效的 GPU 内存消耗,这将允许
- 处理更大、更高分辨率的图像
- 使用更小的图像块,从而实现精细的特征表示
这些品质在医学影像和遥感等领域尤其有益。
迈向 Transformer 替代方案
从简单的设计原则构建新层是一个新兴的研究领域,并且进展非常迅速。
H3 机制是许多基于状态空间模型 (SSM) 架构的基础,这些架构通常具有在线性注意力机制和多层感知器 (MLP) 模块之间交替的结构。Hyena 作为这种方法的增强,为更高效的架构铺平了道路,例如 Mamba 及其视觉衍生模型(Vision Mamba、VMamba 等)。
延伸阅读
- Hyena 官方仓库: 序列建模的卷积
- 关于亚二次模型的格局: 深度信号处理的 Safari 之旅:Hyena 及其他 · Hazy Research (stanford.edu)
- 关于加速 FFT 算法: FlashFFTConv:使用张量核心的高效长序列卷积 · Hazy Research (stanford.edu)
- 关于亚二次模型格局: 动物学(博客文章 1):衡量和改进高效语言模型中的召回率 · Hazy Research (stanford.edu)
- Hyena 在计算机视觉中的应用: [2309.13600] 用于空间归纳偏置的多维 Hyena (arxiv.org)
- 一种改进的方法: [2401.09417] Vision Mamba:使用双向状态空间模型的高效视觉表示学习 (arxiv.org)