Perceiver IO--适应多模态任务的高性能新架构

让创新获得认可 将门创投 今天
为了提升多模态模型的性能实行更为通用的处理架构,DeepMind的研究人员进一步拓展了模型的输出能力,提出了功能更为强大的模型Perceiver IO

图片

paper:

https://arxiv.org/pdf/2107.14795.pdf

code:

https://dpmd.ai/perceiver-code

图片
几个月前的Perceiver模型在图像、音频、点云和多模态任务上展现了优异的性能,并且对于输入仅具有线性计算复杂度。虽然它可同时处理多种类型的输入数据,但却只能得到像分类得分这类非常简单的输出形式。为了提升多模态模型的性能实行更为通用的处理架构,DeepMind的研究人员进一步拓展了模型的输出能力,提出了功能更为强大的模型Perceiver IOPerceiver IO在保持原有线性计算复杂度优势的同时,实现了任意尺寸和语义的输出能力,同时解耦了模型深度和数据大小。实验表面Perceiver IO可以在高度结构化的空间中获取令人瞩目的性能,在自然语言、视觉理解、星际游戏等跨域多任务上取得SOTA结果。

一、多模态学习

人类具有多模态信息的感知能力,可以将信息无缝整合在一起在现实生活中完成纷繁复杂的任务。然而现有的模型都针对特定的任务处理相对固定的输入得到特定的输出结果。即使在涉及多模态数据处理的情况下,也只是用独立的模块对不同信息进行特征抽取,而后用额外的模型进行融合。这种建模范式的复杂度会随着输入数据的多样性急剧增加,任务对应输入输出的大小和形状也强烈限制了系统对数据的处理,使其无法适应新的情况!人们不禁要问,是不是不可避免地需要为每一种新的数据或模态建立特定的模型呢?
如果单一的神经网络架构可以适应不同模态的输入并能满足不同任务的输出需求将极大减地轻建模负担与模型的复杂度,这也将向能处理任意信息适应任意任务的通用模型迈出了一大步。最近提出的Perceiver模型在这一方向上实现了令人瞩目的进展,可在对模型的最小改变的情况下适应多种不同的模态输入。Perceiver利用基于transformer注意力机制将不同模态的输入映射到隐空间为固定大小的向量,随后通过深度注意力网络进一步处理。这一过程解耦了输入数据的模态和大小,使得单一模型可以被拓展到大规模多模态数据集上。
图片先前只能获取简单输出的Perceiver整体架构

但遗憾的是Perceiver只能输出简单的分类信息,无法适应真实世界中负责任务的输出需要。为了突破这一极限实现更通用的网络架构,在本文中提出了一种实现结构化输出的解码机制,从Perceiver的隐空间中直接解码出语言、光流场、音视频序列、符号序列等多模态信息,以灵活地适应新任务的需求。其中关键的思想在于利用与任务相关的特定查询向量与隐变量一起生成特定的输出。通过这样的方式,模型可以生成大量的任意形状与结构的输出,同时隐变量特征还能保持与特定任务无关的通用特性。

全新的Perceiver IO模型中利用了全注意力读入-处理-输出架构:输入被读入编码到隐空间中, 随后隐式表达被多层模型进一步优化处理,最终解码生成任务相关的输出结果。这一架构综合了transformer注意力机制抽取通用全局特征的能力以及编解码器架构的非线性映射能力,使其具备了解耦输入大小、模态与输出的能力,可对输入输出的空间或局域结构做出最小化假设。在Perceiver IO中使用了交叉注意力机制将隐变量映射到任意尺寸和模态输出上,基于查询机制可灵活地适应不同域上多任务语义输出需求。Perceiver IO直接代替各领域中使用的特定网络模型,同时提高原有分类任务上的性能。

二、Perceiver IO 架构
新的架构基于先前的Perceiver构建而成,Perceiver通过将输入假设为简单的比特阵列(涵盖了像素、图像元、字词句、嵌入等等)实现了跨域通用性,随后利用transformer类似的注意力机制实现小尺寸的隐函特征向量编码,并对特征进行迭代处理最终聚合为分类标签。而Perceiver IO则进一步拓展了输出的通用性,可以通过查询特征配合来生成任意形式和模态的输出结果。也就是说,Perceiver IO中定义了与期望输出相同大小的查询序列,并与多模态输入获取的隐变量一起生成最终的输出结果。

图片

Perceiver IO 整体架构,它可通过与域任务无关的处理过程将任意输入映射到任意输出。最大的计算开销来自于隐空间中(尺度远小于输入输出),这使得对于较大的输入输出也可以进行从容地处理。

上图中显示了Perceiver IO的编码、处理和解码过程。首先,编码过程利用注意力模块将输入序列映射到了隐空间中;而后通过一系列模块对隐变量进行处理;最后利用注意力模块将处理后的隐变量进行解码,映射到输出特征上。输入输出对应的数据维度可以很大,而中间隐变量的维度则是可手工合理定义的超参数,其远小于输入输出维度使得计算开销保持线性。

与Perceiver相同,所以的模块都使用了与Transformer类似的全局QKV(query-key-value)机制和多层感知机进行后续处理。MLP在索引维度上独立地应用于每一个元素,编码器解码器都包含了两个输入,一部分是模型的键、值网络的输入,另一部分是查询网络的输入。模型的输出具有与查询输入相同的索引维度(相同个数的元素),这使得编解码器可以生成不同尺度的输出。

另一方面Perceiver IO依赖于Transformer架构,但为什么transformer无法完成所需的目标呢?其主要原因在于transformer在计算和内存方面的开销巨大,它在所有层中均匀部署了注意力模块,整个输入需要在每一层都生成查询和键,这意味着每一层都需要平方计算复杂度使其难以在处理高维度数据的实际任务中大规模应用。甚至在transformer发迹的语言处理领域也需要复杂的预处理编码才能完成中长序列的建模任务。

但Perceiver IO使用了完全不同的非均匀注意力机制,首先将输入映射到隐空间,而后在隐空间中进一步处理,并最终映射到输出空间中去。这使得模型的计算量不再依赖于输入输出的维度,编码器解码器和注意力模块只需要线性计算复杂度,同时隐空间中的注意力模块则独立于输入输出大小。Perceiver IO的结构优势大幅减小了计算开销,可以拓展到更大的输入和输出上去,将transformer能处理的典型序列长度从几千拓展到了几十万的量级。

编码器由单个注意力模块构成,通过学习获取与输入数据独立的查询向量,这也是的模块的计算复杂度与输入线性相关。处理部分由一系列堆叠注意力模块构成,可视为隐空间中的transformer。解码器部分则与编码器类似,在查询变量与KV的共同作用下将处理后的隐变量映射到输出空间中。这一结构可以处理任意形状和维度甚至不同模态的数据,但隐空间并没有显式地输入中的共享结构,因此需要利用交叉注意力来实现。

本研究的目标是利用给定大小的隐含表示生成最终任务所需的输出,可将相同维度的查询变量送入解码器为了捕捉输出空间的结构查询向量需要包含适当的信息,这意味着查询向量需要反映下游任务需求,并捕捉输出中所需要的结构信息,包括图像中的空间位置或序列中输出词的位置信息。

图片

Perceiver IO使用特定输出相关的查询来生成不同语义的输出。对于像语言一类的同类型输出,其每个输出点只与其位置相关,可以使用位置编码来作为查询。对于目标输出的输入特征也可以与位置特征一起作为查询。对于多任务多模态输出来说,需要为每个模态或任务建立独立的查询。与某些查询相关的特征与多模态嵌入结合,并组合为目标输出所需的维度。

通过结合一系列相关的信息构建了查询向量,上图中显示了不同情况下的查询向量构建情况。对于像分类这类简单输出,查询从头开始学习获取并在每一个样本上复用。针对具有空间或序列结构的输出,需要将包含位置编码的包含到查询中去。对于多任务多模态输出,则需要针对每个特定任务或模态学习特定的查询,使得网络得以甄别任务或模态间的不同。对于其他任务而言,输出需要在查询位置反映出对应的输入内容。例如,光流估计任务在涵盖查询点的输入特征时性能更好;对于星际II则使用了单位信息将模型输出与对应单位练习起来。总的来说,实验表面非常简单的特征也可获得较好的输出结果,这意味着隐式注意力处理可以学习到用易于查询的方式组织与对应输出相关信息。

图片

三、实验验证
为了测试Perceiver IO的通用性,研究人员在多个领域的任务上对其进行评估,包括语言理解(掩码语言建模和下游微调)和视觉理解(光流和图像分类)、游戏的符号表示(星际争霸 II ),以及多模式和多任务学习。每种情况下的输入和输出总结到下表中,实验通过JAX框架进行。
图片
评测Perceiver IO的相关任务,图中显示了对应的模态、任务、前后处理和对应的输入输出。

首先研究人员验证了模型在GLUE上的性能,Perceiver IO实现了与BERT等模型可媲美的优势,同时还克服了对序列长度的限制。

图片

随后测试了Perceiver IO在光流估计任务上的表现,在多个数据集上的错误率都达到了前沿水平。

图片
对于更为困难的多模态自编任务同时对音视频进行编码重建, Perceiver IO也取得较好的重建精度:
图片
图片

此外,对于图像分类任务和离散多模态的星际II任务,Perceiver IO模型都可有效处理不同任务或模态的输出需求,实现高性能的解码,感兴趣的小伙伴可以在论文的第四部分和附录中找到详细的实验结果。
Perceiver IO作为通用的框架可以处理不同模态的输入信号,并可适应不同任务的多模态输出,同时其线性计算复杂度也保证了规模化应用的可能性。

编译:T.R  From: DeepMind

Illustrastion by Irina Molchanova from Icons8

-The End-

AI技术流”原创投稿计划


TechBeat是由将门创投建立的AI学习社区(www.techbeat.net社区上线330+期talk视频,900+篇技术干货文章,方向覆盖CV/NLP/ML/Robotis等;每月定期举办顶会及其他线上交流活动,不定期举办技术人线下聚会交流活动。我们正在努力成为AI人才喜爱的高质量、知识型交流平台,希望为AI人才打造更专业的服务和体验,加速并陪伴其成长。


投稿内容

// 最新技术解读/系统性知识分享 //

// 前沿资讯解说/心得经历讲述 //


投稿须知

稿件需要为原创文章,并标明作者信息。

我们会选择部分在深度技术解析及科研心得方向,对用户启发更大的文章,做原创性内容奖励


投稿方式

发送邮件到

chenhongyuan@thejiangmen.com

或添加工作人员微信(chemn493)投稿,沟通投稿详情;还可以关注“将门创投”公众号,后台回复“投稿”二字,获得投稿说明。



图片

> 投稿请添加工作人员微信!


图片

本周上新!

图片
图片

扫码观看

关于我“

将门是一家以专注于发掘、加速及投资技术驱动型创业公司的新型创投机构,旗下涵盖将门创新服务将门技术社群以及将门创投基金

将门成立于2015年底,创始团队由微软创投在中国的创始团队原班人马构建而成,曾为微软优选和深度孵化了126家创新的技术型创业公司。

如果您是技术领域的初创企业,不仅想获得投资,还希望获得一系列持续性、有价值的投后服务,欢迎发送或者推荐项目给我“门”: 
bp@thejiangmen.com
将门创投
将门创投
将门是一家以技术创新为切入口的新型创投机构,由前微软创投在中国的创始团队于2015年底创立。将门旗下设有将门创新服务、将门技术社群以及将门投资基金。关注技术领域包括机器智能物联网、自然人机交互企业计算
1292篇原创内容
公众号
图片    
点击右上角,把文章分享到朋友圈
    收录于话题 #技术干货
    64
    下一篇 SIGGRAPH 2021 | 网易互娱AI Lab提出动捕去噪新方法