CN117121015A - 利用冻结语言模型的多模态少发式学习 - Google Patents

利用冻结语言模型的多模态少发式学习 Download PDF

Info

Publication number
CN117121015A
CN117121015A CN202280025638.3A CN202280025638A CN117121015A CN 117121015 A CN117121015 A CN 117121015A CN 202280025638 A CN202280025638 A CN 202280025638A CN 117121015 A CN117121015 A CN 117121015A
Authority
CN
China
Prior art keywords
image
sequence
text
input
neural network
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
Application number
CN202280025638.3A
Other languages
English (en)
Inventor
马里亚·拉斐利亚·齐姆普凯利
雅各布·李·米尼克
塞尔坎·卡比
费利克斯·乔治·伊尔
赛义德·莫哈玛达利·伊斯拉米
奥里奥尔·温亚尔斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DeepMind Technologies Ltd
Original Assignee
DeepMind Technologies Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by DeepMind Technologies Ltd filed Critical DeepMind Technologies Ltd
Publication of CN117121015A publication Critical patent/CN117121015A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/096Transfer learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/0895Weakly supervised learning, e.g. semi-supervised or self-supervised learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/70Labelling scene content, e.g. deriving syntactic or semantic representations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/26Techniques for post-processing, e.g. correcting the recognition result
    • G06V30/262Techniques for post-processing, e.g. correcting the recognition result using context analysis, e.g. lexical, syntactic or semantic context
    • G06V30/268Lexical context

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • Confectionery (AREA)

Abstract

公开方法、系统和设备,包括在计算机存储介质上编码以使用语言模型处理多模态输入的计算机程序。具体来说,所述输入包括图像,并且所述图像由图像编码器神经网络编码以生成表示所述图像的图像嵌入序列。将所述图像嵌入序列提供为由语言模型神经网络处理的输入序列的至少一部分。

Description

利用冻结语言模型的多模态少发式学习
相关申请的交叉引用
本申请要求2021年6月8日提交的希腊国家专利申请号GR 20210100374的优先权。在先申请的公开内容被认为是本申请的公开内容的一部分并且通过引用并入本申请的公开内容中。
背景技术
本说明书涉及使用神经网络处理包括图像的输入。
神经网络是采用一个或多个非线性单元层来预测所接收输入的输出的机器学习模型。一些神经网络包括除了输出层之外的一个或多个隐藏层。每个隐藏层的输出用作网络中的下一层,例如下一隐藏层或输出层的输入。网络的每一层根据相应参数集的当前值从所接收输入中生成输出。
发明内容
本说明书描述一种在一个或多个位置中的一个或多个计算机上实施为计算机程序的系统,所述系统使用图像编码器神经网络和语言模型神经网络执行多模态任务。语言模型神经网络被预先训练,例如,不在图像编码器神经网络的训练期间进行训练。
在一个方面中,方法中的一个包括获得输入图像;使用图像编码器神经网络来处理输入图像,所述图像编码器神经网络已被训练为处理输入图像以生成表征输入图像的图像嵌入向量的图像序列;生成包括图像嵌入向量的图像序列的输入嵌入向量的输入序列;以及使用经训练的语言模型神经网络处理包括图像嵌入向量的图像序列的输入嵌入向量的输入序列,以生成文本标记的输出序列作为输出,所述文本标记的输出序列表示对输入嵌入向量的输入序列的文本响应,其中:从文本标记词汇表中选择输出序列中的每个文本标记,经训练的语言模型神经网络已被训练以对文本嵌入向量的训练输入序列执行语言建模任务,所述文本嵌入向量的训练输入序列表示来自文本标记词汇表的文本标记,并且图像嵌入向量的图像序列中的每个图像嵌入向量与表示来自文本标记词汇表的文本标记的文本嵌入向量具有相同维度。
因此,图像编码器神经网络被用于将图像表示为嵌入序列,使得用包括此序列的输入(也称为“前缀”)提示的预先训练的语言模型生成对应多模态任务的适当输出。
在一些实施方案中,图像编码器神经网络已经通过以下方式被训练:通过经训练的语言模型神经网络相对于图像编码器神经网络的参数反向传播损失函数的梯度,并且损失函数是多模态任务的损失函数,所述多模态任务需要通过使用经训练的语言模型神经网络处理训练输入来生成包括多个文本标记的训练输出文本序列,所述训练输入包括由图像编码器神经网络从训练图像生成的训练图像嵌入向量的序列。这允许图像编码器学习生成可以有效地用于执行任务的嵌入,即使经训练的语言模型神经网络已被训练为处理表示文本的嵌入,并且由图像编码器生成的嵌入表示图像。
在这些实施方案中的一些实施方案中,多模态任务是图像字幕任务,并且其中训练输出文本序列是训练图像的文本字幕的至少一部分。
在一些实施方案中,经训练的语言模型神经网络不是在图像编码器神经网络在多模态任务的损失函数上的训练期间训练的,并且图像编码器神经网络的训练包括在不调整语言模型神经网络的参数的情况下通过经训练的语言模型神经网络反向传播损失函数的梯度并且反向传播到图像编码器神经网络中。也就是说,语言模型神经网络在图像编码器神经网络的训练期间被“冻结”,并且在图像编码器神经网络已经被训练之后,不需要对语言模型神经网络进行微调以确保在各种多模态任务中的任一个上的高质量性能。产生的组合模型保留大型语言模型的所有能力,但是也可以处理以任意序列的文本和图像输入,以执行各种多模态任务。
在一些实施方案中,损失函数通过在由经训练的语言模型神经网络作为处理训练输入的结果而生成的文本标记词汇表中的文本标记上的分数分布来测量指派给多模态任务的基本事实文本输出中的文本标记的相应可能性。
在一些实施方案中,在图像编码器神经网络在多模态任务的损失函数上的训练之前,已经在语言建模任务上训练经训练的语言模型神经网络。
在一些实施方案中,语言模型神经网络是自回归神经网络,所述自回归神经网络通过生成在以当前输入序列为条件的输出序列中的每个特定文本标记来自回归地生成文本标记的输出序列,所述当前输入序列包括(i)输入嵌入向量的输入序列,之后是在输出序列中的特定文本标记之前的任何文本标记的文本嵌入向量。
在一些实施方案中,经训练的语言模型神经网络是基于自回归变换器的神经网络,所述基于自回归变换器的神经网络包括多个层,每个层应用自注意力操作。因此,所描述的方法利用基于变换器的大型预训练语言模型中编码的“知识”来生成组合模型,所述组合模型可以在零发和少发设置中执行各种多模态任务。
在一些实施方案中,经训练的语言模型神经网络被配置成在使用多个层处理输入序列之前将相对位置编码应用于输入序列。
在一些实施方案中,图像编码器神经网络包括卷积神经网络。
在一些实施方案中,卷积神经网络被配置成处理输入图像以生成表征输入图像的输出张量,并且其中图像编码器神经网络被配置成将输出张量映射到图像嵌入向量的图像序列。
在一些实施方案中,文本标记的输出序列表示输入图像的预测文本字幕的至少一部分。
在一些实施方案中,输入嵌入向量的输入序列还包括(i)各自表示相应文本序列的文本嵌入向量的一个或多个序列,(ii)各自表征另一输入图像的图像嵌入向量的一个或多个其它序列,或(iii)两者。
在一些实施方案中,输入嵌入向量的输入序列包括图像嵌入向量的图像序列和表示关于输入图像的问题的文本嵌入向量的序列,并且其中文本标记的输出序列表示对关于输入图像的问题的预测文本答案。
在一些实施方案中,输入嵌入向量的输入序列(i)包括图像嵌入向量的一个或多个其它序列,以及(ii)对于图像嵌入向量的每个其它序列,包括表示由图像嵌入向量的其它序列表征的其它图像的分类的文本嵌入向量的相应序列,并且其中文本标记的输出序列表示输入图像的预测分类。
在一些实施方案中,输入嵌入向量的输入序列(i)包括各自表征相应的额外输入图像的图像嵌入向量的一个或多个其它序列,以及(ii)对于图像嵌入向量的每个其它序列,包括文本嵌入向量的相应序列,其表示当询问关于由图像嵌入向量的其它序列表征的额外图像时对问题的答案,并且其中文本标记的输出序列表示当询问关于输入图像时对问题的预测答案。
在一些实施方案中,输入嵌入向量的输入序列(i)包括图像嵌入向量的一个或多个其它序列,每个序列表征相应的额外输入图像,(ii)对于图像嵌入向量的每个其它序列,包括文本嵌入向量的相应序列,其提供关于由图像嵌入向量的其他序列表征的额外图像的特定类型信息,以及(iii)对于图像嵌入向量的图像序列,包括文本嵌入的部分序列,其表示提供关于输入图像的特定类型信息的文本提示,并且其中文本标记的输出序列表示提供关于输入图像的特定类型信息的文本提示的预测完成。
在一些实施方案中,输入嵌入向量的输入序列包括表示文本序列的文本嵌入向量的第一序列,所述文本序列描述应由输出序列所表示的文本响应执行的任务。
可以在特定实施例中实施在本说明书中描述的主题,以便实现以下优点中的一个或多个。
当以足够的规模训练时,语言模型,例如使用自注意力自回归地生成输出的基于变换器的语言模型展现出在仅用几个示例提示之后学习新语言任务的显著能力。所描述的技术通过使用视觉编码器将图像表示为连续嵌入序列来将这种少发式学习能力转移到多模态设置,使得用包括此序列的“前缀”提示的预训练的、冻结语言模型生成对应多模态任务的适当输出。所得系统是多模态少发式学习器,当以表示为任何数量的交错图像和文本嵌入的序列的示例为条件时,它具有学习各种新任务的惊人能力。作为特定示例,所得系统可以快速地“学习”新对象和新颖视觉类别的单词,仅通过少量示例进行视觉问答,并且可以在已经训练图像编码器之后利用外部知识,而无需任何额外的训练或微调。因此,(i)即使语言模型仅在仅对文本数据进行操作的语言建模任务上进行训练,以及(ii)即使图像编码器神经网络在执行完全不同的多模态任务时进行训练,所得系统也可以有效地执行多模态任务。
在附图和以下具体实施方式中阐述本说明书的主题的一个或多个实施例的细节。主题的其它特征、方面和优点将从具体实施方式、附图和权利要求书变得显而易见。
附图说明
图1是示例性多模态系统的图式。
图2示出图像编码器神经网络的训练。
图3是用于执行多模态任务的示例性过程的流程图。
图4示出用于执行视觉问答任务的图像编码器神经网络和语言模型神经网络的示例。
图5示出用于执行k发式外部知识视觉问答任务的图像编码器神经网络和语言模型神经网络的示例。
图6示出用于执行k发式图像分类任务的图像编码器神经网络和语言模型神经网络的示例。
在各个附图中的相似附图标记和名称指示相似的元件。
具体实施方式
本说明书描述一种在一个或多个位置中的一个或多个计算机上实施为计算机程序的系统,所述系统执行一个或多个多模态任务。
图1是示例性多模态系统100的图式。多模态系统100是在一个或多个位置中的一个或多个计算机上实施为计算机程序的系统的示例,在其中可以实施下文描述的系统、组件和技术。
多模态系统100被配置成使用图像编码器神经网络110和语言模型神经网络120执行一个或多个多模态任务。
如本说明书中使用,多模态任务是需要处理包括图像104(例如,由相机捕获的真实世界的图像)的网络输入102以生成包括文本标记154的序列的网络输出152的任务。在一些情况下,网络输入102还可以包括文本、一个或多个其它图像,或两者。
下文更详细地描述多模态任务的示例。
图像编码器神经网络110是被配置成接收图像并且处理图像,例如处理图像的像素的强度值,以生成表征图像的图像嵌入向量的图像序列的神经网络。
如本说明书中使用的“嵌入向量”是数值,例如浮点或其它类型的数值的向量,所述向量具有预定维度,例如具有预定数量的值。
图像编码器神经网络110通常可以具有将图像映射到嵌入的序列的任何适当架构。嵌入的序列可以具有预定数量,例如1、2、4或8个嵌入。
例如,图像编码器神经网络110可以包括卷积神经网络。
作为特定示例,卷积神经网络可以被配置成处理图像以生成表征输入图像的输出张量,并且图像编码器神经网络110可以被配置成将输出张量映射到图像嵌入向量的图像序列。也就是说,神经网络110可以包括(i)卷积神经网络和(ii)将输出张量映射到图像序列的额外组件。例如,额外组件可以应用线性变换以将输出张量线性映射到D*n个通道,然后将结果重塑为n个嵌入的序列,每个嵌入具有维度D。
作为另一示例,图像编码器神经网络110可以是视觉变换器神经网络。视觉变换器是获得图像的多个图像块、生成每个图像块的相应嵌入,并且然后使用一个或多个自注意力层块(例如,按序列布置,使得除了最后一个自注意力层块之外的每个自注意力层块的输出是序列的后续自注意力层块的输入)更新相应嵌入的神经网络。在此示例中,嵌入的序列可以是由最后一个自注意力层块生成的一些或全部补丁的更新的嵌入。
语言模型神经网络120是被配置成接收输入嵌入向量的序列作为输入并且处理该输入以生成文本标记的输出序列作为输出的神经网络。
每个输入嵌入向量具有与由图像编码器神经网络110生成的图像嵌入向量相同的维度。
如下文将更详细地讨论,在语言模型神经网络120的训练期间,输入嵌入向量表示文本标记,而在训练之后并且在执行多模态任务时,至少一些输入嵌入向量是图像嵌入向量。
更具体地,系统100还可以包括文本嵌入器,所述文本嵌入器是将标记词汇表中的每个标记独立地变换为具有与输入嵌入相同维度的相应文本嵌入的嵌入函数。文本嵌入可以是固定的,例如预定的,或可以在语言模型神经网络120的训练期间学习。
词汇表中的标记可以是任何适当的文本标记,例如,表示一种或多种自然语言中的文本元素的单词、词段、标点符号等,以及可选地,在文本语料库中找到的数字和其它文本符号。例如,系统可以通过应用标记器(例如,SentencePiece标记器或另一标记器)将给定的单词序列标记化,以将序列划分为来自词汇表的标记。
语言模型神经网络120可以是一种自回归神经网络,所述自回归神经网络通过生成在以当前输入序列为条件的输出序列中的每个特定文本标记来自回归地生成文本标记的输出序列,所述当前输入序列包括(i)输入嵌入向量的输入序列,之后是(ii)在输出序列(如由文本嵌入器生成)中的特定文本标记之前的任何文本标记的文本嵌入向量。
更具体地,为了生成特定文本标记,神经网络120可以处理当前输入序列以生成分数分布,例如概率分布,所述分数分布将例如相应概率的相应分数指派给文本标记词汇表中的每个标记。神经网络120然后可以使用分数分布从词汇表中选择文本标记作为特定文本标记。例如,神经网络120可以贪婪地选择分数最高的标记,或可以例如使用核采样或另一采样技术从分布中对标记进行采样。
作为特定示例,经训练的语言模型神经网络120可以是基于自回归变换器的神经网络,所述基于自回归变换器的神经网络包括多个层,每个层应用自注意力操作。神经网络120可以具有各种基于变换器的神经网络架构中的任何一种。此类架构的示例包括在以下项中描述的那些架构:Colin Raffel、Noam Shazeer、Adam Roberts、Katherine Lee、Sharan Narang、Michael Matena、Yanqi Zhou、Wei Li和Peter J Liu的“Exploring thelimits of transfer learning with a unified text-to-text transformer(用统一的文本到文本变换器探索迁移学习的局限性)”,arXiv预印本arXiv:1910.10683,2019;Daniel Adiwardana、Minh-Thang Luong、David R.So、Jamie Hall、Noah Fiedel、RomalThoppilan、Zi Yang、Apoorv Kulshreshtha、Gaurav Nemade、Yifeng Lu和Quoc V.Le的“Towards a human-like open-domain chatbot(走向类似人类的开放域聊天机器人)”,CoRR,abs/2001.09977,2020;以及Tom B Brown、Benjamin Mann、Nick Ryder、MelanieSubbiah、Jared Kaplan,Prafulla Dhariwal、Arvind Neelakantan、Pranav Shyam、GirishSastry、Amanda Askell等人的“Language models are few-shot learners(语言模型是少发式学习器)”,arXiv预印本arXiv:2005.14165,2020。
可选地,语言模型神经网络120可以在使用多个层处理输入序列(或当前输入序列)之前将相对位置编码应用于输入序列(或当前输入序列)。将相对位置编码应用于输入序列指代基于输入序列的嵌入的位置来修改输入序列中的每个嵌入,例如,在应用任何自注意力操作之前注入关于嵌入位置的信息。例如,神经网络120可以将每个输入嵌入与对应于输入嵌入在输入序列中的位置的位置嵌入相组合,例如相加或连接。
在使用图像编码器神经网络110和语言模型神经网络120来执行一个或多个多模态任务之前,例如由系统100、由一个或多个其它系统、或部分地由系统100且部分地由一个或多个其它系统训练神经网络110和120。
具体来说,系统100或其它系统中的一个在语言建模任务上预训练语言模型神经网络120,所述语言建模任务例如是在给定文本标记的当前序列的情况下,需要预测训练数据中当前序列之后的下一标记的任务。作为特定示例,语言模型神经网络120可以在大型文本数据集,例如从互联网或另一文本语料库公开可用的文本上的最大似然目标上进行预训练。
因此,在此预训练期间,到神经网络120的输入序列仅包括来自词汇表的文本标记的文本嵌入。
因为用于预训练的文本不需要进行标注并且因为大量未标注文本例如从互联网或在其它大规模文本语料库中容易获得,所以语言模型神经网络120可以在大量训练数据集上进行预训练,并且经训练的语言模型神经网络120因此可以对大量基于文本的知识进行编码。
在训练语言模型神经网络120之后,系统100或另一系统在保持语言模型神经网络120“冻结”的同时,在多模态任务的训练数据上训练图像编码器神经网络110。也就是说,在此训练期间,调整图像编码器神经网络110的参数,而语言模型神经网络120的参数保持固定。
下文将参考图2更详细地描述图像编码器神经网络110的此训练。
在训练之后,为了执行多模态任务,系统100获得包括输入图像104的输入102,并且使用图像编码器神经网络110处理输入图像104。
如上文所描述,图像编码器神经网络110已经被训练以处理输入图像104来生成表征输入图像104的图像嵌入向量112的图像序列。
如果输入102还包括一个或多个其它输入图像,则系统100还使用图像编码器神经网络110处理每个其它输入图像,以生成每个其它输入图像的图像嵌入向量的相应序列。
系统100然后生成包括图像嵌入向量112的图像序列的输入嵌入向量114的输入序列。
具体来说,取决于系统100正执行的多模态任务,输入序列可以仅包括图像嵌入向量112的图像序列,或可以包括(i)各自表示相应文本序列的文本嵌入向量的一个或多个序列,(ii)各自表征另一输入图像的图像嵌入向量的一个或多个其它序列,或(iii)两者。也就是说,每个输入嵌入向量114具有与图像嵌入向量112相同的维度,但是,对于一些任务,嵌入向量114除了图像嵌入向量112之外还包括其它文本或图像嵌入。
也就是说,即使当图像编码器神经网络110仅针对单个多模态任务被训练时,系统100也可以在训练之后通过适当地生成输入序列来执行多个不同的多模态任务。
系统100使用经训练的语言模型神经网络120处理包括图像嵌入向量112的图像序列的输入嵌入向量114的输入序列,以生成文本标记154的输出序列作为网络输出152的至少一部分,所述文本标记154的输出序列表示对输入嵌入向量114的输入序列的文本响应。
具体来说,如上所述,输出序列中的每个文本标记154从文本标记词汇表中选择,并且经训练的语言模型神经网络120已经被训练以在文本嵌入向量的训练输入序列上执行语言建模任务,所述文本嵌入向量的训练输入序列表示来自文本标记词汇表的文本标记。为了系统100可以有效地使语言模型120以输入图像104的表示为条件,图像嵌入向量112的图像序列中的每个图像嵌入向量112具有与表示来自文本标记词汇表的文本标记的文本嵌入向量相同的维度。
因此,即使语言模型神经网络110仅在文本输入序列上被训练,在推断时,系统100也使用语言模型神经网络110有效地执行多模态任务。
图2示出图像编码器神经网络110的训练。
如上所述,在语言模型神经网络120在语言建模任务上被预训练之后,图像编码器神经网络110在多模态任务上被训练。
多模态任务的训练数据包括多个训练示例,其中每个训练示例包括(i)用于包括一个或多个图像的任务的训练输入,以及(ii)训练输入的基本事实文本,例如,应通过对训练输入执行多模态任务而生成的文本。
例如,多模态任务可以是需要为输入图像生成文本字幕的图像字幕任务,每个训练输入可以包括单个图像,并且训练输入的基本事实文本可以是单个图像的基本事实文本字幕(的至少一部分)。
具体来说,多模态任务需要通过使用经训练的语言模型神经网络120处理训练输入204来生成包括多个文本标记的训练输出文本序列,所述训练输入204包括由图像编码器神经网络110从训练图像202生成的训练图像嵌入向量206的序列。当多模态任务是图像字幕任务时,训练输出序列是训练图像202的文本字幕(的至少一部分)。
为了在多模态任务上训练图像编码器神经网络110,系统通过经训练的语言模型神经网络120相对于图像编码器神经网络110的参数来反向传播多模态任务的损失函数的梯度。图像编码器神经网络110的参数包括图像编码器神经网络110的层的权重以及在一些情况下的偏差,例如网络110中的任何卷积层的核、网络110中任何全连接层的权重矩阵等等。
具体来说,在多次训练迭代中的每一次迭代,系统可以对训练数据的训练示例进行采样,并且使用采样的训练示例,例如通过经由经训练的语言模型神经网络120的反向传播,来计算多模态任务的损失函数相对于图像编码器神经网络110的参数的梯度。然后,系统可以通过将优化器应用于计算的梯度以生成更新,然后将更新添加到当前参数值或从当前参数值中减去更新来更新图像编码器神经网络110的参数。
作为特定示例,多模态任务的损失函数可以通过在由经训练的语言模型神经网络120作为处理训练输入的结果生成的文本标记词汇表中的文本标记上的分数分布来测量指派给多模态任务的基本事实文本输出中的文本标记的相应可能性。
例如,当语言模型神经网络120是如上所述的自回归神经网络时,损失函数可以是负对数似然损失,对于给定训练输入的基本事实文本输出中的每个特定标记,所述负对数似然损失通过由神经网络120通过处理输入序列生成的分数分布来测量指派给特定标记的概率的负对数,所述输入序列包括(i)给定训练输入和(ii)在基本事实文本输出中的特定标记之前的任何标记的嵌入。
图2示出图像编码器神经网络(“视觉编码器”)110在用于图像字幕任务的训练输入上的训练的示例,所述训练输入包括(i)训练图像202和(ii)训练图像202的字幕的初始部分204。
如图2中所示,系统利用(i)接收文本标记并且生成每个文本标记的相应嵌入的文本嵌入器210,以及(ii)语言模型神经网络120,在图2的示例中,所述语言模型神经网络是基于变换器的神经网络,例如包括应用(因果掩蔽)自注意力的一个或多个自注意力层集的神经网络,如上文所描述并且在下文中更详细地描述。
在图2的示例中,训练图像202是红船的图像,字幕的初始部分204是“(A smallred boat)一艘小红船”,并且任务需要神经网络120生成完成字幕的输出,例如生成完成206“(on the water)在水上”。
如图2中所示,系统使用图像编码器110处理训练图像202,以生成包括两个图像嵌入222的图像嵌入序列。
然后,系统处理训练输入序列以评估损失函数,所述训练输入序列包括嵌入222和224,之后是初始部分204的文本嵌入,所述损失函数是例如完成206中的每个标记的相应损失,例如标记“on”232、标记“the”234和标记“water”236的相应损失的组合,例如其总和。
给定标记的损失可以是例如通过由神经网络120通过处理输入序列生成的分数分布指派到给定标记的概率的负对数,所述输入序列包括(ii)给定训练输入和(ii)在基本事实文本输出中的给定标记之前的任何标记的嵌入。
然后,系统通过语言模型神经网络120反向传播损失,同时保持语言模型神经网络120(和文本嵌入器210)冻结以计算关于图像嵌入222和224中的每一个的相应梯度。然后,系统可以通过图像编码器神经网络110反向传播梯度,以确定相对于神经网络110的参数的梯度。
因此,如图2中所示,在图像编码器神经网络110在多模态任务的损失函数上的训练期间,不训练经训练的语言模型神经网络120(也不训练文本嵌入器210),并且在不调整语言模型神经网络120的参数的情况下,系统通过经训练的语言模型神经网络120将损失函数的梯度反向传播并且反向传播到图像编码器神经网络110中。
虽然图2的示例示出对单个训练示例的处理,但是在实践中,系统可以在给定训练步骤并行处理多个训练示例,并且为训练步骤计算的总梯度可以是每个训练示例的相应梯度的总和。
如上所述,虽然标记在图2中示为单词,但是标记可以是任何适当的文本标记,例如单词、词段、标点符号等。例如,系统可以通过应用标记器(例如,SentencePiece标记器或另一标记器)将给定的单词序列标记化,以将序列划分为来自词汇表的标记。
图3是用于执行多模态任务的示例性过程300的流程图。为了方便起见,过程300将被描述为由位于一个或多个位置中的一个或多个计算机的系统执行。例如,根据本说明书适当地编程的多模态系统(例如,图1中描绘的多模态系统100)可以执行过程300。
系统获得输入图像(步骤302)。
系统使用图像编码器神经网络处理输入图像,所述图像编码器神经网络已经被训练以处理输入图像来生成表征输入图像的图像嵌入向量的图像序列(步骤304)。
系统生成包括图像嵌入向量的图像序列的输入嵌入向量的输入序列(步骤306)。
系统生成输入序列的方式取决于系统正执行的多模态任务。
通常,对于至少一些任务,除了图像嵌入向量的图像序列之外,输入序列还可以包括文本嵌入向量的一个或多个“提示”序列。文本嵌入向量的提示序列表示文本序列,所述文本序列描述应由文本响应通过输出序列执行的任务,例如向语言模型神经网络提供关于应使用图像嵌入向量执行的任务的信息。
例如,对于图像字幕任务或对单个图像操作的其它多模态任务,输入序列可以包括(i)仅图像嵌入向量的图像序列,或(ii)图像嵌入向量的图像序列,之后或之前是表示文本序列的文本嵌入向量的“提示”序列,所述文本序列描述应由输出序列所表示的文本响应执行的任务。在图像字幕任务的示例中,提示序列可以表示例如“Caption this(对此加字幕)”或“Caption:(字幕:)”。
作为另一示例,对于图像字幕完成任务、视觉问答任务,或对单个图像和与图像相关的文本操作的其它多模态任务,输入序列可以包括(i)仅图像嵌入向量的图像序列以及与图像相关的文本序列的文本嵌入,或(ii)图像嵌入向量的图像序列以及与图像相关的文本序列的文本嵌入,之后、之前,或之前和之后是表示文本序列的文本嵌入向量的一个或多个“提示”序列,所述文本序列描述应由输出序列所表示的文本响应执行的任务。在视觉问答任务的示例中,文本嵌入之前可以是表示“Q:”或“Question(问题)”的第一提示序列,并且之后可以是表示例如“A:”或“Answer:(回答)”的第二提示序列。
下文参考图4到6描述其它多模态任务和用于这些任务的输入序列的示例。
系统使用经训练的语言模型神经网络处理输入嵌入向量的输入序列,以生成表示对输入嵌入向量的输入序列的文本响应的文本标记的输出序列作为输出(步骤308)。
图4示出用于执行视觉问答任务的图像编码器神经网络110和语言模型神经网络120的示例。
在视觉问答任务中,输入嵌入向量的输入序列包括输入图像的图像嵌入向量的图像序列和表示关于输入图像的问题的文本嵌入向量的序列,并且文本标记的输出序列表示关于输入图像的问题的预测文本答案。
在图4的示例中,系统接收汽车的图像和关于图像的问题(“what colour is thecar?(汽车是什么颜色?)”)。然后,系统生成输入序列,所述输入序列包括所接收图像的图像嵌入向量的图像序列以及表示关于输入图像的问题的文本嵌入向量的序列。在图4的示例中,输入序列还包括两个提示序列,所述提示序列向神经网络120提供关于正执行的任务的信息,例如使得文本嵌入向量的整个序列包括文本“Question:What colour is thecar?Answer:(问题:汽车是什么颜色?答案:)”的嵌入。
然后,系统处理输入序列以生成文本标记的输出序列,所述文本标记的输出序列表示关于输入图像的问题的预测文本答案(“Blue(蓝色)”)。在图4的示例中,输出序列还包括可以在将输出提供给用户之前移除的指定序列结束(“EOS”)标记。
图5示出用于执行k发式外部知识视觉问答任务的图像编码器神经网络110和语言模型神经网络120的示例。在图5的示例中,k等于一,但是更一般地,k可以等于任何正整数,例如大于或等于一的任何整数。
在此任务中,除了输入图像的嵌入之外,输入嵌入向量的输入序列(i)包括各自表征相应的额外输入图像的图像嵌入向量的k个其它序列,以及(ii)对于图像嵌入向量的每个其它序列,包括文本嵌入向量的相应序列,其表示当询问关于由图像嵌入向量的其他序列表征的额外图像时对问题的答案。
在图5的示例中,输入序列包括飞机图像的嵌入,以及表示关于图像的问题和答案的文本输入的嵌入,例如“Q:Who invented this?A:The Wright brothers.(Q:谁发明了这个?A:莱特兄弟。)”。输入序列还包括输入图像,例如移动电话的图像,以及表示关于输入图像的问题的文本序列“Q:Who invented this?A:(Q:谁发明了这个?A:)”。
系统处理输入序列以生成文本标记的输出序列,所述文本标记的输出序列表示当询问关于输入图像时对问题的预测答案。在图5的示例中,答案是“Steve Jobs.(史蒂夫·乔布斯。)”。
在图5的示例中,输出序列还包括可以在将输出提供给用户之前移除的指定序列结束(“EOS”)标记。
或者,系统可以将上下文文本序列设置为陈述句,而不是将任务设置为问题和答案,例如“This was invented by the Wright brothers(这是莱特兄弟发明的)”,并且表示问题的文本序列可以设置为需要通过神经网络输出完成的不完整陈述句,例如“Thiswas invented by(这是由……发明的)”。
图5中的任务称为“外部知识”任务,因为问题的答案没有在图像中描绘,因此任务需要语言模型神经网络120使用作为预训练的结果编码的信息来确定正确答案。
图6示出用于执行k发式图像分类任务的图像编码器神经网络110和语言模型神经网络120的示例。在图6的示例中,k等于二,但是更一般地,k可以等于任何正整数,例如大于或等于一的任何整数。
在此任务中,除了输入图像的嵌入之外,输入嵌入向量的输入序列(i)还包括各自表征相应的额外输入图像的图像嵌入向量的k个其它序列,以及(ii)对于图像嵌入向量的每个其它序列,还包括表示其它图像的文本分类(“文本标注”)的文本嵌入向量的相应序列。
在图6的示例中,输入序列包括第一水果的第一图像的嵌入和所述第一图像的标注(“This is a dax.(这是dax。)”)的嵌入以及第二水果的第二图像的嵌入和所述第二图像的标注(“This is a blicket.(这是blicket。)”)的嵌入。输入序列还包括输入图像,例如第三水果的图像,以及分类任务的提示文本序列:“Question:What is this?Answer:(问题:这是什么?答案:)”。
系统处理输入序列以生成文本标记的输出序列,所述文本标记的输出序列表示输入图像的预测分类。在图5的示例中,答案是“This is adax.(这是dax。)”
在图6的示例中,输出序列还包括可以在将输出提供给用户之前移除的指定序列结束(“EOS”)标记。
更一般地,可以将在图6的示例中的分类任务框定为提供关于一个或多个额外图像的特定类型信息并且要求神经网络提供关于输入图像的相同类型的信息的任务。
也就是说,对于这些类型的任务,输入嵌入向量的输入序列(i)包括各自表征相应的额外输入图像的图像嵌入向量的一个或多个其它序列,(ii)对于图像嵌入向量的每个其它序列,包括文本嵌入向量的相应序列,其提供关于由图像嵌入向量的其它序列表征的额外图像的特定类型信息,以及(iii)对于图像嵌入向量的图像序列,包括文本嵌入的部分序列,其表示提供关于输入图像的特定类型信息的文本提示。然后,输出序列表示文本提示的预测完成,所述文本提示提供关于输入图像的特定类型信息。
虽然图4到6示出多模式任务的示例,但是这些仅仅是系统可以执行的各种类型的少发式或零发式多模态任务的示例,而不需要在这些类型的任务的训练数据上重新训练图像编码器或语言模型神经网络。
图1的多模态系统100具有多个技术应用。例如,输入102的图像104可以是由相机捕获的真实世界的图像,并且文本数据154可以是描述真实世界的文本。具体来说,文本154可以回答由包括在输入102中的文本提出的关于真实世界的问题。因此,多模态系统100的一个技术应用将由视力受损的用户使用以获得关于图像104的信息。例如,多模态系统100可以是获得图像104(例如,使用计算机系统的相机)的计算机系统的一部分。用户可以提供输入102的文本(例如,通过控制数据输入装置,或通过说出由计算机系统转换成文本的命令,例如,表示音素的一串字母或标记)。多模态系统100然后可以生成输出文本154,例如作为一串标记,所述输出文本被转换成由扬声器装置广播到用户的声音信号。此计算机系统的有用特征是其灵活性,因为用户可以自由地定义查询处理系统应从图像104中提取的信息。
可选地,计算机系统可以被配置成允许用户生成一系列多个输入102,每个输入包括相同图像104,但是具有不同的相应文本。例如,第一输入102的文本可以是“What isshown in the picture?(图片中显示了什么?)”。如果查询处理系统响应于第一输入102而生成对应输出文本154(例如,“A bus(公共汽车)”),则人可能够定义包括相同图像104并具有新文本的第二输入102(例如“What destination is on the front of the bus?(公共汽车前面的目的地是什么?)”)。
可选地,除了系列中的第一输入102之外,一系列输入102中的每个输入102可以包括来自系列中的一个或多个先前输入102的输入文本和输出文本154。以此方式,人可以与多模态系统100进行关于图像104(通常包括在系列中的所有输入102中)的连贯讨论,其中在每个阶段,多模态系统100生成输出文本154,所述输出文本是讨论的较早部分的合理延续。
多模态系统100的另一技术应用是用于图像104的字幕系统。输入102的文本可以定义图像处理任务,例如“provide a caption explaining what is happening(提供解释正在发生的事情的字幕)”,并且在这种情况下,输出文本154可以包括描述图像104中描绘的事件或动作的字幕。
在另一技术应用中,图像104包括文本,并且计算机系统可以包括OCR(光学字符识别)系统,以用于从图像104提取文本以生成在输入102中某些文本的至少一部分。例如,如果图像104是包括带有指令的标志的场景的图像(例如,图像可以是包括含有文本的路标的道路图像),则OCR可以基于图像中的指令生成输入102的文本。在这种情况下,给定场景的其余部分,输出文本154可以指示指令的重要性(例如,在图像104的情况下,所述图像是空的停车位和指示当前允许停车的标志的图像,输出文本154可以是“Please park here(请在此停车)”)。
在另一技术应用中,输入102可以指示多模态系统100生成可由计算机系统的处理器执行的代码作为输出文本154。例如,输入102可以包括读取“生成HTML代码,所述代码在被执行时生成图像中所示对象的视频图像”的文本。
如上所述,自注意力层是包括注意力机制的神经网络层,所述注意力机制对自注意力层输入(或从层输入导出的输入)进行操作以生成自注意力层输出。自注意力机制可以被因果屏蔽,使得输入序列中的任何给定位置不关注输入序列中的给定位置之后的任何位置(例如,使用来自给定位置之后的任何位置的数据)。存在许多不同的可能注意力机制。包括注意力机制的自注意力层的一些示例在以下项中描述:Vaswani等人的“Attention isall you need(无可或缺的注意力)”,第31届神经信息处理系统会议(NIPS2017),美国加利福尼亚州长滩;Colin Raffel、Noam Shazeer、Adam Roberts、Katherine Lee、SharanNarang、Michael Matena、Yanqi Zhou、Wei Li和Peter J Liu的“Exploring the limitsof transfer learning with a unified text-to-text transformer(用统一的文本到文本变换器探索迁移学习的局限性)”,arXiv预印本arXiv:1910.10683,2019;DanielAdiwardana、Minh-Thang Luong、David R.So、Jamie Hall、Noah Fiedel、RomalThoppilan、Zi Yang、Apoorv Kulshreshtha、Gaurav Nemade、Yifeng Lu和Quoc V.Le的“Towards a human-like open-domain chatbot(走向类似人类的开放域聊天机器人)”,CoRR,abs/2001.09977,2020;以及Tom B Brown、Benjamin Mann、Nick Ryder、MelanieSubbiah、Jared Kaplan,Prafulla Dhariwal、Arvind Neelakantan、Pranav Shyam、GirishSastry、Amanda Askell等人的“Language models are few-shot learners(语言模型是少发式学习器)”,arXiv预印本arXiv:2005.14165,2020。
通常,注意力机制将查询和键值对集映射到输出,其中查询、键和值都是向量。将输出计算为值的加权和,其中指派给每个值的权重由查询与对应键的兼容性函数(例如点积或缩放点积)计算。
一般来说,自注意力机制被配置成关联同一序列中的不同位置,以确定序列的变换版本作为输出。例如,注意力层输入可以包括用于输入序列的每个元素的向量。这些向量将输入提供到自注意力机制,并且由自注意力机制用于确定用于注意力层输出的相同序列的新表示,所述表示类似地包括用于输入序列的每个元素的向量。自注意力机制的输出可以用作注意力层输出,或它可以由前馈层、跳过连接或归一化操作中的一个或多个处理以提供注意力层输出。
在一些实施方案中,自注意力机制被配置成将例如由矩阵WQ定义的查询变换、例如由矩阵WK定义的键变换和例如由矩阵WV定义的值变换应用于作为注意力层的输入数据X的注意力层输入,以导出查询矩阵Q=XWQ,所述查询矩阵包括输入序列中的每个向量的相应查询;键矩阵K=XWK,所述键矩阵包括输入序列中的每个向量的相应键;以及值矩阵V=XWV,所述值矩阵包括输入序列中的每个向量的相应值,这些矩阵用于确定输出的关注序列。例如,注意力机制可以是通过将每个查询向量应用于每个键向量以确定每个值向量的相应权重,然后使用相应权重组合值向量以确定输入序列的每个元素的自注意力层输出而应用的点积注意力机制。自注意力层输出可以通过缩放因子缩放,例如通过查询和键的维度的平方根缩放,以实现缩放的点积注意力。因此,例如,注意力机制的输出可以确定为其中d是键(和值)向量的维度。在另一实施方案中,注意力机制包括使用具有隐藏层的前馈网络来计算兼容性函数的“加性注意力”机制。注意力机制的输出可以进一步由一个或多个全连接的前馈神经网络层处理。
注意力机制可以实施多头注意力,也就是说,注意力机制可以并行应用多个不同的注意力机制。然后,如果需要,可以将这些的输出与应用的学习线性变换组合,例如连接,以减少到原始维度。
本说明书结合系统和计算机程序组件使用术语“配置”。对于一个或多个计算机的系统,配置成执行特定操作或动作意味着系统已经在其上安装软件、固件、硬件或它们的组合,这些在操作中使所述系统执行操作或动作。对于一个或多个计算机程序,配置成执行特定操作或动作意味着一个或多个程序包括当由数据处理设备执行时使设备执行操作或动作的指令。
本说明书中描述的主题和功能操作的实施例可以在数字电子电路系统、在有形地实施的计算机软件或固件、在计算机硬件,包括本说明书中所公开的结构以及其结构等效物,或在其中的一者或多者的组合中实施。本说明书中描述的主题的实施例可以实施为一个或多个计算机程序,例如,在有形的非暂时性存储介质上编码以供数据处理设备执行或控制数据处理设备的操作的计算机程序指令的一个或多个模块。计算机存储介质可以是机器可读存储装置、机器可读存储衬底、随机或串行存取存储器装置,或其中的一者或多者的组合。替代地或另外,程序指令可以在例如机器产生的电信号、光信号或电磁信号等人为产生的传播信号上编码,产生所述人为产生的传播信号以对传输到合适接收器设备以供数据处理设备执行的信息进行编码。
术语“数据处理设备”指代数据处理硬件并且涵盖用于处理数据的所有种类的设备、装置和机器,包括例如可编程处理器、计算机,或多个处理器或计算机。设备还可以是或可以进一步包括专用逻辑电路系统,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,设备还可以可选地包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统,或其中的一者或多者的组合的代码。
也可以称为或描述为程序、软件、软件应用、app、模块、软件模块、脚本或代码的计算机程序可以用任何形式的编程语言编写,包括编译或解释性语言,或声明性或程序性语言;并且它可以以任何形式进行部署,包括作为独立程序或作为模块、组件、子例程或适用于计算环境的其它单元进行部署。程序可以(但不需要)对应于文件系统中的文件。程序可以存储在文件的一部分中,所述文件将其它程序或数据(例如,存储在标记语言文档中的一个或多个脚本)保存在专用于所讨论的程序的单个文件中,或多个协调文件(例如,存储一个或多个模块、子程序或代码的部分的文件)中。计算机程序可以被部署为在一个计算机上或在多个计算机上执行,所述多个计算机位于一个位置处或跨越多个位置分布并且通过数据通信网络互连。
在本说明书中,术语“数据库”广泛地用于指代任何数据集合:数据不需要以任何特定方式进行结构化或根本不需要结构化,并且数据可以在一个或多个位置中存储在存储装置上。因此,例如,索引数据库可以包括多个数据集合,每个数据集合可以被不同地组织和访问。
类似地,在本说明书中,术语“引擎”广泛地用于指代编程为执行一个或多个特定功能的基于软件的系统、子系统或过程。通常,引擎将被实施为在一个或多个位置中安装在一个或多个计算机上的一个或多个软件模块或组件。在一些情况下,一个或多个计算机将专用于特定引擎;在其它情况下,多个引擎可以安装在相同的一个或多个计算机上并在相同的一个或多个计算机上运行。
本说明书中描述的过程和逻辑流可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过在输入数据上操作并且产生输出来执行功能。所述过程和逻辑流程还可以通过专用逻辑电路系统(例如,FPGA或ASIC)或者通过专用逻辑电路系统和一个或多个编程计算机的组合来执行。
适合于执行计算机程序的计算机可以基于通用或专用微处理器或两者,或者基于任何其它种类的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行或实施指令的中央处理单元,以及用于存储指令和数据的一个或多个存储器装置。中央处理单元和存储器可以由专用逻辑电路系统补充或并入专用逻辑电路系统中。通常,计算机还将包括用于存储数据的一个或多个大容量存储装置(例如,磁盘、磁光盘或光盘),或可操作地耦合以从所述一个或多个大容量存储装置接收数据或将数据传递到所述一个或多个大容量存储装置,或这两者。然而,计算机不需要具有此类装置。此外,计算机可以嵌入另一装置中,例如,仅举几例,移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器、或便携式存储装置(例如,通用串行总线(USB)闪存驱动器)。
适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器装置,包括例如,半导体存储器装置,例如,EPROM、EEPROM和闪存存储器装置;磁盘,例如,内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM磁盘。
为了提供与用户的交互,本说明书中描述的主题的实施例可以在具有显示装置,例如,CRT(阴极射线管)或LCD(液晶显示器)监视器的计算机上实施,以将信息显示给用户以及键盘和指向装置,例如,鼠标或轨迹球,用户可以通过所述键盘和指向装置将输入提供到计算机。其它种类的装置也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如,视觉反馈、听觉反馈或触觉反馈;以及从用户产生的输入可以用任何形式接收,包括声音、语音或触觉输入。另外,计算机可以通过将文档发送到用户使用的装置以及从所述装置接收文档;例如,通过响应于从网络浏览器接收的请求而将网页发送到用户的装置上的网络浏览器来与用户交互。此外,计算机可以通过将文本消息或其它形式的消息发送到个人装置(例如,运行消息传递应用的智能手机),并进而从用户接收响应消息来与用户交互。
用于实施机器学习模型的数据处理设备还可以包括例如专用硬件加速器单元,以用于处理机器学习训练或生产(即推理)工作负载的通用和计算密集型部分。
机器学习模型可以使用机器学习框架,例如TensorFlow框架来实施和部署。
本说明书中描述的主题的实施例可以在计算系统中实施,所述计算系统包括后端组件,例如作为数据服务器,或包括中间件组件,例如应用服务器,或包括前端组件,例如具有图形用户界面、网络浏览器或app的客户端计算机,用户可以通过所述图形用户界面、网络浏览器或app与本说明书中描述的主题的实施方案交互,或包括一个或多个此后端、中间件或前端组件的任何组合。系统的组件可以通过数字数据通信的任何形式或介质(例如通信网络)互连。通信网络的实例包括局域网(LAN)和广域网(WAN),例如因特网。
计算系统可以包括客户端和服务器。客户端和服务器通常远离彼此并且通常通过通信网络交互。客户端和服务器的关系借助于在相应计算机上运行以及彼此具有客户端-服务器关系的计算机程序产生。在一些实施例中,例如出于将数据显示给与用作客户端的装置交互的用户以及从所述用户接收用户输入的目的,服务器将数据(例如,HTML页)传输到用户装置。可以在服务器从装置接收在用户装置处(例如,由于用户交互)产生的数据。
尽管本说明书含有许多特定实施方案细节,但是这些细节不应解释为限制任何发明的范围或可以主张的内容的范围,而是对可能特定于特定发明的特定实施例的特征的描述。本说明书中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各个特征也可以单独地在多个实施例中或在任何合适的子组合中实施。此外,尽管特征可以在上文描述为在某些组合中起作用且甚至初始地如此主张,但是来自所主张组合的一个或多个特征在一些情况下可以从所述组合中删除,并且所主张组合可以针对子组合或子组合的变体。
类似地,尽管在附图中以特定次序描绘操作并且在权利要求中以特定次序叙述操作,但是这不应理解为需要按所示的特定次序或按顺序执行此类操作,或执行所有所说明的操作以实现所需要的结果。在某些情况下,多任务和并行处理可以是有利的。此外,上述实施例中的各个系统模块和组件的分离不应理解为在所有实施例中需要此种分离,并且应理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中或封装成多个软件产品。
已描述主题的特定实施例。其它实施例在所附权利要求书的范围内。例如,权利要求书中叙述的动作可以按不同次序执行并且仍实现所需要的结果。作为另一实例,附图中描绘的过程不一定需要所示的特定次序或连续次序来实现期望的结果。在一些情况下,多任务和并行处理可以是有利的。

Claims (20)

1.一种由一个或多个计算机执行的方法,所述方法包括:
获得输入图像;
使用图像编码器神经网络处理所述输入图像,所述图像编码器神经网络已被训练以处理所述输入图像来生成表征所述输入图像的图像嵌入向量的图像序列;
生成包括所述图像嵌入向量的图像序列的输入嵌入向量的输入序列;以及
使用经训练的语言模型神经网络处理包括所述图像嵌入向量的图像序列的所述输入嵌入向量的输入序列,以生成文本标记的输出序列作为输出,所述文本标记的输出序列表示对所述输入嵌入向量的输入序列的文本响应,其中:
所述输出序列中的每个文本标记从文本标记词汇表中选择,
所述经训练的语言模型神经网络已被训练以对文本嵌入向量的训练输入序列执行语言建模任务,所述文本嵌入向量的训练输入序列表示来自所述文本标记词汇表的文本标记,并且
所述图像嵌入向量的图像序列中的每个图像嵌入向量与表示来自所述文本标记词汇表的所述文本标记的所述文本嵌入向量具有相同维度。
2.根据权利要求1所述的方法,其中:
所述图像编码器神经网络已经通过以下方式被训练:通过所述经训练的语言模型神经网络相对于所述图像编码器神经网络的参数反向传播损失函数的梯度,并且
所述损失函数是多模态任务的损失函数,所述多模态任务需要通过使用所述经训练的语言模型神经网络处理训练输入来生成包括多个文本标记的训练输出文本序列,所述训练输入包括由所述图像编码器神经网络从训练图像生成的训练图像嵌入向量的序列。
3.根据权利要求2所述的方法,其中所述多模态任务是图像字幕任务,并且其中所述训练输出文本序列是所述训练图像的文本字幕的至少一部分。
4.根据权利要求2或权利要求3所述的方法,
其中所述经训练的语言模型神经网络不是在所述图像编码器神经网络在所述多模态任务的所述损失函数上的训练期间训练的,并且
其中所述图像编码器神经网络的所述训练包括在不调整所述语言模型神经网络的参数的情况下,通过所述经训练的语言模型神经网络反向传播所述损失函数的梯度并且反向传播到所述图像编码器神经网络中。
5.根据权利要求2至4中任一项所述的方法,其中所述损失函数通过在由所述经训练的语言模型神经网络作为处理所述训练输入的结果而生成的所述文本标记词汇表中的所述文本标记上的分数分布来测量指派给所述多模态任务的基本事实文本输出中的文本标记的相应可能性。
6.根据权利要求2至5中任一项所述的方法,其中在所述图像编码器神经网络在所述多模态任务的所述损失函数上的训练之前,所述经训练的语言模型神经网络已经在所述语言建模任务上被训练。
7.根据任一前述权利要求所述的方法,其中所述语言模型神经网络是自回归神经网络,所述自回归神经网络通过生成在以当前输入序列为条件的所述输出序列中的每个特定文本标记来自回归地生成所述文本标记的输出序列,所述当前输入序列包括(i)所述输入嵌入向量的输入序列,之后是在所述输出序列中的特定文本标记之前的任何文本标记的文本嵌入向量。
8.根据权利要求7所述的方法,其中所述经训练的语言模型神经网络是基于自回归变换器的神经网络,所述基于自回归变换器的神经网络包括多个层,每个层应用自注意力操作。
9.根据权利要求8所述的方法,其中所述经训练的语言模型神经网络被配置成在使用所述多个层处理所述输入序列之前将相对位置编码应用于所述输入序列。
10.根据任一前述权利要求所述的方法,其中所述图像编码器神经网络包括卷积神经网络。
11.根据权利要求10所述的方法,其中所述卷积神经网络被配置成处理所述输入图像以生成表征所述输入图像的输出张量,并且其中所述图像编码器神经网络被配置成将所述输出张量映射到所述图像嵌入向量的图像序列。
12.根据任一前述权利要求所述的方法,其中所述文本标记的输出序列表示所述输入图像的预测文本字幕的至少一部分。
13.根据权利要求1至12中任一项所述的方法,其中所述输入嵌入向量的输入序列还包括(i)各自表示相应文本序列的文本嵌入向量的一个或多个序列,(ii)各自表征另一输入图像的图像嵌入向量的一个或多个其它序列,或(iii)两者。
14.根据权利要求13所述的方法,其中所述输入嵌入向量的输入序列包括所述图像嵌入向量的图像序列和表示关于所述输入图像的问题的文本嵌入向量的序列,并且其中所述文本标记的输出序列表示对关于所述输入图像的所述问题的预测文本答案。
15.根据权利要求13所述的方法,其中所述输入嵌入向量的输入序列(i)包括图像嵌入向量的一个或多个其它序列,以及(ii)对于图像嵌入向量的每个其它序列,包括文本嵌入向量的相应序列,其表示由图像嵌入向量的该其它序列表征的其它图像的分类,并且其中所述文本标记的输出序列表示所述输入图像的预测分类。
16.根据权利要求13所述的方法,其中所述输入嵌入向量的输入序列(i)包括各自表征相应的额外输入图像的图像嵌入向量的一个或多个其它序列,以及(ii)对于图像嵌入向量的每个其它序列,包括文本嵌入向量的相应序列,其表示当询问关于由图像嵌入向量的所述其它序列表征的额外图像时对问题的答案,并且其中所述文本标记的输出序列表示当询问关于所述输入图像时对所述问题的预测答案。
17.根据权利要求13所述的方法,其中所述输入嵌入向量的输入序列(i)包括各自表征相应的额外输入图像的图像嵌入向量的一个或多个其它序列,(ii)对于图像嵌入向量的每个其它序列,包括文本嵌入向量的相应序列,其提供关于由图像嵌入向量的所述其它序列表征的所述额外图像的特定类型信息,以及(iii)对于所述图像嵌入向量的图像序列,包括文本嵌入的部分序列,其表示提供关于所述输入图像的所述特定类型信息的文本提示,并且其中所述文本标记的输出序列表示提供关于所述输入图像的所述特定类型信息的所述文本提示的预测完成。
18.根据权利要求13至17中任一项所述的方法,其中所述输入嵌入向量的输入序列包括表示文本序列的文本嵌入向量的第一序列,所述文本序列描述应由所述输出序列所表示的所述文本响应执行的任务。
19.一种系统,包括:
一个或多个计算机;以及
一个或多个存储装置,所述存储装置存储指令,所述指令在由所述一个或多个计算机执行时使所述一个或多个计算机执行根据权利要求1至18中任一项所述的相应操作。
20.一个或多个存储指令的计算机可读存储介质,所述指令在由一个或多个计算机执行时使所述一个或多个计算机执行根据权利要求1至18中任一项所述的方法的相应操作。
CN202280025638.3A 2021-06-08 2022-06-08 利用冻结语言模型的多模态少发式学习 Pending CN117121015A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GR20210100374 2021-06-08
GR20210100374 2021-06-08
PCT/EP2022/065502 WO2022258666A1 (en) 2021-06-08 2022-06-08 Multimodal few-shot learning with frozen language models

Publications (1)

Publication Number Publication Date
CN117121015A true CN117121015A (zh) 2023-11-24

Family

ID=82319915

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280025638.3A Pending CN117121015A (zh) 2021-06-08 2022-06-08 利用冻结语言模型的多模态少发式学习

Country Status (10)

Country Link
US (1) US20240282094A1 (zh)
EP (1) EP4302239A1 (zh)
JP (1) JP2024522328A (zh)
KR (1) KR20230152741A (zh)
CN (1) CN117121015A (zh)
AU (1) AU2022288746B2 (zh)
BR (1) BR112023020614A2 (zh)
CA (1) CA3214735A1 (zh)
IL (1) IL307517A (zh)
WO (1) WO2022258666A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116135797B (zh) * 2023-04-19 2023-07-04 江苏海峡环保科技发展有限公司 污水处理智能控制系统
CN116597384B (zh) * 2023-06-02 2024-03-05 中国人民解放军国防科技大学 基于小样本训练的空间目标识别方法、装置及计算机设备
CN116452895B (zh) * 2023-06-13 2023-10-20 中国科学技术大学 基于多模态对称增强的小样本图像分类方法、装置及介质
CN116977461B (zh) * 2023-06-30 2024-03-08 北京开普云信息科技有限公司 特定场景的人像生成方法、装置、存储介质及设备
CN117351331A (zh) * 2023-10-24 2024-01-05 北京云上曲率科技有限公司 一种为视觉大模型添加适配器的方法及装置

Also Published As

Publication number Publication date
AU2022288746A1 (en) 2023-09-28
IL307517A (en) 2023-12-01
EP4302239A1 (en) 2024-01-10
KR20230152741A (ko) 2023-11-03
US20240282094A1 (en) 2024-08-22
AU2022288746B2 (en) 2024-07-18
WO2022258666A1 (en) 2022-12-15
BR112023020614A2 (pt) 2023-12-19
CA3214735A1 (en) 2022-12-15
JP2024522328A (ja) 2024-06-18

Similar Documents

Publication Publication Date Title
CN117121015A (zh) 利用冻结语言模型的多模态少发式学习
CN118349673A (zh) 文本处理模型的训练方法、文本处理方法及装置
CN114090780B (zh) 一种基于提示学习的快速图片分类方法
CN111738169B (zh) 一种基于端对端网络模型的手写公式识别方法
CN113609965B (zh) 文字识别模型的训练方法及装置、存储介质、电子设备
CN111382231B (zh) 意图识别系统及方法
US11501168B2 (en) Learning longer-term dependencies in neural network using auxiliary losses
CN110795549B (zh) 短文本对话方法、装置、设备及存储介质
US20230034414A1 (en) Dialogue processing apparatus, learning apparatus, dialogue processing method, learning method and program
EP3563302A1 (en) Processing sequential data using recurrent neural networks
US20230351149A1 (en) Contrastive captioning neural networks
CN110990555A (zh) 端到端检索式对话方法与系统及计算机设备
CN114943960A (zh) 一种文本识别方法、系统、电子设备及存储介质
CN113283336A (zh) 一种文本识别方法与系统
US20240135610A1 (en) Image generation using a diffusion model
CN114626529B (zh) 一种自然语言推理微调方法、系统、装置及存储介质
JP2024532679A (ja) 自己回帰言語モデルニューラルネットワークを使用して出力系列を評価すること
Chowdhury et al. A cascaded long short-term memory (LSTM) driven generic visual question answering (VQA)
CN112132075A (zh) 图文内容处理方法及介质
CN118071881A (zh) 多模态图像编辑
CN113421551A (zh) 语音识别方法、装置、计算机可读介质及电子设备
CN116909435A (zh) 一种数据处理方法、装置、电子设备及存储介质
US20230108579A1 (en) Dynamic entity representations for sequence generation
CN114970666B (zh) 一种口语处理方法、装置、电子设备及存储介质
WO2023158881A1 (en) Computationally efficient distillation using generative neural networks

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination