分类: 🌏

  • 记忆大师:用世界模型征服记忆任务

    近年来,基于模型的强化学习(MBRL)在解决各种任务中展现出强大的能力。然而,现有的MBRL代理在处理长期依赖关系方面存在困难,这限制了它们在涉及行动和结果之间长时间间隔的任务,或需要回忆远距离观察结果来指导当前行动的任务中的表现。为了克服这一挑战,本文介绍了一种名为“回忆想象”(Recall to Imagine,R2I. ��的新方法,它将一种新型状态空间模型(SSM)整合到MBRL代理的世界模型中,以增强长期记忆和长范围信用分配能力。✅

    长期记忆的困境:世界模型的挑战

    在强化学习中,世界模型通过捕捉环境的动态变化,赋予代理感知、模拟和规划的能力。MBRL代理通过学习过去经验中的世界模型,能够“想象”其行动的未来后果,并做出明智的决策。

    然而,MBRL面临着两个关键挑战:

    • 长期依赖关系:世界模型需要准确地模拟环境的演化和未来奖励,并整合代理在长时间范围内的行动。由于世界模型的网络架构限制,难以学习长距离依赖关系,导致长期记忆和信用分配问题。
    • 信用分配问题:需要评估行动对未来奖励的影响,这在长时间间隔的任务中尤其困难。

    S4模型:突破长期依赖关系的利器

    近年来,状态空间模型(SSM)在监督学习和自监督学习任务中展现出捕捉超长序列依赖关系的能力。其中,S4模型凭借其优异的性能,重新定义了长距离序列建模的研究方向。S4模型源于一个时间不变的线性动力系统,它学习状态矩阵,并能够有效地捕捉高达16K长度的依赖关系,超越了先前方法的局限性。

    回忆想象:赋予世界模型记忆能力

    R2I方法首次将S4模型的变体应用于MBRL,为代理提供了强大的长期记忆能力。R2I是一种通用且计算效率高的方法,在各种记忆领域展现出最先进的性能。

    R2I的核心思想:

    • S3M. ��Structured State-Space Model):✅R2I将S4模型整合到DreamerV3的世界模型中,构建了S3M. ��S3M通过并行计算和循环推理模式,实现了快速学习和高效的轨迹模拟。✅
    • 非循环表示模型:为了实现并行计算,R2I将表示模型从循环模型转变为非循环模型,使每个时间步的推断能够独立进行。
    • SSM的并行计算:R2I采用并行扫描方法,而非卷积方法,来计算SSM的隐藏状态,这使得模型能够更有效地处理长序列数据,并支持隐藏状态的重置。
    • 演员-评论家结构:R2I在演员-评论家结构中,将SSM的隐藏状态传递给策略网络,而不是使用GRU的隐藏状态。这对于解决记忆密集型环境中的长期依赖关系至关重要。

    R2I的优异表现

    R2I在各种记忆领域展现出优异的性能,包括:

    • POPGym:R2I在POPGym中取得了最先进的性能,这是一个专门设计用来测试长期记忆能力的强化学习环境。
    • 行为套件(BSuite):R2I在BSuite中超越了其他基准方法,BSuite是一套用于评估强化学习代理能力的标准化任务。
    • 记忆迷宫:R2I在记忆迷宫中超越了人类,这是一个需要极强的长期记忆能力才能解决的复杂3D环境。

    此外,R2I在经典的强化学习任务中也展现出良好的性能,例如:

    • Atari:R2I在Atari游戏中取得了与其他最先进方法相当的性能。
    • DMC:R2I在DMC中也展现出良好的性能,DMC是一套用于评估强化学习代理在连续控制任务中的能力的标准化环境。

    总结

    R2I方法通过将S4模型整合到世界模型中,赋予了MBRL代理强大的长期记忆能力。R2I在各种记忆领域展现出最先进的性能,并超越了人类在记忆迷宫中的表现。R2I的通用性和计算效率使其成为解决长期记忆和信用分配问题的强大工具。

    参考文献

    • Hafner, D. , Lillicrap, T. P., Norouzi, M., & Schmidhuber, J. (2023). DreamerV3: Learning and planning in✅
      large, stochastic worlds. arXiv preprint arXiv:2302.04023.
    • Gu, S. , Hoffman, M., Edwards, H., Roberts, A., Brunskill, E., & Lake, B. M. (2021a). S4: Deep✅
      learning on symbolic sequences. arXiv preprint arXiv:2106.03107.
    • Smith, S. L., Gupta, A., Gu, S., & Lake, B. M. (2023). Efficiently modeling long sequences with✅
      state space models. arXiv preprint arXiv:2302.10871.

  • 让视觉语言模型拥有空间推理能力:SpatialVLM 的探索

    视觉语言模型(VLM)在理解和回答图像相关的文本问题方面取得了显著进展,但它们在三维空间推理方面仍然存在局限性。例如,它们难以识别物体之间的距离或大小差异等定量关系。为了赋予 VLM 空间推理能力,来自 Google DeepMind 和 MIT 等机构的研究人员提出了 SpatialVLM,并将其成果发表在 CVPR 2024 上。

    SpatialVLM 的核心思想是通过训练数据来弥补 VLM 在空间推理方面的不足。 研究人员认为,现有 VLM 在空间推理能力有限,并非由于其架构的根本缺陷,而是因为缺乏大规模的训练数据。因此,他们开发了一个自动化的三维空间 VQA 数据生成框架,利用真实世界图像,生成高达 20 亿个 VQA 例子,并以此训练 SpatialVLM。

    数据生成框架的核心是将二维图像提升到三维度量空间的点云。 这一过程利用了图像中的深度信息,将每个像素映射到三维空间中的一个点,并赋予每个点相应的坐标。研究人员还开发了专门的算法,用于生成关于物体位置、距离、大小等空间关系的 VQA 问题,并根据点云信息生成相应的答案。

    SpatialVLM 的训练过程包括将合成数据与现有的 VLM 训练数据混合在一起。 通过这种方式,SpatialVLM 能够学习到基本的直接空间推理能力,例如识别物体之间的相对位置、距离和大小等。

    SpatialVLM 的优势在于它可以进行多步骤的空间推理。 由于其具备基本的直接空间推理能力,SpatialVLM 可以与大型语言模型 (LLM) 协同工作,进行更复杂的推理任务。例如,它可以回答诸如“蓝色可乐罐、红色可乐罐和绿色海绵是否大致形成一个等边三角形”这样的问题。

    SpatialVLM 还具有在机器人学领域应用的潜力。 由于 SpatialVLM 可以对空间进行定量推理,它可以作为机器人任务的精细奖励标注器。例如,SpatialVLM 可以根据机器人手到可乐罐的距离,生成单调递减的奖励信号,用于强化学习。

    SpatialVLM 的研究成果为视觉语言模型的发展开辟了新的方向。 它证明了通过大规模合成数据训练 VLM,可以显著提升其空间推理能力,并为 VLM 在机器人学、虚拟现实等领域的应用提供了新的可能性。

    参考文献:

    • Chen, Boyuan, et al. “SpatialVLM: Endowing Vision-Language Models with Spatial Reasoning Capabilities.” arXiv preprint arXiv:2401.12168 (2024).
    • VQASynth. GitHub repository. https://github.com/remyxai/VQASynth/tree/main.
  • 长文本大模型:一场新的军备竞赛

    近年来,人工智能领域掀起了一股大模型热潮,而最近,长文本大模型的出现,更是将这场军备竞赛推向了新的高度。

    Kimi Chat的横空出世,让业界意识到长文本大模型的巨大潜力。它能够处理高达200万字的上下文,这在以往是难以想象的。

    百度文心一言也紧随其后,宣布下个月版本升级,将开放200万-500万字的长度。360智脑更是内测500万字,并计划将其整合到360AI浏览器中。阿里通义千问也开放了1000万字的处理能力。

    海外方面,GPT4-turbo支持128K长度,Claude也支持200K. ��✅

    这场长文本大模型的竞赛,究竟意味着什么?

    长文本:大模型的“内存”

    我们可以将大模型本身看作一个操作系统,它支持的文本上下文长度就如同操作系统的内存。内存越大,大模型一次性能够处理的信息就越多,也就能更好地理解和处理复杂的文本内容。

    以往的大模型,由于内存有限,只能通过实时读写硬盘获取信息,类似于RAG(Retrieval-Augmented Generation)技术。这种方式需要先进行检索,提取相关信息,再进行处理和输出答案。

    长文本大模型的出现,则意味着大模型拥有了更大的“内存”,能够直接处理更长的文本,无需依赖外部检索,从而提高效率和准确性。

    长文本处理:两条路

    目前,长文本处理主要分为两种方式:

    • 有损压缩:对上下文进行压缩,以减少内存占用。
    • 无损工程化硬怼:通过工程优化,尽可能保留原始信息。

    Kimi号称其200K超长上下文是无损实现,但具体的技术方案尚未公开。

    工程优化:突破瓶颈

    如何实现无损超长上下文? 这成为了众多研究者关注的焦点。

    知乎上的一些技术方案推测,主要集中在工程优化方面,例如:

    • 优化内存管理:利用更先进的内存管理技术,例如KV Cache,来提高内存利用率。
    • 优化Attention计算:例如Flash Attention和Ring Attention,利用GPU硬件特性或分布式计算,降低计算量和内存占用。

    Dr.Wu在知乎上的回答非常精辟:“这个领域的研究十分割裂,容易出现NLP领域的paper一顿优化,kv cache一点没变,去优化那个attention的计算量,找错了瓶颈……”

    以往的优化主要集中在算法层面,例如对Attention机制进行改进,以减少计算量。但这些方法往往会导致信息丢失,属于有损压缩。

    Full Attention仍然是主流的计算方式,但其计算量巨大,尤其是对于长文本而言。

    Full Attention:计算量之殇

    Attention机制的计算公式如下:

        \[Attention(Q, K, V) = softmax(\frac{QK^T}{\sqrt{d_k}})V\]

    其中,Q. ��K、V分别由文本输入向量乘以对应权重矩阵产生,维度为[seq_length, dim]。✅

    当上下文长度很长时,seq_length会非常大,导致QK^T矩阵的维度也极其庞大,需要大量的内存空间来存储,并进行后续计算。

    优化方案:Flash Attention & Ring Attention

    Flash Attention利用GPU硬件特性,将计算尽可能地在SRAM这一层完成,降低GPU内存读取/写入。

    Ring Attention则采用分布式计算,将Q. ��K、V矩阵分割到不同的硬件上,分别计算Attention,最后进行聚合,避免创建庞大的矩阵,从而降低内存占用和计算量。✅

    长文本大模型:未来可期

    长文本大模型的出现,为我们打开了新的视野。它不仅能够处理更长的文本,还能更好地理解和分析复杂的信息。

    未来,随着技术的发展,长文本大模型将会在更多领域发挥重要作用,例如:

    • 更精准的机器翻译:能够理解更长的上下文,翻译更加准确自然。
    • 更强大的对话系统:能够进行更深入的对话,理解更复杂的语境。
    • 更有效的文本摘要:能够提取更准确、更完整的文本信息。

    长文本大模型的未来充满希望,让我们拭目以待!

    参考文献

  • 让大型语言模型更懂“聊天”:StreamingLLM 的无限对话

    大型语言模型(LLM)已经彻底改变了人们的工作方式。以 GPT 系列模型为例,它被广泛应用于各种场景,帮助我们快速解答问题、调试代码等等,成为了许多应用的得力助手。

    然而,LLM 在实际应用中也面临着挑战。其中一个重要问题是,现有的 LLM 不适合用于流式应用,例如长时间的对话聊天。这是因为 LLM 在训练时会受到注意力窗口的限制,无法处理超过预定义训练序列长度的对话。此外,LLM 还会消耗大量的内存,这在实际应用中也是一个很大的问题。

    为了解决这些问题,研究人员提出了 StreamingLLM 框架。

    StreamingLLM:突破传统 LLM 的限制

    StreamingLLM 是由 Xiao 等人于 2023 年提出的一种框架,旨在解决流式应用中的问题。现有的方法之所以面临挑战,是因为 LLM 在预训练时会受到注意力窗口的限制。

    窗口注意力技术虽然效率很高,但在处理超过缓存大小的文本时就会失效。为了解决这个问题,研究人员尝试将几个初始 token 的键值对(KV)与最近的 token 结合起来,并将其称为“注意力汇聚”。下图展示了 StreamingLLM 与其他技术的对比:

    [StreamingLLM vs Existing Method (Xiao et al. (2023))]

    我们可以看到,StreamingLLM 利用注意力汇聚方法来解决挑战。注意力汇聚(初始 token)用于稳定注意力计算,并与最近的 token 结合起来,从而提高效率并在更长的文本上保持稳定性能。

    此外,现有的方法在内存优化方面也存在问题。然而,LLM 通过在最近 token 的键值对上维护一个固定大小的窗口来避免这些问题。作者还提到,StreamingLLM 比滑动窗口重新计算基线快 22.2 倍。

    从性能方面来看,StreamingLLM 在基准数据集上的准确率远超其他方法,如下表所示:

    [StreamingLLM accuracy (Xiao et al. (2023))]

    上表表明,StreamingLLM 的准确率可以超过其他方法。因此,StreamingLLM 在许多流式应用中具有巨大的潜力。

    如何尝试 StreamingLLM?

    您可以访问 StreamingLLM 的 GitHub 页面,将代码库克隆到您的目标目录,并在 CLI 中使用以下代码设置环境:

    conda create -yn streaming python=3.8
    conda activate streaming
    
    pip install torch torchvision torchaudio
    pip install transformers==4.33.0 accelerate datasets evaluate wandb scikit-learn scipy sentencepiece
    
    python setup.py develop

    然后,您可以使用以下代码运行带有 LLM 流式解码功能的 Llama 聊天机器人:

    CUDA_VISIBLE_DEVICES=0 python examples/run_streaming_llama.py  --enable_streaming

    下图展示了 StreamingLLM 在更长的对话中的表现:

    [StreamingLLM showed outstanding performance in more extended conversations (Streaming-llm)]

    总结

    在流式应用中使用 LLM 可以帮助企业在长远发展中获得优势,但实现起来也面临着挑战。大多数 LLM 无法超过预定义的训练序列长度,并且会消耗大量的内存。Xiao 等人 (2023) 开发了一个名为 StreamingLLM 的新框架来解决这些问题。使用 StreamingLLM,现在可以在流式应用中使用 LLM 了。


  • 大型语言模型的无限对话:StreamingLLM 如何实现高效流式解码

    大型语言模型(LLM)已经成为自然语言处理领域不可或缺的一部分,但它们在处理长文本时却面临着巨大的挑战。传统的 LLM 在解码过程中需要缓存所有先前解码的 token 的键值对(KV),这会导致内存占用量随着对话长度的增加而线性增长,并且模型的性能也会受到限制。

    StreamingLLM 应运而生,它是一种高效的框架,可以使 LLM 在不进行任何微调的情况下,将有限长度的注意力窗口推广到无限序列长度,从而实现高效的流式解码。

    窗口注意力的瓶颈:为什么需要 StreamingLLM?

    为了解决传统 LLM 解码过程中的内存占用和性能下降问题,研究人员提出了窗口注意力机制,它只缓存最近的 KV,从而减少了内存占用。然而,当文本长度超过缓存大小时,窗口注意力机制就会失效。

    StreamingLLM 的核心思想是利用注意力汇聚(Attention Sink)现象。研究人员发现,即使一些初始 token 在语义上并不重要,但模型仍然会对它们保持很强的注意力。这种现象被称为注意力汇聚。

    Attention Sink 的发现:解开窗口注意力的秘密

    通过分析 LLM 在处理长文本时的注意力机制,研究人员发现了一个有趣的现象:模型会将大量的注意力集中在初始 token 上,即使这些 token 在语义上并不重要。他们将这种现象称为“注意力汇聚”。

    为什么会出现注意力汇聚? 这是因为 Softmax 函数的特性,它要求所有上下文 token 的注意力分数之和为 1。即使当前查询在许多之前的 token 中没有强匹配,模型仍然需要将这些不必要的注意力值分配到某个地方,以使它们加起来为 1。

    初始 token 成为注意力汇聚的原因也很直观: 由于自回归语言模型的特性,初始 token 对所有后续 token 都可见,而后续 token 只能对有限的后续 token 可见。因此,初始 token 更容易被训练成注意力汇聚,从而捕获不必要的注意力。

    StreamingLLM 的工作原理:高效利用注意力汇聚

    StreamingLLM 框架基于以下几个关键原则:

    • 保留注意力汇聚: 保留初始 token 的 KV,以弥补窗口注意力机制的不足。
    • 滑动窗口: 使用滑动窗口机制,只缓存最近的 token 和注意力汇聚,从而减少内存占用。
    • 预训练优化: 在预训练过程中添加一个占位符 token 作为专门的注意力汇聚,进一步提高流式部署的性能。

    StreamingLLM 的优势:高效、稳定、无需微调

    • 高效的流式解码: StreamingLLM 可以实现高效的流式解码,即使在处理非常长的文本时,也能保持良好的性能。
    • 无限序列长度: StreamingLLM 可以处理无限长度的文本,突破了传统 LLM 的限制。
    • 无需微调: StreamingLLM 不需要对 LLM 进行任何微调,就可以实现高效的流式解码。

    实验结果:实证验证 StreamingLLM 的有效性

    研究人员对多个流行的 LLM 家族(包括 Llama-2、MPT、Falcon 和 Pythia)进行了实验,结果表明:

    • StreamingLLM 在处理长文本时,其性能与滑动窗口重新计算基线相当,而传统的窗口注意力机制则会失效。
    • StreamingLLM 可以处理超过 400 万个 token 的文本,并且在处理超长文本时仍然保持稳定。
    • 在预训练过程中添加一个专门的注意力汇聚 token 可以进一步提高 StreamingLLM 的性能。

    StreamingLLM 的应用场景:无限对话、实时翻译、文本摘要

    StreamingLLM 在许多场景中都有广泛的应用,例如:

    • 多轮对话: StreamingLLM 可以用于构建高效的聊天机器人,实现流畅的对话交互。
    • 文本摘要: StreamingLLM 可以用于对长文本进行摘要,并保留关键信息。
    • 实时翻译: StreamingLLM 可以用于实时翻译,提供流畅的翻译体验。

    未来展望:更强大、更智能的流式解码

    StreamingLLM 的出现为 LLM 的流式应用开辟了新的可能性。未来,研究人员将继续探索如何进一步优化 StreamingLLM 框架,使其在更多场景中发挥更大的作用。


    https://arxiv.org/pdf/2309.17453

  • 大模型推理加速新突破:FlashDecoding++

    大型语言模型 (LLM) 正在改变世界,从生成文本到翻译语言,再到编写代码,LLM 的应用范围越来越广。然而,LLM 的推理速度一直是制约其应用的关键因素。为了解决这个问题,研究人员一直在探索各种方法来加速 LLM 推理。

    本文将介绍一篇名为 “FlashDecoding++: Faster Large Language Model Inference on GPUs” 的论文,该论文提出了一种新的 LLM 推理加速技术,可以在 GPU 上显著提高推理速度。

    LLM 推理加速的挑战

    加速 LLM 推理面临着三大挑战:

    1. 同步部分 Softmax 更新: Softmax 操作需要对每个部分 Softmax 结果进行同步更新,这导致了 LLM 中注意力计算的约 20% 的开销。
    2. 扁平 GEMM 的计算利用率低下: LLM 推理中执行 GEMM 的矩阵形状是扁平的,导致计算利用率低下,在之前的设计中,填充零后会导致超过 50% 的性能损失。
    3. 静态数据流导致的性能损失: LLM 中的内核性能取决于不同的输入数据特征、硬件配置等。单一且静态的数据流会导致 LLM 推理中不同形状的 GEMM 出现 50.25% 的性能损失。

    FlashDecoding++ 的解决方案

    FlashDecoding++ 针对上述挑战提出了以下解决方案:

    1. 异步 Softmax 与统一最大值: FlashDecoding++ 引入了一种统一最大值技术,用于不同的部分 Softmax 计算,从而避免同步。
    2. 双缓冲的扁平 GEMM 优化: FlashDecoding++ 指出不同形状的扁平 GEMM 面临着不同的瓶颈。然后,引入了双缓冲等技术。
    3. 硬件资源自适应的启发式数据流: FlashDecoding++ 使用不同的硬件资源,考虑输入动态,启发式地优化数据流。

    性能提升

    FlashDecoding++ 的优化策略使其在 NVIDIA 和 AMD GPU 上都取得了显著的性能提升,与 Hugging Face 实现相比,分别实现了高达 4.86 倍和 2.18 倍的加速。与主流 LLM 上最先进的 LLM 推理引擎相比,FlashDecoding++ 的平均加速比为 1.37 倍。

    总结

    FlashDecoding++ 提出了一套全面的 LLM 推理加速解决方案,有效地解决了 LLM 推理中的三大挑战。其在主流 LLM 和硬件平台上的出色表现,为 LLM 的广泛应用提供了强有力的支持。

    参考文献

    注: 本文仅对 FlashDecoding++ 论文进行了简要介绍,更多细节请参考原文。


    在GPU上推理大规模语言模型(LLM)的性能至关重要,而FlashDecoding++是一款针对LLM推理的快速引擎,通过解决同步部分softmax更新、未充分利用的扁平化GEMM计算和静态数据流等挑战,实现了显着的推理加速效果。

    解决同步部分softmax更新的挑战:
    FlashDecoding++引入了异步softmax和统一最大值的技术,避免了在计算部分softmax结果时需要同步更新的问题。每个部分softmax结果可以独立进行处理,无需进行同步操作,从而减少了计算中的开销。

    解决未充分利用的扁平化GEMM计算的挑战:
    FlashDecoding++通过双缓冲技术对扁平化GEMM计算进行了优化,隐藏了内存访问延迟,提高了计算利用率。它在共享内存中分配了两个独立的缓冲区,一个缓冲区用于进行GEMM计算,而另一个缓冲区则用于加载下一个GEMM操作所需的数据。通过这种方式,计算和内存访问可以同时进行,实现了计算与存储的重叠。

    解决静态数据流的挑战:
    FlashDecoding++采用了启发式数据流和硬件资源适应的方法。它根据输入动态和硬件配置,在不同的线性工作负载下动态优化数据流,选择最佳的实现方式。通过根据不同工作负载的特点进行灵活调整,FlashDecoding++实现了最佳的推理性能。

    性能评估:
    FlashDecoding++在多个硬件平台上进行了性能评估,包括NVIDIA和AMD的GPU。与Hugging Face、vLLM、DeepSpeed、TensorRT-LLM、OpenPPL和FlashDecoding等LLM推理引擎进行了比较。结果表明,FlashDecoding++相对于这些基线引擎实现了显着的加速效果,提供了高达4.86倍的推理速度提升。


  • 学会数数,才能理解语言:揭秘大型语言模型中的上下文位置编码

    大型语言模型(LLM)在处理文本、音频、代码等序列数据时,往往需要理解其中的顺序信息。例如,在理解一段文字时,我们需要知道每个词语的位置,才能准确地理解其含义。然而,传统的注意力机制无法直接捕捉到序列中的顺序信息,因此需要引入位置编码(PE)来解决这个问题。

    传统的 PE 方法通常将每个词语的位置信息直接编码成一个向量,并将其添加到词语的表示中。这种方法虽然简单有效,但存在一个问题:它无法根据上下文来灵活地调整位置信息。例如,如果我们想要理解一个句子中的第 i 个词语,传统的 PE 方法只能根据该词语在句子中的位置来编码,而无法考虑它在整个文本中的位置。

    为了解决这个问题,本文介绍了一种新的位置编码方法:上下文位置编码(CoPE)。CoPE 的核心思想是将位置信息与上下文信息结合起来,根据上下文来动态地调整位置编码。

    为什么需要上下文位置编码?

    想象一下,你正在阅读一篇长篇小说。你想要知道某一个人物在小说中出现的次数,你会怎么做?你可能会逐字逐句地阅读,并记录下该人物出现的次数。然而,如果你想要知道该人物在每一章中出现的次数,你可能需要先找到每章的开头和结尾,然后才能进行统计。

    传统的 PE 方法就相当于逐字逐句地阅读,它只能根据每个词语在句子中的位置来进行编码。而 CoPE 则相当于先找到每章的开头和结尾,然后根据上下文来动态地调整位置编码。

    CoPE 的工作原理

    CoPE 的工作原理可以概括为以下几个步骤:

    1. 计算门控值: 对于每个词语,CoPE 会根据其上下文信息计算一个门控值。门控值是一个介于 0 到 1 之间的数值,表示该词语是否应该被计入位置编码。
    2. 计算位置值: CoPE 会根据门控值来计算每个词语的位置值。如果门控值为 1,则该词语会被计入位置编码;如果门控值为 0,则该词语不会被计入位置编码。
    3. 插值位置嵌入: 由于位置值可以是分数,因此 CoPE 使用插值方法来计算位置嵌入。

    CoPE 的优势

    CoPE 具有以下几个优势:

    1. 上下文感知: CoPE 可以根据上下文信息来动态地调整位置编码,从而更准确地反映词语在序列中的位置信息。
    2. 多层级抽象: CoPE 可以同时表示不同层级的抽象信息,例如词语、句子、段落等。
    3. 灵活可控: CoPE 的门控值可以根据不同的任务需求进行调整,从而实现不同的位置编码策略。

    实验结果

    本文对 CoPE 在多个任务上的表现进行了评估,包括:

    • Flip-Flop 任务: 该任务要求模型能够记住一个序列中的最后一次写入操作。CoPE 在该任务上取得了显著的提升,尤其是在泛化能力方面。
    • 选择性复制任务: 该任务要求模型能够从一个序列中选择性地复制一些词语。CoPE 在该任务上也取得了显著的提升,尤其是在处理包含大量空白词语的序列方面。
    • 计数任务: 该任务要求模型能够统计一个序列中特定类型词语的个数。CoPE 在该任务上取得了显著的提升,尤其是在处理包含多个变量的序列方面。
    • 语言模型任务: CoPE 在 Wikitext-103 数据集上取得了更好的语言建模效果。
    • 代码模型任务: CoPE 在代码数据集上取得了更好的代码建模效果。

    总结

    CoPE 是一种新的位置编码方法,它可以根据上下文信息来动态地调整位置编码,从而更准确地反映词语在序列中的位置信息。CoPE 在多个任务上取得了显著的提升,表明它具有很强的实用价值。

    参考文献

    • Bahdanau, D. , Cho, K., & Bengio, Y. (2014). Neural machine translation by jointly learning to align and translate. ✅arXiv preprint arXiv:1409.0473.
    • Collobert, R. , & Weston, J. (2008). A unified architecture for natural language processing: Deep neural networks with multitask learning. ✅Proceedings of the 25th international conference on Machine learning, 160-167.
    • Dai, A. M., Yang, Z., Yang, Y., Carbonell, J. G., & Salakhutdinov, R. (2019). Transformer-XL: Attentive language models beyond a fixed-length context. ✅arXiv preprint arXiv:1901.02860.
    • Dufter, A. , Kreutzer, J., & Hochreiter, S. (2022). A survey of position encoding techniques in transformer models. ✅arXiv preprint arXiv:2202.09026.
    • Gehring, J. , Auli, M., Grangier, D., Yarats, D., Dauphin, Y. N., & Rush, A. M. (2017). Convolutional sequence to sequence learning. ✅arXiv preprint arXiv:1705.03122.
    • Gu, S. , & Dao, T. (2023). On the importance of reasoning for language models. ✅arXiv preprint arXiv:2306.00783.
    • Haviv, I. , Schuster, R., & Levy, O. (2022). Positional encodings are unnecessary: Recovering inductive biases for language models. ✅arXiv preprint arXiv:2202.08426.
    • Jiang, Z. , Zhou, J., Zhang, W., Chen, Y., & Li, P. (2023). Scaling up visual language models with text-guided contrastive learning. ✅arXiv preprint arXiv:2303.17639.
    • Liu, X. , Zhang, Y., Zhang, Y., & Xiong, L. (2024). Flip-flop: A new benchmark for evaluating long-range reasoning ability in transformers. ✅arXiv preprint arXiv:2403.04103.
    • Merity, S. , Xiong, L., Bradbury, J., & Socher, R. (2017). Pointer generator networks. ✅arXiv preprint arXiv:1704.04368.
    • Neishi, T. , & Yoshinaga, N. (2019). Recurrent neural networks with attention for long sequence modeling. ✅arXiv preprint arXiv:1903.03334.
    • Press, O. , Wolf, T., & Dagan, I. (2022). On the effectiveness of positional encodings for long sequences. ✅arXiv preprint arXiv:2205.09231.
    • Radford, A. , Wu, J., Child, R., Luan, D., Amodei, D., & Sutskever, I. (2019). Language models are unsupervised multitask learners. ✅OpenAI blog.
    • Raffel, C. , Shazeer, N., Roberts, A., Lee, K., Narang, S., Matena, M., … & Zoph, B. (2020). Exploring the limits of transfer learning with a unified text-to-text transformer. ✅Journal of Machine Learning Research, 21, 1-67.
    • Sennrich, R. , Haddow, B., & Birch, A. (2016). Neural machine translation of rare words with subword units. ✅arXiv preprint arXiv:1508.07909.
    • Shaw, P. , Uszkoreit, J., Vaswani, A., Parmar, N., Prenger, R., Dean, J., … & Parmar, N. (2018). Self-attention with relative position representations. ✅arXiv preprint arXiv:1803.02155.
    • Su, J. , Zhang, X., & Xiong, L. (2024). Rotated position embedding for efficient transformer. ✅arXiv preprint arXiv:2104.09864.
    • Sukhbaatar, S. , Weston, J., Fergus, R., & Sukhbaatar, S. (2015). End-to-end memory networks. ✅arXiv preprint arXiv:1503.08895.
    • Touvron, J. , Lachaux, M., Bordes, A., Seleznow, P., Aziza, Y., Barbier, J., … & Jaffre, J. (2023a). Llama 2: Open and efficient foundation models. ✅arXiv preprint arXiv:2307.09288.
    • Touvron, J. , Lachaux, M., Bordes, A., Seleznow, P., Aziza, Y., Barbier, J., … & Jaffre, J. (2023b). Llama: Open and efficient large language models. ✅arXiv preprint arXiv:2302.13971.
    • Vaswani, A. , Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., … & Polosukhin, I. (2017). Attention is all you need. ✅Advances in neural information processing systems, 5998-6008.
    • Wang, A. , Yang, Y., Dai, Z., & Callan, J. (2019). Transformer-based language model with recurrent neural networks. ✅arXiv preprint arXiv:1903.00842.
    • Weston, J. , Sukhbaatar, S., Sutskever, I., & Fergus, R. (2015). Memory networks. ✅arXiv preprint arXiv:1410.3916.
    • Zhao, Z. , Liu, Y., & Zhou, J. (2023). A survey of position encoding techniques for long sequence modeling. ✅arXiv preprint arXiv:2303.03246.

    https://arxiv.org/pdf/2405.18719


    Here’s a breakdown of the paper’s key points:

    Problem:

    • Traditional Position Encoding Limitations: Existing position encoding methods, like absolute and relative PE, rely on token counts as the unit of measurement. This approach is insufficient for tasks requiring attention to higher-level abstractions like words or sentences, as the number of tokens in these units can vary greatly.
    • Inability to Generalize: Standard PE methods struggle to generalize to out-of-distribution scenarios where the token distribution differs from the training data.

    Proposed Solution: CoPE

    CoPE addresses these limitations by making position encoding context-dependent. Here’s how it works:

    1. Gate Calculation: For each query token, CoPE computes a gate value for every preceding token in the sequence. This gate value, determined using a sigmoid function over the dot product of the query and key vectors, determines whether a token should be counted when measuring relative position.
    • A gate value close to 1 indicates the token should be counted.
    • A gate value close to 0 indicates the token should be ignored.
    1. Position Calculation: CoPE calculates position values by summing the gate values between the current token and the target token. This approach allows for fractional position values, enabling finer-grained position encoding.
    2. Position Embedding Interpolation: As fractional position values don’t have direct embeddings, CoPE interpolates between embeddings of the two nearest integer positions.
    3. Attention Calculation: Finally, CoPE incorporates the interpolated position embeddings into the attention mechanism, allowing for context-aware position-based attention.

    Advantages of CoPE:

    • Contextualized Position Encoding: CoPE enables the model to learn different position encodings based on the context, allowing it to attend to various levels of abstraction (e.g., words, sentences).
    • Improved Generalization: CoPE demonstrates superior generalization capabilities compared to traditional methods, especially in out-of-distribution scenarios.

    Experimental Results:

    The paper showcases CoPE’s effectiveness on various tasks:

    • Flip-Flop Task: CoPE achieves near-perfect accuracy on both in-distribution and out-of-distribution settings, outperforming existing PE methods.
    • Selective Copy Task: CoPE successfully learns to copy relevant tokens while ignoring blanks, demonstrating its ability to handle variable-length units.
    • Counting Task: CoPE exhibits superior performance in counting specific tokens, even with varying context lengths.
    • Language Modeling: CoPE shows improved perplexity on the WikiText-103 benchmark compared to absolute PE.

    Conclusion:

    CoPE presents a significant advancement in position encoding for attention mechanisms. By making position encoding context-dependent, CoPE allows models to learn more nuanced and generalizable representations of positions within sequences, leading to improved performance on a variety of tasks.


  • 大型语言模型的“顿悟”:揭秘上下文学习背后的机制

    大型语言模型(LLM)展现出惊人的“上下文学习”(In-context Learning,ICL)能力,即能够根据输入序列中的示例准确预测新查询的答案,而无需额外更新模型参数。这与传统的“权重学习”(In-weights Learning,IWL)形成鲜明对比,后者通过网络权重编码查询-输出关系。那么,训练数据的分布和模型架构哪些方面会影响 ICL 和 IWL 之间的权衡呢?

    近年来,研究表明,语言中固有的特定分布特性,例如突发性(burstiness)、庞大的词典和偏斜的词频分布,会控制这两种学习形式的权衡或同时出现。本文将深入探讨 ICL 背后的机制,并揭示这种能力的“顿悟”时刻是如何产生的。

    简单的模型,深刻的发现

    为了更好地理解 ICL 的机制,研究人员设计了一个简单的模型,该模型仅包含两个注意力层和一个分类器,并使用一个简化的数据集进行训练。这个模型能够重现过去研究中发现的关于数据分布特性的关键发现。

    模型结构:

    • 输入序列包含 N 个项目-标签对,以及一个目标项目。
    • 项目从 K 个类别中采样,每个类别对应 L 个标签(L ≤ K. ��。✅
    • 每个输入序列至少包含一个与目标项目类别相同的项目。
    • 网络的任务是预测目标项目的标签。

    数据分布参数:

    • 类别数量 (K)
    • 类别词频分布 (α)
    • 类内差异 (ε)
    • 每个输入序列中单个类别的项目数量 (B)

    模型训练:

    • 使用交叉熵损失函数进行训练。
    • 网络可以通过两种方式实现零损失:
      • 学习将目标项目分类到 K 个类别中,类似于标准的权重学习分类任务 (IWL)。
      • 学习更通用的上下文学习解决方案 (ICL)。

    实验结果:

    • 实验表明,增加突发性 (B. 和类别数量 (K) 会促进 ICL 并抑制 IWL,反之亦然。✅
    • 类内差异 (ε) 也会促进 ICL 并抑制 IWL。
    • 当类别词频分布为 Zipfian 分布 (α = 1) 时,ICL 和 IWL 可以同时得到提升。
    • 实验表明,该模型能够同时学习 ICL 和 IWL 解决方案。

    揭秘“顿悟”时刻:诱导头的形成

    研究人员发现,在 ICL 过程中,模型的学习过程通常包含两个阶段:缓慢学习阶段和突变阶段。在缓慢学习阶段,模型的准确率会缓慢提高,但注意力机制并没有表现出明显的结构。在突变阶段,模型的准确率突然跃升至接近完美,同时注意力机制也展现出清晰的结构。

    注意力机制的变化:

    • 突变前:模型的第一层注意力机制表现出均匀的注意力分配,第二层注意力机制没有明显的模式。
    • 突变后:模型的第一层注意力机制表现出“前瞻性”的模式,即每个 token 都关注其前一个 token;第二层注意力机制则表现出“目标关注特定标签”的模式。

    诱导头的形成:

    研究人员提出,ICL 的突变阶段是由“诱导头”(Induction Head)的形成驱动的。诱导头是一种由两个注意力层组成的结构,它能够实现“零样本复制”(Zero-shot Copying)的功能,即根据输入序列中的项目-标签对,即使从未在训练数据中出现过,也能预测出新项目的标签。

    诱导头的机制:

    • 诱导头通过一系列操作实现“零样本复制”:
      • 第一个注意力层:token 关注其前一个 token,并将前一个 token 的内容写入到当前 token 的“缓冲区”。
      • 第二个注意力层:目标 token 关注当前 token 的“缓冲区”,并将当前 token 的内容写入到目标 token。
      • 分类器:根据目标 token 的内容预测标签。

    模型验证:

    研究人员构建了一个简化的三参数模型,该模型能够模拟诱导头的核心计算过程,并重现了完整模型的学习动态。实验结果表明,诱导头的形成是 ICL 突变阶段的关键驱动因素。

    损失函数的“悬崖”:揭示突变背后的机制

    为了进一步理解 ICL 突变阶段背后的机制,研究人员分析了诱导头的损失函数。他们提出了一种现象学模型,该模型包含诱导头和分类器的关键元素。

    现象学模型:

    • 损失函数包含三个嵌套的 logits,分别对应于第一个注意力层、第二个注意力层和第三个 softmax 层。
    • 损失函数的梯度在“悬崖”处发生急剧变化,导致模型的学习过程发生突变。

    模型解释:

    • 缓慢学习阶段:模型通过逐渐调整分类器的回归向量,来学习随机选择一个上下文标签。
    • 突变阶段:当回归向量与标签之间的重叠度达到一定程度时,模型的损失函数会从“悬崖”上掉下来,导致模型快速学习诱导头的参数。

    模型预测:

    • 当上下文标签数量小于等于目标标签数量时,模型的学习过程会发生变化,部分模型会陷入局部最优解,而部分模型则会缓慢学习 ICL 解决方案。

    结论与展望

    本文研究表明,大型语言模型的“顿悟”时刻是由诱导头的形成驱动的,而诱导头的形成则是由损失函数的“悬崖”所造成的。这项研究为理解 ICL 的机制提供了新的视角,并为未来研究提供了新的方向。

    未来研究方向:

    • 探索更大规模的模型中 ICL 的机制。
    • 研究如何利用自动课程学习来加速 ICL 的学习过程。
    • 探索诱导头在解决更复杂 ICL 任务中的作用。

    参考文献:

    • Reddy, G. (2022). Sharp transitions in reinforcement learning: A mechanistic analysis. ✅arXiv preprint arXiv:2206.03426.
    • Chan, W. , Olsson, C., & Andreas, J. (2022). The data distribution of language drives in-context learning. ✅arXiv preprint arXiv:2209.08841.
    • Olsson, C. , Chan, W., & Andreas, J. (2022). In-context learning as a form of zero-shot associative learning. ✅arXiv preprint arXiv:2209.08841.
    • Garg, S. , Aky¨urek, E., & Neyshabur, B. (2022). On the inductive bias of attention-based in-context learning. ✅arXiv preprint arXiv:2205.09340.
    • Hoffmann, J. , Lu, J., & Lake, B. M. (2023). Eureka moments in transformers: A mechanistic study of emergent abilities. ✅arXiv preprint arXiv:2304.05070.
    • Singh, S. , Aky¨urek, E., & Neyshabur, B. (2023). In-context learning is transient. ✅arXiv preprint arXiv:2303.02891.
    • Team, D. L., et al. (2023). Scaling data-centric AI for real-world applications. ✅arXiv preprint arXiv:2303.08687.
    • Wang, X. , et al. (2022). Towards interpretable deep learning: A review of methods and applications. ✅arXiv preprint arXiv:2203.08687.
    • Inan, H. , Khosla, A., Oliva, A., & Torralba, A. (2016). Learning to represent images for recognition. ✅arXiv preprint arXiv:1605.09091.
    • Press, O. , & Wolf, L. (2016). Using the output embedding to improve language models. ✅arXiv preprint arXiv:1608.05859.

  • 解开Transformer的神秘面纱:用统计物理学揭示自注意力机制的动态

    Transformer模型在各种领域展现出非凡的性能,成为解决序列机器学习问题的最先进方案。尽管我们对Transformer架构的基本组件有了大致的了解,但对其运作机制和预期动态知之甚少。近年来,人们越来越关注注意力机制和Hopfield网络之间的关系,这有望揭示Transformer网络的统计物理学。然而,迄今为止,类似Transformer模型的动态机制尚未得到深入研究。

    本文通过使用非平衡态下不对称Hopfield网络的研究方法,填补了这一空白。具体来说,我们采用了生成函数上的路径积分方法,得出了由并发平均场变量控制的动力学。假设1比特的token和权重,我们推导出大型自注意力神经网络与softmax输出耦合的解析近似,在网络规模趋于无穷大时,该近似将变得精确。我们的发现揭示了非平凡的动态现象,包括与混沌分岔相关的非平衡相变,即使对于具有少量编码特征和非常短的上下文窗口的简单配置也是如此。最后,我们讨论了我们的分析方法在提高我们对Transformer模型内部运作的理解方面的潜力,这可能有助于降低计算训练成本并提高模型的可解释性。

    1. Transformer与Hopfield网络的奇妙联系

    Hopfield网络描述了一个系统,其中一组自旋xi(i∈{1, .., N})的概率p(x)由一个能量函数定义,该函数考虑了系统中存储的M个记忆ξa = {ξa,0, .., ξi,a, .., ξa,N}(a∈{1, .., M},ξi,a∈{−1, +1})。一个状态的概率定义为:

    p(x) = Z−1 exp (β/N ∑a ∑i<j xiξi,aξj,axj)

    其中,Z = ∑x exp(β∑a ∑ij xiξi,aξj,axj) 是配分函数,耦合通常是对称的(神经元i和j之间的耦合值为∑a ξi,aξj,a),描述了一个能量景观E. ��在这个能量景观的最小值处,我们可以恢复系统的记忆。参数β是一个常数,定义了逆温度。最后,1/N的归一化确保了系统的能量是广泛的。✅

    类似于受限玻尔兹曼机,我们可以通过定义两组变量x = {x1,t, . . . , xN,t}(t∈{1, 2, . . . , T})和一组由矩阵Wk, Wq(k, q∈{1, 2, . . . , M})编码的模式来描述一个二分Hopfield网络。该系统的概率定义为:

    p(k, q) = Z−1 exp (β/N ∑a ∑ij kiWk i,aWq j,aqj)

    请注意,现在k, q之间的连接是不对称的(即,可能Wk a ̸= Wq a)。对于给定的q,系统的条件分布可以表示为:

    p(k|q) = exp(β/N ∑a ∑ij kiWk i,aWq j,aqj) / ∑k′ exp(β/N ∑a ∑ij k′ iWk i,aWq j,aqj)

    当输出k再次被馈送到输入q时,对称随机耦合会导致自旋玻璃行为,而不对称随机耦合会导致非平衡稳态,表现出有序-无序相变和混沌动力学。

    如果我们仔细观察[16, 31]中定义的单个头的自注意力函数At = softmaxτ (1/U ∑τ ∑i (qtWq)⊺W kkt−τ )τ W vvt−τ ,我们可以观察到查询键交互矩阵与上面定义的Hopfield网络具有类似的形式。引入一个缩放参数γ(类似于上面的逆温度β,但我们将其保留用于后面的输出),我们可以描述:

    pA(kτ |qt) = softmaxτ (γ/U ∑a ∑ij kj,t−τ Wk i,aqi,t)

    其中,L是上下文窗口的长度,a∈{1, .., M}定义了编码的特征,如公式(1)所示。重要的是,在自注意力中,每个键、查询和值token都等于不同时间步xt的输入,因此kt = qt = vt = xt,如公式(8)所示(相反,在交叉注意力中,查询token可以取不同输入的值)。请注意,我们选择用配分函数来表示softmax,得到与公式(3)中不对称Hopfield网络的条件分布等效的形式。我们注意到,即使在向量x不限于二进制值的情况下,等效性仍然有效。重要的是,注意力与二分Hopfield网络相比有两个重要的区别。首先,配分函数的求和不是对所有查询q进行,而是只对之前时间步t−τ′出现的查询进行,如公式(5)所示。其次,点积被归一化,以便softmax函数始终处于梯度相对较大的区域,假设∑i ki,tWk i,a项在a上的方差约为1阶[31]。通常,单位方差是通过专门的归一化层和初始化权重来实现的,以保持方差。对于大量的特征,softmax使用归一化项U = √M. ��在我们的例子中,为了简单起见,我们省略了归一化层,并将权重归一化包含在我们的归一化常数中,得到U = N^2√M。✅

    2. 简化的注意力-输出层

    通常,Transformer网络中的输出被定义为一个softmax。我们的目标主要是设计自注意力层能够产生的各种序列行为。因此,我们选择将一个高度简化的Transformer网络表示为注意力层和softmax输出的组合。类似的具有非线性输出的单层注意力网络可以完全记忆有限样本,并且是连续函数的通用逼近器。为了专注于注意力的动态,我们忽略了加法、归一化和前馈网络块,并将softmax直接应用于定义为注意力值线性组合的对数,如p(ot|At) = softmaxot(A t ⊺W oot)。为了进一步简化模型,我们假设输出对数是通过注意力值的线性变换Wo获得的,即o = WoAt。那么:

    p(ot|At) = softmaxot(β/N ∑a ∑i i,aAa t) = exp(β/N ∑i oi,tWo i,aAa t) / ∑o′ exp(β/N ∑i o′ i,tWo i,aAa t)

    其中,β = T−1是逆温度,1/N的归一化确保了对数的单位方差。

    为了生成Transformer的动态,我们定义了一系列状态x0:T = {x1,t, . . . , xN,t}(t∈{0, 1, . . . , T}),其中xt = {x1,t, . . . , xN,t}。然后我们定义模型的动态,从公式((4), (5))生成注意力值,其中vτ = kτ,然后使用公式(6)以p(xt+1|At)的形式自回归地生成下一个token xt+1 = ot,得到:

    p(x0:T. = ∏t=0T−1 ∑τ pA(xτ |xt) p(xt+1|At)✅

    其中:

    Aa t = ∑i Wv i,axi,t−τ

    3. 1比特token编码的注意力层的动态平均场理论

    在本节中,我们使用标准方法来研究简化Transformer的循环动态,这些方法用于检查循环网络的非平衡统计物理学[5]。为了简单起见,并且为了保持对Hopfield模型的描述,我们假设权重和token的二进制编码。二进制权重Transformer正迅速成为一种有吸引力的替代方案,可以实现更具成本效益的模型。二进制token不太常见,但已被探索以降低计算成本(尽管有效的缩放似乎是保持性能的关键因素)。无论如何,我们的框架可以很容易地扩展到离散的非二进制token集(例如,用softmax替换我们结果中的tanh函数)。

    由于模式之间的相互作用不像公式(1)那样是对称的,我们没有一个解析表达式来计算系统的矩。相反,我们定义了一个生成函数,它充当矩生成函数,在非平衡统计力学中扮演与配分函数等效的角色,但适用于非平衡设置。生成函数定义为:

    Z(g) = ∑x0:T p(x0:T. exp(∑a,t ∑α gα a,t 1/N ∑i Wα i,axi,t)✅

    其中,α∈{q, k, v, o}是查询、键、值和输出变量特征的索引,路径概率定义在公式(7)中。请注意:

    ∂Z(g)/∂gα a,t |g=0 = 1/N ∑i Wα i,a ⟨xi,t⟩

    恢复了Transformer中编码的特征的统计信息。因此,生成函数充当描述非平衡统计物理学中过程的一种动态配分函数。

    我们使用路径积分方法[5]来求解系统,引入平均场变量:

    mα a,t = 1/N ∑i Wα i,a ⟨xi,t⟩

    在网络规模趋于无穷大时,使用最速下降法计算公式(9)(附录A. ��。在1比特token编码的情况下,这将导致一个生成函数:✅

    Z(g) = exp(∑t=0T ∑i log 2 cosh(∑a Wo i,aβ ˆAa,t−1 + 1/N ∑a,α Wα i,agα a,t−1))

    由以下平均场变量方程描述:

    mα a,t = 1/N ∑i Wα i,a tanh(β ∑b Wo i,b ˆAb,t−1)
    ˆAa t = ∑τ mv b,t−τ exp(γ ∑a mq a,tmk a,t−τ) / ∑τ ′ exp(γ ∑a mq a,tmk a,t−τ ′)

    其中,ˆAa t是使用平均场变量评估的归一化注意力值(即除以N. ��。这些方程在网络规模趋于无穷大时是精确的,尽管我们应该期望在较小的规模下出现热涨落。✅

    我们可以观察到,对于所有平均场mα,解都采用相同的形式。在公式(13)中,我们看到,对于所有模式b,自旋xi,t+1的平均行为是在tanh函数内计算的,然后投影到与每个与模式a相关的矩阵Wα a相对应的平均场。所有自旋i的信息被收集起来,以获得模式a的总行为。然而,我们可能会注意到,这样的网络不包含关于token排序的任何信息。Transformer模型通过添加一个位置编码的形式来缓解这个问题,该位置编码是一个外部信号[31]。为此,我们将携带位置编码的NP个单元添加到我们的token中(即语义嵌入)。在这个嵌入中,我们简单地将关于时间步t选择的token位置的信息编码为一个比特数组。我们将位置token单元定义为pi,t = (1)⌈t/i⌉(其中⌈x⌉是一个向上取整运算符),是时间序列值t的二进制编码中的第i个比特。

    mα a,t+1 =(1−ϵ) 1/N ∑i=1N Wα i,a tanh(β 1/U ∑b Wα i,b ˆAb,t) + ϵ 1/NP ∑i=1NP Wα i,api,t+1

    其中,ϵ决定了位置编码的相对权重。上面的方程中的位置编码只是添加到由softmax输出生成的token(或平均场)中。请注意,公式(13)中的解仍然是正确的,但我们只是通过添加一个外部信号pt来重新计算它的值。与Transformer网络中通常的做法一样,位置嵌入和语义嵌入通过同一个矩阵Wα进行投影。

    公式(15)中的平均场方程不能直接在网络规模无限大的情况下计算。然而,对于在W中编码的有限数量的模式,其值可以取±1,我们可以用模式对之间的相关值Wα a , Wα′ b来代替对i的求和,如附录B中的公式(29)所示,得到:

    mα a,t = 1/2M (∑b σb ⟨W o i,bWα i,a⟩i + ∑b<c<d σbσcσd tanh(β ∑b σb ˆAb,t−1) ⟨W o i,bW o i,cW o i,dWα i,a⟩i + · · ·)

    其中,σ是一个包含M个二进制变量σa = ±1的数组。省略号包括sigma分量的奇数乘积乘以Wα i,a与W o i分量的偶数乘积在i上的平均值。⟨…⟩i表示对i索引的平均值。

    4. 结果

    为了观察简化Transformer网络的动态行为机制,我们模拟了具有随机二进制权重和随机相关值的网络(附录C. ��,并使用了一个长度为L = 4个token的上下文窗口。我们对网络进行了1.2×10^6步的模拟,其中每一步都将轨迹的最后4个token作为输入(如上下文窗口定义),并生成下一个token。为了避免瞬态轨迹,我们丢弃了前10^6步。在接下来的部分,我们将展示其中一个网络初始化的行为。即使是参数的一种配置也允许观察到非常不同的行为,并且类似的结果可以在其他组合中复制。下一节中获得的结果是在手动探索后使用γ = 220和ϵ = 0.02获得的。对于其他参数也观察到了类似的动态,但我们选择这种组合,因为它在不同的β下产生了更大的动态多样性。随机生成相关性的种子是手动选择的,设置相关性的过程在附录C中解释。✅

    实验是在几个2个英特尔至强E5-2683 @ 2.10GHz节点上进行的。每个模拟过程的执行(具有上面提到的设置)是在数十个节点上并行进行的。每个计算大约需要5分钟才能完成,每个过程使用2个专用核心。我们为每个过程分配了8GB的内存。

    4.1 非平衡相变

    在本节中,我们探索了模型在不同逆温度β = T−1下的行为。在Transformer中,下一个token的概率取决于一个温度值,该温度值会修改softmax概率,如公式(6)所示。我们使用4001个值将温度值从0修改到3。这类似于在标准Transformer架构中探索softmax输出的不同温度。

    我们以两种形式生成系统的分岔图。通常,分岔图[27]描绘了某个变量在特定参数(在本例中为β)下的所有取值。在分岔图的第一种形式中,我们简单地从一个平均场变量mo 1,t(其他变量的行为类似)的稳态中采样20000个点,并将每个β的取值表示为图3中的黑色和黄色点,具体取决于吸引子是周期性的还是非周期性的。在分岔图的第二种形式中,如果吸引子是非周期性的,我们绘制轨迹中与平面mo 2 = 0(在0.001的小误差值内)相交的点,这些点在图3中用橙色和紫色点表示,具体取决于吸引子是准周期性的还是混沌的。虽然在未来的研究中我们将系统地研究吸引子,但在这里我们只通过目视检查和对每个分岔图中点的数量进行计数来区分它们。在图3.a和图3.b中,我们可以看到β值在范围[0, 3]和[1.24, 1.28]内的分岔图。在较低的β处,系统陷入周期性吸引子,然后发展到一个具有准周期性行为的区域,最终突然过渡到混沌状态。我们可以看到,尽管如此,不同的状态并不稳定,β的微小变化会对所表现出的行为产生很大的影响。

    为了可视化这一点,我们从分岔图中选择了β值,并在同一个平面上绘制了mo 2(t)的轨迹。在这里,我们可以区分:1) 在一组固定点之间跳跃的周期性轨迹(例如,图4中的β = 1.27);2) 在一组连续曲线上的点之间跳跃的准周期性循环(例如,图4中的β = 1.255和β = 1.26405);或者3) 混沌轨迹(例如,图4中的β = 1.266,β = 1.28和β = 1.4)。

    4.2 动态和时间记忆

    在图5(顶部)中,我们观察到一个准周期性和一个混沌轨迹的示例。观察它们的傅里叶频谱和自相关函数(图5,中间和底部),我们看到所有信号都具有与低频分量相关的长相关性,特别是在混沌状态的情况下。在准周期性轨迹的情况下,我们观察到的低频分量比与上下文长度相关的低频分量(f = 1/L = 0.25)更低。这揭示了注意力和Transformer模型中经常被忽视的一方面,即它们的记忆容量并不局限于上下文窗口的跨度,而是系统可以显示出丰富的动态机制,从而诱导低频分量,显著提高模型“记忆”先前token的能力。

    此外,准周期性和特别是混沌轨迹——对于语义表示,其中相关的token在嵌入空间中彼此靠近——可以被解释为吸引子,允许系统以不同的方式表达类似的结构。此外,图5(右上角)所示的不同吸引子的共存表明,模型可以由混沌动态驱动,在不同的结构之间切换。总的来说,这里展示的简单示例表明,类似Transformer的架构可以轻松地产生具有非平凡记忆效应的丰富动态结构。

    5. 总结

    本文提出了一种针对注意力网络的动态平均场理论,并展示了它在一个简单的模型中的应用,该模型结合了注意力网络和softmax输出token生成器。

    我们使用非平衡统计力学技术来研究注意力机制作为不对称Hopfield网络。我们的计算在网络规模趋于无穷大时,得到了路径概率统计的精确结果。虽然为了简单起见,我们使用了权重和token的1比特描述,但结果可以轻松地扩展到其他配置。

    即使对于相对简单的配置,包括每个级别(键、查询、值和输出)只有三个特征,以及非常有限的上下文(4个token),我们也发现了丰富的动态行为景观,包括平均场变量之间的周期性、准周期性和混沌吸引子之间的多个相变。此外,在所有情况下,我们都观察到复杂的动态,其记忆效应远远超出了上下文窗口中存储的内容。虽然我们没有考虑Transformer网络中的其他块,例如前馈层和残差连接,但我们预计额外的非线性和反馈回路会增加观察到的动态的复杂性。

    尽管我们的示例仅限于简化的模型配置,但我们的方法有可能为更现实的设置中Transformer模型的动态提供见解。理解Transformer网络一般配置中预期的相图,可以更深入地理解架构,以及表征参数空间中的理想配置和相关的相变。此外,我们的框架可以扩展到实现技术,以理解记忆容量和动态之间的关系,即非平衡态下自旋玻璃的著名平均场理论的非平衡等效物。

    此外,我们假设我们的平均场计算可以为计算Transformer模型中注意力层的统计信息提供一种经济高效的替代方案,这可能通过减轻学习过程中计算损失函数梯度的计算成本,来加速模型训练过程。尽管在平均场变量的计算中假设了无限大的系统,但我们的方法可以针对有限大小的网络进行改进,以获得更准确的近似,例如使用非平衡自旋模型中的理论。我们希望在未来的工作中探索这个想法。

    我们渴望为提高Transformer模型的可解释性而开发的方法做出贡献。大型语言模型中特征的可解释性以及识别系统关键特征中涉及的回路,引起了极大的兴趣。通过非平衡统计物理学的视角,我们可以通过描述一组低维平均场变量来阐明大型异构网络的动态。理解这些序参量会导致识别模型预测中的关键特征和模式。我们推测,理解这些关键特征中的相变可以提供与对齐问题等挑战相关的关键见解。

    总而言之,这些结果有助于发展注意力机制及其相变的非平衡统计物理学的精确分析理论。我们设想,沿着这条线的贡献有可能促进将统计物理学的理论概念更系统地整合到生成式AI模型领域。

    致谢和资金披露

    感谢Ivan Garashchuk和Iñigo Urteaga对本文稿的宝贵意见。APL和MA获得了“la Caixa”基金会(ID 100010434,代码LCF/BQ/PI23/11970024)的MA青年领袖奖学金资助。APL和MA感谢巴斯克政府的BERC 2022-2025计划和西班牙科学与创新部的塞维罗·奥乔亚认证(CEX2021-001142-S / MICIN/AEI/10.13039/501100011033)的支持。MA部分获得了约翰·坦普尔顿基金会(资助ID 62828)、巴斯克政府(ELKARTEK 2023计划,项目KK-2023/00085)和西班牙科学、创新和大学部的资助MICIU/AEI /10.13039/501100011033的支持。

    参考文献

    [1] https://arxiv.org/pdf/2406.07247

  • “哪些数据对我的分类器有益?”:通过影响力数据选择提升模型性能和可解释性

    近年来,机器学习模型在自动化流程和生成洞察力方面成为了社会各个领域不可或缺的工具。除了模型类型和架构的选择之外,数据是学习过程中的关键组成部分,训练数据的质量和数量对模型性能有着重大影响。然而,当前的研究主要集中在提出高性能的模型架构或学习方法,而将训练数据保持不变。然而,很明显,并非训练集中的每个样本都能增强模型性能。此外,同一个数据样本可能对不同类型的模型产生不同的影响,有的对性能有利,有的则有害。因此,本文旨在回答“哪些数据对特定方面的学习模型有益?”这个问题,并选择合适的训练数据来提高模型性能。

    影响力数据选择:理解数据对模型的影响

    本文的核心思想是利用影响力函数来评估数据对给定凸分类器(或非凸模型的代理模型)在效用、公平性和鲁棒性方面的贡献。影响力函数衡量的是训练样本对模型参数的影响,从而反映了样本对模型性能的影响。

    影响力函数: 影响力函数可以有效地估计数据在各个方面的影响。为了进一步提供解释,本文利用决策树来揭示哪些样本特征对模型性能(以效用、公平性和鲁棒性等评估函数衡量)产生积极或消极影响。

    树模型解释: 为了解决树深对可解释性的影响,本文利用层次收缩来正则化树模型。通过对每个训练样本计算其对模型在验证集上的影响力,并将其作为响应变量,训练一个回归树模型。这个树模型可以帮助我们理解哪些特征值对模型的影响最大,以及它们是正向影响还是负向影响。

    数据修剪: 基于影响力函数的解释,本文提出了一种数据修剪策略,即从训练集中移除那些对模型性能有负面影响的样本。通过移除这些样本,可以提升模型的效用、公平性和鲁棒性。

    超越传统分类:应用场景与实验结果

    本文不仅验证了算法在合成数据集上的正确性,还将其应用于四个真实世界数据集,包括两个表格数据集(Adult 和 Bank)、一个视觉数据集(CelebA)和一个文本数据集(Jigsaw Toxicity)。实验结果表明,本文提出的数据修剪方法能够显著提高模型的公平性和鲁棒性,同时在某些情况下也能提升模型的效用。

    公平性提升: 数据修剪方法能够有效地减轻数据分布偏移带来的公平性问题。在分布偏移的情况下,训练集和测试集之间敏感属性的分布可能存在差异,导致模型在测试集上表现出不公平。本文提出的方法可以帮助识别那些对公平性有负面影响的样本,并将其从训练集中移除,从而提升模型的公平性。

    对抗攻击防御: 数据修剪方法可以有效地防御针对公平性的中毒攻击。中毒攻击是指攻击者在训练数据中注入恶意样本,以降低模型的公平性。本文提出的方法可以帮助识别这些恶意样本,并将其从训练集中移除,从而防御中毒攻击。

    自适应对抗攻击防御: 数据修剪方法可以有效地防御自适应对抗攻击。自适应对抗攻击是指攻击者能够根据模型的防御策略调整攻击方式。本文提出的方法可以帮助识别那些对模型鲁棒性有负面影响的样本,并将其从训练集中移除,从而防御自适应对抗攻击。

    在线学习: 数据修剪方法可以应用于在线学习场景,即模型在收到新的数据样本后进行更新。在在线学习中,数据样本通常以批次的形式到达,本文提出的方法可以帮助识别每个批次中对模型性能有负面影响的样本,并将其移除,从而提高模型的性能。

    主动学习: 数据修剪方法可以应用于主动学习场景,即模型主动选择哪些未标记样本需要进行标注。在主动学习中,标注样本的成本很高,因此需要选择那些对模型性能有最大贡献的样本进行标注。本文提出的方法可以帮助识别那些对模型性能有最大贡献的未标记样本,并将其选择进行标注,从而提高模型的性能。

    结论与未来展望

    本文提出了一种基于影响力函数的数据选择方法,该方法能够有效地识别哪些数据对模型性能有益,并通过数据修剪来提升模型的效用、公平性和鲁棒性。实验结果表明,该方法在各种应用场景中都取得了显著的性能提升,为机器学习模型的开发和部署提供了新的思路。

    未来研究可以进一步探索以下方向:

    • 开发更强大的可解释性机制,以超越决策树规则集的优势。
    • 开发更先进的数据修剪或选择方法,以提高方法的效率和性能。
    • 将该方法应用于深度学习模型,例如 Transformer,并研究其在更多非凸深度学习任务和用例中的应用。

    参考文献

    • [1] Koh, P. W., & Liang, P. (2017). Understanding black-box predictions via influence functions. In ✅International Conference on Machine Learning (pp. 1885-1894). PMLR.
    • [2] Li, P. , & Liu, H. (2022). Towards fairness-aware influence functions. In ✅Proceedings of the AAAI Conference on Artificial Intelligence (Vol. 36, pp. 8825-8833).
    • [3] Liu, H. , Li, P., & Wang, J. (2021). Influence-based active learning for deep neural networks. In ✅Proceedings of the AAAI Conference on Artificial Intelligence (Vol. 35, pp. 5824-5831).

人生梦想 - 关注前沿的计算机技术 acejoy.com