编者按:欢迎阅读“科研上新”栏目!“科研上新”汇聚了微软亚洲研究院最新的创新成果与科研动态。在这里,你可以快速浏览研究院的亮点资讯,保持对前沿领域的敏锐嗅觉,同时也能找到先进实用的开源工具。
ConvStencil:突破高性能计算与人工智能的“软硬”边界
本文荣获 PPoPP 2024 唯一最佳论文奖
论文链接:https://dl.acm.org/doi/10.1145/3627535.3638476 (opens in new tab)
项目链接:https://github.com/microsoft/ConvStencil (opens in new tab)
在深度学习中,矩阵乘法(MM)扮演着核心角色,目前,很多先进的处理器中都增加了专用单元来进行计算加速。相比于深度学习模型中相对标准化的矩阵乘法操作,高性能计算(HPC)中的计算模式更加复杂多样。长期以来,高性能计算和深度学习的研究在“软”(算法)“硬”(硬件)两方面逐渐分道扬镳,各自专注于不同的应用领域。以高性能计算领域的重要算子 stencil 计算为例,常见的 stencil 计算采用预定义的计算模式,不断地在时间维度上通过计算其与相邻点的加权来更新每个数据点。这种计算方式使得 stencil 计算难以直接转化为矩阵乘法,因此无法充分利用因深度学习而不断涌现的矩阵乘法加速硬件。
针对此问题,本文提出了一种新的 stencil 计算系统 ConvStencil,可以高效地将 stencil 计算转换为在张量核心单元(TCU)上的矩阵乘法,让传统高性能计算能够利用深度学习硬件进行加速。ConvStencil 的设计基于一个关键的发现:在高性能计算中的 stencil 计算和深度学习中的卷积,在计算模式上存在高度的相似性。但是,如果只是简单地利用 im2row 方法将 stencil 与卷积算法相结合,会因 stencil 与卷积在计算细节上存在关键差异,而难以使 stencil 计算高效利用张量核心单元。这其中需要克服三个关键的技术挑战:
首先,直接将 im2row 方法应用于 stencil 计算会导致内存需求大幅增加,并且张量核心单元的利用率较低。其次,算法需要符合硬件的限制。此外,在算法的实现和设计过程中,可能会遇到算法实现与硬件之间的冲突,例如线程分歧和 bank 冲突,从而导致性能下降。
为克服上述挑战,ConvStencil 引入了 stencil2row 变换,通过高效的内存布局,减少了70.0%至96.4%的内存需求。在 compute adaptation 方面,研究员们提出 dual tessellation 算法将张量核心利用率从12.5%提高到87.5%。在 conflict removal 方面,研究员们通过 lookup table 减少冗余的寻址计算。研究员们还设计了 dirty bits padding,利用 padding 区域来存储脏数据并避免条件分支,从而进一步提升性能。与如 AMOS、cuDNN、Brick、DRStencil 和 TCStencil 等方案相比,ConvStencil 实现了显著的加速效果。
通过将stencil计算转化为张量核心单元上的矩阵乘法,ConvStencil 有望提高各种科学和工程应用的性能。本文提出的 ConvStencil 属于 TensorStencil 项目研究工作的一部分。未来,TensorStencil 项目将推出一系列后续优化工作,以探索高性能计算和深度学习的研究在“软”(算法)“硬”(硬件)两方面上的结合,开启 HPC4Science 算法性能优化的新范式。
Anubis:通过主动验证提升云人工智能基础设施的可靠性
论文链接:https://arxiv.org/pdf/2402.06194.pdf (opens in new tab)
项目链接:https://aka.ms/superbench (opens in new tab)
在云人工智能基础设施中,可靠性对于云服务提供商至关重要,可促使硬件冗余的广泛使用。然而,这些冗余可能会在无意中降低人工智能工作负载的性能,即所谓的“灰色故障”,并掩盖性能问题,使得分析故障及性能下降的根本原因变得更加复杂。
微软亚洲研究院的研究员们发现,与故障发生后进行的被动式故障分析相比,在故障发生前及时、主动地验证云人工智能基础设施的各个组件,可大大减少故障发生的频率,提高云人工智能基础设施的可靠性。因此,研究员们提出了 Anubis 系统,这是一个针对云人工智能基础设施的主动验证系统,可以减少硬件冗余引起的性能下降,并提升整体可靠性。Anubis 系统具有完备的基准测试套件,能够评估任一硬件组件并代表绝大多数真实的人工智能工作负载。Anubis 有一个验证器,用于学习基准测试标准,以明确定位有缺陷的组件。此外,Anubis 还包含一个选择器,来平衡验证时间和发现问题的数量,从而能够在执行验证时,选择最佳的执行时间,并使用定制的基准测试子集。
实验结果表明,Anubis 可将云人工智能基础设施中的故障间平均时间增加到22.61倍。过去两年,Anubis 已成功部署在微软 Azure 云平台的云人工智能基础设施中,并验证了数十万块 GPU。未来,研究员们将持续对云人工智能基础设施领域进行更加深入的探索。
基于心理测量学的通用型人工智能评估方法
论文链接:https://arxiv.org/abs/2310.16379 (opens in new tab)
通用型人工智能(General-Purpose AI)在当今社会的重要性日益凸显,因此对其进行有效的评估就变得尤为关键。但传统的人工智能评估常常依赖于预先设定的特定任务,而通用型人工智能需要面对众多未知且复杂的任务场景。所以针对特定任务的人工智能评估方法已不再适用于通用型人工智能。如何可靠且高效地评估通用型人工智能,已经成为一个重要的挑战。
对此,微软亚洲研究院的研究员们提出了一种创新性的思路——使用心理测量学来评估通用型人工智能。心理测量学(Psychometrics)是一门专注于评估人类心理特质和能力的科学。在其发展过程中,心理测量学积累了大量关于评估心理特质的理论和方法,为通用型人工智能的评估提供了一个科学的基础。
研究员们分析了目前人工智能评估存在的三个主要局限,并探讨了心理测量学可以采取的应对策略:
1. 预测力不足:现有的评估方法主要着眼于人工智能在特定任务上的表现,而难以预测人工智能在面对新任务时的表现。相比之下,心理测量学评估的是任务背后的深层心理构念(如能力、价值观和动机等)。这些关键构念决定了人工智能在处理不同任务时的表现,从而使评估结果具有预测性。2. 缺乏信息量:常规的人工智能评估往往只提供总体表现,而忽视了对原因的深入解释,这使得依据这些评估来优化人工智能变得困难。心理测量学通过对目标构念的细致拆解和针对性评估,可帮助人们更深入且全面地理解人工智能的表现。3. 测试工具质量不高:目前人工智能测试工具的质量尚未得到充分验证,可能导致误导性的测试结果。心理测量学通过严格的信度和效度检验,能确保测试工具稳定且准确地反映人工智能在特定心理构念上的真实水平。
在此基础上,研究员们提出了一个利用心理测量学来评估人工智能的框架。该框架在各关键环节探讨了如何扩展心理测量学的方法,使其能够适用于通用型人工智能的评估。具体包括以下几个方面:1. 参照心理学领域的策略来识别通用型人工智能的关键心理构念;2. 借鉴心理测验的一般流程,为通用型人工智能开发测验并评分。在此过程中,针对通用型人工智能所需具备的构念,设计不同的测验形式,同时应用项目反应理论来实现对构念的精准评分;3. 引入信度和效度的概念,确保测验对于特定人工智能具有高度的可靠性和准确性。
研究员们也指出,由于人工智能与人类之间存在显著差异,在应用心理测量学评估通用型人工智能的框架时,还存在许多尚未解决的问题和开放性的议题,值得持续关注和深入探索:首先,人工智能如何区分“个体”和“总体”?其次,人工智能模型对于 prompts 非常敏感,如何判断进行 prompt engineering 的必要性,并解读由此带来的模型结果变化?最后,对于同一构念,能否使用相同的测验题目来评估并比较人类与人工智能的表现?这些题目对两者是否同样有效?人工智能这一新型智能体是否拥有与人类不同的独特构念?这些问题有待研究员们和心理学专家合作进行探讨研究。
VLP:类似于人类左右脑思维模式的视觉语言规划框架
论文链接:https://arxiv.org/abs/2402.10534 (opens in new tab)
目前的大语言模型(LLMs)和多模态大模型(LMMs)具备强大的对话理解和思考能力,同时思维链(CoT)这种语言规划范式又赋予了多模态大模型更强的推理能力。然而,现有的多模态大模型仍缺乏视觉推理能力,这与人类的思考方式并不相符——人类在思考时,左脑负责语言和逻辑推理,右脑负责视觉和空间推理,但多模态大模型目前仅能模仿左脑的语言推理过程。
为解决上述问题,微软亚洲研究院的研究员们推出了名为 VLP 的视觉语言规划框架。该框架包含了语言规划分支和视觉规划分支。语言规划分支使用大语言模型进行思维链思考,将问题转化成若干子问题进行回答。视觉规划分支则使用大视觉模型,如 Sora 或者 Stable Video Diffusion 这种视频生成模型,以进行视觉推理。
具体而言,VLP 首先对于不同模态的输入任务进行统一化,都转化成语言输入和视觉输入。视觉规划分支接受视觉输入,使用扩散模型来生成视频未来帧,并使用粗筛器和细筛器来筛选对用户问题有用的帧,组成视觉计划。语言规划分支使用思维链进行问题分解,形成语言计划。最后,多模态大模型根据视觉计划和语言计划做出最终决策。
部分实验结果如图7所示,VLP 框架在 STAR 和 NExT-QA 数据集的视频问答中取得了迄今为止最好的结果。