博客

  • PowerInfer: 让你的消费级显卡也能飞速运行大型语言模型

    大型语言模型(LLM)凭借其强大的文本理解和生成能力,已经深刻地改变了我们的生活和工作方式。然而,这些模型通常运行在配备高端服务器级 GPU 的数据中心,这使得它们对于个人用户来说难以触及。近年来,将 LLM 部署到个人电脑(PC)上,尤其是配备消费级 GPU 的 PC 上,成为了一个热门趋势。这主要是因为个人用户希望拥有更高的数据隐私、更强的模型定制能力以及更低的推理成本。

    与数据中心部署优先考虑高吞吐量不同,本地部署更关注低延迟,尤其是处理单个请求时。但是,将 LLM 部署到消费级 GPU 上也面临着巨大的挑战,主要是因为它们的内存需求非常大。LLM 通常采用自回归 Transformer 架构,逐个生成文本标记,每次生成都需要访问整个模型,而模型可能包含数百亿甚至上千亿个参数。因此,推理过程受到 GPU 内存容量的严重限制,尤其是在本地部署中,因为单个请求(通常一次只有一个)无法充分利用并行处理能力。

    目前解决内存问题的方案包括模型压缩和卸载。压缩技术,例如量化、蒸馏和剪枝,可以减小模型尺寸。然而,即使是深度压缩后的模型对于消费级 GPU 来说仍然太大。例如,一个 4 位精度的 OPT-66B 模型仅仅加载参数就需要大约 40GB 的内存,这超出了即使是高端 GPU(如 NVIDIA RTX 4090)的容量。模型卸载,将模型在 Transformer 层级上分配到 GPU 和 CPU 之间,可以减轻 GPU 内存压力。例如,llama.cpp 将层分配到 CPU 和 GPU 内存中,利用两者进行推理,从而减少了 GPU 资源需求。然而,这种方法受到 PCIe 互连速度慢和 CPU 计算能力有限的限制,导致推理延迟很高。

    PowerInfer 的突破:利用 LLM 推理中的高局部性

    本文介绍了 PowerInfer,一个针对配备单个消费级 GPU 的 PC 的本地部署而优化的 LLM 推理系统。PowerInfer 的核心思想是利用 LLM 推理中的高局部性,将少量频繁激活的神经元分配到 GPU 上,而将大多数不常激活的神经元分配到 CPU 上。PowerInfer 在离线阶段预先选择并预加载 GPU 上的频繁激活神经元,并在运行时利用在线预测器识别激活的神经元。这种方法允许 GPU 和 CPU 独立处理各自的神经元集,从而最大限度地减少了昂贵的 PCIe 数据传输需求。

    PowerInfer 的关键技术

    PowerInfer 采用了一种自适应的预测器构建方法,针对激活稀疏性和偏度较高的层构建更小的预测器,从而释放 GPU 内存用于 LLM 推理。此外,PowerInfer 还设计了神经元感知的稀疏运算符,直接与单个神经元交互,从而绕过对整个矩阵的操作,实现了高效的神经元级矩阵向量乘法,并避免了对特定稀疏格式进行转换的需要。

    PowerInfer 的性能评估

    性能评估表明,PowerInfer 在配备单个 NVIDIA RTX 4090 GPU 的 PC 上,量化模型的平均生成速度为 13.20 个标记/秒,非量化模型的平均生成速度为 8.32 个标记/秒,同时保持了模型精度。这些结果显著优于 llama.cpp,量化模型的平均加速比为 7.23 倍,非量化模型的平均加速比为 11.69 倍。更重要的是,在 NVIDIA RTX 4090 GPU(价格约 2000 美元)上实现的推理速度仅比能够完全容纳模型的顶级 A100 GPU(价格约 20000 美元)慢 18%。

    PowerInfer 的未来展望

    PowerInfer 的源代码已公开发布,并计划在未来进一步完善,例如:

    • 支持更多类型的 LLM 模型,例如 Mistral-7B 和 Bamboo-7B。
    • 支持 Windows 系统。
    • 支持 text-generation-webui。
    • 支持 Metal 后端,以便在 macOS 上进行稀疏推理。

    PowerInfer 的核心贡献

    • 提出了一种利用 LLM 推理中高局部性的方法,将频繁激活的神经元分配到 GPU 上,而将大多数不常激活的神经元分配到 CPU 上。
    • 设计了自适应的预测器构建方法和神经元感知的稀疏运算符,提高了 LLM 推理的效率。
    • 通过性能评估表明,PowerInfer 显著提高了 LLM 推理速度,同时保持了模型精度。

    PowerInfer 为 LLM 的本地部署开辟了新的可能性,让你的消费级显卡也能飞速运行大型语言模型,体验前所未有的智能体验!

    参考文献:

    • PowerInfer: Fast Large Language Model Serving with a Consumer-grade GPU. arXiv preprint arXiv:2312.12456, 2023.
    • PowerInfer-2: Fast Large Language Model Inference on a Smartphone. arXiv preprint arXiv:2406.06282, 2024.
    • PowerInfer GitHub repository: https://github.com/SJTU-IPADS/PowerInfer

    手机上的“大脑”:PowerInfer-2 让大型语言模型飞入寻常百姓家

    大型语言模型(LLM)正以前所未有的速度改变着我们的生活。从智能助手到内容创作,LLM 的强大能力已经渗透到各个领域。然而,这些“大脑”通常驻扎在拥有强大计算能力的数据中心,需要消耗大量资源。如何将 LLM 的力量带到每个人手中,成为了一项新的挑战。

    手机上的 LLM:机遇与挑战

    手机作为我们日常生活中不可或缺的一部分,拥有着巨大的潜力来承载 LLM,实现更加个性化、便捷的智能体验。然而,手机的计算能力和内存容量有限,难以满足 LLM 的庞大需求。

    目前,主要有两种方法尝试将 LLM 部署到手机上:

    • 缩减模型尺寸: 例如,Google 的 Gemini Nano 3.25B 模型仅占用 2GB 内存,但这也意味着牺牲了部分智能能力。
    • 优化推理效率: 一些技术致力于降低 LLM 推理过程中的计算和存储需求,例如 PowerInfer [30] 通过将活跃神经元分配到 GPU,非活跃神经元分配到 CPU 来提高推理速度。

    然而,这些方法在手机上仍然面临着挑战。手机硬件的异构性以及存储设备的带宽限制,使得 I/O 操作成为 LLM 推理的瓶颈。

    PowerInfer-2:手机上的 LLM 推理加速器

    为了解决这些问题,本文介绍了 PowerInfer-2,一个专门针对手机设计的 LLM 推理框架。PowerInfer-2 能够在手机上高效地执行 LLM 推理,甚至可以支持参数高达 470 亿的模型,远远超过手机的内存容量。

    PowerInfer-2 的核心思想:

    • 神经元集群计算: PowerInfer-2 将传统的矩阵计算分解为更细粒度的“神经元集群”计算,充分利用手机中 CPU、GPU 和 NPU 等异构计算单元。
    • 多态神经元引擎: PowerInfer-2 设计了一个多态神经元引擎,根据 LLM 推理的不同阶段,采用不同的计算策略。在预填充阶段,它将所有神经元合并成一个大型神经元集群,利用 NPU 的优势进行高效计算;在解码阶段,它使用更小的神经元集群,利用 CPU 的灵活性进行更轻量级的计算。
    • 分段神经元缓存: PowerInfer-2 引入了一种分段缓存机制,针对不同的 LLM 权重类型,采用不同的缓存策略,有效提高缓存命中率。
    • 神经元集群级流水线: PowerInfer-2 通过将 I/O 操作与神经元集群计算重叠,有效减少 I/O 延迟带来的等待时间。

    PowerInfer-2 的优势:

    • 速度提升: PowerInfer-2 在手机上实现了高达 29.2 倍的速度提升,是首个能够在手机上运行 TurboSparse-Mixtral-47B 模型的系统,其生成速度达到每秒 11.68 个词。
    • 内存优化: 对于完全能够放入内存的模型,PowerInfer-2 能够在保持推理速度的情况下,将内存使用量减少约 40%。

    PowerInfer-2 的工作原理:

    PowerInfer-2 的工作流程分为离线规划和在线推理两个阶段。在离线规划阶段,系统会根据用户需求和硬件配置,生成一个执行计划,指导在线推理过程。

    在线推理阶段,PowerInfer-2 利用多态神经元引擎,根据不同的推理阶段,动态地将神经元组合成神经元集群,并使用分段缓存和神经元集群级流水线技术,有效降低 I/O 延迟,提高推理速度。

    PowerInfer-2 的未来展望:

    PowerInfer-2 的出现,为将 LLM 部署到手机上开辟了新的道路,为我们带来了更便捷、更智能的移动体验。相信未来,随着技术的不断进步,手机上的 LLM 将会更加强大,为我们带来更多惊喜。

    参考文献:

    • Xue, Zhenliang, et al. “PowerInfer-2: Fast Large Language Model Inference on a Smartphone.” arXiv preprint arXiv:2406.06282 (2024).

  • 美洲:文明的交汇与冲突

    在欧洲人抵达美洲之前,这片广袤的大陆上已经孕育了众多独特的文明。从墨西哥的阿兹特克文明到秘鲁的印加文明,从北美东部的森林部落到西南部的普韦布洛人,美洲大陆上的人们创造了丰富多彩的文化,并发展出独特的社会结构和生活方式。

    奥尔梅克文明:美洲文明的摇篮

    奥尔梅克文明被认为是中美洲文明的母体,它兴盛于公元前1200年至公元前400年,位于墨西哥湾沿岸的热带雨林地区。奥尔梅克人创造了精美的艺术作品、建筑、陶器和雕塑,其中最著名的就是巨大的石雕人头像和拉文塔的金字塔。他们还建造了水渠,将水输送到城市并灌溉田地。奥尔梅克人种植玉米、南瓜、豆类和番茄,并饲养小型家犬,以补充他们的食物来源。

    奥尔梅克文明在公元前400年左右衰落,但他们的文化影响了后来的玛雅文明和阿兹特克文明。他们崇拜雨神、玉米神和羽蛇神,这些神灵在后来的阿兹特克人和玛雅人的宗教体系中扮演着重要的角色。image.png

    玛雅文明:辉煌的文化成就

    玛雅文明兴盛于公元前2000年至公元900年,分布在现在的墨西哥、伯利兹、洪都拉斯和危地马拉。玛雅人继承了奥尔梅克文明的文化遗产,并将其发展到新的高度。他们完善了奥尔梅克人发明的历法和文字,并创造了独特的数学体系,用于记录作物产量、人口规模和贸易活动。

    玛雅人建造了科潘、蒂卡尔和奇琴伊察等城邦,以及寺庙、神像、金字塔和天文台。然而,由于土壤贫瘠和持续近两个世纪的干旱,玛雅文明在公元900年左右衰落,他们放弃了大型人口中心。

    阿兹特克文明:帝国的崛起与覆灭

    阿兹特克文明,也称为墨西哥人,在公元1325年开始在墨西哥城附近的特诺奇提特兰岛上建造城市。到1519年,当西班牙人赫尔南·科尔特斯抵达时,这座城市已经拥有超过20万居民,是当时西半球最大的城市。阿兹特克人建立了一个强大的帝国,通过征战和收取贡品来维持统治。

    阿兹特克人崇拜众多神灵,并进行日常的人祭活动,以维持太阳神在天空中的旅程,安抚神灵,并促进农业生产。他们建造了宏伟的寺庙和宫殿,并发展了复杂的社会结构。

    印加文明:南美大陆的霸主

    印加文明,也称为奇楚瓦人,兴盛于15世纪和16世纪,位于南美洲的安第斯山脉地区,其帝国疆域从现在的哥伦比亚延伸到智利,跨越了2500多公里。印加人建造了宏伟的城市,并修建了与罗马帝国媲美的道路系统,将整个帝国连接起来。

    印加人没有文字,他们使用一种称为奇普的绳结和彩色绳索系统来记录信息和进行交流。他们崇拜太阳神因蒂,并认为黄金是太阳神的“汗水”。印加人很少进行人祭,通常用食物、衣服和古柯叶祭祀神灵。

    北美原住民:多元的文化

    与中美洲和南美洲的文明相比,北美原住民的文化更加分散,人口规模和社会组织程度也较低。虽然玉米种植已经传到了北美,但许多原住民仍然依靠狩猎和采集为生。

    北美原住民的文化多样性体现在不同的生活方式、宗教信仰和习俗中。例如,西南部的普韦布洛人建造了多层石屋,并发展了复杂的灌溉系统;东部森林地区的部落则生活在小型村落中,以农业、狩猎和捕鱼为生。

    文明的交汇与冲突

    欧洲人抵达美洲,给美洲大陆带来了巨大的变革。他们带来了新的文化、技术和疾病,也带来了冲突和压迫。欧洲人对美洲原住民的土地和资源充满了贪婪,他们掠夺财富,并试图将自己的文化强加于原住民。

    欧洲人带来的疾病对美洲原住民造成了毁灭性的打击。由于没有对这些疾病的免疫力,许多原住民死于天花、麻疹和流感等疾病。

    欧洲人的到来,改变了美洲大陆的命运。原住民的文明被摧毁,他们的文化和生活方式遭到破坏。欧洲人建立了殖民地,并最终建立了美国。

    参考文献

    • OpenStax. (2014). U.S. History. Houston, TX: OpenStax. Retrieved from https://openstax.org/books/us-history/pages/1-1-the-americas

  • 美国历史的开端:一个跨越海洋的旅程

    美国历史的开端,并非从美国独立战争开始,而是从一个跨越海洋的旅程开始。1492 年,克里斯托弗·哥伦布在寻找通往东方的海上航线时,意外发现了美洲大陆,开启了欧洲人对新大陆的探索和殖民。这个事件不仅改变了美洲的历史,也深刻影响了欧洲和非洲的命运,并最终塑造了我们今天所知的世界。

    image.png

    美洲:一个充满机遇的未知世界

    哥伦布的发现,让欧洲人意识到美洲大陆的存在,并将其称为“新世界”。这个新世界充满了机遇,吸引了欧洲人前来探索和殖民。美洲大陆上拥有丰富的资源,包括金银、木材、土地和劳动力。欧洲人对这些资源的渴望,推动了他们不断向新大陆扩张。

    欧洲:变革的浪潮

    15 世纪的欧洲正处于变革的浪潮之中。文艺复兴的兴起,带来了思想解放和科学进步。航海技术的进步,使得欧洲人能够远航探索未知的世界。宗教改革的爆发,则挑战了天主教的权威,为欧洲社会带来了新的思想和观念。

    欧洲人对财富、权力和新世界的渴望,推动了他们向美洲大陆的扩张。他们不仅带来了新的文化和技术,也带来了新的疾病和冲突,改变了美洲原住民的生活方式和文化。

    非洲:奴隶贸易的悲剧

    在欧洲人对美洲大陆的殖民过程中,非洲也扮演了重要的角色。欧洲人为了满足对劳动力需求,开始在非洲进行奴隶贸易。非洲人被强行带到美洲,成为种植园的劳动力,为欧洲殖民者创造了巨大的财富。

    奴隶贸易给非洲带来了深重的灾难。它破坏了非洲社会的稳定,造成了人口损失和文化断裂。非洲人被迫离开自己的家园,在美洲遭受残酷的压迫和剥削。

    一个跨越海洋的旅程

    欧洲人、美洲原住民和非洲人,这三个不同文明的相遇,构成了美国历史的开端。他们的互动充满了冲突、合作和融合。欧洲人带来了新的文化和技术,美洲原住民则拥有丰富的土地和资源,非洲人则成为了欧洲殖民扩张的牺牲品。

    这段跨越海洋的旅程,不仅塑造了美洲的历史,也改变了世界格局。它带来了全球化的进程,也带来了奴隶制和殖民主义的阴影。美国历史的开端,是一个充满机遇和挑战的时代,它为美国未来的发展奠定了基础。

    参考文献

    • OpenStax. (2014). U.S. History. Houston, TX: OpenStax. Retrieved from https://openstax.org/books/us-history/pages/1-introduction

    image.png

  • 思维白板:跨模态逐步思考

    引言

    “哪个小写字母是一个圆圈,右边有一个垂直的线段从圆圈上往下延伸?”这个问题看似简单,但你可能已经通过在脑海中形成一个图像来解答了。你首先想象一个圆圈,然后在圆圈的右边添加一条垂直的线段,最终识别出字母“q”。如果需要记住更多信息,你可能会使用笔和纸,但思考过程仍然类似。

    人类擅长这种视觉思考。我们能够轻松地将文字和图像中的推理交织在一起,以解决问题和交流想法(Tversky,2011)。我们不仅在直接的视觉推理中形成图像,而且在空间导航时绘制地图(Card 等人,1999),甚至处理抽象概念(Bobek 和 Tversky,2016)。

    大型语言模型(LLMs)已经彻底改变了自然语言处理领域(Brown 等人,2020;Vaswani 等人,2017),它们通过扩展参数数量和训练数据,在各种推理任务中展现出强大的能力。链式思考(CoT)提示(Wei 等人,2022;Kojima 等人,2023)允许语言模型通过在生成最终答案之前以文本形式写出中间步骤来解决复杂问题,并在算术和符号推理等任务中展现出巨大潜力。因此,自然地,我们会问:LLMs 能否解决我们人类通过视觉思考解决的任务?

    我们发现,对于某些涉及视觉和空间推理的任务,即使是最先进的LLMs 也会出现显著的失败。在图1中,我们看到GPT-4o(OpenAI 等人,2023)声称我们之前问题的答案实际上是“b”;它没有进行正确的隐式视觉推理,关于左、右、上、下的方向,以得出正确的答案。“b”被观察到是确定性地采样的;在使用温度的情况下,它会在“b”、“p”、“d”和“q”之间随机选择,也就是说,这些字母具有正确的特征,但排列方式不同。它提到了“碗”和“茎”来缩小可能的选项,然后未能进行空间推理来确定所描述的方向意味着什么。一个人不需要具备排版方面的专业知识来回答这个问题;任何能够创建正确图像并具备基本视觉识别能力的人都能轻松解决它。这突出了两种推理过程之间的显著差异。

    思维白板:跨模态逐步思考

    我们的关键想法是,视觉推理任务需要视觉。我们利用多模态大型语言模型(MLLMs)的能力,这些模型不仅接受文本输入,还接受图像等其他模态的输入,从而实现这一点。我们证明,为MLLMs 提供创建和推理显式视觉的能力——就像一个展示中间思想的白板——可以解锁类似于视觉思考的能力。

    因此,我们引入了“思维白板(WoT)”:我们为MLLMs 提供一个隐喻性的“白板”,让它们将中间推理步骤的结果绘制为图像,然后提示它们使用它们的多模态输入能力来生成答案或从模型自身生成的图像中进行进一步推理。我们发现,利用模型现有的能力,通过使用Turtle 和 Matplotlib 等图形库来编写代码,足以创建对解决视觉推理任务有用的图像,而无需任何示例。

    我们在三个涉及理解ASCII 艺术的BIG-Bench(Srivastava 等人,2022)任务上展示了这种想法的潜力,以及一个最近的困难基准,它探测了空间推理能力(Yamada 等人,2024),证明了WoT 和 CoT 之间的巨大性能差距。我们进一步分析了哪些类型的问题更适合在视觉标记而不是文本标记上进行推理。最后,我们确定了MLLM 能力的当前局限性,并提供了对WoT 失败原因的详细分析。

    实验

    我们对两类涉及视觉推理的自然语言任务进行了实验。首先,我们考虑了BIG-Bench(Srivastava 等人,2022)中的三个数据集,这些数据集涉及理解以ASCII 文本图形表示的信息。接下来,我们考虑在不同空间条件下进行自然语言导航的任务(Yamada 等人,2024)。

    我们所有实验都在零样本环境下进行,并与两个没有可视化的基线进行比较:直接提示模型给出答案(“Direct”)和零样本链式思考(Kojima 等人,2023)(“CoT”)。我们使用温度为0 和贪婪解码进行生成。对于所有实验,我们使用GPT-4o(gpt-4o-2024-05-13)作为底层MLLM,因为它具有启用我们的模型和基线所需的所有功能——零样本链式思考以及生成代码输出和接受图像输入的能力。完整的提示和其他生成细节可以在附录中找到。

    ASCII 理解

    我们从BIG-Bench 中发现的一个明显视觉任务开始:ASCII 理解。最近的研究表明,即使是最强大的语言模型也难以识别ASCII 表示,这种失败甚至可以被用来执行非常有效的越狱攻击,导致意外和不安全的行为,绕过最先进的防御技术(Jiang 等人,2024)。

    ASCII 艺术突出了我们潜意识地在处理模态之间切换的能力:它需要重新解释通常具有某种自然语言解释的字符(例如,’=’ 作为等号)在视觉上的排列和空间关系(例如,’======‘ 作为一条水平线)。对于人类来说,书面文本通常以与图像相同的输入模态(我们的眼睛)进行处理,使我们能够进行视觉思考,而无需任何中间处理。

    想象一下,理解被朗读出来的ASCII 艺术的难度。这可以被认为类似于LLMs 如何处理ASCII:作为文本标记,与它们可能能够处理的任何视觉标记不同,如果它们具有多模态能力。因此,ASCII 为我们提供了一个有趣的测试平台,用于证明MLLMs 中是否存在视觉思考。

    我们考虑了ASCII 理解的三个领域,每个领域都包含BIG-Bench(Srivastava 等人,2022)中的一个任务:ASCII MNIST 数字识别、ASCII 单词识别和ASCII 日文字形(Kanji)识别。图2 中提供了每个领域的示例(以及每个领域的WoT 可视化)。数据集和评估细节可以在附录中找到。

    结果可以在表1中找到。我们发现,最先进的MLLMs 基本上无法对这些文本输入进行视觉表示。提示以文字形式进行逐步推理几乎没有帮助。然而,提供一个白板来使模型能够创建和考虑它们自己的可视化,可以解锁MLLM 中潜藏的视觉思考能力,从而导致性能大幅提升。

    空间导航

    接下来,我们考虑理解自然语言导航指令的空间含义的任务。给定一系列空间指令,就像图5 中那样,人类通常会使用视觉思考来解决这些任务,例如创建心理图像或绘制物理地图(Garvert 等人,2017;Tversky,2011;Bobek 和 Tversky,2016)。我们的目标是了解MLLMs 是否能够仅用文字解决这些任务,这可能表明某种程度上的隐式视觉思考用于空间导航,或者提供一个白板来绘制显式地图是否能提供额外的价值。

    BIG-Bench(Srivastava 等人,2022)中出现了一个简单的导航任务,但它只考虑了在一个直线上向前和向后移动。Yamada 等人(2024)的最新工作提出了一个更复杂的评估套件,用于探测LLMs 的空间理解,包括在各种空间结构中进行导航。特别是,我们注意到2D 网格导航设置(“Square”和“Rhombus”,这里定义为旋转45 度的正方形)与非网格几何形状(“Circle”、“Hexagon”和“Triangle”)之间的区别。因此,我们选择考虑这个评估套件。我们在图5 中提供了一个示例,以及WoT 可视化结果。详细信息可以在附录中找到。

    我们在表3 中展示了在 Yamada 等人(2024)提出的不同空间结构上进行导航的结果。与Yamada 等人(2024)一致,我们观察到,使用文字的LLMs 在2D 网格设置上表现出色,但在其他几何形状上表现不佳,Yamada 等人(2024)推测这可能是因为网格设置1)比任何其他设置更容易用文字表示为坐标,尤其是作为直立的“Square”,以及2)可能在互联网上以这种形式呈现更多数据,例如与表格数据、城市网格和2D 迷宫编码问题相关的数据。我们注意到,虽然人类可能最常在文字中描述正方形网格,但网格单元——人类用来导航物理空间甚至映射概念空间(Constantinescu 等人,2016)——将空间表示为六边形网格(Hafting 等人,2005),这引发了关于LLMs 和人类之间空间理解如何不同的有趣问题。WoT 在不同几何形状上表现出更加一致的性能,避免了对2D 网格特定文本知识的依赖,并突出了该方法的通用适用性。这导致了在正方形网格上的性能下降,但在所有其他形状上性能提高,特别是困难的六边形几何形状,从CoT 方法的8% 准确率提高到61%。

    结论

    我们提出了“思维白板”,这是一种简单、零样本的方法,可以解锁多模态大型语言模型中跨模态的视觉推理能力。我们通过生成可以创建视觉的代码,然后将视觉返回给模型以进行进一步推理来实现这一点。这项工作展示了“思维白板”在多个需要视觉和空间推理的任务上的能力,这些任务迄今为止对当前最先进的文本推理模型来说仍然具有挑战性。随着这些模型在代码生成、理解视觉输入和执行一般推理方面的能力不断提高,我们预计“思维白板”的结果也将相应增长。

    参考文献

    • Alayrac, J., et al. (2022). Flamingo: A Visual Language Model for Few-Shot Learning. arXiv preprint arXiv:2204.06788.
    • Bobek, C., & Tversky, B. (2016). The role of visual imagery in abstract reasoning. Cognitive Psychology, 88, 1-26.
    • Brown, T., et al. (2020). Language models are few-shot learners. Advances in Neural Information Processing Systems, 33, 1877-1887.
    • Card, S. K., Mackinlay, J. D., & Shneiderman, B. (1999). Readings in information visualization: using vision to think. Morgan Kaufmann.
    • Chen, M., et al. (2023). Program-of-Thoughts: A Simple and Effective Method for Solving Reasoning Problems with Language Models. arXiv preprint arXiv:2303.17624.
    • Constantinescu, S., et al. (2016). Grid cells and cognitive maps. Current Opinion in Neurobiology, 38, 13-18.
    • Feshchenko, A. (2019). Guillaume Apollinaire, Calligrams. Poetry Foundation.
    • Gao, T., et al. (2023a). Towards Understanding Mathematical Diagrams with Large Language Models. arXiv preprint arXiv:2303.14455.
    • Gao, T., et al. (2023b). PAL: Program-Aided Language Models for Reasoning. arXiv preprint arXiv:2302.12838.
    • Garvert, E., et al. (2017). Spatial reasoning in language and thought. Trends in Cognitive Sciences, 21(11), 864-876.
    • Goh, G., et al. (2021). Typographic Attacks: Circumventing Language Models with Visually Similar Text. arXiv preprint arXiv:2107.07178.
    • Gupta, A., & Kembhavi, A. (2022). VisProg: Visual Program Synthesis for Reasoning about Images. arXiv preprint arXiv:2203.16477.
    • Hafting, T., et al. (2005). Microstructure of a spatial map in the entorhinal cortex. Nature, 436(7052), 801-806.
    • Han, D., et al. (2023). Chart Understanding in the Wild: A Benchmark and Analysis. arXiv preprint arXiv:2303.14254.
    • Huang, H., et al. (2023). Chart-GPT: A Unified Framework for Chart Understanding with Large Language Models. arXiv preprint arXiv:2304.03907.
    • Ilharco, G., et al. (2022). Typographic Attacks: Circumventing Language Models with Visually Similar Text. arXiv preprint arXiv:2204.04116.
    • Jiang, Z., et al. (2024). Typographic Attacks: Circumventing Language Models with Visually Similar Text. arXiv preprint arXiv:2401.07668.
    • Kazemi, S., et al. (2023). Towards Understanding Mathematical Diagrams with Large Language Models. arXiv preprint arXiv:2303.14455.
    • Kojima, T., et al. (2023). Large Language Models are Zero-Shot Reasoners. arXiv preprint arXiv:2205.11916.
    • Li, J., et al. (2023). BLIP-2: Bootstrapping Language-Image Pre-training with Frozen Image Encoders. arXiv preprint arXiv:2301.12597.
    • Liu, Z., et al. (2023). MiniGPT-4: Towards Human-Level Understanding and Generation of Images, Videos, and Text. arXiv preprint arXiv:2304.06665.
    • Lu, J., et al. (2022). Reasoning with Language Models: Towards a Unified Framework for Text and Image Understanding. arXiv preprint arXiv:2205.13751.
    • Materzynska, J., et al. (2022). Typographic Attacks: Circumventing Language Models with Visually Similar Text. arXiv preprint arXiv:2204.04116.
    • Menon, S., et al. (2022). Typographic Attacks: Circumventing Language Models with Visually Similar Text. arXiv preprint arXiv:2204.04116.
    • Noever, D., & Noever, A. (2021). Typographic Attacks: Circumventing Language Models with Visually Similar Text. arXiv preprint arXiv:2107.07178.
    • Nye, B., et al. (2021). Show Your Work: Scratchpad for Intermediate Computation with Language Models. arXiv preprint arXiv:2104.08125.
    • OpenAI, et al. (2023). GPT-4. OpenAI.
    • Patel, A., & Pavlick, E. (2022). Do Language Models Know About the World? An Investigation of Grounding in Language Models. arXiv preprint arXiv:2203.13185.
    • Schick, T., et al. (2023). Toolformer: Language Models Can Use Tools. arXiv preprint arXiv:2302.00983.
    • Shen, S., et al. (2023). HuggingGPT: Solving Tasks with the Power of 100+ Billion Parameters. arXiv preprint arXiv:2303.02280.
    • Srivastava, A., et al. (2022). BIG-Bench: A Benchmark for the Evaluation of Large Language Models. arXiv preprint arXiv:2205.10433.
    • Surís, D., et al. (2023). ViperGPT: A Visual Reasoning Framework for Large Language Models. arXiv preprint arXiv:2304.06785.
    • Tversky, B. (2011). Visual thinking. Annual Review of Psychology, 62, 229-254.
    • Vaswani, A., et al. (2017). Attention is all you need. Advances in Neural Information Processing Systems, 30, 5998-6008.
    • Wang, Z., et al. (2024). Towards Understanding Mathematical Diagrams with Large Language Models. arXiv preprint arXiv:2402.01176.
    • Wei, J., et al. (2022). Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. arXiv preprint arXiv:2201.11903.
    • Wolf, T., et al. (2020). Transformers: State-of-the-art Natural Language Processing. arXiv preprint arXiv:2004.09813.
    • Wu, Z., et al. (2024). Visualization-of-Thought: Guiding Language Models to Reason with Visualization. arXiv preprint arXiv:2402.09650.
    • Yamada, K., et al. (2024). Do Language Models Understand Space? An Evaluation of Spatial Reasoning in Large Language Models. arXiv preprint arXiv:2401.06872.
    • Yao, X., et al. (2023). Reasoning with Language Models: Towards a Unified Framework for Text and Image Understanding. arXiv preprint arXiv:2303.17142.
    • Zhang, J., et al. (2023). Towards Understanding Mathematical Diagrams with Large Language Models. arXiv preprint arXiv:2303.14455.
    • Zhang, J., et al. (2024). Towards Understanding Mathematical Diagrams with Large Language Models. arXiv preprint arXiv:2402.01176.

    https://arxiv.org/pdf/2406.14562
    Q: 这篇论文试图解决什么问题?

    A: 这篇论文介绍了一种名为”Whiteboard-of-Thought”(思维白板)的方法,旨在解决大型多模态语言模型(MLLMs)在处理需要视觉推理能力的文本查询时所面临的挑战。尽管这些模型在算术和符号推理等任务上表现出色,但它们在处理那些对人类来说通过视觉推理就能轻松解决的问题时却常常失败。例如,人类在解决涉及视觉思考的问题时,会自然地在心中形成图像或绘制视觉辅助图,但现有的大型语言模型(LLMs)很难将这种能力扩展到多模态的推理任务中。

    具体来说,论文中提到的问题包括:

    • 大型语言模型在处理涉及视觉和空间推理的问题时,即使经过广泛的多模态预训练,也常常无法有效地进行视觉推理。
    • 某些情况下,即使是最先进的模型,在使用链式思考(Chain-of-Thought)提示时,也会出现显著的失败,甚至在某些情况下准确率为0%。

    为了解决这些问题,论文提出了”思维白板”提示方法,通过提供一个虚拟的“白板”来让模型绘制出推理步骤的图像,然后将这些图像反馈给模型进行进一步的处理。这种方法不需要额外的示例或专门的模块,而是利用模型现有的能力,通过使用Matplotlib和Turtle等图形库来编写代码,从而实现视觉推理。论文展示了这种方法在四个涉及视觉和空间推理的困难自然语言任务上取得了最先进的结果。

    Q: 有哪些相关研究?

    A: 论文中提到了多个与”Whiteboard-of-Thought”方法相关的研究领域和具体工作,以下是一些主要的相关研究:

    • 大型语言模型(LLMs)和多模态大型语言模型(MLLMs):
    • 这些模型通过扩展数据和参数数量,在多种自然语言任务中取得了显著的成功。最近的扩展工作将这些模型应用于多模态输入设置,例如图像输入,取得了很好的效果。
    • 链式思考(Chain of Thought, CoT)提示:
    • 这是一种技术,允许语言模型通过以文本形式写出中间步骤来解决复杂问题。这种方法在算术和符号推理任务上显示出巨大潜力。
    • 工具增强型大型语言模型:
    • 一些研究展示了如何让大型语言模型使用外部工具,如计算器,来辅助中间推理。例如,通过训练模型模仿Python代码执行或将简单计算委托给Python解释器。
    • 视觉和空间推理在LLMs和MLLMs中的应用:
    • 研究表明,LLMs和MLLMs在需要视觉和空间推理的任务上的表现有限,这引发了关于这些模型如何将文本域的知识与视觉等其他模态联系起来的讨论。
    • ASCII理解:
    • 论文中提到了BIG-Bench任务中的ASCII理解任务,这些任务要求模型重新解释通常具有自然语言解释的角色(例如,’=’ 作为等号)在视觉上的排列和空间关系。
    • 空间导航:
    • 论文中考虑了理解自然语言导航指令的空间含义的任务,这些任务通常需要人类使用视觉思考来解决。
    • 其他相关工作:
    • 包括使用树状候选理由搜索(Yao et al., 2023)、文本伪可视化(Wu et al., 2024)、以及使用图像和文本输入的链式思考风格理由(Zhang et al., 2023; Lu et al., 2022)等方法。
    • 工具使用和代码增强:
    • 包括Scratchpads(Nye et al., 2021)、PAL和PoT(Gao et al., 2023b; Chen et al., 2023)等方法,这些方法通过使用Python解释器来增强语言模型的能力。
    • 视觉编程和视觉推理:
    • 例如VisProg(Gupta and Kembhavi, 2022)和ViperGPT(Surís et al., 2023)等方法,它们为LLM提供了视觉模块的API来执行视觉推理。

    这些研究为”Whiteboard-of-Thought”方法提供了理论和技术基础,并展示了在多模态推理领域的多种尝试和进展。

    Q: 论文如何解决这个问题?

    A: 论文通过引入一种名为“Whiteboard-of-Thought (WoT)”的方法来解决大型多模态语言模型(MLLMs)在视觉推理任务中的表现问题。具体来说,WoT方法包括以下几个关键步骤:

    • 提供视觉化能力:WoT方法首先为MLLMs提供了一种能力,即能够创建和处理图像,类似于人类使用白板来展示推理步骤。
    • 生成可视化代码:利用MLLMs现有的能力,通过编写代码(使用如Matplotlib和Turtle等图形库)来创建图像。这些图像代表了问题的中间推理步骤。
    • 执行代码创建图像:将生成的代码在Python解释器中执行,以创建图像。这些图像是模型自身生成的,用于辅助解决视觉推理任务。
    • 图像反馈处理:将创建的图像反馈给MLLMs,让它们使用自身的多模态输入能力来进一步处理这些图像,并基于图像内容进行最终的推理或回答问题。
    • 无需额外示例或模块:WoT方法不需要额外的训练示例或专门的模块,而是直接利用了模型已有的文本生成和图像处理能力。
    • 实验验证:论文在多个涉及视觉和空间推理的自然语言任务上进行了实验,包括BIG-Bench任务和空间导航任务。实验结果表明,WoT方法在这些任务上取得了显著的性能提升,与直接文本推理(Direct)和链式思考(CoT)基线相比,展现了其有效性。
    • 错误分析:论文还对WoT方法在ASCII MNIST任务中的错误进行了详细分析,发现大部分错误源于视觉感知问题,这表明MLLMs在图像理解方面还有待提高。

    通过这种方法,WoT能够有效地解锁MLLMs的视觉推理能力,使其在处理需要视觉思考的任务时表现得更加出色。随着MLLMs在代码生成、视觉输入理解和通用推理方面的能力不断提升,WoT方法的潜力也将随之增长。

    Q: 论文做了哪些实验?

    A: 论文中进行了两类主要的实验来验证“Whiteboard-of-Thought (WoT)”方法的有效性:

    • ASCII理解任务:这些任务来自BIG-Bench数据集,涉及对ASCII文本图形的理解。具体包括:
    • ASCII MNIST数字识别
    • ASCII单词识别
    • ASCII日文字形(Kanji)识别
    • 这些任务要求模型重新解释通常具有自然语言解释的角色(例如,’=’ 作为等号)在视觉上的排列和空间关系。实验结果表明,WoT方法在这些任务上的性能显著优于仅使用文本的基线方法。
    • 空间导航任务:这些任务涉及理解自然语言导航指令的空间含义。论文使用了Yamada等人(2024年)提出的评估套件,包括:
    • 2D网格导航(正方形和菱形)
    • 非网格几何(圆形、六边形和三角形)
    • 在这个任务中,模型需要根据一系列的空间指令来确定最终的位置和找到的物品。实验结果显示,WoT方法在非网格几何上的性能有显著提升,尤其是在六边形几何上,从CoT方法的8%准确率提升到61%。

    此外,论文还展示了WoT方法在一些实际应用场景中的例子,如:

    • Calligrams(形象诗)理解:分析了Guillaume Apollinaire的一首著名形象诗,这首诗的视觉效果是埃菲尔铁塔的形状。WoT方法能够正确识别出诗的视觉意义,而CoT方法则错误地识别为“舌头”或“语音泡泡”的形状。
    • 视频游戏艺术:考虑了在像Minecraft这样的视频游戏中,玩家通过文本描述的动作创建的视觉艺术作品。WoT方法能够根据文本日志或描述生成实际的视觉效果。

    这些实验不仅展示了WoT方法在多种任务上的有效性,还揭示了其在实际应用中的潜力。论文还对WoT方法的错误进行了详细分析,发现大部分错误源于视觉感知问题,这表明MLLMs在图像理解方面还有待提高。随着MLLMs在相关领域的能力不断提升,WoT方法的性能预计将进一步提高。

    Q: 有什么可以进一步探索的点?

    A: 论文中提出了一些可以进一步探索的点,以提高“Whiteboard-of-Thought (WoT)”方法的性能和应用范围:

    • 改进图像生成的精度:尽管使用Matplotlib和Turtle等库可以生成基本的可视化,但这些图像可能需要更精确的控制以更好地适应视觉推理任务。未来的工作可以探索如何更精确地控制生成的图像,以满足特定任务的需求。
    • 提高模型的视觉感知能力:论文中的错误分析表明,许多错误源于模型的视觉感知问题。随着计算机视觉技术的进步,提高MLLMs在图像理解方面的能力将是一个重要的研究方向。
    • 扩展到其他领域:WoT方法目前主要应用于ASCII理解和空间导航任务。未来的工作可以探索将WoT方法扩展到其他需要视觉推理的领域,如几何图形理解、图表分析等。
    • 模型修正自己的可视化:论文中提到,有时生成的可视化可能在技术上是正确的,但由于文本重叠等问题而无法阅读。研究模型如何修正自己的可视化输出,以提高可读性和准确性,可能是一个有价值的研究方向。
    • 减少对特定提示的依赖:论文中提到,为了引导模型生成所需的可视化,需要提供特定的提示。研究如何减少对这些特定提示的依赖,使模型更加灵活和自主,可能是一个有趣的研究方向。
    • 探索不同的可视化技术:除了使用Matplotlib和Turtle等库,还可以探索其他可视化技术,如3D可视化或交互式可视化,以提高模型在复杂任务中的表现。
    • 集成更先进的文本到图像模型:随着文本到图像模型的发展,将这些模型集成到WoT框架中,以提供更高质量的图像生成,可能是一个有前景的研究方向。
    • 评估和缓解潜在风险:论文提到了WoT方法可能带来的潜在风险,如新形式的对抗性攻击。未来的工作可以探索如何评估和缓解这些风险,确保WoT方法的安全和可靠。
    • 提高模型的泛化能力:研究如何提高WoT方法在不同任务和领域中的泛化能力,使其成为一种更加通用的视觉推理工具。
    • 优化模型的计算效率:考虑到WoT方法可能需要多次迭代来生成和修正可视化,研究如何优化这个过程,以提高模型的计算效率,可能是一个重要的研究方向。

    这些探索点不仅可以推动WoT方法本身的发展,还可能对多模态人工智能领域的其他问题提供新的解决方案和思路。

    Q: 总结一下论文的主要内容

    A: 这篇论文的核心内容是提出了一种名为“Whiteboard-of-Thought (WoT)”的方法,旨在提高多模态大型语言模型(MLLMs)在视觉推理任务上的表现。以下是对论文主要内容的总结:

    • 问题识别:论文指出,尽管大型语言模型(LLMs)在文本处理上取得了显著成就,但在需要视觉推理的查询上表现不佳,即使这些查询对人类来说很容易解决。
    • WoT方法介绍:为了解决上述问题,论文提出了WoT方法,该方法通过提供一个虚拟的“白板”来让模型绘制推理步骤的图像,并将这些图像反馈给模型进行进一步处理。
    • 实现方式:WoT方法利用MLLMs现有的编写代码的能力,使用如Matplotlib和Turtle等图形库来生成图像,而不需要额外的训练示例或专门的模块。
    • 实验验证:论文在多个任务上进行了实验,包括ASCII理解任务和空间导航任务,证明了WoT方法相对于传统文本推理和链式思考(CoT)方法的优越性。
    • 性能提升:实验结果显示,WoT方法在涉及视觉和空间推理的困难任务上取得了最先进的结果,显著提高了模型的准确率。
    • 错误分析:论文对WoT方法在ASCII MNIST任务中的错误进行了详细分析,发现大部分错误源于视觉感知问题,指出了MLLMs在图像理解方面的局限性。
    • 实际应用示例:论文还展示了WoT方法在实际应用中的潜力,如形象诗理解和视频游戏中的视觉艺术分析。
    • 未来研究方向:论文提出了一些未来可能的研究方向,包括提高图像生成的精度、扩展到其他领域、模型修正自己的可视化等。
    • 潜在风险:论文讨论了WoT方法可能带来的潜在风险,如新形式的对抗性攻击,并提出了评估和缓解这些风险的必要性。
    • 结论:论文总结了WoT方法的有效性,并对其在多模态推理领域的应用前景表示乐观。

    总的来说,这篇论文提出了一种创新的方法来提升MLLMs在视觉推理任务上的能力,并通过实验验证了其有效性,同时也指出了当前方法的局限性和未来改进的方向。


  • 合并模型,安全至上:一个“坏”模型毁掉整个模型池

    大型语言模型(LLMs)在语言处理任务中展现出惊人的能力,甚至在某些领域超越了人类的表现。为了增强LLMs在特定领域的性能,研究人员通常会使用特定领域的数据对预训练的LLMs进行微调。例如,OpenBioLLM在生物医学领域表现出色,而MAmmoTH在STEM科目(科学、技术、工程和数学)中表现良好。

    然而,由于专家模型可能只擅长特定领域,因此模型合并技术应运而生。模型合并技术旨在将多个专家模型的优势整合到一个单一的、高性能的模型中。例如,将一个擅长化学的模型与另一个擅长数学的模型合并,可以创建一个在两个科目中都表现良好的统一模型,通常比单个专家模型表现更好。这种方法特别具有吸引力,因为它允许利用来自众多开源模型的知识,而无需承担高昂的训练成本。

    然而,一个关键问题被忽视了:模型合并会如何影响现有LLMs的安全对齐?

    安全对齐是指模型生成响应的能力,这些响应是安全的、符合道德标准的,并且与人类价值观一致。如果合并后的模型缺乏必要的安全对齐,可能会给用户带来不安全的内容。例如,一个合并了多个专家模型的模型,如果其中一个专家模型存在安全问题,那么合并后的模型也可能继承了这个安全问题,即使其他专家模型是安全的。

    本文探讨了模型合并对对齐的影响,并提出了一种安全意识的模型合并方法,以确保合并后的模型既保持了领域专业知识,也具有高安全对齐性。

    现有模型合并技术的局限性

    现有的模型合并技术通常忽略了安全对齐的重要性,导致合并后的模型可能出现严重的对齐问题。论文通过实验表明,现有的模型合并技术不仅会传递领域专业知识,还可能传播对齐问题。例如,如果将一个未对齐的模型与其他对齐的模型合并,合并后的模型也可能变得未对齐,即使其他专家模型是安全的。

    安全意识模型合并方法

    为了解决这个问题,论文提出了一个简单的两步方法来合并专家模型,同时保持对齐性。这个过程包括生成合成的安全和领域特定数据,并将这些数据整合到现有数据感知模型合并技术的优化过程中。

    1. 生成合成数据

    论文首先生成两组数据集:

    • 安全数据 (Dsafety): 包含可能被恶意用户用来提示LLM的“不良”或未对齐的问题,以及对应这些问题的拒绝回答,例如:“对不起,我不能提供帮助。”
    • 领域特定数据 (Dexpert): 包含特定领域的问题和答案,例如,如果要合并一个生物学专家模型,Dexpert 中就会包含关于生物学的问题和答案。

    2. 数据驱动合并优化

    论文将 Dsafety 和 Dexpert 整合到现有的数据驱动模型合并技术中,例如 EvoMM 和 LM-Cocktail,以优化任务权重,最大化合并模型在对齐性和领域性能上的表现。通过这种方式,合并模型在处理 Dexpert 和 Dsafety 时,能够保持高对齐性和领域专业知识。

    实验结果

    论文通过一系列实验验证了其方法的有效性。实验结果表明,论文提出的安全意识合并方法在不牺牲领域准确性的情况下,能够显著提高合并模型的安全对齐性。

    论文还进行了消融实验来评估不同因素(如损失组合因子、数据来源、样本数量和优化步骤)对合并性能的影响。实验结果表明,论文提出的方法对这些因素的变化具有较强的鲁棒性。

    未来研究方向

    论文也指出了未来研究的方向,包括:

    • 探索在没有对齐模型的情况下进行安全意识合并的方法。
    • 研究如何将该方法扩展到不同架构和异构提示模板的模型。
    • 研究其他权重操作,如稀疏化和量化,对LLM对齐性的影响。
    • 探索基于专家混合的新架构可能面临的相同模型合并问题。
    • 研究在分布式或联邦学习环境中,来自不同客户端的个体模型聚合成的合并模型的安全性问题。

    结论

    论文深入探讨了在合并大型语言模型时如何保持模型的安全对齐性,并提出了一种有效的解决方案。论文的研究结果不仅对模型合并有重要意义,也可能对LLM的其他操作,如稀疏化、量化、专家混合架构、分布式学习等产生影响。

    参考文献


    Q: 这篇论文试图解决什么问题?

    A: 这篇论文探讨了在合并大型语言模型(LLMs)时,现有技术可能忽视了模型安全对齐(safety alignment)的重要性,导致合并后的模型可能出现严重的对齐问题。具体来说,论文指出了以下几个关键问题:

    1. 模型合并的影响:合并多个专家LLMs(在特定领域表现出色的模型)时,现有方法不仅会传递领域专业知识,还可能传播对齐问题。
    2. 安全对齐的重要性:安全对齐指的是模型生成的响应是安全的、符合道德标准和人类价值观的。如果合并后的模型缺乏必要的安全对齐,可能会给用户带来不安全的内容。
    3. 现有模型合并技术的局限性:论文通过实验表明,现有的模型合并技术没有充分考虑在合并过程中保持模型的安全对齐。
    4. 安全意识合并方法的缺失:在文献中,对于如何在合并过程中保持模型的安全对齐特性缺乏足够的研究和解决方案。

    为了解决这些问题,论文提出了一个简单的两步方法来合并专家模型,同时保持对齐性。这个过程包括生成合成的安全和领域特定数据,并将这些数据整合到现有数据感知模型合并技术的优化过程中。这样,合并后的LLM能够在保持领域专业知识的同时,也具有高安全对齐性。


    Q: 有哪些相关研究?

    A: 论文中提到了多个与大型语言模型(LLMs)对齐和合并技术相关的研究工作。以下是一些主要的相关研究领域和具体工作:

    LLM对齐

    确保LLMs的对齐性至关重要。一些研究强调了微调(fine-tuning)的风险,表明即使是良性数据集也可能降低模型的安全性,需要仔细的适应协议来保持对齐。

    对齐技术

    提出了一些技术来对齐LLM,例如:

    • ARGS:针对解码的对齐。
    • FIGA:用于标记级别的信号。
    • f-DPO:用于高效对齐。
    • GPO:考虑不同利益群体的方法。

    模型合并技术

    提出了多种合并多个模型的方法,以无需重新训练或访问原始数据集的情况下,从多个LLMs的能力中受益。例如:

    • Model Soups:通过权重平均来结合模型。
    • Task Arithmetics:在模型参数上执行元素级操作以编辑特定任务的行为。
    • RegMeanFisher Merging:类似的替代方法。
    • SLERP:在非线性空间中显示改进结果的方法。

    自动任务加权

    为了解决现有合并技术中任务加权因子选择的问题,提出了一些自动选择任务加权因子的方法,例如:

    • EvoMM:使用基于进化的算法选择(\lambda_t)。
    • LM-Cocktail:基于在少量样本上的表现来识别(\lambda_t)。

    对齐评估

    在评估LLMs方面,研究集中在它们的鲁棒性、伦理考虑和安全对齐上。例如:

    • PromptBenchReCode:提供全面基准来评估对提示扰动的鲁棒性。
    • FLASKAUTO-J:用于细粒度评估对齐。
    • TrustGPTETHICS 数据集:评估毒性、偏见和价值对齐。

    安全性问题

    一些研究关注于对话AI中的有效输入输出保护,例如使用安全风险分类和特定模型来分类文本中的安全问题。

    这些研究为本文提出的安全意识模型合并方法提供了理论和技术背景。论文通过扩展这些现有技术,提出了一种新的合并方法,以确保合并后的模型既保持了领域专业知识,也具有高安全对齐性。


    Q: 论文如何解决这个问题?

    A: 论文提出了一个安全意识的模型合并方法,以解决在合并大型语言模型(LLMs)时可能损失安全对齐的问题。这个方法包括以下几个关键步骤:

    生成合成数据

    首先,研究者们生成了两组数据集,一组用于保持对齐性(safety data),另一组用于转移特定领域的知识(domain-specific data)。

    • 安全数据生成(Safety Data Generation):使用一个未受限制的大型语言模型生成可能被恶意用户用来提示LLM的“不良”或未对齐的问题。然后,通过最对齐的模型生成拒绝回答(refusals),例如:“对不起,我不能提供帮助。” 这形成了一个包含不安全问题及其对应拒绝回答的安全数据集(Dsafety)。
    • 领域数据生成(Domain Data Generation):为了转移每个专家模型的专业知识,研究者们使用专家模型生成特定领域的问答对。每个专家模型被提示生成与其专业领域相关的问题,并提供相应的答案。这形成了一个领域特定数据集(Dexpert)。

    合并优化(Merging)

    利用自动任务加权策略(如EvoMM和LM-Cocktail),结合上述生成的数据集,优化任务权重(\lambda_t),以最大化合并模型在对齐性和领域性能上的表现。通过这种方式,合并模型在处理Dexpert和Dsafety时,能够保持高对齐性和领域专业知识。

    实验验证

    研究者们通过一系列实验验证了他们的方法。他们使用不同的模型配置和合并技术,展示了在合并过程中考虑安全对齐性的重要性,并证明了他们的方法在不牺牲准确性的情况下,能够显著提高合并模型的对齐性。

    自动化流程

    整个合并流程是自动化的,仅依赖于合成数据,避免了对外部数据集的依赖,并且与公共数据集兼容。

    通过这种方法,论文成功地解决了在合并LLMs时保持安全对齐性的挑战,并展示了合并后的模型在多个领域内都能保持高对齐性和准确性。


    Q: 论文做了哪些实验?

    A: 论文中进行了一系列实验来验证所提出的安全意识模型合并方法的有效性。以下是实验的主要组成部分:

    实验设置

    1. 使用两种自动方法来确定任务权重:EvoMM 和 LM-Cocktail。
    2. 选择了五个大型语言模型(LLMs)进行实验,包括 Mistral、LLaMA、OpenBioLLM、MAmmoTH 和 WizardMath。

    模型评估

    1. 使用 BeaverTails30K 测试集来评估模型的对齐性,该测试集包含 1,733 个不安全的提示。
    2. 使用特定领域的基准测试集来评估模型的领域性能,例如 STEM 和 BIO 领域的数据集。

    安全意识合并性能

    1. 对比了不同合并配置下的性能,包括使用 EvoMM 和 LM-Cocktail 的不同变体。
    2. 展示了在不同领域专家模型组合下,合并模型在安全性和准确性方面的表现。

    多模型合并

    研究了在包含超过两个专家模型的池中进行安全意识合并的潜力。考虑了 Mistral、MAmmoTH 和 WizardMath 这三个模型的组合,并评估了在 Winogrande 和 ARC 基准上的性能。

    消融研究

    研究了不同因素对合并性能的影响,包括损失组合因子 (\alpha) 的影响、数据来源(合成数据与真实数据)、样本数量 (K) 的重要性,以及 EvoMM 优化步骤的数量。

    安全性和性能的平衡

    通过调整 (\alpha) 的值,研究了在安全性和准确性之间找到平衡点的可能性。证明了即使在只使用安全数据(Dsafety)的情况下,合并模型也能保持竞争力的准确性。

    使用真实数据

    测试了使用从现有基准测试的验证集中采样的真实数据来构建 Dexpert 和 Dsafety 的性能。比较了合成数据方法与真实数据方法的性能差异。

    模型合并的公共实践问题

    分析了公共模型库中流行的合并模型的对齐率,发现一些合并模型的对齐性显著低于组成它们的单独模型。

    这些实验结果表明,论文提出的方法能够在不牺牲领域准确性的前提下,显著提高合并模型的安全对齐性。此外,实验还揭示了当前模型合并实践中可能忽视安全性的问题。


    Q: 有什么可以进一步探索的点?

    A: 论文在探索模型合并与安全对齐的交叉领域时提出了一些限制和潜在的风险,并指出了未来研究的多个方向。以下是一些可以进一步探索的点:

    1. 对齐要求:论文假设合并池中至少有一个模型具有足够的对齐性。未来的研究可以探索在没有对齐模型的情况下进行安全意识合并的方法。
    2. 合并限制:论文的方法限于具有相同架构的模型,并且要求跨模型使用相同的聊天模板。研究如何将该方法扩展到不同架构和异构提示模板的模型将是有价值的。
    3. 权重操作对对齐的影响:研究其他权重操作,如稀疏化和量化,对LLM对齐性的影响。
    4. 新型架构的安全性:探索基于专家混合的新架构可能面临的相同模型合并问题。
    5. 分布式或联邦学习中的安全性:研究在分布式或联邦学习环境中,来自不同客户端的个体模型聚合成的合并模型的安全性问题。
    6. 模型合并的公共实践:进一步研究和提出策略来改善公共模型库中模型合并的实践,以防止高度未对齐模型的传播。
    7. 安全性检查:开发更系统和自动化的方法来评估和确保合并模型的安全性。
    8. 优化算法的改进:研究是否可以改进用于任务权重优化的进化算法,以减少计算成本并提高合并性能。
    9. 数据生成策略:进一步研究和改进用于生成安全和领域特定数据的数据生成策略,以提高合并模型的性能。
    10. 跨领域性能:探索合并模型在不同领域间转移知识的能力,以及如何平衡不同领域的性能。
    11. 用户定制化:研究如何让用户根据特定需求定制合并模型的对齐性和领域专业知识。
    12. 伦理和法律考量:深入研究模型合并过程中的伦理和法律问题,确保合并模型遵守相关法规和道德标准。

    这些探索点不仅有助于提高模型合并技术的安全性和有效性,而且有助于推动大型语言模型的整体发展和应用。


    Q: 总结一下论文的主要内容

    A: 这篇论文的主要内容可以总结为以下几点:

    1. 问题识别:论文指出了现有大型语言模型(LLMs)合并技术在合并专家模型时可能忽视了模型的安全对齐问题,这可能导致合并后的模型在安全性方面存在问题。
    2. 安全对齐的重要性:强调了模型在生成响应时保持安全、伦理和与人类价值观一致的重要性。
    3. 现有合并技术的缺陷:通过实验展示了现有模型合并方法不仅传递了领域专业知识,也可能传播了模型的不安全对齐。
    4. 提出的解决方案:论文提出了一个两步安全意识合并方法,包括生成合成的安全对齐数据和领域特定数据,并将这些数据整合到现有的数据驱动合并技术中。
    5. 实验验证:通过一系列实验,论文证明了其方法在保持领域专业知识的同时,显著提高了合并模型的安全对齐性,而没有牺牲准确性。
    6. 消融研究:进行了消融实验来评估不同因素(如损失组合因子、数据来源、样本数量和优化步骤)对合并性能的影响。
    7. 局限性和风险:论文讨论了其方法的局限性,包括对齐要求、合并限制,并指出了潜在的风险,如合并模型可能给用户带来的安全问题。
    8. 未来研究方向:提出了未来研究的方向,包括探索在不同条件下的模型合并技术,以及如何提高合并模型的安全性和有效性。
    9. 社会影响:论文认为其研究结果不仅对模型合并有重要意义,也可能对LLM的其他操作,如稀疏化、量化、专家混合架构、分布式学习等产生影响。
    10. 致谢:最后,论文感谢了支持这项研究的机构和个人。

    整体而言,这篇论文深入探讨了在合并大型语言模型时如何保持模型的安全对齐性,并提出了一种有效的解决方案,同时也指出了当前研究的局限性和未来可能的研究方向。

  • 合并模型,安全至上:一个“坏”模型毁掉整个模型池

    大型语言模型(LLMs)在语言处理任务中展现出惊人的能力,甚至在某些领域超越了人类的表现。为了增强LLMs在特定领域的性能,研究人员通常会使用特定领域的数据对预训练的LLMs进行微调。例如,OpenBioLLM在生物医学领域表现出色,而MAmmoTH在STEM科目(科学、技术、工程和数学)中表现良好。

    然而,由于专家模型可能只擅长特定领域,因此模型合并技术应运而生。模型合并技术旨在将多个专家模型的优势整合到一个单一的、高性能的模型中。例如,将一个擅长化学的模型与另一个擅长数学的模型合并,可以创建一个在两个科目中都表现良好的统一模型,通常比单个专家模型表现更好。这种方法特别具有吸引力,因为它允许利用来自众多开源模型的知识,而无需承担高昂的训练成本。

    然而,一个关键问题被忽视了:模型合并会如何影响现有LLMs的安全对齐?

    安全对齐是指模型生成响应的能力,这些响应是安全的、符合道德标准的,并且与人类价值观一致。如果合并后的模型缺乏必要的安全对齐,可能会给用户带来不安全的内容。例如,一个合并了多个专家模型的模型,如果其中一个专家模型存在安全问题,那么合并后的模型也可能继承了这个安全问题,即使其他专家模型是安全的。

    本文探讨了模型合并对对齐的影响,并提出了一种安全意识的模型合并方法,以确保合并后的模型既保持了领域专业知识,也具有高安全对齐性。

    现有模型合并技术的局限性

    现有的模型合并技术通常忽略了安全对齐的重要性,导致合并后的模型可能出现严重的对齐问题。论文通过实验表明,现有的模型合并技术不仅会传递领域专业知识,还可能传播对齐问题。例如,如果将一个未对齐的模型与其他对齐的模型合并,合并后的模型也可能变得未对齐,即使其他专家模型是安全的。

    安全意识模型合并方法

    为了解决这个问题,论文提出了一个简单的两步方法来合并专家模型,同时保持对齐性。这个过程包括生成合成的安全和领域特定数据,并将这些数据整合到现有数据感知模型合并技术的优化过程中。

    1. 生成合成数据

    论文首先生成两组数据集:

    • 安全数据 (Dsafety): 包含可能被恶意用户用来提示LLM的“不良”或未对齐的问题,以及对应这些问题的拒绝回答,例如:“对不起,我不能提供帮助。”
    • 领域特定数据 (Dexpert): 包含特定领域的问题和答案,例如,如果要合并一个生物学专家模型,Dexpert 中就会包含关于生物学的问题和答案。

    2. 数据驱动合并优化

    论文将 Dsafety 和 Dexpert 整合到现有的数据驱动模型合并技术中,例如 EvoMM 和 LM-Cocktail,以优化任务权重,最大化合并模型在对齐性和领域性能上的表现。通过这种方式,合并模型在处理 Dexpert 和 Dsafety 时,能够保持高对齐性和领域专业知识。

    实验结果

    论文通过一系列实验验证了其方法的有效性。实验结果表明,论文提出的安全意识合并方法在不牺牲领域准确性的情况下,能够显著提高合并模型的安全对齐性。

    论文还进行了消融实验来评估不同因素(如损失组合因子、数据来源、样本数量和优化步骤)对合并性能的影响。实验结果表明,论文提出的方法对这些因素的变化具有较强的鲁棒性。

    未来研究方向

    论文也指出了未来研究的方向,包括:

    • 探索在没有对齐模型的情况下进行安全意识合并的方法。
    • 研究如何将该方法扩展到不同架构和异构提示模板的模型。
    • 研究其他权重操作,如稀疏化和量化,对LLM对齐性的影响。
    • 探索基于专家混合的新架构可能面临的相同模型合并问题。
    • 研究在分布式或联邦学习环境中,来自不同客户端的个体模型聚合成的合并模型的安全性问题。

    结论

    论文深入探讨了在合并大型语言模型时如何保持模型的安全对齐性,并提出了一种有效的解决方案。论文的研究结果不仅对模型合并有重要意义,也可能对LLM的其他操作,如稀疏化、量化、专家混合架构、分布式学习等产生影响。

    参考文献

  • MetaGPT:将人类工作流程融入多智能体协作框架的元编程

    近年来,基于大型语言模型(LLMs)的智能体社会在自动问题解决方面取得了显著进展。现有的LLM驱动的多智能体系统已经能够解决简单的对话任务,但对于更复杂的任务,由于LLMs链式联接导致的级联幻觉,逻辑不一致问题会变得更加复杂。

    本文介绍了MetaGPT,这是一种创新的元编程框架,它将高效的人类工作流程融入LLM驱动的多智能体协作中。MetaGPT将标准操作程序(SOPs)编码成提示序列,以实现更简化的工作流程,从而使具有类似人类领域专业知识的智能体能够验证中间结果并减少错误。MetaGPT利用流水线模式为不同的智能体分配不同的角色,将复杂的任务有效地分解成多个智能体协同完成的子任务。在协作软件工程基准测试中,MetaGPT生成的解决方案比之前的基于聊天的多智能体系统更加连贯。

    LLM驱动的多智能体系统的局限性

    现有的LLM驱动的多智能体系统(Park et al., 2023; Zhuge et al., 2023; Cai et al., 2023; Wang et al., 2023c; Li et al., 2023; Du et al., 2023; Liang et al., 2023; Hao et al., 2023)往往过于简化了现实世界的复杂性,难以实现有效、连贯和准确的问题解决过程,特别是在需要有意义的协作交互时(Zhang et al., 2023; Dong et al., 2023; Zhou et al., 2023; Qian et al., 2023)。

    MetaGPT:借鉴人类工作流程,提升多智能体协作效率

    人类在各种领域(Belbin, 2012; Manifesto, 2001; DeMarco & Lister, 2013)通过广泛的协作实践,发展出了广泛接受的标准操作程序(SOPs)。这些SOPs在支持任务分解和有效协调方面发挥着至关重要的作用。此外,SOPs还概述了每个团队成员的职责,并为中间输出建立了标准。定义明确的SOPs可以提高与定义的角色和质量标准相一致的任务的一致性和准确执行(Belbin, 2012; Manifesto, 2001; DeMarco & Lister, 2013; Wooldridge & Jennings, 1998)。例如,在软件公司中,产品经理使用标准化结构分析竞争和用户需求,以创建产品需求文档(PRDs),指导开发过程。

    MetaGPT借鉴了这种思路,设计了一个基于GPT的元编程框架,该框架从SOPs中受益匪浅。与其他工作(Li et al., 2023; Qian et al., 2023)不同,MetaGPT要求智能体生成结构化的输出,例如高质量的需求文档、设计工件、流程图和界面规范。使用中间结构化输出显著提高了目标代码生成的成功率。更形象地说,在MetaGPT模拟的公司中,所有员工都遵循严格而简化的工作流程,所有交接都必须符合既定的标准。这降低了LLMs之间闲聊导致的幻觉风险,特别是在角色扮演框架中,例如:“你好,你好,你吃午饭了吗?”——爱丽丝(产品经理);“很好!你吃午饭了吗?”——鲍勃(架构师)。

    MetaGPT的核心设计:角色专业化、工作流程和结构化通信

    MetaGPT通过以下几个关键设计,将人类工作流程融入LLM驱动的多智能体协作中:

    角色专业化:将复杂任务分解成子任务

    明确的角色专业化使复杂工作能够分解成更小、更具体的任务。解决复杂的任务或问题通常需要具有不同技能和专业知识的智能体协作,每个智能体都贡献针对特定问题的专门输出。

    在软件公司中,产品经理通常进行面向业务的分析并得出见解,而软件工程师则负责编程。MetaGPT在软件公司中定义了五个角色:产品经理、架构师、项目经理、工程师和QA工程师,如图1所示。在MetaGPT中,我们指定了智能体的配置文件,其中包括每个角色的名称、配置文件、目标和约束。我们还为每个角色初始化了特定的上下文和技能。例如,产品经理可以使用网络搜索工具,而工程师可以执行代码,如图2所示。所有智能体都遵循Yao et al. (2022)中描述的React风格行为。

    每个智能体都监控环境(即MetaGPT中的消息池),以发现重要的观察结果(例如,来自其他智能体的信息)。这些信息可以直接触发操作,也可以帮助完成工作。

    工作流程:明确的任务分配和执行顺序

    通过定义智能体的角色和操作技能,我们可以建立基本的工作流程。在MetaGPT中,我们遵循软件开发中的SOP,使所有智能体能够以顺序方式工作。

    如图1所示,在获得用户需求后,产品经理进行彻底的分析,制定详细的PRD,包括用户故事和需求池。这作为初步的功能分解。结构化的PRD随后传递给架构师,架构师将需求转换为系统设计组件,例如文件列表、数据结构和界面定义。一旦被捕获到系统设计中,这些信息就会被传递给项目经理,用于任务分配。工程师继续执行指定的类和函数,如所概述的(在图2中详细说明)。在接下来的阶段,QA工程师制定测试用例以执行严格的代码质量。在最后一步,MetaGPT生成精心制作的软件解决方案。我们在图3中提供了一个详细的示意图,并在附录B中提供了一个MetaGPT中SOP工作流程的具体实例。

    结构化通信:提高信息传递效率

    大多数当前的LLM驱动的多智能体框架(Li et al., 2023; Zhuge et al., 2023; Zhang et al., 2023; Park et al., 2023)使用无约束的自然语言作为通信接口。

    然而,尽管自然语言用途广泛,但一个问题出现了:纯粹的自然语言通信是否足以解决复杂的任务?例如,在传话游戏(或传声筒)中,经过几轮通信后,原始信息可能会被严重扭曲。受人类社会结构的启发,我们建议使用结构化通信来制定智能体的通信。我们为每个角色建立了一个模式和格式,并要求个人根据其特定角色和上下文提供必要的输出。

    如图3所示,架构师智能体生成两个输出:系统界面设计和序列流程图。这些包含系统模块设计和交互序列,作为工程师的重要交付成果。与ChatDev(Zhao et al., 2023)不同,MetaGPT中的智能体通过文档和图表(结构化输出)而不是对话进行通信。这些文档包含所有必要的信息,防止出现无关或缺失的内容。

    发布-订阅机制:高效的信息共享

    在协作中,共享信息至关重要。例如,架构师和工程师经常需要参考PRDs。然而,在Li et al. (2023); Zhao et al. (2023); Zhang et al. (2023)等先前工作中,每次都以一对一的方式传递这些信息,可能会使通信拓扑变得复杂,导致效率低下。

    为了解决这一挑战,一种可行的方法是将信息存储在全局消息池中。如图2(左)所示,我们引入了一个共享消息池,允许所有智能体直接交换信息。这些智能体不仅在池中发布其结构化信息,还可以透明地访问来自其他实体的信息。任何智能体都可以直接从共享池中检索所需信息,无需询问其他智能体并等待其响应。这提高了通信效率。

    与每个智能体共享所有信息会导致信息过载。在任务执行过程中,智能体通常希望只接收与任务相关的信息,并避免通过无关细节造成干扰。有效管理和传播这些信息至关重要。我们提供了一个简单而有效的解决方案——订阅机制(如图2(左)所示)。智能体利用特定角色的兴趣来提取相关信息,而不是依赖对话。他们可以根据自己的角色配置文件选择要关注的信息。在实际实现中,智能体只有在收到所有先决条件后才会激活其操作。如图3所示,架构师主要关注产品经理提供的PRDs,而来自QA工程师等角色的文档可能不太重要。

    MetaGPT的创新:可执行反馈机制

    在日常编程任务中,调试和优化过程发挥着重要作用。然而,现有的方法通常缺乏自纠正机制,导致代码生成失败。先前的工作引入了不可执行的代码审查和自我反省(Zhao et al., 2023; Yao et al., 2022; Shinn et al., 2023; Dong et al., 2023)。然而,它们在确保代码可执行性和运行时正确性方面仍然面临挑战。

    MetaGPT的最初实现忽略了审查过程中的某些错误,这是由于LLMs的幻觉(Manakul et al., 2023)。为了克服这个问题,在初始代码生成后,我们引入了一个可执行反馈机制,以迭代地改进代码。更具体地说,如图2所示,工程师被要求根据原始产品需求和设计编写代码。

    这使工程师能够使用自己的历史执行和调试内存来不断改进代码。为了获得更多信息,工程师编写并执行相应的单元测试用例,然后接收测试结果。如果令人满意,则启动额外的开发任务。否则,工程师在恢复编程之前调试代码。这个迭代测试过程会持续进行,直到测试通过或达到最大3次重试。

    MetaGPT的实验验证:超越现有方法的性能

    本文通过一系列实验验证了MetaGPT的有效性,包括在HumanEval(Chen et al., 2021a)和MBPP(Austin et al., 2021)等基准测试上的性能评估,以及在自建的SoftwareDev数据集上的性能评估。

    基准测试结果:超越现有方法的性能

    在HumanEval和MBPP基准测试中,MetaGPT的性能超越了所有先前的方法,并在HumanEval基准测试中与GPT-4协作,显著提高了Pass@k。在SoftwareDev数据集上,MetaGPT在几乎所有指标上都优于ChatDev,例如,在可执行性方面,MetaGPT的得分接近4(完美无缺)。此外,MetaGPT的运行时间更短(503秒),明显少于ChatDev。在代码统计和人工修改成本方面,MetaGPT也显著优于ChatDev。尽管MetaGPT需要更多标记(24,613或31,255,而ChatDev为19,292),但它只需要126.5/124.3个标记来生成一行代码,而ChatDev使用248.9个标记。这些结果突出了SOPs在多个智能体之间协作中的优势。此外,我们通过可视化样本(图5)展示了MetaGPT的自主软件生成能力。有关其他实验和分析,请参见附录C。

    消融研究:验证MetaGPT设计的有效性

    为了了解不同角色对最终结果的影响,我们执行了两个涉及生成有效代码和计算平均统计数据的任务。当我们排除某些角色时,会生成不可用的代码。如表3所示,除了工程师之外,添加其他角色始终能提高修改和可执行性。虽然更多角色会略微增加成本,但整体性能明显提高,证明了各种角色的有效性。

    可执行反馈机制的有效性:如图4所示,在MetaGPT中添加可执行反馈,导致HumanEval和MBPP的Pass@1分别显著提高了4.2%和5.4%。此外,表1显示,反馈机制提高了可行性(3.67至3.75)并降低了人工修改成本(2.25至0.83)。这些结果说明了我们设计的反馈机制如何能够生成更高质量的代码。MetaGPT和没有可执行反馈的MetaGPT的额外定量结果如表4和表6所示。

    MetaGPT的未来展望:更智能、更自主的多智能体系统

    本文提出的MetaGPT为构建更智能、更自主的多智能体系统开辟了新的可能性,例如:

    • 自改进机制: MetaGPT可以从每个软件项目的经验中学习,不断改进自身的能力,例如,通过分析每个项目的反馈信息,不断优化每个智能体的约束提示,使它们能够从过去的项目经验中不断学习,并通过改进每个公司成员来增强整个多智能体系统。
    • 多智能体经济: MetaGPT可以构建一个类似于真实世界软件公司的多智能体经济,每个智能体提供不同的服务,并根据其贡献获得相应的奖励,从而实现更加灵活和自组织的协作。

    MetaGPT的出现,标志着LLM驱动的多智能体系统发展的新阶段,它将人类工作流程融入多智能体协作框架,为解决现实世界中的复杂问题提供了新的思路和方法。

    参考文献

    • Park, Joon Sung, Joseph C O’Brien, Carrie J Cai, Meredith Ringel Morris, Percy Liang, and Michael S Bernstein. “Generative Agents: Interactive Simulacra of Human Behavior.” arXiv preprint arXiv:2304.03442, 2023.
    • Zhuge, Mingchen, Haozhe Liu, Francesco Faccio, Dylan R Ashley, R´obert Csord´as, Anand Gopalakrishnan, Abdullah Hamdi, Hasan Abed Al Kader Hammoud, Vincent Herrmann, Kazuki Irie, et al. “Mindstorms in Natural Language-Based Societies of Mind.” arXiv preprint arXiv:2305.17066, 2023.
    • Cai, Tianle, Xuezhi Wang, Tengyu Ma, Xinyun Chen, and Denny Zhou. “Large Language Models as Tool Makers.” arXiv preprint arXiv:2303.17823, 2023.
    • Wang, Guanzhi, Yuqi Xie, Yunfan Jiang, Ajay Mandlekar, Chaowei Xiao, Yuke Zhu, Linxi Fan, and Anima Anandkumar. “Voyager: An Open-Ended Embodied Agent with Large Language Models.” arXiv preprint arXiv:2303.02079, 2023a.
    • Wang, Zhenhailong, Shaoguang Mao, Wenshan Wu, Tao Ge, Furu Wei, and Heng Ji. “Unleashing Cognitive Synergy in Large Language Models: A Task-Solving Agent Through Multi-Persona Self-Collaboration.” arXiv preprint arXiv:2303.03740, 2023c.
    • Li, Guohao, Hasan Abed Al Kader Hammoud, Hani Itani, Dmitrii Khizbullin, and Bernard Ghanem. “Camel: Communicative Agents for” Mind” Exploration of Large Scale Language Model Society.” arXiv preprint arXiv:2303.01885, 2023.
    • Du, Yilun, Shuang Li, Antonio Torralba, Joshua B. Tenenbaum, and Igor Mordatch. “Improving Factuality and Reasoning in Language Models Through Multiagent Debate.” arXiv preprint arXiv:2210.11211, 2023.
    • Liang, Tian, Zhiwei He, Wenxiang Jiao, Xing Wang, Yan Wang, Rui Wang, Yujiu Yang, Zhaopeng Tu, and Shuming Shi. “Encouraging Divergent Thinking in Large Language Models Through Multi-Agent Debate.” arXiv preprint arXiv:2303.02292, 2023.
    • Hao, Rui, Linmei Hu, Weijian Qi, Qingliu Wu, Yirui Zhang, and Liqiang Nie. “ChatLLM Network: More Brains, More Intelligence.” arXiv preprint arXiv:2302.08580, 2023.
    • Zhang, Hongxin, Weihua Du, Jiaming Shan, Qinhong Zhou, Yilun Du, Joshua B Tenenbaum, Tianmin Shu, and Chuang Gan. “Building Cooperative Embodied Agents Modularly with Large Language Models.” arXiv preprint arXiv:2302.03648, 2023.
    • Dong, Yihong, Xue Jiang, Zhi Jin, and Ge Li. “Self-Collaboration Code Generation via ChatGPT.” arXiv preprint arXiv:2302.01600, 2023.
    • Zhou, Shuyan, Frank F Xu, Hao Zhu, Xuhui Zhou, Robert Lo, Abishek Sridhar, Xianyi Cheng, Yonatan Bisk, Daniel Fried, Uri Alon, et al. “WebArena: A Realistic Web Environment for Building Autonomous Agents.” arXiv preprint arXiv:2301.07752, 2023.
    • Qian, Chen, Xin Cong, Cheng Yang, Weize Chen, Yusheng Su, Juyuan Xu, Zhiyuan Liu, and Maosong Sun. “Communicative Agents for Software Development.” arXiv preprint arXiv:2211.11231, 2023.
    • Belbin, R.M. Team Roles at Work. Routledge, 2012.
    • Manifesto, Agile. “Manifesto for Agile Software Development.” Snowbird, UT, 2001.
    • DeMarco, T. and Lister, T.R. Peopleware: Productive Projects and Teams. Addison-Wesley, 2013.
    • Wooldridge, Michael, and Nicholas R. Jennings. “Pitfalls of Agent-Oriented Development.” In Proceedings of the Second International Conference on Autonomous Agents, 1998.
    • Yao, Shunyu, Jeffrey Zhao, Dian Yu, Nan Du, Izhak Shafran, Karthik Narasimhan, and Yuan Cao. “REACT: Synergizing Reasoning and Acting in Language Models.” arXiv preprint arXiv:2110.02400, 2022.

  • 重温被Mamba带火的SSM:线性系统和HiPPO矩阵

    近年来,深度学习领域涌现出许多新的模型架构,其中状态空间模型(SSM,State Space Model)因其优雅的数学性质和强大的表达能力,逐渐成为Transformer的强劲对手。而Mamba,作为SSM最新的变体,更是凭借其在长序列建模上的优异表现,吸引了众多研究者的关注。

    本文将带您深入了解SSM的核心概念,并重温其重要奠基之作——HiPPO(High-order Polynomial Projection Operators)。通过HiPPO的推导,您可以理解线性系统在SSM中的重要性,以及它如何通过有限维的向量来储存无限维的函数信息。

    线性系统:简单而强大的表达能力

    SSM的核心思想是利用线性微分方程(ODE)系统来建模序列数据。一个典型的线性 ODE 系统可以表示为:

    $$
    \frac{dh}{dt} = Ah + Bu
    $$

    其中,$h$ 代表系统的状态,$u$ 代表输入,$A$ 和 $B$ 是模型参数。

    那么,为什么SSM会选择线性系统呢?答案是:线性系统既足够简单,也足够复杂。

    简单是指,线性化通常是复杂系统的一个最基本近似。而复杂是指,即使是如此简单的系统,也可以拟合异常复杂的函数。例如,一个简单的线性系统:

    $$
    \frac{dh}{dt} = h
    $$

    其解为 $h(t) = h(0)e^t$。这意味着,只要时间足够长,该线性系统就可以通过指数函数来拟合足够复杂的函数。

    HiPPO:从正交基逼近到线性系统

    HiPPO 为我们提供了一种更本质的理解:当我们试图用正交基去逼近一个动态更新的函数时,其结果就是如上的线性系统。

    假设我们要用一个有限维的向量来储存一段信号 $x(t)$ 的信息。如果我们假设 $x(t)$ 在某点 $t_0$ 阶可导,那么它对应的 $t_0$ 阶泰勒展开式往往是 $x(t)$ 的良好近似。我们可以只储存展开式的系数,从而将 $x(t)$ 压缩为一个有限维向量。

    然而,实际遇到的数据通常无法满足“阶可导”这种苛刻的条件。因此,我们更倾向于使用正交函数基展开,比如傅里叶级数。其系数计算公式为:

    $$
    c_k = \int_{-\infty}^{\infty} x(t)e^{-2\pi ikt} dt
    $$

    通过只保留有限个系数,我们可以将 $x(t)$ 压缩为一个有限维向量。

    接下来,问题难度升级。实际中,$x(t)$ 代表的是持续采集的信号,所以它是不断有新数据进入的。我们需要更新逼近结果来记忆整个信号的历史。

    为了解决这个问题,我们可以将 $x(t)$ 映射到一个有限区间 $[0, T]$,然后计算其在该区间上的傅里叶系数。

    $$
    c_k(T) = \int_{0}^{T} x(t)e^{-2\pi ikt} dt
    $$

    当新的数据进入时,我们可以重新计算系数,从而更新对 $x(t)$ 的逼近。

    通过对系数的导数进行推导,我们可以发现,系数的变化满足一个线性 ODE 系统。这意味着,当我们试图用傅里叶级数去记忆一个实时函数的最邻近窗口内的状态时,结果自然而言地导致了一个线性 ODE 系统。

    HiPPO 矩阵:勒让德多项式的应用

    HiPPO 的核心是选取多项式为基函数。其中,勒让德多项式因其在实数空间中的定义和简化推导过程的优势,成为了 HiPPO 的首选。

    勒让德多项式 $P_n(x)$ 是关于 $x$ 的 $n$ 次函数,定义域为 $[-1, 1]$,满足:

    $$
    \int_{-1}^{1} P_m(x)P_n(x) dx = \frac{2}{2n + 1}\delta_{mn}
    $$

    通过将勒让德多项式作为基函数,并利用其递归公式,我们可以推导出一个恒等式:

    $$
    \frac{d}{dT}P_n(2T/T – 1) = \frac{2n}{T}P_{n-1}(2T/T – 1)
    $$

    利用该恒等式,我们可以得到 HiPPO 矩阵,它描述了系数随时间的变化规律。

    HiPPO 的应用:SSM 的基石

    HiPPO 的结论被后来诸多 SSM 模型所使用,例如 S4 和 Mamba。HiPPO 为我们提供了一种理解 SSM 的全新视角,它揭示了线性系统在 SSM 中的本质意义,以及它如何通过有限维的向量来储存无限维的函数信息。

    总结

    本文以尽可能简单的方式重复了 HiPPO 的主要推导。HiPPO 通过适当的记忆假设,自下而上地导出了线性 ODE 系统,并针对勒让德多项式的情形求出了相应的解析解(HiPPO 矩阵)。其结果被后来诸多 SSM 模型使用,可谓是 SSM 的重要奠基之作。

    参考文献

    [1] https://papers.cool/arxiv/2312.00752
    [2] https://papers.cool/arxiv/2305.13048
    [3] https://papers.cool/arxiv/2307.08621
    [4] https://papers.cool/arxiv/2008.07669
    [5] https://dblp.org/pid/130/0612.html
    [6] https://en.wikipedia.org/wiki/Kronecker_delta
    [7] https://en.wikipedia.org/wiki/Legendre_polynomials
    [8] https://en.wikipedia.org/wiki/Gram–Schmidt_process
    [9] https://en.wikipedia.org/wiki/Chebyshev_polynomials
    [10] https://en.wikipedia.org/wiki/Laguerre_polynomials
    [11] https://proceedings.neurips.cc/paper/2019/file/952285b9b7e7a1be5aa7849f32ffff05-Paper.pdf

  • 重温被Mamba带火的SSM:线性系统和HiPPO矩阵

    作者:苏剑林
    单位:科学空间
    研究方向:NLP、神经网络

    前几天,笔者看了几篇介绍 SSM(State Space Model)的文章,才发现自己从未认真了解过 SSM,于是决定深入学习这一领域,并记录下学习所得。SSM 的概念由来已久,但这里我们特别指深度学习中的 SSM。可以说,2021年的 S4(Structured State Space for Sequence Modeling)是 SSM 的开篇之作,而最近最火的变体大概是去年的 Mamba。

    SSM 的基础与发展

    SSM 的概念并不新鲜,但其在深度学习领域的应用却是近几年的事。当我们谈到 SSM 时,通常指的是一切线性 RNN 模型,如 RWKV、RetNet 以及 Google 推出的 LRU 等。这些模型的目标之一是成为 Transformer 的竞争者,尽管完全替代 Transformer 的可能性不大,但 SSM 本身优雅的数学性质值得深入研究。

    HiPPO 的引入

    在 S4 之前,SSM 的奠基之作是《HiPPO: Recurrent Memory with Optimal Polynomial Projections》(简称 HiPPO)。HiPPO 提出了用正交基逼近动态更新的函数,其结果是一个线性系统。这不仅告诉我们线性系统可以逼近复杂的函数,还提供了具体的逼近方法和近似程度。

    SSM 的基本形式

    对于已经了解 SSM 的读者,SSM 建模所用的线性 ODE 系统公式如下:

    $$
    \dot{x}(t) = A x(t) + B u(t)
    $$

    其中,$x(t)$ 是系统状态,$A$ 和 $B$ 是矩阵,$u(t)$ 是输入信号。

    即使将其离散化,线性 RNN 模型的实质依然是线性系统。这引出了一个自然的问题:为什么选择线性系统?线性系统够用吗?

    答案是肯定的。线性系统既足够简单,也足够复杂。简单是指线性化常常是复杂系统的基本近似;复杂是指即便是简单的线性系统,也可以拟合复杂的函数。

    举个例子,考虑一个简单的线性系统:

    $$
    \dot{x}(t) = \lambda x(t)
    $$

    其解为 $x(t) = x(0) e^{\lambda t}$,这意味着通过组合指数函数和三角函数,线性系统可以拟合复杂的函数。

    有限压缩和函数逼近

    我们考虑区间 $[0, t]$ 内的输入信号 $u(\tau)$,HiPPO 的目标是将其压缩为一个有限维的向量。通过傅里叶级数展开,我们可以将 $u(\tau)$ 压缩为一个有限维向量,但这只适用于静态区间。

    而实际中,我们需要处理的是动态信号 $u(t)$,这就需要将傅里叶级数公式推广到动态情况。具体的方法是通过映射 $t$ 到 $[0, 1]$ 区间,然后计算正交基展开系数,并对其进行动态更新。

    线性系统的本质

    通过傅里叶级数和勒让德多项式等正交多项式展开,我们可以得出线性 ODE 系统的系数动力学。具体来说,当我们用正交基去逼近动态函数时,其结果自然导出一个线性 ODE 系统。

    以勒让德多项式为例,其递归公式和边界值满足条件,能够在实数空间中简化推导过程。通过对函数基的正交化处理,我们得到的系数动力学满足线性 ODE 系统。

    HiPPO 的一般框架

    HiPPO 是一个自下而上的框架,通过正交基逼近函数,导出线性 ODE 系统。它并没有假设系统必须是线性的,而是通过逼近的角度反推出线性系统的能力。

    HiPPO 的主要结论基于勒让德多项式,但也可以扩展到其他正交多项式,如切比雪夫多项式、拉盖尔多项式等。

    结论

    本文通过简单易懂的方式重温了 HiPPO 的主要推导。HiPPO 通过适当的记忆假设,自下而上地导出了线性 ODE 系统,并为 SSM 的发展奠定了基础。尽管 SSM 还在不断发展,其优雅的数学性质和强大的函数逼近能力使其成为深度学习中的重要工具。

    参考文献

    [1] Efficiently Modeling Long Sequences with Structured State Spaces
    [2] Recurrent Memory with Optimal Polynomial Projections
    [3] Legendre Polynomials
    [4] Gram-Schmidt Process
    [5] Kronecker Delta

  • HiPPO矩阵:打开序列模型记忆宝库的金钥匙

    在人工智能领域,如何让机器像人一样拥有记忆,一直是科学家们孜孜以求的目标。近年来,序列模型(SSM)的兴起为解决这一难题带来了新的曙光。而在众多SSM模型中,HiPPO矩阵犹如一把金钥匙,打开了序列模型记忆宝库的大门,为我们理解和应用SSM模型提供了全新的视角。

    在线函数逼近:序列模型的记忆挑战

    许多机器学习任务都需要处理不断涌现的序列数据,例如实时预测时间序列、让智能体在环境中学习和决策等等。这些任务的核心挑战在于如何有效地存储和利用历史信息,即序列模型的“记忆”问题。

    传统的机器学习模型往往受限于固定的上下文窗口或启发式机制,难以有效地捕捉长期依赖关系。例如,注意力机制的上下文窗口大小是固定的,而循环神经网络(RNN)则容易出现梯度消失问题,导致模型难以记住很久以前的信息。

    HiPPO框架:从数学角度解决记忆问题

    为了解决序列模型的记忆问题,HiPPO框架应运而生。HiPPO的全称是“高阶多项式投影算子(High-order Polynomial Projection Operators)”,它从数学角度出发,将序列模型的记忆问题转化为一个在线函数逼近问题。

    HiPPO框架的核心思想是:用一个有限维的向量来表示一个连续函数的历史信息。这听起来似乎是一个不可能完成的任务,因为连续函数包含无限多的信息。然而,HiPPO框架巧妙地利用了正交函数基展开的思想,将连续函数投影到一个有限维的子空间中,从而实现了信息的压缩和存储。

    具体来说,HiPPO框架选择勒让德多项式作为函数基,并根据不同的“记忆假设”,推导出了不同类型的HiPPO矩阵。这些矩阵可以看作是不同类型的“记忆过滤器”,它们决定了模型应该记住哪些历史信息,以及如何记住这些信息。

    两种典型的HiPPO矩阵:LegT和LegS

    HiPPO框架中最具代表性的两种HiPPO矩阵是LegT(Translated Legendre)和LegS(Scaled Legendre)。

    • LegT矩阵:LegT矩阵假设模型只关注最近一段时间内的历史信息,相当于一个滑动窗口。窗口的大小可以通过参数进行调节。
    • LegS矩阵:LegS矩阵理论上可以捕捉所有历史信息,但它存在一个分辨率问题。为了记住更长的历史信息,LegS矩阵需要牺牲信息的细节。

    HiPPO矩阵的意义和应用

    HiPPO矩阵的提出,为我们理解和应用SSM模型提供了以下重要意义:

    1. 揭示了线性系统的强大能力:HiPPO框架证明了线性系统足以拟合非常复杂的函数,为线性SSM模型的应用提供了理论依据。
    2. 阐明了SSM模型的记忆机制:HiPPO矩阵清晰地展示了SSM模型如何存储和利用历史信息,为我们设计和改进SSM模型提供了指导。
    3. 推动了SSM模型的发展:HiPPO矩阵被广泛应用于各种SSM模型中,例如Legendre Memory Unit(LMU)和Mamba等,极大地推动了SSM模型的发展。

    总结

    HiPPO矩阵是SSM模型发展历程中的一个重要里程碑。它不仅为我们提供了一种高效的记忆机制,更重要的是,它为我们理解和应用SSM模型打开了一扇全新的大门。相信随着研究的深入,HiPPO矩阵将在序列模型的未来发展中发挥更加重要的作用。


    参考文献

    1. Gu, A., Dao, T., Ermon, S., Rudra, A., & Ré, C. (2020). HiPPO: Recurrent memory with optimal polynomial projections. Advances in Neural Information Processing Systems, 33, 21964-21976.
    2. 苏剑林. (2024). 重温被Mamba带火的SSM:线性系统和HiPPO矩阵. CSDN博客. https://blog.csdn.net/c9Yv2cf9I06K2A9E/article/details/139468631