CN117453880A - 多模态数据的处理方法、装置、电子设备及存储介质 - Google Patents
多模态数据的处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117453880A CN117453880A CN202311433898.7A CN202311433898A CN117453880A CN 117453880 A CN117453880 A CN 117453880A CN 202311433898 A CN202311433898 A CN 202311433898A CN 117453880 A CN117453880 A CN 117453880A
- Authority
- CN
- China
- Prior art keywords
- mode
- sub
- data
- feature
- text
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title description 20
- 238000012545 processing Methods 0.000 claims abstract description 137
- 239000013598 vector Substances 0.000 claims abstract description 121
- 230000001364 causal effect Effects 0.000 claims abstract description 105
- 238000000034 method Methods 0.000 claims abstract description 86
- 238000006243 chemical reaction Methods 0.000 claims abstract description 31
- 238000000605 extraction Methods 0.000 claims abstract description 28
- 238000012549 training Methods 0.000 claims description 60
- 230000015654 memory Effects 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 23
- 238000009792 diffusion process Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 18
- 230000011218 segmentation Effects 0.000 claims description 17
- 239000003550 marker Substances 0.000 claims description 11
- 239000011159 matrix material Substances 0.000 claims description 11
- 238000010606 normalization Methods 0.000 claims description 7
- 238000009432 framing Methods 0.000 claims description 5
- 238000013507 mapping Methods 0.000 claims description 4
- 230000009466 transformation Effects 0.000 claims 1
- 230000000007 visual effect Effects 0.000 description 40
- 238000013473 artificial intelligence Methods 0.000 description 23
- 238000005516 engineering process Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 230000000694 effects Effects 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 10
- 230000004438 eyesight Effects 0.000 description 9
- 230000003993 interaction Effects 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- 235000013550 pizza Nutrition 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 241000070023 Phoenicopterus roseus Species 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 4
- 230000003190 augmentative effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 230000008447 perception Effects 0.000 description 3
- 241000282326 Felis catus Species 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000016776 visual perception Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000009193 crawling Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000007786 learning performance Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000002243 precursor Substances 0.000 description 1
- 230000001373 regressive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Human Computer Interaction (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Machine Translation (AREA)
Abstract
本申请提供了一种多模态数据的处理方法、装置、电子设备及存储介质;方法包括:获取输入内容包括的多模态数据;基于多模态数据进行特征提取处理,得到每个模态分别对应的子模态特征,不同的子模态特征的维度不同;对多个子模态特征中最高维度的子模态特征进行因果关系转换,得到因果特征向量,因果特征向量与其他子模态特征的维度相同,其他子模态特征是多个子模态特征中除最高维度的子模态特征之外的子模态特征;将因果特征向量与其他子模态特征拼接,得到拼接特征序列;基于拼接特征序列生成输入内容的回复内容。通过本申请,能够提升根据输入内容生成回复内容的多样性以及准确性。
Description
技术领域
本申请涉及计算机技术,尤其涉及一种多模态数据的处理方法、装置、电子设备及存储介质。
背景技术
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
相关技术中,人工智能问答过程中,可以接收用户输入的文本内容并生成对应的答复内容,然而数据模态多种多样,人工智能问答能接收输入内容有限、所回复的内容形式单一,难以满足用户的多种需求。
相关技术中,暂无较好的方式提升人工智能问答的性能。
发明内容
本申请实施例提供一种多模态数据的处理方法、装置、电子设备及计算机可读存储介质、计算机程序产品,能够实现将多模态数据作为输入内容,并提升根据输入内容所生成的回复内容的多样性以及准确性。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种多模态数据的处理方法,所述方法包括:
获取输入内容包括的多模态数据;
基于所述多模态数据进行特征提取处理,得到每个所述模态分别对应的子模态特征,其中,不同的子模态特征的维度不同;
对多个所述子模态特征中最高维度的子模态特征进行因果关系转换,得到因果特征向量,其中,所述因果特征向量与其他子模态特征的维度相同,所述其他子模态特征是多个所述子模态特征中除所述最高维度的子模态特征之外的子模态特征;
将所述因果特征向量与所述其他子模态特征拼接,得到拼接特征序列;
基于所述拼接特征序列生成所述输入内容的回复内容。
本申请实施例提供一种多模态数据的处理装置,包括:
数据获取模块,配置为获取输入内容包括的多模态数据;
特征提取模块,配置为基于所述多模态数据进行特征提取处理,得到每个所述模态分别对应的子模态特征,其中,不同的子模态特征的维度不同;
因果转换模块,配置为对多个所述子模态特征中最高维度的子模态特征进行因果关系转换,得到因果特征向量,其中,所述因果特征向量与其他子模态特征的维度相同,所述其他子模态特征是多个所述子模态特征中除所述最高维度的子模态特征之外的子模态特征;
所述因果转换模块,还配置为将所述因果特征向量与所述其他子模态特征拼接,得到拼接特征序列;
生成模块,配置为基于所述拼接特征序列生成所述输入内容的回复内容。
本申请实施例提供一种电子设备,所述电子设备包括:
存储器,用于存储计算机可执行指令;
处理器,用于执行所述存储器中存储的计算机可执行指令时,实现本申请实施例提供的多模态数据的处理方法。
本申请实施例提供一种计算机可读存储介质,存储有计算机可执行指令,用于被处理器执行时,实现本申请实施例提供的多模态数据的处理方法。
本申请实施例提供一种计算机程序产品,包括计算机程序或计算机可执行指令,所述计算机程序或计算机可执行指令被处理器执行时,实现本申请实施例提供的多模态数据的处理方法。
本申请实施例具有以下有益效果:
允许输入内容为多模态数据,相较于相关技术中输入内容与回复内容均为文本的方案,提升了输入内容的丰富程度以及回复内容的丰富程度,提升了用户体验。基于所述多模态数据进行特征提取处理,并通过因果关系转换对齐了不同模态的特征,节约了基于不同模态特征生成回复内容所需的计算资源,相较于直接对不同维度数据分别进行数据生成的方案,降低了计算过程的复杂程度,利用了不同模态输入内容之间的关联性,进而能够提升回复内容与输入内容之间的关联性,使得回复内容更准确,更符合用户的需求。
附图说明
图1是本申请实施例提供的多模态数据的处理方法的应用模式示意图;
图2是本申请实施例提供的电子设备的结构示意图;
图3A至图3C是本申请实施例提供的多模态数据的处理方法的流程示意图;
图4是本申请实施例提供的多模态处理模型的结构示意图;
图5是本申请实施例提供的多模态数据的处理方法的一个可选的流程示意图;
图6A是本申请实施例提供的多模态处理模型的一个可选的结构示意图;
图6B是本申请实施例提供的因果转换器的原理示意图;
图7是本申请实施例提供的人机交互界面示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
需要指出,本申请实施例中相关数据收集处理(例如:用户在问答应用程序或者聊天应用程序中的输入内容)在实例应用时应该严格根据相关国家法律法规的要求,获取个人信息主体的知情同意或单独同意,并在法律法规及个人信息主体的授权范围内,开展后续数据使用及处理行为。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)模态(Modality),每一种信息的来源或者形式,都可以称为一种模态。例如,信息的媒介有语音、图像、文字等;信息的来源有多种多样的传感器,如雷达、红外、加速度计等。以上的每一种都可以称为一种模态。
2)预训练:预训练通过自监督学习从大规模数据中获得与具体任务无关的预训练模型。体现某一个词在一个特定上下文中的语义表征。第二个步骤是微调,针对具体的任务修正网络。训练数据可以是文本、文本-图像对、文本-视频对。预训练模型的训练方法可使用自监督学习技术(如自回归的语言模型和自编码技术)。可训练单语言、多语言和多模态的模型。此类模型可经过微调之后,用于支持分类、序列标记、结构预测和序列生成等各项技术,并构建文摘、机器翻译、图片检索、视频注释等应用。
3)提示词(prompt),转换器模型(transformer)的输入,可以作为一种模板。例如:目标是让模型输出图片的描述,提示词为“图片特征+图像特征对应的图像内容a photoof”,模型会根据提示词对输入内容进行补全,得到图片的描述的文本内容“一只狗坐在草地上”;目标是让模型执行分类功能,提示词为“图片特征+图像中是什么what is in thepicture?”,模型会输出“狗dog”。
4)对比学习(contrastive learning),是自监督学习的一种,需要从无标注的图像数据中学习特征表示,并用于下游任务中。其指导原则是:通过自动构造相似实例和不相似实例,学习一个表示学习模型,通过这个模型,使得相似的实例在投影空间中比较接近,而不相似的实例在投影空间中距离比较远。
5)稳定扩散模型(Stable Diffusion)是一个基于潜在扩散模型(LatentDiffusion Models)的由多个组件和模型组成的***,而非单一的模型,可用于用于文图生成任务。它包含三个主要的组件,其中每个组件都拥有一个独立的神经网络。
6)稳定扩散解码器(Stable Diffusion Decoder),是指自编码解码器(Auto-encoder Decoder),使用处理过的信息矩阵绘制最终图像的解码器,它的输入是处理过的信息矩阵,维度为(4,64,64),它的输出是结果图像,各维度为(3,512,512),即(红/绿/蓝,宽,高)。
7)离散变分自编码器(discrete Variance Auto-Encoder,dVAE),是一个无监督模型,它的核心模型是一个自编码器,由编码器(Encoder)和解码器(Decoder)组成。其中编码器的作用是将图像编码成一个特征向量,解码器的作用是使用这个特征向量对图像进行重建。离散变分自编码器正是通过这种图像的编码和解码实现模型的预训练的。
8)视觉预训练模型(EVA)是一种以视觉为中心的基础模型,旨在仅使用可公开访问的数据来探索大规模视觉表示的局限性。它能够利用掩码重建目标任务,有效地拓展模型并在各种视觉任务中改善性能。以视觉预训练模型为视觉模型基础,需要大规模训练的多模态模型吗,比如对比语言图像预训练模型(Contrastive Language-Image Pre-training,EVA-CLIP),可以用更少的样本和计算量获得更好的性能,这一策略为扩大和加速多模态基础模型的昂贵训练提供了新的方向。视觉预训练模型是一种经过预训练的普通视觉转换器,用于重建以可见图像块为条件的带掩码的图文对齐中的视觉特征。这个代理任务可以有效地将视觉预训练模型扩展到10亿个参数,并在图像识别、视频动作识别、对象检测、实例分割和语义分割等广泛的代表性视觉下游任务上创造新记录,而无需大量监督训练。此外,缩放视觉预训练模型的数量变化会导致迁移学习性能的质量变化,这在其他模型中是不存在的。除了纯粹的视觉编码器之外,视觉预训练模型还可以作为以视觉为中心的多模态支点来连接图像和文本。从视觉预训练模型初始化巨型对比语言图像预训练模型可以稳定训练,并极大地优于从零开始的训练。
9)双向编码器表示的转换器模型(Bidirectional Encoder Representationsfrom Transformers,BERT)是预训练语言模型算法,它的核心架构是转换器模型的编码器部分。它通过掩码语言模型(Mask Language Model,MLM)和下一句预测模型(NextSentence Prediction,NSP)两个任务实现了模型在无标签数据的训练。通过这种训练方式,可以得到每个句子或者单词在通用语料上的特征向量,这个特征向量具有通用的语义特征,能大幅提升下游任务的训练效率。
10)虚拟对象,虚拟场景中进行交互的对象,受到用户或机器人程序(例如,基于人工智能的机器人程序)的控制,能够在虚拟场景中静止、移动以及进行各种行为的对象,例如游戏中的各种角色等。
本申请实施例提供一种多模态数据的处理方法、多模态数据的处理装置、电子设备和计算机可读存储介质及计算机程序产品,能够提升根据输入内容生成回复内容的多样性以及准确性。
下面说明本申请实施例提供的电子设备的示例性应用,本申请实施例提供的电子设备可以实施终端设备,如笔记本电脑、平板电脑、台式计算机、机顶盒、智能电视、移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)、车载终端、虚拟现实(Virtual Reality,VR)设备、增强现实(Augmented Reality,AR)设备等各种类型的用户终端,也可以实施为服务器。下面,将说明电子设备实施为终端设备或服务器时示例性应用。
参考图1,图1是本申请实施例提供的多模态数据的处理方法的应用模式示意图;示例的,图1中涉及服务器200、网络300及终端设备400、数据库500。终端设备400通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二者的组合。
在一些实施例中,服务器200可以是聊天机器人平台的服务器,数据库500用于存储聊天机器人用于回复用户的图像以及文本所需的语料数据。用户通过终端设备400在聊天应用程序和人工智能机器人进行聊天。
示例的,用户通过终端设备400在聊天应用程序中输入图像以及文本,终端设备400将图像以及文本上传至服务器200,服务器200调用本申请实施例提供的多模态数据的处理方法,生成输入内容的回复内容,并将回复内容反馈至终端设备400,在终端设备400的聊天界面中显示回复内容。在离线模式下,还可以由终端设备400调用本申请实施例提供的多模态数据的处理方法,并在终端设备400的聊天界面中显示回复内容。
在一些实施例中,本申请实施例的多模态数据的处理方法还可以应用在以下应用场景中:车载地图导航应用程序,用户在应用程序中输入语音和图像,应用程序将语音转换为文本,并基于文本和图像搜索对应的地点,回复地点关联的图像、文本、路线等数据。
本申请实施例可以通过数据库技术实现,数据库(Database),简而言之可视为电子化的文件柜存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。
数据库管理***(Database Management System,DBMS)是为管理数据库而设计的电脑软件***,一般具有存储、截取、安全保障、备份等基础功能。数据库管理***可以依据它所支持的数据库模型来作分类,例如关系式、XML(Extensible Markup Language,即可扩展标记语言);或依据所支持的计算机类型来作分类,例如服务器群集、移动电话;或依据所用查询语言来作分类,例如结构化查询语言(SQL,Structured Query Language)、XQuery;或依据性能冲量重点来作分类,例如最大规模、最高运行速度;亦或其他的分类方式。不论使用哪种分类方式,一些DBMS能够跨类别,例如,同时支持多种查询语言。
本申请实施例,还可以通过云技术实现,云技术(Cloud Technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络***的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,将来每个物品都有可能存在自己的哈希编码识别标志,都需要传输到后台***进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的***后盾支撑,只能通过云计算来实现。
本申请实施例,可以通过大型语言模型(Large Language Model,LLM)实现,大型语言模型是一种人工智能模型,旨在理解和生成人类语言。它们在大量的文本数据上进行训练,可以执行广泛的任务,包括文本总结、翻译、情感分析等等。大型语言模型的特点是规模庞大,包含数十亿的参数,帮助它们学习语言数据中的复杂模式。这些模型通常基于深度学习架构,如转化器,这有助于它们在各种自然语言处理任务上取得令人印象深刻的表现。
在一些实施例中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。电子设备可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。
在一些实施例中,本申请实施例提供的多模态数据的处理方法可以应用在游戏场景中,可以通过终端设备和服务器协同实施。游戏虚拟场景中用户可以是玩家,第一虚拟对象是玩家控制的虚拟对象,第二虚拟对象是非玩家角色。玩家可以控制第一虚拟对象与第二虚拟对象进行交谈,第二虚拟对象调用本申请实施例提供的多模态数据的处理方法向玩家反馈回复内容。
针对终端设备和服务器协同实施的方案,主要涉及两种游戏模式,分别为本地游戏模式和云游戏模式,其中,本地游戏模式是指终端设备和服务器协同运行游戏处理逻辑,玩家在终端设备中输入的操作指令,部分由终端设备运行游戏逻辑处理,另一部分由服务器运行游戏逻辑处理,并且,服务器运行的游戏逻辑处理往往更复杂,需要消耗更多的算力;云游戏模式是指完全由服务器运行游戏逻辑处理,并由云端服务器将游戏场景数据渲染为音视频流,并通过网络传输至终端设备显示。终端设备只需要拥有基本的流媒体播放能力与获取玩家的操作指令并发送给服务器的能力。
本申请实施例提供的多模态数据的处理方法适用于依赖于服务器200的计算能力完成虚拟场景计算、并在终端设备400输出虚拟场景的应用模式。
以形成虚拟场景的视觉感知为例,服务器200进行虚拟场景相关显示数据(例如场景数据)的计算并通过网络300发送到终端设备400,终端设备400依赖于图形计算硬件完成计算显示数据的加载、解析和渲染,依赖于图形输出硬件输出虚拟场景以形成视觉感知,例如可以在智能手机的显示屏幕呈现二维的视频帧,或者,在增强现实/虚拟现实眼镜的镜片上投射实现三维显示效果的视频帧;对于虚拟场景的形式的感知而言,可以理解,可以借助于终端设备400的相应硬件输出,例如使用麦克风形成听觉感知,使用振动器形成触觉感知等等。
以计算机程序为应用程序为例,在实际实施时,终端设备400安装和运行有支持虚拟场景的应用程序。该应用程序可以是第一人称射击游戏(FPS,First-Person Shootinggame)、第三人称射击游戏、虚拟现实应用程序、三维地图程序或者多人生存游戏中的任意一种。用户使用终端设备400操作位于虚拟场景中的虚拟对象进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、驾驶、拾取、射击、攻击、投掷、建造虚拟建筑中的至少一种。示意性的,该虚拟对象可以是虚拟人物,比如仿真人物角色或动漫人物角色等。
参见图2,图2是本申请实施例提供的电子设备的结构示意图,电子设备可以是图1的服务器200或者终端设备400,本申请实施例中以终端设备为例进行说明,图2所示的终端设备400包括:至少一个处理器410、存储器450、至少一个网络接口420和用户接口430。终端设备400中的各个组件通过总线***440耦合在一起。可理解,总线***440用于实现这些组件之间的连接通信。总线***440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线***440。
处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口430包括使得能够呈现媒体内容的一个或多个输出装置431,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口430还包括一个或多个输入装置432,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器410的一个或多个存储设备。
存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器450旨在包括任意适合类型的存储器。
在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作***451,包括用于处理各种基本***服务和执行硬件相关任务的***程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他电子设备,示例性的网络接口420包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
呈现模块453,用于经由一个或多个与用户接口430相关联的输出装置431(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作***设备和显示内容和信息的用户接口);
输入处理模块454,用于对一个或多个来自一个或多个输入装置432之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本申请实施例提供的装置可以采用软件方式实现,图2示出了存储在存储器450中的多模态数据的处理装置455,其可以是程序和插件等形式的软件,包括以下软件模块:数据获取模块4551、特征提取模块4552、因果转换模块4553以及生成模块4554,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。
在一些实施例中,终端或服务器可以通过运行计算机程序来实现本申请实施例提供的多模态数据的处理方法。举例来说,计算机程序可以是操作***中的原生程序或软件模块;可以是本地(Native)应用程序(APP,Application),即需要在操作***中安装才能运行的程序,如问答APP或者即时通信APP;也可以是小程序,即只需要下载到浏览器环境中就可以运行的程序;还可以是能够嵌入至任意APP中的小程序。总而言之,上述计算机程序可以是任意形式的应用程序、模块或插件。
将结合本申请实施例提供的终端的示例性应用和实施,说明本申请实施例提供的多模态数据的处理方法。
下面,说明本申请实施例提供的多模态数据的处理方法,如前所述,实现本申请实施例的多模态数据的处理方法的电子设备可以是终端或者服务器,又或者是二者的结合。因此下文中不再重复说明各个步骤的执行主体。
需要说明的是,下文中的多模态数据的处理的示例中,是多模态数据包括文本以及图像说明的,本领域技术人员根据对下文的理解,可以将本申请实施例提供的多模态数据的处理方法应用于包括其他模态的数据的处理,例如:音频、视频等。
参见图3A,图3A是本申请实施例提供的多模态数据的处理方法的流程示意图,将结合图3A示出的步骤进行说明。
在步骤301中,获取输入内容包括的多模态数据。
示例的,多模态数据至少包括两种不同模态的数据。模态是每一种信息的来源或者形式,模态的类型包括:图像、文本、音频以及视频。
输入内容是用户通过终端设备输入的,以服务器和终端设备协同执行本申请实施例提供的多模态数据的处理方法为例进行说明,若本申请实施例提供的多模态数据的处理方法应用在用户与虚拟对象的聊天应用程序中,用户通过终端设备输入包括多模态数据的输入内容,例如:文本和表情包图片。终端设备将文本和表情包图片发送给服务器进行处理,以使服务器反馈虚拟对象的回复内容。
在步骤302中,基于多模态数据进行特征提取处理,得到每个模态分别对应的子模态特征。
示例的,不同的子模态特征的维度不同。例如:图像模态的子模态特征由图像中每个像素对应的颜色信息组成,表征为二维特征,而文本模态的子模态特征由文本字符化(token)得到字符序列表征,为一维特征。
在一些实施例中,多模态数据至少包括图像数据以及文本数据;步骤302可以通过以下方式实现:对图像数据进行编码处理,得到图像特征,将图像特征作为图像模态的子模态特征;对文本数据进行分词处理,得到多个第一分词;对多个第一分词进行符号化处理,得到文本数据的文本标识符序列,并将文本标识符序列作为文本模态的子模态特征。
示例的,图像特征提取可以通过卷积神经网络实现,例如:提取图像中每个像素的像素值,将图像的所有像素值转换为二维矩阵形式的图像特征。针对文本数据,特征提取可以通过转换器模型实现,对文本进行分词,根据词表将每个分词转换为对应的标识符,词表中存储有每个分词与标识符的映射关系,将每个分词的标识符根据文本中的顺序组合,得到子模态特征。
在一些实施例中,多模态数据包括视频数据以及文本数据;步骤302可以通过以下方式实现:对视频数据进行分帧处理,得到视频数据的每个视频帧图像;对每个视频帧图像进行编码处理,得到每个视频帧图像的视频帧特征,将视频帧特征作为图像模态的子模态特征;对文本数据进行分词处理,得到多个第一分词;对多个第一分词进行符号化处理,得到文本数据的文本标识符序列,并将文本标识符序列作为文本模态的子模态特征。
示例的,分帧处理可以是将图像中每个视频帧提取,针对视频的所有帧图像进行处理。为节约计算资源,还可以是将视频划分为多个片段,针对每个片段抽取至少一个视频帧图像,并对抽取的视频帧图像进行特征提取。特征提取的方式参考上文针对图像的特征提取的原理。文本特征提取处理的方式参考上文,此处不再赘述。
在一些实施例中,当多模态数据仅包括视频数据时,步骤302可以通过以下方式实现:对视频数据进行分帧处理,得到视频数据的每个视频帧图像;对每个视频帧图像进行编码处理,得到每个视频帧图像的视频帧特征,将视频帧特征作为图像模态的子模态特征;对每个视频帧图像进行文本识别处理,得到每个视频帧图像包含的第一视频文本,以及对视频数据的音频进行语音识别处理,得到视频数据的音频所包含的第二视频文本;对第一视频文本与第二视频文本分别进行分词处理,得到多个第二分词;对多个第二分词进行符号化处理,得到文本数据的文本标识符序列,并将文本标识符序列作为文本模态的子模态特征。
示例的,例如:用户仅输入了视频数据作为待回复内容,视频可以包括图像、图像中的文本以及携带语音的音频等多种模态数据。第一视频文本可以是视频字幕,第二视频文本可以是视频配音文本,若第一视频文本与第二视频文本的内容是相同的,仅对其中一种文本进行处理。文本特征提取处理的方式参考上文,此处不再赘述。
本申请实施例中,支持不同的模态的数据作为输入内容,丰富了用户通过终端设备与人工智能执行对话处理的多样性,提升了输入内容的丰富程度以及回复内容的丰富程度,提升了用户体验。
在步骤303中,对多个子模态特征中最高维度的子模态特征进行因果关系转换,得到因果特征向量。
示例的,因果特征向量与其他子模态特征的维度相同,其他子模态特征是多个子模态特征中除最高维度的子模态特征之外的子模态特征。以输入的模态为文本与图像为例进行说明,视频模态的子模态特征高于其他子模态特征,对视频模态的子模态特征执行因果关系转换。因果关系转换的含义是获取子模态特征与其他模态特征之间的关联性信息,转换结果表征为序列形式,以使特征之间对齐。
在一些实施例中,最高维度的子模态特征是图像特征;参考图3B,图3B是本申请实施例提供的多模态数据的处理方法的流程示意图;步骤303可以通过图3B的步骤3031至步骤3032实现,以下具体说明。
在步骤3031中,获取随机初始化的预配置嵌入向量。
示例的,以转换器模型为例进行说明,预配置嵌入向量可以是潜在隐层输出。预配置嵌入向量可以表征为{e1,e2,...,eN},其中,N是正整数。
在步骤3032中,对所述最高维度的子模态特征以及所述预配置嵌入向量进行基于注意力的转换处理,得到至少一个因果特征向量。
这里,因果特征向量的数量与预配置嵌入向量的维度数量相同,因果特征向量的维度与其他子模态特征的维度相同。
示例的,假设输入的数据包括文本和图像,则最高维度的子模态特征是图像特征。将二维的图像模态的子模态特征转换为潜在空间Z中的一维因果序列。例如:对图像I及图像模态的子模态特征g(I),获取随机初始化的嵌入序列{e1,e2,...,eN}作为预配置嵌入向量,输出N个嵌入向量{z1,z2,...,zN},也即输出多个因果特征向量。上述过程可以表征为以下公式(1):
{z1,z2,...,zN}=CausalTransformer(g(I),{e1,e2,...,eN}) (1)
其中,CausalTransformer()表征因果转换器的处理函数。
在一些实施例中,步骤3032可以通过以下方式实现:基于所述最高维度的子模态特征以及所述预配置嵌入向量,确定基于自注意力的查询向量;基于所述最高维度的子模态特征确定基于交叉注意力的至少一个键向量和至少一个值向量;基于查询向量以及至少一个键向量生成注意力矩阵;对注意力矩阵进行归一化处理,并将归一化处理的结果与每个值向量之间的乘积作为因果特征向量。
示例的,交叉注意力机制中,将最高维度的子模态特征S1以及预配置嵌入向量S2;根据序列S1计算键向量和值向量;根据序列S2计算查询向量;对键向量和查询向量进行矩阵之间的相乘计算,得到注意力矩阵;将查询向量应用于注意力矩阵;输出序列S3的尺寸和长度与序列S2相同。输出序列S3是因果特征向量。归一化处理可以通过softmax函数实现,例如通过前馈机制(Feed Forward)实现。注意力机制可以表征为以下公式(2)
其中,softmax是归一化函数,softmax可以使得权重概率分布和为1。是注意力的原始分数,通过查询矩阵Q以及键矩阵K的点积得到注意力矩阵。/>是缩放系数。
本申请实施例中,通过调用注意力机制获取所输入的特征之间的因果依赖性,以便进一步对齐视觉和语言模态,能够提升所生成的回复内容的准确性。将高维的模态数据转换为低维的因果关系序列,也节约了后续处理所需的计算资源,进而能够提升输出回复内容的效率。
继续参考图3A,在步骤304中,将因果特征向量与其他子模态特征拼接,得到拼接特征序列。
示例的,其他子模态特征拼接也表征为特征向量形式,将每个特征向量作为一个维度,依次组合为序列,得到拼接特征序列。拼接特征序列中,不同的子模态特征对应的标注类型的标记不同。
在一些实施例中,参考图3C,图3C是本申请实施例提供的多模态数据的处理方法的流程示意图;步骤304可以通过图3C的步骤3041至步骤3043实现,以下具体说明。
在步骤3041中,获取因果特征向量对应的模态起始标记以及模态终止标记。
示例的,假设因果特征向量对应的模态是图像模态,图像模态的模态起始标记为[IMG],模态终止标记为[/IMG]。
在步骤3042中,将模态起始标记添加到因果特征向量的头部,将模态终止标记添加到因果特征向量的尾部,以形成待拼接子模态特征。
继续基于上文举例说明,例如:某一张图像的因果特征向量为Zi,对因果特征向量Zi进行标记,得到[IMG Zi/IMG]为待拼接子模态特征。
在步骤3043中,将待拼接子模态特征与其他子模态特征依次进行首尾连接,得到拼接特征序列。
示例的,待拼接子模态特征的头部有序列起始标记,待拼接子模态特征的尾部有序列终止标记。每个子模态特征的头部和尾部也标注了对应的起始终止标记。对每个子模态特征添加了起始、终止标记之后,执行拼接处理,拼接得到的拼接特征序列中,可以根据每个维度的特征向量对应的标记确定子模态特征的起止位置、类型。继续基于上文举例进行说明,拼接子模态特征[IMG Zi/IMG]与其他不同模态的特征分别进行拼接。还可以通过<s>标注拼接特征序列的起始和</s>标注拼接特征序列的结尾,以便于进行后续处理。
继续参考图3A,在步骤305中,基于拼接特征序列生成输入内容的回复内容。
示例的,回复内容的模态可以与输入内容相同,或者是输入内容中的一种。例如:输入内容是表情包图片,回复内容也是图片。输入内容是文本,回复内容是图片和文本。可以通过稳定扩散模型或者转换器模型对拼接特征序列进行处理,得到回复内容。
参考图7,图7是本申请实施例提供的人机交互界面示意图。人机交互界面可以是终端设备中的聊天界面700,在聊天界面700中用户可以与人工智能控制的虚拟对象进行聊天,用户可以通过输入控件705输入不同模态的数据。例如:输入文本702“图片中有什么?”以及输入图像702,终端设备调用本申请实施例提供的多模态数据的处理方法,基于输入文本702“图片中有什么?”以及输入图像701,生成输出内容输出文本703以及输出图像704。输出文本703的内容为“一个做成猫形状的披萨”,输出图像704是根据输入文本702以及输入图像702所生成的披萨菜谱图片,包括披萨的用料说明。
在一些实施例中,多模态数据包括图像数据和文本数据,回复内容的类型为图像;步骤305可以通过以下方式实现:对拼接特征序列进行解码处理,得到解码图像;对解码图像进行稳定扩散处理,得到输入内容的图像回复内容。
示例的,稳定扩散处理可以通过稳定扩散模型实现。参考图4,图4是本申请实施例提供的多模态处理模型的结构示意图,多模态数据的处理方法通过多模态处理模型401实现,多模态处理模型包括:编码器402、因果转换器403以及解码器404;编码器402用于执行特征提取处理,因果转换器403用于执行因果关系转换以及特征拼接,解码器404用于基于拼接特征序列生成输入内容的回复内容。
解码器404可以是稳定扩散模型,对图像添加噪声,执行前向传播处理,得到与输入的图像不同的其他图像,以得到输入内容的图像回复内容。
在一些实施例中,多模态数据包括图像数据和文本数据,回复内容的类型为文本;步骤305可以通过以下方式实现:对拼接特征序列进行解码处理,得到离散文本标记序列;对离散文本标记序列进行映射处理,得到输入内容的文本回复内容。
示例的,解码处理通过上文的解码器实现,解码器调用自然语言处理的语言建模能力,基于拼接特征序列预测下文对应的文本的离散文本标记序列,并通过词表将离散文本标记序列由标记映射为文本,得到回复内容。
本申请实施例中,能够基于多模态数据回复多模态数据,提升了回复内容的丰富程度,在人工智能问答场景中,使得人工智能所回复的内容更加生动、准确。
在一些实施例中,在步骤301之前或者在步骤305之后,还可以通过以下方式对多模态处理模型进行训练,获取样本文本数据以及样本图像数据,其中,样本图像数据的特征维度高于样本文本数据;基于样本文本数据以及样本图像数据调用多模态处理模型进行联合训练处理,得到训练后的多模态处理模型,其中,训练后的多模态处理模型用于基于所输入的多模态数据生成至少一种模态的回复内容。
示例的,本申请实施例中的联合训练处理可以是自监督或者无监督训练。联合训练处理的训练目标包括:多模态处理模型能够用于对文本数据的子模态特征进行分类;多模态处理模型能够用于基于拼接特征序列生成图像。
本申请实施例中,联合训练处理的训练目标相互促进,相较于已有的独立存在的理解和生成的任务,在训练过程中两种任务互相促进,提升了最终的性能。
本申请实施例允许输入内容为多模态数据,相较于相关技术中输入内容与回复内容均为文本的方案,提升了输入内容的丰富程度以及回复内容的丰富程度,提升了用户体验。基于多模态数据进行特征提取处理,并通过因果关系转换对齐了不同模态的特征,节约了基于不同模态特征生成回复内容所需的计算资源,相较于直接对不同维度数据分别进行数据生成的方案,降低了计算过程的复杂程度,利用了不同模态输入内容之间的关联性,进而能够提升回复内容与输入内容之间的关联性,使得回复内容更准确,更符合用户的需求。在人工智能问答场景中,使得人工智能所回复的内容更加生动、准确,提升了人工智能的真实感,进而提升了用户使用人工智能问答的体验。
下面,将说明本申请实施例多模态数据的处理方法在一个实际的应用场景中的示例性应用。
虚拟对象与用户之间的问答***成为人工智能技术的发展趋势,单模态的虚拟对象***对话枯燥、互动形式单一,导致很难提升用户的兴趣。多模态多任务是最近人工智能技术发展的趋势,多模态多任务一方面可以被认为是“堆数据”的延续,利用了数据的跨模态相关性;另一方面,多模态多任务下定义的AI也是更接近于通用人工智能的形式。
针对多模态数据的处理,相关技术存在以下几种方式:
1、基于离散字符的图片生成。BEiT系列将视觉信号转换成离散字符(token),使其可以像语言数据一样预训练,BEiT-3利用统一模式化的BERT-style训练目标,即掩码(mask)部分输入,让模型修复被掩盖的部分。
BEiT将BERT的训练思想成功用在了图像处理任务中,也是一种自监督训练的形式,所以取名为视觉转换器的BERT预训练模型。BEIT还是一个基于图像单模态的预训练算法。它最大的创新点是将离散变分自编码器和BERT结合了起来,提出了一个基于视觉标志的MIM预训练方法,减轻了模型在图像细节和临近像素关系上的过度训练。这个视觉标志是基于离散变分自编码器生成的,相当于通过离散变分自编码器将图像压缩到一个低维的语义空间。
2、多模态数据处理模型。Flamingo是一个仅使用少量注释示例就能快速适应新任务的模型,包括关键的架构创新;1)连接强大的预训练视觉和语言模型;2)处理任意交错的视觉和文本数据序列;3)无缝摄取图像或视频作为输入。由于它们的灵活性,Flamingo模型可以在包含任意交错的文本和图像的大规模多模式网络语料库上进行训练,这是赋予它们上下文小样本学习能力的关键。Flamingo整合了预训练的视觉和语言模型,从而整合多模态的能力,率先实现了多模态的独立样本学习(one-shot)及小样本学习(few-shot)能力。但是Flamingo中,两种模态是分别预训练的。
3、多模态预训练。随着大型语言模型影响力和开源性的提升,一些模型基于大型语言模型的方式整合两种模态,例如:BLIP-series利用Q-former去对齐视觉和文本的特征。然而这些方法通常使用预测下一个字符(next token)的方法作为训练目标,但是对于数据模态没有使用合理的监督。
已有独立存在的理解模型和生成模型缺点为部署成本高,训练成本高,本申请实施例提供的多模态数据的处理方法能够同时支持理解和生成的功能,极大的方便了智能聊天的模型部署,在训练过程中两种任务互相促进,提升了最终的性能。针对视觉符号化(token)表征,现有方法类似基于矢量量化变分自编码器(Vector Quantised-VariationalAutoEncoder,VQ-VAE)的图像序列(image sequence),通过低层级(low-level)的像素层面的信息构建raster discrete token,用于图像生成,这种低层级的离散化方法没有图像理解的能力,本申请实施例具有语义信息而且满足具有语义信息而且满足因果关联性(causal relation),与语言序列(language sequence)在形式上对齐,使得两种模态可以一起训练。
以下结合附图,对本申请实施例提供的多模态数据的处理方法进行解释说明,以服务器为执行主体为例,参考图5,图5是本申请实施例提供的多模态数据的处理方法的一个可选的流程示意图。
在步骤501中,接收输入的多模态数据。
示例的,多模态数据可以是用户输入到终端设备的聊天界面中的,多模态数据可以包括图像、文本、视频、音频等模态。
在步骤502中,基于多模态数据调用多模态处理模型的编码器进行特征提取处理,得到视觉特征序列以及文本特征序列。
本申请实施例多模态数据的处理方法所用到的模型是一个多模态处理模型,用于感知多种模态数据的输入,并生成不同模态的输出。参考图6A,参考图6A,图6A是本申请实施例提供的多模态处理模型的一个可选的结构示意图;多模态处理模型包括编码器610、因果转换器620、多通道建模大语言模型630以及扩散解码器640。使用自回归的方式统一不同的模态,视觉信号首先通过编码器610被编码成视觉嵌入向量(embedding),经过因果转换器620转换成因果关系序列(causal sequence),与文本字符(token)一起组成互相交叉的序列(sequence)。
示例的,编码器可以是视觉预训练模型-对比语言图像预训练模型,用于抽取图像特征,它能够利用掩码重建目标任务,有效地拓展模型并在各种视觉任务中改善性能。
本申请实施例中,将多模态理解生成一体化的模型,相较于已有独立存在的理解模型和生成模型,同时支持理解和生成的功能,极大的方便了智能聊天的模型部署。
在步骤503中,基于视觉特征序列调用多模态处理模型的因果转换器,得到因果关系序列,并将文本特征序列与因果关系序列拼接,得到拼接嵌入特征。
示例的,得到图像特征(也就是视觉特征序列)后,将图像特征输入因果转换器得到视觉因果嵌入向量(visual causal embedding),使得图像和自然语言抽象层次对齐。视觉因果嵌入向量是一个固定长度N的嵌入向量,可以表征为因果关系序列形式。
参考图6B,图6B是本申请实施例提供的因果转换器的原理示意图;因果转换器由自注意力机制(Self-Attention)、交叉注意力机制(Cross-Attention)和前馈机制(FeedForward)组成。本申请实施例使用自注意力机制来捕获输入潜在嵌入向量之间(inputpotential embedding)的因果依赖性,以便进一步对齐视觉和语言模态。交叉注意力机制聚合来自对比语言图像预训练模型模型提取的视觉信息,其中视觉嵌入向量被视为键向量K和值向量V,自注意力机制的输出用作为查询向量Q。
因果转换器对视觉嵌入向量的处理可以通过以下方式实现:使用因果转换器将2D空间视觉信号转换为潜在空间Z中的1D一维因果序列。例如:对图像I及对比语言图像预训练模型的视觉编码器编码得到的视觉嵌入向量g(I),因果转换器获取随机初始化的嵌入序列{e1,e2,...,eN}作为输入,输出N个嵌入向量{z1,z2,...,zN}(也即上文的因果特征向量),以确定图像I的因果依赖性。上述过程可以表征为以下公式(1):
{z1,z2,...,zN}=CausalTransformer(g(I),{e1,e2,...,eN}) (1)
其中,CausalTransformer()表征因果转换器的处理函数。
以视频数据为例,一个视频有T帧,通过因果转换器的转换处理得到了T*N个视觉因果嵌入向量。而后,对每个图像或帧添加两个特殊图像标记[IMG]和[/IMG],以表示编码图像/帧嵌入的开始和结束。视觉因果嵌入向量与文本特征序列相结合,形成多模态序列,并用将<s>和</s>标记附加到每个序列的开头和结尾。该序列被送到多模态建模大语言模型中以进行统一的自回归建模。
在步骤504中,当预设的输出内容是文本时,基于拼接嵌入特征生成文本回复内容。
本申请实施例提出的模型可以对不同模态进行统一自回归建模,使其具备多模态理解的强大能力,可以接受多模态序列作为输入,并跨视觉和文本模态输出信号。例如:给定多模态上下文,当预期输出格式是文本,模型将使用语言建模头生成离散文本标记,再将离散文本标记转换为文本回复内容。
在步骤505中,当预设的输出内容是图像时,基于拼接嵌入特征调用多模态处理模型的解码器生成图像回复内容。
示例的,本申请实施例使用潜扩散模型(Latent Diffusion Model)将视觉嵌入向量解码为图像,并使用稳定扩散(Stable Diffusion)的权重对其进行初始化。具体来说,本申请实施例将N个视觉嵌入向量输入到扩散模型中作为图像解码的依据。例如:当使用同一任务的两个测试图像对(image-test pair)作为提示词(prompt)时,多模态处理模型能在在给定新输入的情况下自动推断并完成相应的任务。当所需的输出是图像,本申请实施例将在输入序列的末尾附加一个[IMG]标记,多模态处理模型将输入序列自回归生成N个视觉嵌入向量,并调用视觉解码器将视觉嵌入向量解码为真实世界图像。
在一些实施例中,本申请实施例中的多模态处理模型的训练目标为:分类下一个文本字符(text token);回归下一个视觉嵌入向量,并基于自回归的视觉嵌入向量,调用经过微调的稳定扩散解码器生成图片。多模态联合训练方法,相较于已有的独立存在的理解和生成的任务,在训练过程中两种任务互相促进,提升了最终的性能。相较于相关技术,本申请实施例的方法将视觉和文本模态都是用对齐的自回归下一个字符预测(next tokenprediction)作为训练目标,这种归一化的训练方式,使得各个模态之间可以很好的融合,从而可以支持多种多样的下游任务。
在一些实施例中,参考图7,图7是本申请实施例提供的人机交互界面示意图。人机交互界面可以是终端设备中的聊天界面700,在聊天界面700中用户可以与人工智能控制的虚拟对象进行聊天,用户可以通过输入控件705输入不同模态的数据。例如:输入文本702“图片中有什么?”以及输入图像702,终端设备调用本申请实施例提供的多模态数据的处理方法,基于输入文本702“图片中有什么?”以及输入图像701,生成输出内容输出文本703以及输出图像704。输出文本703的内容为“一个做成猫形状的披萨”,输出图像704是根据输入文本702以及输入图像702所生成的披萨菜谱图片,包括披萨的用料说明。
目前虚拟对象需求逐渐增多,本申请实施例提供的多模态数据的处理方法所应用的模型能够作为虚拟对象重要的基础模型,同时具备理解和生成的能力,极大的增强了虚拟对象聊天的生动性,理解生成一体化模型极大的减少了训练成本和部署成本。
本申请实施例中,通过多模态联合训练的方式,提升训练效率,降低训练成本和部署成本,同时具备理解和生成的能力,极大的增强了虚拟对象与用户之间聊天的生动性。
下面继续说明本申请实施例提供的多模态数据的处理装置455的实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器450的多模态数据的处理装置455中的软件模块可以包括:数据获取模块4551,配置为获取输入内容包括的多模态数据,其中,所述多模态数据至少包括两种不同模态的数据;特征提取模块4552,配置为基于所述多模态数据进行特征提取处理,得到每个所述模态分别对应的子模态特征,其中,不同的子模态特征的维度不同;因果转换模块4553,配置为对多个所述子模态特征中最高维度的子模态特征进行因果关系转换,得到因果特征向量,其中,所述因果特征向量与其他子模态特征的维度相同,所述其他子模态特征是多个所述子模态特征中除所述最高维度的子模态特征之外的子模态特征;所述因果转换模块4553,还配置为将所述因果特征向量与所述其他子模态特征拼接,得到拼接特征序列;生成模块4554,配置为基于所述拼接特征序列生成所述输入内容的回复内容。
在一些实施例中,所述多模态数据至少包括图像数据以及文本数据;所述特征提取模块4552,配置为对所述图像数据进行编码处理,得到图像特征,将所述图像特征作为图像模态的子模态特征;对所述文本数据进行分词处理,得到多个第一分词;对所述多个第一分词进行符号化处理,得到文本数据的文本标识符序列,并将所述文本标识符序列作为文本模态的子模态特征。
在一些实施例中,所述多模态数据包括视频数据以及文本数据;所述特征提取模块4552,配置为对所述视频数据进行分帧处理,得到所述视频数据的每个视频帧图像;对每个所述视频帧图像进行编码处理,得到每个所述视频帧图像的视频帧特征,将所述视频帧特征作为图像模态的子模态特征;对所述文本数据进行分词处理,得到多个第一分词;对所述多个第一分词进行符号化处理,得到文本数据的文本标识符序列,并将所述文本标识符序列作为文本模态的子模态特征。
在一些实施例中,所述特征提取模块4552,配置为当所述多模态数据仅包括视频数据时,对所述视频数据进行分帧处理,得到所述视频数据的每个视频帧图像;对每个所述视频帧图像进行编码处理,得到每个所述视频帧图像的视频帧特征,将所述视频帧特征作为图像模态的子模态特征;对每个所述视频帧图像进行文本识别处理,得到每个所述视频帧图像包含的第一视频文本,以及对所述视频数据的音频进行语音识别处理,得到所述视频数据的音频所包含的第二视频文本;对所述第一视频文本与所述第二视频文本分别进行分词处理,得到多个第二分词;对所述多个第二分词进行符号化处理,得到文本数据的文本标识符序列,并将所述文本标识符序列作为文本模态的子模态特征。
在一些实施例中,所述最高维度的子模态特征是图像特征;所述因果转换模块4553,配置为获取随机初始化的预配置嵌入向量;对所述最高维度的子模态特征以及所述预配置嵌入向量进行基于注意力的转换处理,得到至少一个因果特征向量,其中,所述因果特征向量的数量与所述预配置嵌入向量的维度数量相同,所述因果特征向量的维度与所述其他子模态特征的维度相同。
在一些实施例中,所述因果转换模块4553,配置为基于所述最高维度的子模态特征以及所述预配置嵌入向量,确定基于自注意力的查询向量;基于所述最高维度的子模态特征确定基于交叉注意力的至少一个键向量和至少一个值向量;基于所述查询向量以及所述至少一个键向量生成注意力矩阵;对所述注意力矩阵进行归一化处理,并将所述归一化处理的结果与每个所述值向量之间的乘积作为因果特征向量。
在一些实施例中,所述因果转换模块4553,配置为获取所述因果特征向量对应的模态起始标记以及模态终止标记;将所述模态起始标记添加到所述因果特征向量的头部,将所述模态终止标记添加到所述因果特征向量的尾部,以形成待拼接子模态特征;将所述待拼接子模态特征与其他子模态特征依次进行首尾连接,得到拼接特征序列,其中,所述拼接特征序列的头部有序列起始标记,所述拼接特征序列的尾部有序列终止标记。
在一些实施例中,所述多模态数据包括图像数据和文本数据,所述回复内容的类型为图像;所述生成模块4554,配置为对所述拼接特征序列进行解码处理,得到解码图像;对所述解码图像进行稳定扩散处理,得到所述输入内容的图像回复内容。
在一些实施例中,所述多模态数据包括图像数据和文本数据,所述回复内容的类型为文本;所述生成模块4554,配置为对所述拼接特征序列进行解码处理,得到离散文本标记序列;对所述离散文本标记序列进行映射处理,得到所述输入内容的文本回复内容。
在一些实施例中,所述多模态数据的处理方法通过多模态处理模型实现,所述多模态处理模型包括:编码器、因果转换器以及解码器;所述编码器用于执行所述特征提取处理,所述因果转换器用于执行所述因果关系转换以及所述特征拼接,所述解码器用于基于所述拼接特征序列生成所述输入内容的回复内容。
在一些实施例中,所述数据获取模块,配置为在所述获取输入内容包括的多模态数据之前,获取样本文本数据以及样本图像数据,其中,所述样本图像数据的特征维度高于所述样本文本数据;基于所述样本文本数据以及所述样本图像数据调用所述多模态处理模型进行联合训练处理,得到训练后的所述多模态处理模型,其中,训练后的所述多模态处理模型用于基于所输入的多模态数据生成至少一种模态的回复内容。
在一些实施例中,所述联合训练处理的训练目标包括:
所述多模态处理模型能够用于对所述文本数据的子模态特征进行分类;所述多模态处理模型能够用于基于所述拼接特征序列生成图像。
本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序或计算机可执行指令,该计算机程序或计算机可执行指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机可执行指令,处理器执行该计算机可执行指令,使得该电子设备执行本申请实施例上述的多模态数据的处理方法。
本申请实施例提供一种存储有计算机可执行指令的计算机可读存储介质,其中存储有计算机可执行指令或者计算机程序,当计算机可执行指令或者计算机程序被处理器执行时,将引起处理器执行本申请实施例提供的多模态数据的处理方法,例如,如图3A示出的多模态数据的处理方法。
在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,计算机可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,计算机可执行指令可以但不一定对应于文件***中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,HyperText Markup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个电子设备上执行,或者在位于一个地点的多个电子设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个电子设备上执行。
综上所述,本申请实施例允许输入内容为多模态数据,相较于相关技术中输入内容与回复内容均为文本的方案,提升了输入内容的丰富程度以及回复内容的丰富程度,提升了用户体验。基于所述多模态数据进行特征提取处理,并通过因果关系转换对齐了不同模态的特征,节约了基于不同模态特征生成回复内容所需的计算资源,相较于直接对不同维度数据分别进行数据生成的方案,降低了计算过程的复杂程度,利用了不同模态输入内容之间的关联性,进而能够提升回复内容与输入内容之间的关联性,使得回复内容更准确,更符合用户的需求。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。
Claims (16)
1.一种多模态数据的处理方法,其特征在于,所述方法包括:
获取输入内容包括的多模态数据;
基于所述多模态数据进行特征提取处理,得到每个所述模态分别对应的子模态特征,其中,不同的子模态特征的维度不同;
对多个所述子模态特征中最高维度的子模态特征进行因果关系转换,得到因果特征向量,其中,所述因果特征向量与其他子模态特征的维度相同,所述其他子模态特征是多个所述子模态特征中除所述最高维度的子模态特征之外的子模态特征;
将所述因果特征向量与所述其他子模态特征拼接,得到拼接特征序列;
基于所述拼接特征序列生成所述输入内容的回复内容。
2.根据权利要求1所述的方法,其特征在于,所述多模态数据至少包括图像数据以及文本数据;
所述基于所述多模态数据进行特征提取处理,得到每个所述模态分别对应的子模态特征,包括:
对所述图像数据进行编码处理,得到图像特征,将所述图像特征作为图像模态的子模态特征;
对所述文本数据进行分词处理,得到多个第一分词;
对所述多个第一分词进行符号化处理,得到文本数据的文本标识符序列,并将所述文本标识符序列作为文本模态的子模态特征。
3.根据权利要求1所述的方法,其特征在于,所述多模态数据包括视频数据以及文本数据;
所述基于所述多模态数据进行特征提取处理,得到每个所述模态分别对应的子模态特征,包括:
对所述视频数据进行分帧处理,得到所述视频数据的每个视频帧图像;
对每个所述视频帧图像进行编码处理,得到每个所述视频帧图像的视频帧特征,将所述视频帧特征作为图像模态的子模态特征;
对所述文本数据进行分词处理,得到多个第一分词;
对所述多个第一分词进行符号化处理,得到文本数据的文本标识符序列,并将所述文本标识符序列作为文本模态的子模态特征。
4.根据权利要求1所述的方法,其特征在于,当所述多模态数据仅包括视频数据时,所述基于所述多模态数据进行特征提取处理,得到每个所述模态分别对应的子模态特征,包括:
对所述视频数据进行分帧处理,得到所述视频数据的每个视频帧图像;
对每个所述视频帧图像进行编码处理,得到每个所述视频帧图像的视频帧特征,将所述视频帧特征作为图像模态的子模态特征;
对每个所述视频帧图像进行文本识别处理,得到每个所述视频帧图像包含的第一视频文本,以及对所述视频数据的音频进行语音识别处理,得到所述视频数据的音频所包含的第二视频文本;
对所述第一视频文本与所述第二视频文本分别进行分词处理,得到多个第二分词;
对所述多个第二分词进行符号化处理,得到文本数据的文本标识符序列,并将所述文本标识符序列作为文本模态的子模态特征。
5.根据权利要求1所述的方法,其特征在于,所述最高维度的子模态特征是图像特征;
所述对多个所述子模态特征中最高维度的子模态特征进行因果关系转换,得到因果特征向量,包括:
获取随机初始化的预配置嵌入向量;
对所述最高维度的子模态特征以及所述预配置嵌入向量进行基于注意力的转换处理,得到至少一个因果特征向量,其中,所述因果特征向量的数量与所述预配置嵌入向量的维度数量相同,所述因果特征向量的维度与所述其他子模态特征的维度相同。
6.根据权利要求5所述的方法,其特征在于,所述对所述最高维度的子模态特征以及所述预配置嵌入向量进行基于注意力的转换处理,得到至少一个因果特征向量,包括:
基于所述最高维度的子模态特征以及所述预配置嵌入向量,确定基于自注意力的查询向量;
基于所述最高维度的子模态特征确定基于交叉注意力的至少一个键向量和至少一个值向量;
基于所述查询向量以及所述至少一个键向量生成注意力矩阵;
对所述注意力矩阵进行归一化处理,并将所述归一化处理的结果与每个所述值向量之间的乘积作为因果特征向量。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述将所述因果特征向量与所述其他子模态特征拼接,得到拼接特征序列,包括:
获取所述因果特征向量对应的模态起始标记以及模态终止标记;
将所述模态起始标记添加到所述因果特征向量的头部,将所述模态终止标记添加到所述因果特征向量的尾部,以形成待拼接子模态特征;
将所述待拼接子模态特征与其他子模态特征依次进行首尾连接,得到拼接特征序列,其中,所述拼接特征序列的头部有序列起始标记,所述拼接特征序列的尾部有序列终止标记。
8.根据权利要求1至6任一项所述的方法,其特征在于,所述多模态数据包括图像数据和文本数据,所述回复内容的类型为图像;所述基于所述拼接特征序列生成所述输入内容的回复内容,包括:
对所述拼接特征序列进行解码处理,得到解码图像;
对所述解码图像进行稳定扩散处理,得到所述输入内容的图像回复内容。
9.根据权利要求1至6任一项所述的方法,其特征在于,所述多模态数据包括图像数据和文本数据,所述回复内容的类型为文本;所述基于所述拼接特征序列生成所述输入内容的回复内容,包括:
对所述拼接特征序列进行解码处理,得到离散文本标记序列;
对所述离散文本标记序列进行映射处理,得到所述输入内容的文本回复内容。
10.根据权利要求1至6任一项所述的方法,其特征在于,所述方法通过多模态处理模型实现,所述多模态处理模型包括:编码器、因果转换器以及解码器;所述编码器用于执行所述特征提取处理,所述因果转换器用于执行所述因果关系转换以及所述特征拼接,所述解码器用于基于所述拼接特征序列生成所述输入内容的回复内容。
11.根据权利要求10所述的方法,其特征在于,在所述获取输入内容包括的多模态数据之前,所述方法还包括:
获取样本文本数据以及样本图像数据,其中,所述样本图像数据的特征维度高于所述样本文本数据;
基于所述样本文本数据以及所述样本图像数据调用所述多模态处理模型进行联合训练处理,得到训练后的所述多模态处理模型,其中,训练后的所述多模态处理模型用于基于所输入的多模态数据生成至少一种模态的回复内容。
12.根据权利要求11所述的方法,其特征在于,所述联合训练处理的训练目标包括:
所述多模态处理模型能够用于对所述文本数据的子模态特征进行分类;
所述多模态处理模型能够用于基于所述拼接特征序列生成图像。
13.一种多模态数据的处理装置,其特征在于,所述装置包括:
数据获取模块,配置为获取输入内容包括的多模态数据;
特征提取模块,配置为基于所述多模态数据进行特征提取处理,得到每个所述模态分别对应的子模态特征,其中,不同的子模态特征的维度不同;
因果转换模块,配置为对多个所述子模态特征中最高维度的子模态特征进行因果关系转换,得到因果特征向量,其中,所述因果特征向量与其他子模态特征的维度相同,所述其他子模态特征是多个所述子模态特征中除所述最高维度的子模态特征之外的子模态特征;
所述因果转换模块,还配置为将所述因果特征向量与所述其他子模态特征拼接,得到拼接特征序列;
生成模块,配置为基于所述拼接特征序列生成所述输入内容的回复内容。
14.一种电子设备,其特征在于,所述电子设备包括:
存储器,用于存储计算机可执行指令或者计算机程序;
处理器,用于执行所述存储器中存储的计算机可执行指令或者计算机程序时,实现权利要求1至12任一项所述的多模态数据的处理方法。
15.一种计算机可读存储介质,存储有计算机可执行指令或者计算机程序,其特征在于,所述计算机可执行指令或者计算机程序被处理器执行时实现权利要求1至12任一项所述的多模态数据的处理方法。
16.一种计算机程序产品,包括计算机可执行指令或计算机程序,其特征在于,所述计算机可执行指令或计算机程序被处理器执行时实现权利要求1至12任一项所述的多模态数据的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311433898.7A CN117453880A (zh) | 2023-10-30 | 2023-10-30 | 多模态数据的处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311433898.7A CN117453880A (zh) | 2023-10-30 | 2023-10-30 | 多模态数据的处理方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117453880A true CN117453880A (zh) | 2024-01-26 |
Family
ID=89592530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311433898.7A Pending CN117453880A (zh) | 2023-10-30 | 2023-10-30 | 多模态数据的处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117453880A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118114727A (zh) * | 2024-04-29 | 2024-05-31 | 北京邮电大学 | 一种面向边缘设备的多模态处理***及方法 |
-
2023
- 2023-10-30 CN CN202311433898.7A patent/CN117453880A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118114727A (zh) * | 2024-04-29 | 2024-05-31 | 北京邮电大学 | 一种面向边缘设备的多模态处理***及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11210836B2 (en) | Applying artificial intelligence to generate motion information | |
CN111414506B (zh) | 基于人工智能情绪处理方法、装置、电子设备及存储介质 | |
CN117033609B (zh) | 文本视觉问答方法、装置、计算机设备和存储介质 | |
CN117453880A (zh) | 多模态数据的处理方法、装置、电子设备及存储介质 | |
CN116958323A (zh) | 图像生成方法、装置、电子设备、存储介质及程序产品 | |
CN116611496A (zh) | 文本到图像的生成模型优化方法、装置、设备及存储介质 | |
CN114969282B (zh) | 基于富媒体知识图谱多模态情感分析模型的智能交互方法 | |
CN114359775A (zh) | 关键帧检测方法、装置、设备及存储介质、程序产品 | |
Khurram et al. | Dense-captionnet: a sentence generation architecture for fine-grained description of image semantics | |
CN116913278B (zh) | 语音处理方法、装置、设备和存储介质 | |
CN117011875A (zh) | 多媒体页面的生成方法、装置、设备、介质和程序产品 | |
CN117540703A (zh) | 文本生成方法、模型训练方法、装置及电子设备 | |
CN113542797A (zh) | 视频播放中的互动方法、装置及计算机可读存储介质 | |
CN116863003A (zh) | 视频生成方法、训练视频生成模型的方法及装置 | |
CN116966574A (zh) | 非玩家角色的交互处理方法、装置、电子设备及存储介质 | |
CN116361511A (zh) | 一种复合语义的视频检索方法、装置、设备及存储介质 | |
CN116258147A (zh) | 一种基于异构图卷积的多模态评论情感分析方法及*** | |
CN117877125B (zh) | 动作识别及其模型训练方法、装置、电子设备、存储介质 | |
CN116661940B (zh) | 组件识别方法、装置、计算机设备和存储介质 | |
WO2024066549A1 (zh) | 一种数据处理方法及相关设备 | |
CN117523046A (zh) | 口型动画生成方法、装置、电子设备以及存储介质 | |
CN114048757A (zh) | 一种手语合成方法、装置、计算机设备及存储介质 | |
CN117011429A (zh) | 一种虚拟表情的生成方法以及相关装置 | |
CN117114008A (zh) | 用于虚拟形象的语义动作匹配方法装置、设备及存储介质 | |
CN117216532A (zh) | 模型训练方法、装置、设备、存储介质及程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |