我自己的原文哦~ https://blog.51cto.com/whaosoft/13284996
#VideoMamba
视频理解因大量时空冗余和复杂时空依赖,同时克服两个问题难度巨大,CNN 和 Transformer 及 Uniformer 都难以胜任,Mamba 是个好思路,让我们看看本文是如何创造视频理解的 VideoMamba。
视频理解的核心目标在于对时空表示的把握,这存在两个巨大挑战:短视频片段存在大量时空冗余和复杂的时空依赖关系。尽管曾经占主导地位的三维卷积神经网络 (CNN) 和视频 Transformer 通过利用局部卷积或长距离注意力有效地应对其中之一的挑战,但它们在同时解决这两个挑战方面存在不足。UniFormer 试图整合这两种方法的优势,但它在建模长视频方面存在困难。
S4、RWKV 和 RetNet 等低成本方案在自然语言处理领域的出现,为视觉模型开辟了新的途径。Mamba 凭借其选择性状态空间模型 (SSM) 脱颖而出,实现了在保持线性复杂性的同时促进长期动态建模的平衡。这种创新推动了它在视觉任务中的应用,正如 Vision Mamba 和 VMamba 所证实的那样,它们利用多方向 SSM 来增强二维图像处理。这些模型在性能上与基于注意力的架构相媲美,同时显著减少了内存使用量。
鉴于视频产生的序列本身更长,一个自然的问题是:Mamba 能否很好地用于视频理解?
受 Mamba 启发,本文引入了 VideoMamba 专为视频理解量身定制的纯 SSM (选择性状态空间模型)。VideoMamba 以 Vanilla ViT 的风格,将卷积和注意力的优势融合在一起。它提供一种线性复杂度的方法,用于动态时空背景建模,非常适合高分辨率的长视频。相关评估聚焦于 VideoMamba 的四个关键能力:
在视觉领域的可扩展性:本文对 VideoMamba 的可扩展性进行了检验,发现纯 Mamba 模型在不断扩展时往往容易过拟合,本文引入一种简单而有效的自蒸馏策略,使得随着模型和输入尺寸的增加,VideoMamba 能够在不需要大规模数据集预训练的情况下实现显著的性能增强。
对短期动作识别的敏感性:本文的分析扩展到评估 VideoMamba 准确区分短期动作的能力,特别是那些具有细微动作差异的动作,如打开和关闭。研究结果显示,VideoMamba 在现有基于注意力的模型上表现出了优异的性能。更重要的是,它还适用于掩码建模,进一步增强了其时间敏感性。
在长视频理解方面的优越性:本文评估了 VideoMamba 在解释长视频方面的能力。通过端到端训练,它展示了与传统基于特征的方法相比的显著优势。值得注意的是,VideoMamba 在 64 帧视频中的运行速度比 TimeSformer 快 6 倍,并且对 GPU 内存需求减少了 40 倍 (如图 1 所示)。
与其他模态的兼容性:最后,本文评估了 VideoMamba 与其他模态的适应性。在视频文本检索中的结果显示,与 ViT 相比,其性能得到了改善,特别是在具有复杂情景的长视频中。这凸显了其鲁棒性和多模态整合能力。
本文的深入实验揭示了 VideoMamba 在理解短期 (K400 和 SthSthV2) 和长期 (Breakfast,COIN 和 LVU) 视频内容方面的巨大潜力。鉴于其高效性和有效性,VideoMamba 注定将成为长视频理解领域的重要基石。所有代码和模型均已开源,以促进未来的研究努力。
- 论文地址:https://arxiv.org/pdf/2403.06977.pdf
- 项目地址:https://github.com/OpenGVLab/VideoMamba
- 论文标题:VideoMamba: State Space Model for Efficient Video Understanding
方法介绍
下图 2a 显示了 Mamba 模块的细节。
时空扫描:为了将 B-Mamba 层应用于时空输入,本文图 4 中将原始的 2D 扫描扩展为不同的双向 3D 扫描:
(a) 空间优先,通过位置组织空间 token,然后逐帧堆叠它们;
(b) 时间优先,根据帧排列时间 token,然后沿空间维度堆叠;
(c) 时空混合,既有空间优先又有时间优先,其中 v1 执行其中的一半,v2 执行全部 (2 倍计算量)。
图 7a 中的实验表明,空间优先的双向扫描是最有效但最简单的。由于 Mamba 的线性复杂度,本文的 VideoMamba 能够高效地处理高分辨率的长视频。
对于 B-Mamba 层中的 SSM,本文采用与 Mamba 相同的默认超参数设置,将状态维度和扩展比例分别设置为 16 和 2。参照 ViT 的做法,本文调整了深度和嵌入维度,以创建与表 1 中相当大小的模型,包括 VideoMamba-Ti,VideoMamba-S 和 VideoMamba-M。然而实验中观察到较大的 VideoMamba 在实验中往往容易过拟合,导致像图 6a 所示的次优性能。这种过拟合问题不仅存在于本文提出的模型中,也存在于 VMamba 中,其中 VMamba-B 的最佳性能是在总训练周期的四分之三时达到的。为了对抗较大 Mamba 模型的过拟合问题,本文引入了一种有效的自蒸馏策略,该策略使用较小且训练良好的模型作为「教师」,来引导较大的「学生」模型的训练。如图 6a 所示的结果表明,这种策略导致了预期的更好的收敛性。
关于掩码策略,本文提出了不同的行掩码技术,如图 5 所示,专门针对 B-Mamba 块对连续 token 的偏好。
实验
表 2 展示了在 ImageNet-1K 数据集上的结果。值得注意的是,VideoMamba-M 在性能上显著优于其他各向同性架构,与 ConvNeXt-B 相比提高了 + 0.8%,与 DeiT-B 相比提高了 + 2.0%,同时使用的参数更少。VideoMamba-M 在针对增强性能采用分层特征的非各向同性主干结构中也表现出色。鉴于 Mamba 在处理长序列方面的效率,本文通过增加分辨率进一步提高了性能,仅使用 74M 参数就实现了 84.0% 的 top-1 准确率。
表 3 和表 4 列出了短期视频数据集上的结果。(a) 监督学习:与纯注意力方法相比,基于 SSM 的 VideoMamba-M 获得了明显的优势,在与场景相关的 K400 和与时间相关的 Sth-SthV2 数据集上分别比 ViViT-L 高出 + 2.0% 和 + 3.0%。这种改进伴随着显著降低的计算需求和更少的预训练数据。VideoMamba-M 的结果与 SOTA UniFormer 不相上下,后者在非各向同性结构中巧妙地将卷积与注意力进行了整合。(b) 自监督学习:在掩码预训练下,VideoMamba 的性能超越了以其精细动作技能而闻名的 VideoMAE。这一成就突显了本文基于纯 SSM 的模型在高效有效地理解短期视频方面的潜力,强调了它适用于监督学习和自监督学习范式的特点。
如图 1 所示,VideoMamba 的线性复杂度使其非常适合用于与长时长视频的端到端训练。表 6 和表 7 中的比较突显了 VideoMamba 在这些任务中相对于传统基于特征的方法的简单性和有效性。它带来了显著的性能提升,即使在模型尺寸较小的情况下也能实现 SOTA 结果。VideoMamba-Ti 相对于使用 Swin-B 特征的 ViS4mer 表现出了显著的 + 6.1% 的增长,并且相对于 Turbo 的多模态对齐方法也有 + 3.0% 的提升。值得注意的是,结果强调了针对长期任务的规模化模型和帧数的积极影响。在 LVU 提出的多样化且具有挑战性的九项任务中,本文采用端到端方式对 VideoMamba-Ti 进行微调,取得了与当前 SOTA 方法相当或优秀的结果。这些成果不仅突显了 VideoMamba 的有效性,也展示了它在未来长视频理解方面的巨大潜力。
如表 8 所示,在相同的预训练语料库和类似的训练策略下,VideoMamba 在零样本视频检索性能上优于基于 ViT 的 UMT。这突显了 Mamba 在处理多模态视频任务中与 ViT 相比具有可比较的效率和可扩展性。值得注意的是,对于具有更长视频长度 (例如 ANet 和 DiDeMo) 和更复杂场景 (例如 LSMDC) 的数据集,VideoMamba 表现出了显著的改进。这表明了 Mamba 在具有挑战性的多模态环境中,甚至在需求跨模态对齐的情况下的能力。
#StableDrag
去年 5 月,动动鼠标就能让图片变「活」得研究 DragGAN 吸引了 AI 圈的关注。通过拖拽,我们可以改变并合成自己想要的图像,比如下图中让一头狮子转头并张嘴。
实现这一效果的研究出自华人一作领衔的「Drag Your GAN」论文,于上个月放出并已被 SIGGRAPH 2023 会议接收。相关的项目在 GitHub 上已经积累了 34.5k 的 Star 量。拖拽P图技术又升级了:StableDrag更稳、更准,南大、腾讯联合打造
项目地址:https://github.com/XingangPan/DragGAN
之后,新加坡国立大学和字节跳动推出了类似的研究 ——DragDiffusion。他们利用大规模预训练扩散模型,极大提升了基于点的交互式编辑在现实世界场景中的适用性。效果如下动图所示:
尽管取得了很大的成功,但类似的拖拽方案存在两个主要缺陷,即点跟踪不准确和动作监督不完整,从而可能导致无法达到满意的拖拽效果。
为了克服这些缺陷,南京大学、腾讯的几位研究者提出了一种判别式点跟踪方法并针对动作监督采用了基于置信的潜在增强策略,构建了一个更加稳定和精确的拖拽编辑框架 ——StableDrag。
其中判别式点跟踪方法能够精确地定位更新的操纵点,提高长程操纵稳定性;基于置信的潜在增强策略能够在所有操纵步骤中,保证优化的潜在变量尽可能地高质量。
- 论文标题:StableDrag: Stable Dragging for Point-based Image Editing
- 论文地址:https://arxiv.org/pdf/2403.04437.pdf
- 项目地址:https://stabledrag.github.io/
得益于这些独特的设计,研究者实例化了两种类型的图像编辑模型:StableDrag-GAN 和 StableDrag-Diff。这两个模型在 DragBench 上进行了广泛的定性和定量评估,结果都显示出更加稳定的拖拽效果。
从下面视频中,我们可以看到 StableDrag-GAN 的拖拽全过程。
视频看不了...
如下为 StableDrag-GAN 的更多拖拽示例。
方法介绍
如图 1 所示,由于不精确的点跟踪和不完整的动作监督,DragGAN 和 DragDiffusion 对图像的编辑质量不高。因此,在这项工作中,本文将注意力集中在当前的拖拽技术上,以实现更稳定和更精确的图像操作。.
拖拽 pipeline 如图 2 所示,包括判别点跟踪模块( Discriminative PT )和置信动作监督模块( Confident MS )。
判别点跟踪
置信动作监督
本文提出了一种基于置信度的潜在增强策略,如图 2 所示。首先,本文引入跟踪得分最大值即 s_i,来表示当前的监督置信度,以及置信度分数在 step-1 产生增强策略的阈值。通常,当模型足够自信地识别当前状态时,本文会采用论文中等式(1)的原始动作监督。如果当前的置信度得分低于预定义的阈值,则采用初始模板进行监督。具体强化监督定义为:
实验结果
研究者基于 PyTorch 实现了 StableDrag-GAN 和 StableDrag-Diff,实验中使用了一块英伟达 V100 GPU。
下图 5 展示了 DragGAN 与 StableDrag-GAN、DragDiffusion 与 StableDrag-Diff、以及 FreeDrag-Diff 与 StableDrag-Diff 三组模型之间的定性比较。
可以看到,本文的 StableDrag 方法可以更精准地将操纵点移动到目标点,例如山峰、狮子下巴、小鹿额头和灯泡。同时,StableDrag 可以生成更高质量和更高保真度的编辑结果,比如保持手提包、眼镜、马和兵马俑的外观。
研究者在 DragBench 基准上对 StableDrag 方法进行了定量评估,该基准包含 205 个具有预定义拖拽点和掩码(mask)的样本。
如下表 1 所示,在 3 种不同的优化步骤设置下,StableDrag-Diff 始终能够优化 DragDiffusion。
这进一步表明:通过置信动作监督和判别式点跟踪,StableDrag 可以在编辑准确性和内容一致性方面实现有潜力的结果。
除了定性和定量评估之外,为了验证本文方法的有效性并展开深入分析,研究者通过「基于 GAN 和扩散模型的定性可视化」以及「基于扩散模型的 DragBench 定量评估」,进行了详细的消融实验。
首先是置信动作监督。研究者首先进行了基于 StableDrag-GAN 的马编辑实验,如下图 6 所示,随着置信度得分逐渐降低,没有置信度动作监督模块的 StableDrag 编辑的图像质量较低。
其次是判别点跟踪。图 7 和表 2 评估了 StableDrag 和没有判别跟踪模型的 StableDrag。我们可以看到,没有判别跟踪模型的 StableDrag 可能会受到背景干扰点的误导,导致结果不准确。
最后是跟踪模块的实用性。该研究提出的点跟踪器在公式和实现上都很简洁。如表 3 所示训练跟踪器(大约仅 1 秒)花费的时间远少于拖拽过程。
#SmartTrim
基于 Transformer 结构的视觉语言大模型(VLM)在各种下游的视觉语言任务上取得了巨大成功,但由于其较长的输入序列和较多的参数,导致其相应的计算开销地提升,阻碍了在实际环境中进一步部署。为了追求更为高效的推理速度,前人提出了一些针对 VLM 的加速方法,包括剪枝和蒸馏等,但是现有的这些方法大都采用静态架构,其针对不同输入实例采用同样的计算图进行推理,忽略了不同实例之间具有不同计算复杂性的事实:针对复杂的跨模态交互实例,自然需要更多计算才能完全理解图像和相关问题的复杂细节;相反,简单的实例则可以用更少的计算量解决。这也导致较高加速比下的 VLM 的性能严重下降。自适应剪枝让多模态大模型加速2-3倍
为了解决上述这些问题,哈工大联合度小满推出针对多模态模型的自适应剪枝算法 SmartTrim,论文已被自然语言处理顶级会议 COLING 24 接收。
前期探究和研究动机
本文首先针对 VLM 中每一层的 token 表示和 attention head 的冗余情况进行分析,如下图所示。我们有了以下发现:(1)无论是哪种模态的 token 或者 head,层内相似性始终很高,说明模型是存在显着冗余。(2)Token 的冗余度随着深度而逐渐增加。(3)不同实例之间的冗余程度差异较大,进一步说明依赖于输入的自适应剪枝对于 VLM 加速的重要性。
在基于 VQA 微调的 METER 的跨模态编码器中,层内不同 token(上)和 attention head(下)表示的相似性。
方法介绍
基于上述发现,本文提出针对 VLM 的自适应剪枝框架:SmartTrim,从 token 和 attention head 两方面同时对模型冗余部分进行剪枝。
SmartTrim 框架结构图
跨模态感知的 Token 修剪器:
文本和图像各自的 Token 序列首先经过各自编码器进行编码,对于得到的序列表示,经过基于 MLP 结构的跨模态感知 Token 修剪器识别对于当前层不重要的 Token:在识别过程中模型不仅考虑 token 在当前模态序列的重要性,同时还要引入其在跨模态交互中的重要性。最终 token 的重要性分数转化成一个 0/1 的二值 mask 用来去除冗余 token。
模态自适应的注意力头修剪器:
VLM 分别通过 MSA(multi-head self-attention module) 和 MCA (multi-head cross-attention module)捕获模态内和模态间交互。正如前文分析,注意力部分计算开销根据输入的复杂性而变化,导致注意力模块出现的冗余会产生较大的开销。为此,我们将模态自适应注意力头修剪器集成到注意力模块中。该修剪器用以衡量各个注意力头的显著性,根据此对冗余的注意力头做修剪。
模型训练
自蒸馏与课程训练策略:
我们还引入一种自蒸馏的训练策略来提高通过自适应剪枝得到的小模型:通过对齐剪枝后的小模型和全容量模型之间输出,使得剪枝模型的输出与全容量模型更为一致,进一步提高小模型的能力。另外我们利用课程学习的训练方式指导模型的训练,使模型稀疏度逐步减低到目标比例,从而保证了优化过程的稳定性。
最终的模型训练目标为:
实验结果
我们基于 METER 和 BLIP 这两个 VLM 作为原始模型并在一系列下游 VL 任务上评估 SmartTrim 以及其他方法的性能和效率,如下表所示:我们的方法将原始模型加速了 2-3 倍,同时性能下降最小。
具有不同加速比下的 VLM 加速方法结果。
与前人方法相比,SmartTrim 不需要额外的预训练,而且还通过 token 和 head 两个方面提供了更细粒度地控制模型的计算开销,以更好地探索效率与性能之间的权衡,下面的帕累托图显示我们的方法在 1.5x 的加速比下甚至相比原始模型性能有所提升,而在高加速比下的相比其他加速方法具有显著优势。
不同 VLM 加速方法在 NLVR2 上的效率与性能权衡的帕累托前沿。
我们进一步展示了一些随着深度增加 SmartTrim 逐步裁剪不同模态的冗余 token 的例子:
Token 的逐步裁剪修剪过程。
上图 (a)-(c) 是由我们提出的跨模态感知 Token 修剪器获得的,可以看到针对不同的问题我们的修剪器网络可以合适地选择更为相关的 patch。(d) 为去掉跨模态信息指导的基线模型地输出,我们也可以观察到其只保留了图片的主体部分但与问题并不相关的 patch token,并最终产生错误的答案。
我们还统计了在 vqa 数据的测试集上我们的 SmartTrim 为不同实例分配的计算量情况,如下图所示。可以发现 SmartTrim 可以自适应地根据跨模态交互的复杂性分配不同的计算开销,为简单实例(图左)分配更少的计算,为困难实例(图右)分配更多计算。
VQA 上 SmartTrim 的 FLOPs 直方图。
论文提出的方法未来将结合到度小满轩辕大模型中,大模型项目地址:https://github.com/Duxiaoman-DI/XuanYuan
#Large World Models
突破性的百万级视频和语言世界模型
在探索如何让AI更好地理解世界方面,最近的一项突破性研究引起了广泛关注。来自加州大学伯克利分校的研究团队发布了“Large World Model, LWM”,能够同时处理百万级长度的视频和语言序列,实现了对复杂场景的深入理解。这一研究无疑为未来AI的发展开启了新的篇章。
论文地址:World Model on Million-Length Video And Language With RingAttention
博客地址:Large World Models
huggingface: LargeWorldModel (Large World Model)
在传统方法中,AI模型往往只能处理较短的文本或视频片段,缺乏对长时间复杂场景的理解能力。然而,现实世界中的许多场景,如长篇书籍、电影或电视剧,都包含了丰富的信息,需要更长的上下文来进行深入理解。为了应对这一挑战,LWM团队采用了环形注意力(RingAttention)技术,成功扩展了模型的上下文窗口,使其能够处理长达100万个令牌(1M tokens)的序列。例如实现超过 1 小时的问答视频:
图1.长视频理解。LWM 可以回答有关超过 1 小时的 YouTube 视频的问题。
超过 1M 上下文的事实检索:
图 2. 针检索任务。LWM 在 1M 上下文窗口内实现了高精度,并且性能优于 GPT-4V 和 Gemini Pro。.
图 3. 针检索任务。LWM 对于上下文窗口中不同的上下文大小和位置实现了高精度。
技术实现
为了训练和评估LWM,研究人员首先收集了一个包含各种视频和书籍的大型数据集。然后,他们逐步增加了训练的上下文长度,从4K tokens开始,逐步扩展到1M tokens。这一过程不仅有效降低了训练成本,还使模型能够逐步适应更长序列的学习。在训练过程中,研究人员还发现,混合不同长度的图像、视频和文本数据对于模型的多模态理解至关重要。具体包括:
模型训练分两个阶段:首先通过训练大型语言模型扩展上下文大小。然后进行视频和语言的联合训练。
Stage I: Learning Long-Context Language Models
扩展上下文:利用RingAttention技术,可以无近似地扩展上下文长度到数百万个token。同时,通过逐步增加训练序列长度,从32K tokens开始,逐步增加到1M tokens,以减少计算成本。此外,为了扩展位置编码以适应更长的序列,采用了简单的方法,即随上下文窗口大小增加而增加RoPE中的θ。
上下文扩展和视觉语言训练。使用 RingAttention 将书籍上的上下文大小从 4K 扩展到 1M,然后对长度为 32K 到 1M 的多种形式的视觉内容进行视觉语言训练。下面板显示了理解和响应有关复杂多模式世界的查询的交互功能。
训练步骤:首先从LLaMA-2 7B模型初始化,然后在5个阶段逐步增加上下文长度,分别是32K、128K、256K、512K和1M tokens。每个阶段都使用不同过滤版本的Books3数据集进行训练。随着上下文长度的增加,模型能够处理更多tokens。
任意对任意长序列预测。RingAttention 能够使用非常大的上下文窗口进行跨视频-文本、文本-视频、图像-文本、文本-图像、纯视频、纯图像和纯文本等多种格式的训练。请参阅LWM 论文了解关键功能,包括屏蔽序列打包和损失加权,它们可以实现有效的视频语言训练。
对话微调:为了学习长上下文的对话能力,构建了一个简单的问答数据集,将Books3数据集的文档分割成1000 token的块,然后利用短上下文语言模型为每个块生成一个问答对,最后将相邻的块连接起来构造一个长上下文的问答示例。在微调阶段,模型在UltraChat和自定义问答数据集上进行训练,比例为7:3。
语言评估结果:在单针检索任务中,1M上下文的模型可以在整个上下文中近乎完美地检索出随机分配给随机城市的数字。在多针检索任务中,模型在检索一个针时表现良好,在检索多个针时性能略有下降。在短上下文语言任务评估中,扩大上下文长度并没有降低性能。在对话评估中,增加对话交互能力可能会降低系统检索具体信息或“针”的精度。
Stage II: Learning Long-Context Vision-Language Models
架构修改:在第一阶段的基础上,对LWM和LWM-Chat进行修改,使其能够接受视觉输入。具体来说,使用预训练的VQGAN将256x256的输入图像转换为16x16的离散token,对视频进行逐帧的VQGAN编码并将编码连接起来。此外,引入了特殊的标记符号和来区分文本和视觉token,以及和来标记图像和视频帧的结束。
训练步骤:从LWM-Text-1M模型初始化,采用与第一阶段类似的逐步增加序列长度的训练方法,首先在1K tokens上训练,然后是8K tokens,最后是32K、128K和1M tokens。训练数据包括文本-图像对、文本-视频对以及下游任务的聊天数据,如文本-图像生成、图像理解、文本-视频生成和视频理解。在训练过程中,逐步增加下游任务的混合比例。
视觉-语言评估结果:在长视频理解方面,模型能够处理长达1小时的YouTube视频并准确回答问题,相较于现有模型具有明显优势。在图像理解和短视频理解方面,模型表现一般,但通过更严格的训练和更好的分词器,有潜力改进。在图像和视频生成方面,模型可以从文本生成图像和视频。Ablation研究表明,屏蔽序列填充对于图像理解等下游任务至关重要。
文本到图像。LWM 根据文本提示以自回归方式生成图像。
文本到视频。LWM 根据文本提示以自回归方式生成视频。
第二阶段通过逐步增加序列长度并在大量文本-图像和文本-视频数据上训练,成功扩展了第一阶段的语言模型,使其具备视觉理解能力。这一阶段的模型可以处理长达1M tokens的多模态序列,并在长视频理解、图像理解和生成等方面展现出强大的能力。
技术细节(Further Details)
训练计算资源:模型使用TPUv4-1024进行训练,相当于450个A100 GPU,使用FSDP进行数据并行,并通过RingAttention支持大上下文。
训练损失曲线:图10和图11展示了第一阶段语言模型和第二阶段视觉-语言模型的训练损失曲线。可以看出,随着训练进行,损失持续下降。
训练超参数:附录F提供了详细的训练超参数,包括参数量、初始化模型、序列长度、RoPE参数、每批tokens数、总tokens数、训练步骤数、学习率计划、学习率预热步数、最大学习率和最小学习率、计算资源等。
推断扩展:实现了RingAttention用于解码,支持对长达数百万tokens的序列进行推断,需使用至少v4-128 TPU,并进行32路tensor并行和4路序列并行。
量化:文档指出,模型使用单精度进行推断,通过量化等技术可以进一步提高扩展性。
一些例子
基于图像的对话。
图 6. 图像理解。LWM 可以回答有关图像的问题。
超过 1 小时的 YouTube 视频视频聊天。
图 7. 长视频聊天。即使最先进的商业模型 GPT-4V 和 Gemini Pro 都失败了,LWM 仍能回答有关 1 小时长的 YouTube 视频的问题。每个示例的相关剪辑位于时间戳 9:56(顶部)和 6:49(底部)。
#LoRAMoE
LoRA结合上MoE的路由功能,让LoRA的参数增量不再是静态的死板一块,而是可以根据不同任务的输入来动态生成,有效解决了SFT大量训练数据和世界知识遗忘的冲突。最近组里同学在尝试实现LoRAMoE,意在解决大模型微调后遗忘世界知识的问题。参考的是复旦23年年底的这篇论文:"LoRAMoE: Revolutionizing Mixture of Experts for Maintaining World Knowledge in Language Model Alignment"[1],将LoRA和MoE方法做了组合,有效解决了上述问题,本文详细讲解一下这篇论文。
1. 背景
大模型经过大量语料的无监督预训练后,得到所谓的基座模型,这时候通常还不能很好地完成下游任务,需要经过有监督的微调(SFT)后才能和人类指令对齐,释放其全部潜力。
一般来说,SFT的训练数据不需要太多,但当下游任务增多或者需要强化特定任务的性能时,增加SFT训练数据还是有必要的。如下图的左侧部分,当SFT数据从100K提升到3M时,大部分任务的性能显著增强。
但随着SFT数据的大规模增加,新的问题出现了:如下图的右侧部分所示,在某些评测数据集上性能显著下降,与之相伴的是大模型的参数变化量剧增(见红色线段)。这些数据集属于闭卷问答任务(Closed-Book Question Answering,简称CBQA),即只给大模型输入问题,大模型主要依靠在预训练过程中习得的世界知识来给出答案。
这里补充一下:像TriviaQA、Natural Questions这类数据其实是包含问题相关上下文的,也就是说如果用作开卷问答任务,则输入不仅包括问题还包括上下文,大模型可以从上下文中总结出答案;但如果用作闭卷问答任务,则输入中不提供上下文。论文[2]中6.1节有提到。
我们有理由怀疑CBQA的性能下降与大模型世界知识的崩溃有关,下面将通过实验证明这一点。首先验证CBQA的推理依赖大模型的世界知识,其次证明CBQA数据集上性能的大幅下降归因于大规模微调会显着改变模型参数,导致世界知识的破坏,即发生知识遗忘。
2. 大规模微调导致世界知识破坏
下面详细介绍一下实验过程,即做实验证明大规模SFT导致大模型的世界知识严重受损,引起知识遗忘。
2.1 实验设计
数据集
准备了7种任务的数据集,分别是CBQA(闭卷问答)、coreference resolution(指代消解)、NLI(自然语言推理)、summarization(文本摘要)、multi-lingual translation(多语言翻译)、reading comprehension(阅读理解)、text classification(文本分类)。具体数据集见下图:
基座模型
采用LLaMA-2-7B作为基座模型,属于在学术界非常流行的LLM之一。
评估
将任务分为两类:CBQA数据集用于评估模型的世界知识,前人工作发现CBQA数据集中有train-test重叠,因此做了过滤,只用未重叠的test集,命名为Filtered TriviaQA和Filtered NQ这种;其他的下游任务用opencompass[3]框架来评测。
2.2 实验结果
用前面说的7种任务的混合数据集微调大模型,数据规模逐渐增加,然后看不同下游任务的性能表现。如下图所示,像左侧的摘要、NLI、机器翻译这类任务,随着SFT训练数据的增加,性能显著提升;但是右侧的CBQA任务,却出现断崖式下跌。
我们已经高度怀疑CBQA的性能下降是由于大模型的世界知识崩坏引起的,为了更加确信,接下来我们仔细实验一下CBQA和大模型的世界知识到底有什么关系,具体做法是单独拿CBQA的25万条样本训练大模型,然后看大模型在未重叠的测试集上的表现。
如下图所示,在训练一开始大约1000样本的时候,性能已经快速提升到了很高的点,后续再增加更多的训练样本其实提升很有限。说明少量样本微调就帮助大模型完成了人类指令的对齐,大模型完成CBQA指标评测的能力主要依靠的是内在的世界知识,而不是微调过程中训练样本灌输的。因此我们更加确性CBQA指标高度依赖大模型在预训练过程中学到的世界知识,上图中CBQA的性能下降的原因就是世界知识的破坏。
再进一步实验,证明是大规模的微调导致了世界知识受损。具体做法如下表:第三列仅用CBQA训练数据微调,是可以CBQA测试集上打败Baseline的;而第四列是分两阶段,先用300万不包换CBQA的数据微调,然后再用和第三列同样的CBQA数据继续微调,结果在CBQA测试集上的表现比Baseline都差很远。
对比一下第三列和第四列,差别只在后者多了一个第一阶段300万数据的微调,说明它正是大模型世界知识崩塌的罪魁祸首,第二阶段即便加上CBQA训练数据,也无法弥补回来。同时发现大模型的参数发生了巨大变化,正好和前面结论相互佐证。
3. LoRAMoE方法
前面的实验表明,有些下游任务需要SFT的训练数据越多越好,即LLM的参数改变越大越好,而有些下游任务需要尽可能保留世界知识,即参数变化越小越好。这种冲突对于一般的全参微调或者LoRA微调都是搞不定的。论文[1]引入了MoE的思想来解决,实现LoRA微调的自适应。题外话,MoE在搜广推领域早就烂大街,这里又用到了LLM微调领域,说明技术都是相通的。
下面先分别介绍一下MoE和LoRA,然后看如何结合。
3.1 MoE简介
MoE全称Mixture of Experts,意味着有多个专家网络投票共同输出结果,只不过每个专家根据输入不同,分配不同的权重。我们可以想象成不同的专家具备不同领域的能力,然后根据输入的特征,给更匹配的专家分配更高的权重,从而动态组合专家输出。
3.2 LoRA简介
论文[4]中对缩放系数的作用只是很简略的说了一段,令人摸不着头脑。对此我自己做了推导和调研,发现原生的缩放因子并未最佳选择,因和本文主旨无关,后续单独作文述之。
3.3 LoRA+MoE
我们结合LoRA和MoE的优点,将二者组合起来,便是LoRAMoE,看下图所示:
对照公式我们再回看上面的图4,只能说图中的LoRAMoE部分是个示意图,意会即可。
3.4 专家平衡约束
如果不加任何约束微调MoE,经常会出现门控函数收敛到一种状态,即少数专家掌握了话语权,其他专家权重非常小,失去了平衡。
LoRAMoE人为地将专家分为两组,一组专注于学习下游任务,另一组专注于将世界知识和人类指令对齐。
3.5 实验
实验参数:
LoRAMoE层只替换LLM中FFN的线性层,且每个LoRAMoE层的专家数为6,其中3个用于下游任务,另外3个用于对齐世界知识。
实验结果:
可以看到,相比于全量微调或者传统的LoRA,本文的方法都取得明显提升,世界知识的遗忘问题也不再发生。详细结论不再细表,总之,LoRA结合上MoE的路由功能,让LoRA的参数增量不再是静态的死板一块,而是可以根据不同任务的输入来动态生成,有效解决了SFT大量训练数据和世界知识遗忘的冲突。
#DS-Agent
基于案例的推理助力大模型智能体挑战自动化数据科学任务,吉大、上交和汪军团队发布专注于数据科学的智能体构建框架 DS-Agent。智能体DS-Agent基于案例推理,让GPT-4数据科学任务接近100%
在大数据时代,数据科学覆盖了从数据中挖掘见解的全周期,包括数据收集、处理、建模、预测等关键环节。鉴于数据科学项目的复杂本质以及对人类专家知识的深度依赖,自动化在改变数据科学范式方面拥有极大的发展空间。随着生成式预训练语言模型的兴起,让大语言模型智能体处理复杂任务变得越来越重要。
传统的数据处理和分析大多依赖专业的数据科学家,费时费力。如果能够让大语言模型智能体扮演数据科学家的角色,那么除了能够为我们提供更高效的洞察和分析,还可以开启前所未有的工业模式和研究范式。
这样一来只要给定数据任务需求,专注于数据科学的智能体就可以自主地处理海量数据,发现隐藏在数据背后的模式和趋势。更广阔地,可以提供清晰模型构建的策略和代码,调用机器进行模型部署推理,最后利用数据可视化,使复杂的数据关系一目了然。
近期,吉林大学、上海交通大学和伦敦大学学院汪军团队合作提出了 DS-Agent,这一智能体的角色定位是一名数据科学家,其目标是在自动化数据科学中处理复杂的机器学习建模任务。技术层面上,团队采用了一种经典的人工智能策略 —— 基于案例的推理(Case-Based Reasoning,CBR),赋予了智能体 “参考” 他山之石的能力,使其能够利用以往解决类似问题的经验来解决新问题。
- 论文链接:https://arxiv.org/pdf/2402.17453.pdf
- 代码链接:https://github.com/guosyjlu/DS-Agent
- 论文题目:DS-Agent: Automated Data Science by Empowering Large Language Models with Case-Based Reasoning
研究背景
在自动化数据科学这种开放决策场景中,目前的大模型智能体(例如 AutoGPT、LangChain、ResearchAgent 等)即使搭配 GPT-4 也难以保证较高的成功率。其主要挑战在于大模型智能体无法稳定地生成可靠的机器学习解决方案,并且还面临着幻觉输出的问题。当然,针对数据科学这一特定场景对大模型进行微调似乎是一种可行的策略,但这同时引入了两个新问题:(1)生成有效的反馈信号需要基于机器学习模型训练,这一过程需要耗费大量时间才能积累足够的微调数据。(2)微调过程中需要执行反向传播算法,这不仅增加了计算开销,而且大幅度提升了对计算资源的需求。
在这种情况下,团队决定使用 Kaggle 这一关键资源。作为世界上最大的数据科学竞赛平台,它拥有由经验丰富的数据科学家社区贡献的大量技术报告和代码。为了使大模型智能体能够高效地利用这些专家知识,团队采用了一个经典的人工智能问题解决范式 —— 基于案例的推理。
基于案例的推理的核心工作机制是维护一个案例库来不断存储过往经验。当出现一个新问题时,CBR 会在案例库中检索相似的过往案例,并尝试复用这些案例的解决方案来解决新问题。随后,CBR 会评估解决方案的有效性并根据反馈修订解决方案,这一过程中的成功的解决方案会被增加到案例库中以供未来复用。
在此基础上,团队提出 DS-Agent,利用 CBR 使大模型智能体能够分析、提取和重用 Kaggle 上的人类专家见解,并根据实际的执行反馈迭代修订解决方案,从而实现面向数据科学任务的持续性能提升。
框架细节
总体上,DS-Agent 实现了两种模式,以适应不同的应用阶段和资源要求。
- 标准模式(开发阶段):DS-Agent 采用 CBR 构建自动化迭代流程,这模拟了数据科学家在搭建和调整机器学习模型时的连续探索过程,通过不断的实验和优化以求达到最佳解决方案。
- 低资源模式(部署阶段):DS-Agent 复用开发阶段积累的成功案例来生成代码,这大大减少了对计算资源和基座模型推理能力的需求,使得开源大模型解决自动化数据科学任务成为可能。
开发阶段中,给定一个新的数据科学任务,DS-Agent 首先从 Kaggle 中检索出与任务相关的人类专家知识,并在此基础上构建初步的解决方案。紧接着,它进入一个迭代循环,通过编程和调试来训练机器学习模型,以获得在测试集上的性能指标。这些反馈指标成为评价和改进解决方案的关键依据。DS-Agent 会根据这些指标对模型设计进行必要的修改,以寻求最优的模型设计。在这个过程中,那些最优的机器学习解决方案被保存在案例库中,为将来遇到类似任务时提供了参考。
部署阶段下,DS-Agent 的工作模式变得更加直接和高效。在这个阶段,它直接检索并复用经过验证的成功案例来生成代码,而无需再次从头开始探索。这样不仅降低了对计算资源的需求,使得 DS-Agent 能够快速响应用户的需求;还显著降低了对大模型基座能力的要求,以一种低资源的方式提供高质量的机器学习模型。
实验设置
我们收集了 30 种不同的数据科学任务,覆盖了三种主要数据模态(文本、表格和时间序列)以及两大机器学习核心问题(分类和回归),并设计了不同的评价指标来保证任务的多样性。
开发阶段实验结果
在开发阶段中,DS-Agent 使用 GPT-4 首次在数据科学任务中实现了 100% 的成功率;相比之下,DS-Agent 即使使用 GPT-3.5 也展现出了比最强基线 ResearchAgent 使用 GPT-4 时还要更高的成功率。
此外,DS-Agent 使用 GPT-4 和 GPT-3.5 时,分别在测试集评价指标中取得了第一和第二的成绩,显著优于最强基线 ResearchAgent。
部署阶段实验结果
部署阶段中,DS-Agent 使用 GPT-4 时,取得了首次接近 100% 的一次成功率,同时将开源模型 Mixtral-8x7b-Instruct 的一次成功率从 6.11% 跃升到了 31.11%
在测试集指标评估中,DS-Agent 使用 GPT-4 和 GPT-3 时,取得了第一和第二的成绩;然而遗憾的是,开源大模型 Mixtral-8x7b-Instruct 在 DS-Agent 的加持下仍然没有超越 GPT-3.5。
最后,我们对 DS-Agent 在两种不同模式下的 API 调用成本进行了分析。通过对比,我们发现在开发阶段,DS-Agent 分别对 GPT-4 和 GPT-3.5 进行调用时,单次成本分别是 1.60 美元和 0.06 美元。然而,在部署阶段,成本得到了显著降低:DS-Agent 单次使用 GPT-4 的成本下降至仅需 13 美分,而单次使用 GPT-3.5 的成本更是低至不足 1 美分。这意味着在部署阶段,与开发阶段相比,我们实现了超过 90% 的成本节省。
借助 DS-Agent,即便你不懂编程、没学过机器学习,也能轻松应对各种复杂的数据分析挑战,瞬间获得深入的业务洞察,进行有效的决策支持,优化策略,并预测未来趋势,从而使企业数据部门的工作效率有望得到大幅提升。试想一下,营销人员只需用自然语言描述需求,智能体就能快速生成用户画像和营销策略分析;金融分析师告别手动建模的繁琐,转而与智能体探讨市场趋势…… 这一切可能很快就会成为现实。当然,自动化数据科学还处于起步阶段,离规模化应用尚需时日。但 DS-Agent 的出现无疑为我们展现了一幅令人期待的未来图景。随着人工智能的不断发展,冗杂的数据分析工作有朝一日或将被 AI 接管,而人类则可以把更多时间放在洞见思考和创新决策之上。
#DBRX~
「太狂野了」。开源大模型王座再易主,1320亿参数DBRX上线,基础、微调模型都有
这是迄今为止最强大的开源大语言模型,超越了 Llama 2、Mistral 和马斯克刚刚开源的 Grok-1。
本周三,大数据人工智能公司 Databricks 开源了通用大模型 DBRX,这是一款拥有 1320 亿参数的混合专家模型(MoE)。
DBRX 的基础(DBRX Base)和微调(DBRX Instruct)版本已经在 GitHub 和 Hugging Face 上发布,可用于研究和商业用途。人们可以自行在公共、自定义或其他专有数据上运行和调整它们,也可以通过 API 的形式使用。
- 基础版:https://huggingface.co/databricks/dbrx-base
- 微调版:https://huggingface.co/databricks/dbrx-instruct
- GitHub 链接:https://github.com/databricks/dbrx
DBRX 在语言理解、编程、数学和逻辑等方面轻松击败了目前业内领先的开源大模型,如 LLaMA2-70B、Mixtral 和 Grok-1。
同时,DBRX 也在大多数基准测试上超过了 GPT-3.5,并在质量上可与 Gemini 1.0 Pro 和 Mistral Medium 竞争,同时速度大大加快。托管在 Mosaic AI Model Serving 上时,速度达到了 150 token/s/ 用户。
DBRX 的效率很高,它是基于斯坦福 MegaBlocks 开源项目构建的混合专家模型,平均只用激活 360 亿参数来处理 token,可以实现极高的每秒处理速度。它的推理速度几乎比 LLaMA2-70B 快两倍,总参数和活动参数数量比 Grok 小约 40%。
Databricks NLP 预训练团队负责人 Vitaliy Chiley 介绍道,DBRX 是在 12 万亿 Token 的文本和代码上预训练的 16×12B MoE LLM,它支持的最大上下文长度为 32k Tokens。
Hugging Face 工程师 Vaibhav Srivastav 表示,DBRX 模型「太狂野了」。
很多人第一时间进行了测试,有网友评论道,看起来 DBRX 可以应对非常晦涩的问题,又因为比 Grok 精简了三倍,若进行量化的话有望在 64GB RAM 的机器上运行,总之非常令人兴奋。
也有人直接表示,不贵的话我要付费用了。
除了开源社区、开发者们正在热烈讨论之外,DBRX 引来了各路媒体的报道,《连线》杂志直接将其称为「世界最强大的开源 AI 模型」。
通过一系列基准测试,DBRX 为当前开源大模型领域树立了新标杆。它为开源社区提供了以前仅限于封闭大模型 API 的能力,在基准分数上它超越了 GPT-3.5,与 Gemini 1.0 Pro 不分上下。它是一个强大的代码生成模型,除作为通用 LLM 的优势外,在编程方面超越了 CodeLLaMA-70B 等专业模型。
训练混合专家模型是一件困难的工作,Databricks 表示,它希望公开构建开源模型所涉及的大部分成果,包括 Meta 在 Llama 2 模型上没有公开过的一些关键细节。
DBRX 大模型,使用领先架构
DBRX 是一种基于 Transformer 的仅解码器大语言模型(LLM),使用细粒度的专家混合(MoE)架构,共有 1320 亿参数,其中 36B 个参数在任何输入上都处于激活状态。该模型是在 12T 文本和代码数据 token 上预训练而成,最大上下文长度高达 32k。
与 Mixtral 和 Grok-1 等其他开源 MoE 模型相比,DBRX 是细粒度的,这意味着它使用了更多数量的小型专家。DBRX 有 16 个专家模型,从中选择 4 个使用,而 Mixtral 和 Grok-1 有 8 个专家模型,选择其中 2 个。算下来,DBRX 提供了 65 倍可能的专家组合,这种组合方式的倍增提高了模型质量。
与此同时,DBRX 使用旋转位置编码 (RoPE)、门控线性单元 (GLU) 和分组查询注意力 (GQA) 等技术来提高模型质量。此外,DBRX 还使用了 tiktoken 存储库中提供的 GPT-4 分词器。
DBRX 与开源模型比较
表 1 显示了 DBRX Instruct 和领先的开源模型比较结果。可以看出,DBRX Instruct 在两个综合基准(composite benchmarks)、编程和数学基准以及 MMLU 方面表现优越。具体而言:
综合基准。包括 Hugging Face Open LLM Leaderboard(ARC-Challenge、HellaSwag、MMLU、TruthfulQA、WinoGrande 和 GSM8k 的平均分)以及 Databricks Model Gauntlet(涵盖 6 个领域、超过 30 项任务,包含世界知识、常识推理、语言理解、阅读理解、符号问题和编程) 。
DBRX Instruct 在两个综合基准上得分最高:在 Hugging Face 开源 LLM 排行榜上的得分为 74.5% ,而排名第二的模型 Mixtral Instruct 为 72.7%;在 Databricks Gauntlet 上的表现为 66.8% ,位于第二名的 Mixtral Instruct 为 60.7%。
编程和数学:DBRX Instruct 在编程和数学方面尤其擅长。
在 HumanEval 上的评估结果高于其他开源模型,DBRX Instruct 表现为 70.1%,Grok-1 为 63.2%、 Mixtral Instruct 为 54.8%、性能最好的 LLaMA2-70B 变体为 32.2%。
在 GSM8k 基准上,DBRX Instruct 表现为 66.9%,Grok-1 为 62.9%、 Mixtral Instruct 为 61.1%、性能最好的 LLaMA2-70B 变体为 54.1%。
综合来看,DBRX 的性能优于 Grok-1,后者是这些基准测试中排名第二的模型,尽管 Grok-1 的参数数量是 DBRX 的 2.4 倍。在 HumanEval 上,DBRX Instruct 甚至超越了 CodeLLaMA-70B Instruct(一种专门为编程而构建的模型),尽管 DBRX Instruct 是为通用用途而设计、而不是专为编程构建(据 Meta 在 CodeLLaMA 博客中报道,HumanEval 上的得分为 70.1% vs. 67.8%) 。
MMLU。DBRX Instruct 的得分达到 73.7%,高于其他模型。
表 1. DBRX Instruct 和领先的开源模型比较。
DBRX 与闭源模型比较
表 2 显示了 DBRX Instruct 和领先的闭源模型比较结果。DBRX Instruct 超越了 GPT-3.5(如 GPT-4 论文中所述),并且与 Gemini 1.0 Pro 和 Mistral Medium 具有相当的竞争力。具体而言:
与 GPT-3.5 的比较。在多个基准测试中,DBRX Instruct 超过了 GPT-3.5,或者在某些基准上与 GPT-3.5 相当。DBRX Instruct 在 MMLU 上关于常识知识的得分为 73.7%,GPT-3.5 为 70.0%;在 HellaSwag 上的得分为 89.0% ,GPT-3.5 为 85.5%;在 WinoGrande 上为 81.8%,GPT-3.5 为 81.6%。根据 HumanEval(70.1% vs. 48.1%)和 GSM8k(72.8% vs. 57.1%)的测量结果表明,DBRX Instruct 尤其擅长编程和数学推理。
与 Gemini 1.0 Pro 和 Mistral Medium 的比较。DBRX Instruct 在与 Gemini 1.0 Pro 和 Mistral Medium 比较后,取得了具有竞争力的结果。DBRX Instruct 在 Inflection Corrected MTBench、MMLU、HellaSwag 和 HumanEval 上的得分高于 Gemini 1.0 Pro,而 Gemini 1.0 Pro 在 GSM8k 上的得分比 DBRX Instruct 要高。DBRX instruction 和 Mistral Medium 在 HellaSwag 上的得分相似,而 Mistral Medium 在 Winogrande 和 MMLU 上更强,DBRX instruction 在 HumanEval、GSM8k 和 Inflection Corrected MTBench 上更强。
表 2.DBRX Instruct 与闭源模型的比较。
长下文任务和 RAG
DBRX Instruct 训练上下文窗口大小为 32K token。表 3 将其性能与 Mixtral Instruct 以及最新版本的 GPT-3.5 Turbo 和 GPT-4 Turbo API 在一系列长上下文基准测试上进行了比较。结果显示,GPT-4 Turbo 通常是执行这些任务的最佳模型。而 DBRX Instruct 表现比 GPT-3.5 Turbo 好;DBRX Instruct 和 Mixtral Instruct 的整体性能相似。
表 3. 在 KV-Pairs 和 HotpotQAXL 基准测试中,模型的平均性能。
表 4 显示了 DBRX 在两个 RAG 基准(Natural Questions 和 HotPotQA)上的质量。结果显示,DBRX Instruct 与 Mixtral Instruct 和 LLaMA2-70B Chat 等开源模型以及当前版本的 GPT-3.5 Turbo 具有竞争力。
表 4. 模型在两个 RAG 基准上的结果。
训练效率
表现再好的模型也必须考虑训练和效率等因素,在 Databricks 尤其如此。
该研究发现训练混合专家模型可以显著提高训练的计算效率(表 5)。例如,在训练 DBRX 系列中较小的成员模型 DBRX MoE-B(23.5B 参数,6.6B 激活参数)时,在 Databricks LLM Gauntlet 上达到相同的 45.5% 分数 DBRX 所需的 FLOP 比 LLaMA2-13B 少 1.7 倍,而 DBRX MoE-B 只有 LLaMA2-13B 一半的激活参数。
研究人员表示,从整体上看,端到端的 LLM 预训练 pipeline 计算效率在过去十个月中提高了近 4 倍。此前,2023 年 5 月 ,Databricks 发布了 MPT-7B,这是一个在 1T token 上训练的 7B 参数模型,在 Databricks LLM Gauntlet 分数为 30.9%。此次 DBRX 系列的一个成员模型为 DBRX MoE-A(总参数 7.7B,激活参数 2.2B),Databricks Gauntlet 得分为 30.5%,而 FLOP 减少了 3.7 倍。这种效率的提升是建立在各种优化结果的基础上,包括使用 MoE 架构、对网络其他架构的更改、更好的优化策略、更好的 token 化,以及非常重要的更好的预训练数据。
从单个方面来讲,更好的预训练数据对模型质量产生了重大影响。该研究使用 DBRX 预训练数据在 1T token(称为 DBRX Dense-A)上训练了 7B 模型,它在 Databricks Gauntlet 上达到了 39.0%,而 MPT-7B 具有相同的 token 数,得分只有 30.9%。该研究估计,新的预训练数据至少比用于训练 MPT-7B 的数据好两倍,换句话说,达到相同模型质量只需要一半的 token 数量。研究者通过在 500B token 上训练 DBRX Dense-A 来确定这一点;它在 Databricks Gauntlet 上的表现超过了 MPT-7B,达到了 32.1%。除了数据质量更好外,另一个重要的贡献因素可能是 GPT-4 的分词器,它具有大词汇量,并且被认为特别有效率。
表 5.
推理效率
图 2 展示了使用 NVIDIA TensorRT-LLM 以及该研究优化后的服务基础设施,为 DBRX 及其类似模型提供端到端推理效率。
一般来说,MoE 模型的推理速度相比其模型要快。DBRX 在这方面也不例外,DBRX 推理吞吐量比 132B 非 MoE 模型高 2-3 倍。
众所周知,推理效率和模型质量通常是矛盾的:较大的模型一般质量都会高,但较小的模型推理效率更高。使用 MoE 架构可以在模型质量和推理效率之间实现比密集模型更好的权衡。例如,DBRX 的性能比 LLaMA2-70B 更高,并且由于激活参数数量约为 LLaMA2-70B 的一半,DBRX 推理吞吐量最高可提高 2 倍(图 2)。此外,DBRX 比 Mixtral 小,质量相应较低,但推理吞吐量更高。
图 2. 推理效率。
训练用了 3072 块 H100,这只是个开始
DBRX 开源后,Databricks 的首席科学家 Jonathan Frankle 表示,关于 DBRX 有很多故事可讲,包括我们是如何构建它、选择数据、设计课程、扩展 DBRX、学习 DBRX 的等等。最好的故事从现在开始,因为从此以后社区和企业都会以这种新模式起跑。
DBRX 是通过 3.2Tbps 的 Infiniband 连接 3072 块 NVIDIA H100 进行训练的,训练时间花费超过 3 个月,费用约 1000 万美元。构建 DBRX 的主要过程包括预训练、训练后调整、评估、red team 和精炼等过程。
若想在标准配置中运行 DBRX,你需要一台至少配备四个 Nvidia H100 GPU(或内存共 320GB 的任何其他 GPU 配置)的服务器或 PC。
Databricks 副总裁 Naveen Rao 在接受采访时表示,随着 DBRX 的研发团队 Mosaic Labs 不断推动生成式 AI 研究,Databricks 将持续完善 DBRX 并发布新版本。
参考链接:
https://www.databricks.com/blog/introducing-dbrx-new-state-art-open-llm
#ReALM
或许不久之后,Siri就能看懂手机屏幕并帮你点外卖了。
在最近的一篇论文中,苹果的研究人员宣称,他们提出了一个可以在设备端运行的模型,这个模型在某些方面可以超过 GPT-4。
具体来说,他们研究的是 NLP 中的指代消解(Reference Resolution)问题,即让 AI 识别文本中提到的各种实体(如人名、地点、组织等)之间的指代关系的过程。简而言之,它涉及到确定一个词或短语所指的具体对象。这个过程对于理解句子的意思至关重要,因为人们在交流时经常使用代词或其他指示词(如「他」、「那里」)来指代之前提到的名词或名词短语,避免重复。
不过,论文中提到的「实体」更多得与手机、平板电脑等设备有关,包括:
- 屏幕实体(On-screen Entities):用户在与设备交互时,屏幕上显示的实体或信息。
- 对话实体(Conversational Entities):与对话相关的实体。这些实体可能来自用户之前的发言(例如,当用户说「给妈妈打电话」时,「妈妈」的联系方式就是相关的实体),或者来自虚拟助手(例如,当助手为用户提供一系列地点或闹钟供选择时)。
- 后台实体(Background Entities):这些是与用户当前与设备交互的上下文相关的实体,但不一定是用户直接与虚拟助手互动产生的对话历史的一部分;例如,开始响起的闹钟或在背景中播放的音乐。
苹果的研究在论文中表示,尽管大型语言模型(LLM)已经证明在多种任务上具有极强的能力,但在用于解决非对话实体(如屏幕实体、后台实体)的指代问题时,它们的潜力还没有得到充分利用。
在论文中,苹果的研究者提出了一种新的方法 —— 使用已解析的实体及其位置来重建屏幕,并生成一个纯文本的屏幕表示,这个表示在视觉上代表了屏幕内容。然后,他们对屏幕中作为实体的部分进行标记,这样模型就有了实体出现位置的上下文,以及围绕它们的文本是什么的信息(例如:呼叫业务号码)。据作者所知,这是第一个使用大型语言模型对屏幕上下文进行编码的工作。
具体来说,他们提出的模型名叫 ReALM,参数量分别为 80M、250M、1B 和 3B,体积都非常小,适合在手机、平板电脑等设备端运行。
研究结果显示,相比于具有类似功能的现有系统,该系统在不同类型的指代上取得了大幅度的改进,其中最小的模型在处理屏幕上的指代时获得了超过 5% 的绝对增益。
此外,论文还将其性能与 GPT-3.5 和 GPT-4 进行了对比,结果显示最小模型的性能与 GPT-4 相当,而更大的模型则显著超过了 GPT-4。这表明通过将指代消解问题转换为语言建模问题,可以有效利用大型语言模型解决涉及多种类型指代的问题,包括那些传统上难以仅用文本处理的非对话实体指代。
这项研究有望用来改进苹果设备上的 Siri 智能助手,帮助 Siri 更好地理解和处理用户询问中的上下文,尤其是涉及屏幕上内容或后台应用的复杂指代,在在线搜索、操作应用、读取通知或与智能家居设备交互时都更加智能。
苹果将于太平洋时间 2024 年 6 月 10 日至 14 日在线举办全球开发者大会「WWDC 2024」,并推出全面的人工智能战略。有人预计,上述改变可能会出现在即将到来的 iOS 18 和 macOS 15 中,这将代表用户与 Apple 设备之间交互的重大进。
论文绍
- 论文地址:https://arxiv.org/pdf/2403.20329.pdf
- 论文标题:ReALM: Reference Resolution As Language Modeling
本文任务制定如下:给定相关实体和用户想要执行的任务,研究者希望提取出与当前用户查询相关的实体(或多个实体)。相关实体有 3 种不同类型:屏幕实体、对话实体以及后台实体(具体内容如上文所述)。
在数据集方面,本文采用的数据集包含综合创建的数据或在注释器的帮助下创建的数据。数据集的信息如表 2 所示。
其中,对话数据是用户与智能体交互相关的实体数据;合成数据顾名思义就是根据模板合成的数据;屏幕数据(如下图所示)是从各种网页上收集的数据,包括电话号码、电子邮件等。
模型
研究团队将 ReALM 模型与两种基线方法进行了比较:MARRS(不基于 LLM)、ChatGPT。
该研究使用以下 pipeline 来微调 LLM(FLAN-T5 模型):首先向模型提供解析后的输入,并对其进行微调。请注意,与基线方法不同,ReALM 不会在 FLAN-T5 模型上运行广泛的超参数搜索,而是使用默认的微调参数。对于由用户查询和相应实体组成的每个数据点,研究团队将其转换为句子格式,然后将其提供给 LLM 进行训练。
会话指代
在这项研究中,研究团队假设会话指代有两种类型:
- 基于类型的;
- 描述性的。
基于类型的指代严重依赖于将用户查询与实体类型结合使用来识别(一组实体中)哪个实体与所讨论的用户查询最相关:例如,用户说「play this」,我们知道「this」指的是歌曲或电影等实体,而不是电话号码或地址;「call him」则指的是电话号码或联系人,而不是闹钟。
描述性指代倾向于使用实体的属性来唯一地标识它:例如「时代广场的那个」,这种指代可能有助于唯一地指代一组中的一个。
请注意,通常情况下,指代可能同时依赖类型和描述来明确指代单个对象。苹果的研究团队简单地对实体的类型和各种属性进行了编码。
屏幕指代
对于屏幕指代,研究团队假设存在能够解析屏幕文本以提取实体的上游数据检测器。然后,这些实体及其类型、边界框以及围绕相关实体的非实体文本元素列表都可用。为了以仅涉及文本的方式将这些实体(以及屏幕的相关部分)编码到 LM 中,该研究采用了算法 2。
直观地讲,该研究假设所有实体及其周围对象的位置由它们各自的边界框的中心来表示,然后从上到下(即垂直、沿 y 轴)对这些中心(以及相关对象)进行排序,并从左到右(即水平、沿 x 轴)使用稳定排序。所有位于边缘(margin)内的对象都被视为在同一行上,并通过制表符将彼此分隔开;边缘之外更下方的对象被放置在下一行,这个过程重复进行,有效地从左到右、从上到下以纯文本的方式对屏幕进行编码。
实验
表 3 为实验结果:本文方法在所有类型的数据集中都优于 MARRS 模型。此外,研究者还发现该方法优于 GPT-3.5,尽管后者的参数数量比 ReALM 模型多出几个数量级。
在与 GPT-4 进行对比时,尽管 ReALM 更简洁,但其性能与最新的 GPT-4 大致相同。此外,本文特别强调了模型在屏幕数据集上的收益,并发现采用文本编码的模型几乎能够与 GPT-4 一样执行任务,尽管后者提供了屏幕截图(screenshots)。最后,研究者还尝试了不同尺寸的模型。
分析
GPT-4 ≈ ReaLM ≫ MARRS 用于新用例。作为案例研究,本文探讨了模型在未见过领域上的零样本性能:Alarms(附录表 11 中显示了一个样本数据点)。
表 3 结果表明,所有基于 LLM 的方法都优于 FT 模型。本文还发现 ReaLM 和 GPT-4 在未见过领域上的性能非常相似。
ReaLM > GPT-4 用于特定领域的查询。由于对用户请求进行了微调,ReaLM 能够理解更多特定于领域的问题。例如表 4 对于用户请求,GPT-4 错误地假设指代仅与设置有关,而真实情况也包含后台的家庭自动化设备,并且 GPT-4 缺乏识别领域知识的能力。相比之下,ReaLM 由于接受了特定领域数据的训练,因此不会出现这种情况。
#Jamba
Mamba 时代来了?Attention isn’t all you need!Mamba混合大模型开源:三倍Transformer吞吐量
自 2017 年开创性研究论文《Attention is All You Need》问世以来,transformer 架构就一直主导着生成式人工智能领域。
然而,transformer 架构实际上有两个显著缺点:
- 内存占用大:Transformer 的内存占用量随上下文长度而变化。这使得在没有大量硬件资源的情况下运行长上下文窗口或大量并行批处理变得具有挑战性,从而限制了广泛的实验和部署。
- 随着上下文长度的增加,推理速度会变慢:Transformer 的注意力机制随序列长度呈二次方扩展,并且会降低吞吐量,因为每个 token 都依赖于它之前的整个序列,从而将长上下文用例置于高效生产的范围之外。
但 transformer 并不是生成式人工智能唯一的前进方向。最近,AI21 Labs 推出并开源了一种名为「Jamba」的新方法,在多个基准上超越了 transformer。
Hugging Face 地址:https://huggingface.co/ai21labs/Jamba-v0.1
Mamba 的 SSM 架构可以很好地解决 transformer 的内存资源和上下文问题。然而,Mamba 方法很难提供与 transformer 模型相同的输出水平。
Jamba 将基于结构化状态空间模型 (SSM) 的 Mamba 模型与 transformer 架构相结合,旨在将 SSM 和 transformer 的最佳属性结合在一起。
Jamba 还可以作为 NVIDIA NIM 推理微服务从 NVIDIA API 目录进行访问,企业应用程序开发人员可以使用 NVIDIA AI Enterprise 软件平台进行部署。
总的来说,Jamba 模型具有以下特点:
- 第一个基于 Mamba 的生产级模型,采用新颖的 SSM-Transformer 混合架构;
- 与 Mixtral 8x7B 相比,长上下文上的吞吐量提高了 3 倍;
- 提供对 256K 上下文窗口的访问;
- 公开了模型权重;
- 同等参数规模中唯一能够在单个 GPU 上容纳高达 140K 上下文的模型。
模型架构
如下图所示,Jamba 的架构采用块层(blocks-and-layers)方法,使 Jamba 能够集成两种架构。每个 Jamba 块包含一个注意力层或一个 Mamba 层,后跟一个多层感知器(MLP),从而形成 transformer 层。
Jamba 利用 MoE 来增加模型参数的总数,同时简化推理中使用的活跃参数的数量,从而在计算需求没有相应增加的情况下获得更高的模型容量。为了在单个 80GB GPU 上最大限度地提高模型的质量和吞吐量,研究团队优化了所使用的 MoE 层和专家的数量,为常见推理工作负载留出了足够的内存。
Jamba 的 MoE 层允许它在推理时仅利用可用的 52B 参数中的 12B,并且其混合架构使这些 12B 活跃参数比同等大小的纯 transformer 模型更有效。
此前,没有人将 Mamba 扩展到 3B 参数之外。Jamba 是同类模型中第一个达到生产级规模的混合架构。
吞吐量和效率
初步评估实验表明,Jamba 在吞吐量和效率等关键衡量指标上表现出色。
在效率方面,Jamba 在长上下文上的吞吐量达到了 Mixtral 8x7B 的 3 倍。Jamba 比 Mixtral 8x7B 等大小相当的基于 Transformer 的模型更高效。
在成本方面,Jamba 可以在单个 GPU 上容纳 140K 上下文。与当前类似大小的其他开源模型相比,Jamba 能提供更多的部署和实验机会。
需要注意的是,Jamba 目前不太可能取代当前基于 Transformer 的大型语言模型 (LLM),但它可能会成为某些领域的补充。
参考链接:
https://www.ai21.com/blog/announcing-jamba
https://venturebeat.com/ai/ai21-labs-juices-up-gen-ai-transformers-with-jamba/
#Change-Agent
本文将为大家介绍Change-Agent: Towards Interactive Comprehensive Change Interpretation and Analysis from Change Detection and Change Captioning
(遥感变化智能体:从变化检测和变化描述迈向可交互的全面变化解译与分析),数据集和代码即将开源。
- Title:Change-Agent: Towards Interactive Comprehensive Change Interpretation
- paper: https://arxiv.org/abs/2403.19646
- Data&Code: https://github.com/Chen-Yang-Liu/Change-Agent
01导读
监测地球表面变化对于理解自然过程和人类影响至关重要,需要精确和全面的解释方法。遥感卫星图像提供了监测这些变化的独特视角,使得遥感图像变化解释(RSICI)成为一个重要的研究焦点。当前的RSICI技术包括变化检测和变化描述生成,每种技术都有其在提供全面解释方面的局限性。
为解决这个问题,本文提出了一个可交互式的Change-Agent,将多层次变化解释(MCI)模型作为眼睛,大型语言模型(LLM)作为大脑进行整合。Change-Agent可以根据用户的指令进行全面的变化解释和深入的分析,如变化检测和变化描述生成、变化对象计数、变化原因分析等。
本文提出的MCI模型包含像素级变化检测和语义级变化描述生成两个分支,其中多个BI-temporal Iterative Interaction(BI3)层利用局部感知增强(LPE)和全局差异融合注意(GDFA)模块增强了模型的判别特征表示能力。为训练MCI模型,本文构建了LEVIR-MCI数据集,其中包含了双时相图像以及对应的多样化变化掩膜和语句描述。
实验表明了所提出的MCI模型的有效性,并突出了Change-Agent在促进地表变化的全面和智能解释方面的潜力。
02引言
地球表面的变化作为地球系统的动态指标,深刻影响着地球的演化和人类的生存。遥感(RS)卫星图像提供了独特的“上帝视角”,成为监测地球动态变化的有效工具,遥感图像变化解释(RSICI)旨在识别和分析在同一地理区域不同时间捕捉到的图像中的变化。
当前的RSICI技术主要包括变化检测和变化描述。变化检测准确定位了像素级(Pixel level)的变化的空间位置。而变化描述旨在使用自然语言表达变化的属性和含义,强调对变化的语义级理解(Semantic level)。尽管这两个领域都取得了显著的进展,但它们各自的局限性阻碍了通过单一技术获得全面的变化解释信息。
具体来说,虽然变化检测可以准确地定位变化区域,但它缺乏对变化潜在含义的深入理解,例如地面物体的特征或它们之间的空间关系。相反,变化描述可以提供丰富的语义级别解释信息,但在提供精确的像素级别变化定位方面可能存在不足。因此,迫切需要探索一种多层次变化解释(MCI, Multi-level Change Interpretation)方法来实现精确的变化定位,又可深入挖掘变化的本质和含义。
此外,实际应用通常需要对像素级和语义级变化解释结果进行全面分析和进一步处理,以满足特定需求。例如,用户可能需要对变化对象数量进行统计分析,这需要研究人员投入大量时间和精力,并要求用户具备技术能力。
为解决这些挑战,本文提出了交互式Change-Agent,以MCI模型作为“眼睛”,大型语言模型(LLM)作为“大脑”的。下图展示了Change-Agent相比之前技术所取得的进步。与以往的单一技术不同,Change-Agent具有交互能力,用户能够就地表变化提出需求。利用MCI模型和LLM,Change-Agent能够根据用户需求智能分析和处理获得全面的变化解释信息。此外,本文提出了一个多级变化解译数据集LEVIR-MCI 为MCI模型训练提供数据基础。
本文的主要贡献总结如下:
- 建立了一个多层次变化解释数据集。该数据集包含双时序图像以及多样化的变化检测掩码和描述性语句。它为探索多任务学习提供了关键的数据基础,用于变化检测和变化字幕。
- 提出了一个双分支的MCI模型,可以提供像素级和语义级的变化解释。此外,我们提出了具有LPE和GDFA的BI3层,以增强模型的变化解释能力。实验证实了我们方法的有效性。
- 构建了一个基于MCI模型和LLM的Change-Agent,实现了对地表变化的交互式和全面的解释和分析。它具有智能对话和定制服务能力,为智能遥感应用开辟了新的机遇。
03数据集
Dataset Overview
所提出的LEVIR-MCI数据集是先前的变化描述数据集LEVIR-CC的扩展。本文进一步为每对双时序图像提供了额外的变化检测mask,突出显示了变化的道路和建筑物。LEVIR-MCI数据集为每对图像提供了来自不同解释角度的多样化注释,进一步增强了用于全面变化解释的实用性。图2展示了一些数据集中的例子。
Change Object Mask
数据集包含了超过40,000个变化道路和建筑物的标注实例。虽然变化道路的数量比建筑物少,但通常呈现出更长的跨度和更大的覆盖区域。
通过对道路和建筑区域以及相应的矩形边界框进行分析,本文对物体的尺度和形变进行了深入的研究,如图3所示。点的分散程度提供了关于对象尺度和形变多样性的见解。
值得注意的是,道路点呈现出相对较广的光谱和分散多样性,这归因于它们狭窄且弯曲的特性。相比之下,建筑物点显示出更集中的分布,反映了它们主要是矩形形状的特点。
04方法
图4中展示了Change-Agent的概览。其利用MCI模型作为眼睛,LLM作为大脑。MCI模型使Change-Agent能够全面感知视觉变化,作为Change-Agent的变化感知基础。LLM可以利用其丰富的内在知识来实现代理调度,并提供深入的分析和决策支持。
Multi-level Change Interpretation Model
MCI模型是Change-Agent的核心组件,负责从双时相遥感图像中解译变化信息。所提出的LEVIR-MCI数据集为训练MCI模型奠定了基础。MCI模型采用了一个共享底部的双分支架构,专注于两个关键任务:变化检测和变化描述。
具体而言,孪生主干网络从双时相图像中提取多尺度的视觉特征用于两个分支的学习。较低层次的特征提供了详细信息,而较高层次的特征则丰富了语义信息。变化检测分支利用多尺度特征来优化变化掩码的预测,而变化字幕分支则利用最高级别的视觉特征生成描述性语句。
通过多任务学习,本文训练了一个强大的MCI模型,能够同时生成变化检测掩码和变化描述。
Bi-temporal Iterative Interaction Layer
在变化检测和变化描述分支中,本文提出了一种新颖的BI-temporal Iterative Interaction(BI3)层,以有效增强和融合双时序特征。BI3层的结构如图5所示。BI3层利用局部感知增强(LPE)模块和全局差异融合注意(GDFA)模块提取感兴趣的判别特征。
关于变化检测和变化描述分支详细结构可参看原论文
LLM: Brain of Change-Agent
本文利用LLM负责协调我们的Change-Agent的调度。如下图所示,LLM根据用户指令精心规划任务执行。尽管在文本相关任务上表现出色,但LLM缺乏固有的视觉感知能力。
为了弥合这一差距,并实现类似于人类能力的变化解释和分析,本文为Change-Agent提供了一套Python工具,包括视觉特征提取主干、变化检测分支、变化描述分支以及相关的Python库。
利用这些工具,LLM自主地构建Python程序,随后调用Python解释器执行以完成超出其固有能力范围的任务,例如对象计数、图像处理、变化原因估计、未来变化预测等功能。
05实验
Multi-level Change Interpretation Performance
目前缺乏同时解决变化检测和变化字幕的方法。为评估MCI模型在处理这两个任务时的效果,本文在提出的数据集上与各自领域的已建立方法进行了性能对比。实验证实了本文提出的MCI模型在变化检测和变化描述任务上的联合解译能力的优越性。
Result
06结论
本文通过开发一种新颖的Change-Agent,解决了对地球表面变化进行全面和智能解释的迫切需求。该智能体由MCI模型和LLM驱动,具有强大的视觉变化感知能力和熟练的任务调度能力。MCI模型由变化检测和变化描述两个分支组成,可提供像素级别的变化掩码和语义级别的变化描述。
在双分支框架内,本文设计了一个具有LPE和GDFA的BI3层,以增强模型的判别特征表征能力。此外,本文构建了一个包含多样化的变化检测掩码和描述的数据集以支持模型训练。实验证实了所提出的MCI模型的有效性,并强调了Change-Agent在促进地表变化的全面和智能解释方面的潜力。
#FoundationPose
物体姿态估计对于各种应用至关重要,例如机器人操纵和混合现实。实例级方法通常需要纹理 CAD 模型来生成训练数据,并且不能应用于测试时未见过的新物体;而类别级方法消除了这些假设(实例训练和 CAD 模型),但获取类别级训练数据需要应用额外的姿态标准化和检查步骤。
为了解决这些问题,来自英伟达的研究团队提出了一个统一的框架,称为 FoundationPose,它在基于模型和无模型设置下,使用 RGBD 图像对新颖物体进行姿态估计和跟踪。如下图所示,FoundationPose 优于现有专门针对这四项任务中每一项的 SOTA 方法。FoundationPose 通过大规模合成训练实现了强大的泛化能力,辅以大型语言模型(LLM)、以及一种新颖的基于 Transformer 的架构和对比学习。该研究利用神经隐式表示填补了基于模型和无模型设置之间的差距,使得 FoundationPose 可以使用少量(约 16 张)参考图像进行有效的新颖视图合成,实现了比之前的渲染与比较方法 [32, 36, 67] 更快的渲染速度。研究论文被评为 CVPR 2024 满分论文,代码已开源。
- 论文:FoundationPose: Unified 6D Pose Estimation and Tracking of Novel Objects
- 论文地址:https://arxiv.org/abs/2312.08344
- 项目主页:https://nvlabs.github.io/FoundationPose/
- 项目代码:https://github.com/NVlabs/FoundationPose
总的来说,该研究的主要贡献包括:
- 提出了一个统一的框架,用于新颖物体的姿态估计和跟踪,支持基于模型和无模型设置。一种以物体为中心的神经隐式表示用于有效的新颖视图合成,弥合了这两种设置之间的差距。
- 提出了一种 LLM 辅助的合成数据生成流程,通过多样的纹理增强扩展了 3D 训练资源的种类。
- 提出新颖的基于 Transformer 的网络架构设计和对比学习公式在仅使用合成数据进行训练时实现了强大的泛化能力。
- FoundationPose 方法在多个公共数据集上大幅优于针对每个任务专门化的现有方法。即使减少了假设,它甚至实现了与实例级方法可比的结果。
方法介绍
FoundationPose 是一个用于 6D 物体姿态估计和跟踪的统一大模型,支持基于模型和无模型设置。该方法可以立即应用于新颖的物体上,无需微调,只要给出其 CAD 模型,或者拍摄少量参考图像即可。FoundationPose 通过神经隐式表示来弥合这两种设置之间的差距,这种表示允许有效的新视图合成,并在同一统一框架下保持下游姿态估计模块的不变性。
通过大规模合成训练、大型语言模型(LLM)、一种新颖的基于 Transformer 的架构和对比学习公式的辅助,FoundationPose 实现了强大的泛化能力。在涉及挑战性场景和物体的多个公共数据集上进行了广泛评估,结果表明 FoundationPose 在性能上大幅优于现有的针对每个任务专门化的方法。此外,尽管减少了假设,但 FoundationPose 达到了与实例级方法相当的结果。
FoundationPose的框架概述如下图所示,为了减少大规模训练的手动工作,该研究利用最近出现的技术和资源,包括 3D 模型数据库、大型语言模型和扩散模型,开发了一种新颖的合成数据生成流程。为了弥合无模型和基于模型的设置之间的差距,该研究利用一个以物体为中心的神经场进行新颖视图的 RGBD 渲染,以便后续进行渲染与比较。对于姿态估计,该研究首先在物体周围均匀初始化全局姿态,然后通过精细化网络对其进行改进,最后将改进后的姿态传递给姿态选择模块,该模块预测它们的得分。具有最佳得分的姿态被选为输出。
3.1 大语言模型辅助的大规模数据生成
为了实现强大的泛化能力,需要大量不同的物体和场景用于训练。在现实世界中获取这样的数据,并标注准确的地面真值 6D 姿态是耗时且成本高昂的。另一方面,合成数据通常缺乏 3D 模型的规模和多样性。该研究开发了一个新颖的合成数据生成流程用于训练,借助了最近出现的资源和技术:大规模 3D 模型数据库 [6, 10],大型语言模型(LLM)和扩散模型 [4, 24, 53]。与之前的工作 [22, 26, 32] 相比,这种方法显著提高了数据量和多样性。
顶部:FS6D [22] 中提出的随机纹理混合。底部:LLM 辅助的纹理增强使外观更加逼真。最左边是原始的 3D 模型。其中文本提示由 ChatGPT 自动生成。
3.2 神经辐射场物体建模
对于无模型设置,当 3D CAD 模型不可用时,一个关键挑战是有效地表示物体,以便为下游模块生成具有足够质量的图像。神经隐式表示对于新颖视图合成和在 GPU 上可并行化均非常有效,因此在为下游姿态估计模块渲染多个姿态假设时提供了高计算效率,如图 2 所示。为此,该研究引入了一个以物体为中心的神经场表示来进行物体建模,灵感来自先前的工作 [45, 65, 71, 74]。一旦训练完成,神经场可以被用作传统图形管线的替代品,以执行对物体的高效渲染,用于后续的渲染和比较迭代。除了原始 NeRF [44] 中的颜色渲染之外,还需要深度渲染来进行基于 RGBD 的姿态估计和跟踪。
为此,该研究执行 Marching Cubes [41] 来从 SDF 的零级集中提取一个带有纹理的网格,并与颜色投影结合。这只需要为每个物体执行一次。在推断时,给定任意物体姿态假设,然后按照光栅化过程来渲染 RGBD 图像。另外,也可以直接使用神经场做 online 和球追踪 [14] 来渲染深度图像;然而,研究团队发现这样做效率较低,特别是在需要并行渲染大量姿态假设时。
3.3 姿态假设生成
给定 RGBD 图像,可以使用类似于 Mask RCNN [18] 或 CNOS [47] 这样的现成方法来检测物体。该研究使用在检测到的 2D 边界框内位于中位深度处的 3D 点来初始化平移。为了初始化旋转,该研究从以物体为中心的球体上均匀采样 Ns 个视点,相机朝向球心。这些相机姿态还通过 Ni 个离散化的平面旋转进行增强,从而产生 Ns・Ni 个全局姿态初始化,这些姿态被发送到姿态精化器作为输入。姿态精化网络架构如总览图所示。
该研究首先使用单个共享的 CNN 编码器从两个 RGBD 输入分支中提取特征图。特征图被级联起来,通过带有残差连接的 CNN 块进行处理,并通过位置嵌入进行分块化。最后,网络预测平移更新∆t ∈ R^3 和旋转更新∆R ∈ SO (3),每个都由一个 Transformer 编码器 [62] 单独处理,并线性投影到输出维度。更具体地说,∆t 代表了物体在相机坐标系中的平移移动,∆R 代表了物体在相机坐标系中表示的方向更新。在实践中,旋转是用轴 - 角度表示进行参数化的。该研究还尝试了 6D 表示 [78],它达到了类似的结果。然后该研究更新了输入的粗略姿态 [R | t] ∈ SE (3)。
其中 ⊗ 表示在 SO (3) 上的更新。与使用单一的齐次姿态更新不同,这种分离表示在应用平移更新时消除了对更新后方向的依赖性。这统一了相机坐标系中的更新和输入观察,从而简化了学习过程。网络训练由 L2 损失监督:
其中 ¯t 和 R¯ 是地面真实值;w1 和 w2 是平衡损失的权重,根据经验设置为 1。
3.4 最终输出姿态选取
给定一系列经过精化的姿态假设,该研究使用一个分层姿态排名网络来计算它们的得分。得分最高的姿态被选为最终估计值。下图显示姿态排序可视化。该研究提出的分层比较利用了所有姿态假设之间的全局上下文,以更好地预测整体趋势,使形状和纹理都能对齐。真正的最佳姿态用红色圆圈标注。
实验和结果
该研究采用 5 个数据集对 FoundationPose 方法进行了实验评估:LINEMOD [23],OccludedLINEMOD [1],YCB-Video [73],T-LESS [25] 和 YCBInEOAT [67]。这些数据集涉及各种具有挑战性的场景(密集杂乱、多实例、静态或动态场景、桌面或机器人操作),以及具有不同属性的物体(无纹理、闪亮、对称、尺寸变化)。
由于 FoundationPose 是一个统一的框架,该研究考虑了两种设置(无模型和基于模型)以及两个姿态预测任务(6D 姿态估计和跟踪)之间的组合,总共有 4 个任务。对于无模型设置,从数据集的训练集中选择了一些捕获新颖物体的参考图像,并配备了物体姿态的地面真值注释,按照 [22] 的方法。对于基于模型的设置,为新颖物体提供了 CAD 模型。
除了消融实验外,在所有评估中,FoundationPose 始终使用相同的训练模型和配置进行推断,而无需任何微调。此外该研究还提交了结果至 BOP 排行榜并取得了第一名的成绩。
#long-form-factuality
DeepMind 这篇论文一出,人类标注者的饭碗也要被砸了吗?
大模型的幻觉终于要终结了?
今日,社媒平台 reddit 上的一则帖子引起网友热议。帖子讨论的是谷歌 DeepMind 昨日提交的一篇论文《Long-form factuality in large language models》(大语言模型的长篇事实性),文中提出的方法和结果让人得出大胆的结论:对于负担得起的人来说,大语言模型幻觉不再是问题了。
我们知道,大语言模型在响应开放式主题的 fact-seeking(事实寻求)提示时,通常会生成包含事实错误的内容。DeepMind 针对这一现象进行了一些探索性研究。
首先,为了对一个模型在开放域的长篇事实性进行基准测试,研究者使用 GPT-4 生成 LongFact,它是一个包含 38 个主题、数千个问题的提示集。然后他们提出使用搜索增强事实评估器(Search-Augmented Factuality Evaluator, SAFE)来将 LLM 智能体用作长篇事实性的自动评估器。
对于 SAFE,它利用 LLM 将长篇响应分解为一组单独的事实,并使用多步推理过程来评估每个事实的准确性。这里多步推理过程包括将搜索查询发送到 Google 搜索并确定搜索结果是否支持某个事实 。
论文地址:https://arxiv.org/pdf/2403.18802.pdf
GitHub 地址:https://github.com/google-deepmind/long-form-factuality
此外,研究者提出将 F1 分数(F1@K)扩展为长篇事实性的聚合指标。他们平衡了响应中支持的事实的百分比(精度)和所提供事实相对于代表用户首选响应长度的超参数的百分比(召回率)。
实证结果表明,LLM 智能体可以实现超越人类的评级性能。在一组约 16k 个单独的事实上,SAFE 在 72% 的情况下与人类注释者一致,并且在 100 个分歧案例的随机子集上,SAFE 的赢率为 76%。同时,SAFE 的成本比人类注释者便宜 20 倍以上。
研究者还使用 LongFact,对四个大模型系列(Gemini、GPT、Claude 和 PaLM-2)的 13 种流行的语言模型进行了基准测试,结果发现较大的语言模型通常可以实现更好的长篇事实性。
论文作者之一、谷歌研究科学家 Quoc V. Le 表示,这篇对长篇事实性进行评估和基准测试的新工作提出了一个新数据集、 一种新评估方法以及一种兼顾精度和召回率的聚合指标。同时所有数据和代码将开源以供未来工作使用。
方法概览
LONGFACT:使用 LLM 生成长篇事实性的多主题基准
首先来看使用 GPT-4 生成的 LongFact 提示集,包含了 2280 个事实寻求提示,这些提示要求跨 38 个手动选择主题的长篇响应。研究者表示,LongFact 是第一个用于评估各个领域长篇事实性的提示集。
LongFact 包含两个任务:LongFact-Concepts 和 LongFact-Objects,根据问题是否询问概念或对象来区分。研究者为每个主题生成 30 个独特的提示,每个任务各有 1140 个提示。
SAFE:LLM 智能体作为事实性自动评分者
研究者提出了搜索增强事实评估器(SAFE),它的运行原理如下所示:
a)将长篇的响应拆分为单独的独立事实;
b)确定每个单独的事实是否与回答上下文中的提示相关;
c) 对于每个相关事实,在多步过程中迭代地发出 Google 搜索查询,并推理搜索结果是否支持该事实。
他们认为 SAFE 的关键创新在于使用语言模型作为智能体,来生成多步 Google 搜索查询,并仔细推理搜索结果是否支持事实。下图 3 为推理链示例。
为了将长篇响应拆分为单独的独立事实,研究者首先提示语言模型将长篇响应中的每个句子拆分为单独的事实,然后通过指示模型将模糊引用(如代词)替换为它们在响应上下文中引用的正确实体,将每个单独的事实修改为独立的。
为了对每个独立的事实进行评分,他们使用语言模型来推理该事实是否与在响应上下文中回答的提示相关,接着使用多步方法将每个剩余的相关事实评级为「支持」或「不支持」。具体如下图 1 所示。
在每个步骤中,模型都会根据要评分的事实和之前获得的搜索结果来生成搜索查询。经过一定数量的步骤后,模型执行推理以确定搜索结果是否支持该事实,如上图 3 所示。在对所有事实进行评级后,SAFE 针对给定提示 - 响应对的输出指标为 「支持」事实的数量、「不相关」事实的数量以及「不支持」事实的数量。
实验结果
LLM 智能体成为比人类更好的事实注释者
为了定量评估使用 SAFE 获得注释的质量,研究者使用了众包人类注释。这些数据包含 496 个提示 - 响应对,其中响应被手动拆分为单独的事实(总共 16011 个单独的事实),并且每个单独的事实都被手动标记为支持、不相关或不支持。
他们直接比较每个事实的 SAFE 注释和人类注释,结果发现 SAFE 在 72.0% 的单独事实上与人类一致,如下图 4 所示。这表明 SAFE 在大多数单独事实上都达到了人类水平的表现。然后检查随机采访的 100 个单独事实的子集,其中 SAFE 的注释与人类评分者的注释不一致。
研究者手动重新注释每个事实(允许访问 Google 搜索,而不仅仅是维基百科,以获得更全面的注释),并使用这些标签作为基本事实。他们发现,在这些分歧案例中,SAFE 注释的正确率为 76%,而人工注释的正确率仅为 19%,这代表 SAFE 的胜率是 4 比 1。具体如下图 5 所示。
这里,两种注释方案的价格非常值得关注。使用人工注释对单个模型响应进行评级的成本为 4 美元,而使用 GPT-3.5-Turbo 和 Serper API 的 SAFE 仅为 0.19 美元。
Gemini、GPT、Claude 和 PaLM-2 系列基准测试
最后,研究者在 LongFact 上对下表 1 中四个模型系列(Gemini、GPT、Claude 和 PaLM-2)的 13 个大语言模型进行了广泛的基准测试。
具体来讲,他们利用了 LongFact-Objects 中 250 个提示组成的相同随机子集来评估每个模型,然后使用 SAFE 获取每个模型响应的原始评估指标,并利用 F1@K 指标进行聚合。
结果发现,一般而言,较大的语言模型可以实现更好的长篇事实性。如下图 6 和下表 2 所示,GPT-4-Turbo 优于 GPT-4,GPT-4 优于 GPT-3.5-Turbo,Gemini-Ultra 优于 Gemini-Pro,PaLM-2-L-IT-RLHF 优于 PaLM- 2-L-IT。
#NaturalSpeech3
SOTA 语音合成效果。
文本到语音合成(Text to Speech,TTS)作为生成式人工智能(Generative AI 或 AIGC)的重要课题,在近年来取得了飞速发展。在大模型(LLM)时代下,语音合成技术能够扩展大模型的语音交互能力,更是受到了广泛的关注。
多年来,微软持续关注语音领域的技术研究与产品研发,为了合成高质量自然的人类语音,NaturalSpeech 研究项目(https://aka.ms/speechresearch)应运而生。
为了实现这个宏伟远景,NaturalSpeech 项目将目标拆分成几个阶段:
1)第一阶段,在单个说话人上取得媲美人类的语音质量。为此,研究团队在 2022 年推出了 NaturalSpeech 1,在 LJSpeech 语音合成数据集上达到了人类录音水平的音质。
2)第二阶段,高效地实现像人类一样多样化的语音合成,包含不同的说话人、韵律、情感、风格等。为此,研究团队在 2023 年推出了 NaturalSpeech 2,利用扩散模型(Diffusion Model)实现了零样本(Zero-Shot)的语音合成。
在 2024 年,该研究团队联合中科大、港中大(深圳)、浙大等机构联合发布了全新的系统:NaturalSpeech 3,它从语音数据的 “表示” 和 “建模” 两个角度出发,利用创新的属性分解扩散模型和属性分解语音神经编解码器 FACodec,通过 Data/Model Scaling,实现了零样本语音合成的重要突破,极大地向第二阶段目标迈进。
3)当前,该联合研究团队正在研究更自然的语音合成,最终实现像人类一样自然且随意的发声。
想加入该研究团队从事最前沿的语音 / 音频 / 视频研究吗?文末有招聘信息。
NaturalSpeech 3 论文链接: https://arxiv.org/abs/2403.03100
NaturalSpeech 3 Demo 演示: https://speechresearch.github.io/naturalspeech3
NaturalSpeech 3 论文一经推出就在国内外社交媒体上引发热议,推特网友盛赞:NaturalSpeech 3 是目前最好的零样本 TTS 模型,标题里的「Natural」可以说是当之无愧。
NaturalSpeech 3 可以仅仅通过 3s 的提示音频在没有见过的说话人上实现效果惊艳音色克隆,例如下面的例子:
NaturalSpeech 3 不仅能够实现逼真的音色模型,还能够非常好的还原韵律,情感等特征。我们来听听下面这个例子:
都发不了...
可以感觉到,NaturalSpeech 3 生成的结果在音质和音色方面和真实音频几乎没有差别,并且非常好的复刻了提示音频中包含的情绪等语音信息。
NaturalSpeech 3 还可以对不同的属性使用不同的提示实现更为可控的生成,例如可以使用一个语速较快的人的声音作为 duration 的提示,使得生成的结果同样具有较快的语速。例如下面这个例子:
可以发现,NaturalSpeech 3 的音色仍然和其他属性的 prompt 保持一致,但是跟随了 duration prompt 较快语速。
NaturalSpeech 3 的成功秘诀来自于基于属性分解的 Codec+Diffusion 建模范式以及 Data/Model Scaling。传统 TTS 系统因训练数据集有限,难以支持高质量的零样本语音合成。而最近的研究通过扩大语料库,虽有所进步,但在声音质量、相似性和韵律方面仍未达到理想水平。
NaturalSpeech 3 提出创新的属性分解扩散模型和属性分解神经语音编码器 FACodec,通过将语音分解成不同属性的子空间并根据不同的提示(prompt)分别生成,有效地降低了语音建模难度,从而大大提高了语音合成的质量和自然度。
与此同时,NaturalSpeech 3 通过将训练数据扩展到 20 万小时(这是迄今为止公开的研究工作中使用的最大规模数据)以及将模型大小扩展到 1B(2B 甚至更大的模型正在训练中),进一步提升语音合成的质量和自然度。
属性分解神经语音编解码器(FACodec): NaturalSpeech 3 提出一种创新的属性分解神经语音编解码器(Codec)负责将复杂的语音波形转换成代表不同语音属性(内容、韵律、音色和声学细节)的解耦子空间,并从这些属性重构高质量的语音波形。
FACodec 通过使用语音编码器、音色提取器、三个分解向量量化器(分别针对内容、韵律和声学细节)、一个语音解码器以及多种训练技术的组合,实现了这一过程。这种设计促进了语音属性间的解耦,简化了 TTS 对语音表示的建模过程。
NaturalSpeech 3的属性分解神经语音编解码器FACodec
目前语音开源项目 Amphion 已经支持 NaturalSpeech 3 的核心组件 FACodec,并且已发布预训练模型。FACodec 作为 NaturalSpeech 3 的核心,能够将复杂的语音波形转换成表示内容、韵律、音色和声学细节等属性的解耦表示,并从这些属性重构高质量的语音波形。
这一技术能够显著降低语音的建模难度,研究人员可以利用 FACodec 复现 NaturalSpeech 3 或应用到语音合成、语音转换等各式各样的下游生成任务。
FACodec 预训练模型: https://huggingface.co/spaces/amphion/naturalspeech3_facodec
FACodec 代码: https://github.com/open-mmlab/Amphion/tree/main/models/codec/ns3_codec
属性分解扩展模型:NaturalSpeech 3 设计了多个扩散模型模块来分别建模音素持续时间、韵律、内容、声学细节(其中韵律,内容,声学细节共享一个Diffusion模型),而不需要单独对音色进行建模,因为音色特征可以直接从 prompt 中提取。此外,每一个扩散模型的 prompt 仅与该模块的语音因素相关,实现了对各个模块的可控性生成。
NaturalSpeech 3的属性分解扩散模型
SOTA 的语音合成效果:经过大量的实验验证,NaturalSpeech 3 在语音质量、相似性、韵律和可懂度方面均超越了现有最先进的 TTS 系统。特别是,在 LibriSpeech 测试集上,与真实语音相比,NaturalSpeech 3 在 CMOS 评分上达到了相当甚至更好的语音质量;在语音相似度方面,实现了新的最佳水平;在韵律建模上也展现了显著的改进。
NaturalSpeech 3和其它TTS系统比较
NaturalSpeech3在不同模型大小和数据量下的比较
FACodec的扩展用途: NaturalSpeech 3 中提出的FACodec不仅仅在非自回归语音合成中取得了很好的结果,而且进一步证明了其在自回归语音合成范式中的显著效果。作者们使用经典的自回归架构VALL-E,相比原本的基于RVQ的Codec,在音质、相似度、稳定性上都有非常显著的提升!这进一步说明了基于属性分解的语音表征的巨大空间。
Data/Model Scaling:值得一提的是,NaturalSpeech 3 还将模型拓展到 1B 大小、数据量拓展到 20 万小时左右,在提升合成语音质量,相似度,可理解性方等面的令人期待的结果,展示了较强的 Scaling 能力。