CN109447259A - 多任务处理及多任务处理模型训练方法、装置和硬件装置 - Google Patents
多任务处理及多任务处理模型训练方法、装置和硬件装置 Download PDFInfo
- Publication number
- CN109447259A CN109447259A CN201811108040.2A CN201811108040A CN109447259A CN 109447259 A CN109447259 A CN 109447259A CN 201811108040 A CN201811108040 A CN 201811108040A CN 109447259 A CN109447259 A CN 109447259A
- Authority
- CN
- China
- Prior art keywords
- task
- model
- parameter
- data
- label
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本公开公开一种多任务处理及多任务处理模型训练方法、装置、硬件装置。其中,该多任务处理模型的训练方法包括获取多个样本数据;其中,所述样本数据包括输入数据和标签数据,所述标签数据包括多个任务中至少一个任务期望从所述输入数据中得到的真实结果;利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型;其中,所述多任务处理模型包括共享参数和任务参数,所述共享参数为所述多个任务共有的模型参数,所述任务参数为所述多个任务中每个任务各自独有的模型参数。本公开实施例能够避免针对同一训练样本进行重复计算的问题,提高了训练效率,节省了计算资源。
Description
技术领域
本公开涉及人工智能技术领域,特别是涉及一种多任务处理及多任务处理模型训练方法、装置、硬件装置。
背景技术
随着人工智能技术的发展,越来越多的应用领域大量使用人工智能模型执行任务处理。
由于现有技术中利用人工智能模型进行任务处理时,对于每个单独的任务需要单独训练一个模型。当有多个任务时,需要单独训练一个应用于该任务的模型,而在这多个任务的训练为同一个训练样本时,需要将同一个训练样本分别输入至多个任务对应的多个模型,进行多次计算。例如,任务1用于识别图片中的人脸,任务2用于识别图片中的猫,任务3用于识别图片中的汉字,在训练过程中,对于同一个图片需要分别输入至三个任务对应的三个模型进行处理计算,而事实上这三个任务对应的三个模型的底层计算都是相同的,在训练样本较多时,需要进行大量的重复计算。
因此,如何在训练多个任务处理模型时避免人工智能模型的大量重复计算成为了一些应用领域亟待解决的难题。
发明内容
根据本公开的一个方面,提供以下技术方案:
一种多任务处理模型的训练方法,包括:获取多个样本数据;其中,所述样本数据包括输入数据和标签数据,所述标签数据包括多个任务中至少一个任务期望从所述输入数据中得到的真实结果;利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型;其中,所述多任务处理模型包括共享参数和任务参数,所述共享参数为所述多个任务共有的模型参数,所述任务参数为所述多个任务中每个任务各自独有的模型参数。
进一步地,利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型,包括:将所述样本数据输入至所述人工神经网络模型,根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数。
进一步地,利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型,包括:利用第一样本数据集对所述人工神经网络模型进行首次训练,并在所述首次训练过程中根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数;利用第二样本数据集对首次训练后的所述人工神经网络模型进行再次训练,并在所述再次训练过程中根据所述人工神经网络模型的输出结果与所述标签数据更新所述任务参数。
进一步地,根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数,包括:在所述标签数据中仅包括一个标签时,根据所述输出结果与所述标签得到的损失值更新所述共享参数和所述多个任务对应的任务参数。
进一步地,根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数,包括:在所述标签数据包括多个标签时,根据所述输出结果与多个标签分别得到的累积损失值更新所述共享参数和所述多个任务对应的任务参数。
进一步地,根据所述人工神经网络模型的输出结果与所述标签数据更新所述任务参数,包括:在所述标签数据中包括一个第一标签时,保持所述共享参数不变的情况下,根据所述输出结果与所述第一标签得到的损失值更新第一任务参数;其中,所述第一任务参数为所述多个任务中所述第一标签对应的任务的任务参数。
进一步地,根据所述人工神经网络模型的输出结果与所述标签数据更新所述任务参数,包括:在所述标签数据中包括至少两个第二标签时,保持所述共享参数不变的情况下,根据所述输出结果与至少两个所述标签分别得到的损失值更新所述多个任务中至少两个第二任务对应的第二任务参数;其中,所述至少两个第二任务为所述至少两个第二标签分别对应的任务。
进一步地,所述共享参数为所述人工神经网络模型中底层的模型参数,而所述任务参数为所述人工神经网络模型中高层的模型参数。
根据本公开的另一个方面,还提供以下技术方案:
一种多任务处理方法,包括:获取待处理数据;利用上述多任务处理模型的训练方法训练得到的多任务处理模型对所述待处理数据进行处理,得到多个任务处理结果。
根据本公开的另一个方面,还提供以下技术方案:
一种多任务处理模型的训练装置,包括:第一获取模块,被配置为获取多个样本数据;其中,所述样本数据包括输入数据和标签数据,所述标签数据包括多个任务中至少一个任务期望从所述输入数据中得到的真实结果;训练模块,被配置为利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型;其中,所述多任务处理模型包括共享参数和任务参数,所述共享参数为所述多个任务共有的模型参数,所述任务参数为所述多个任务中每个任务各自独有的模型参数。
进一步地,所述训练模块包括:第一更新子模块,被配置为将所述样本数据输入至所述人工神经网络模型,根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数。
进一步地,所述训练模块包括:第二更新子模块,被配置为利用第一样本数据集对所述人工神经网络模型进行首次训练,并在所述首次训练过程中根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数;第三更新子模块,被配置为利用第二样本数据集对首次训练后的所述人工神经网络模型进行再次训练,并在所述再次训练过程中,根据所述人工神经网络模型的输出结果与所述标签数据更新所述任务参数。
进一步地,所述第一更新子模块或第二更新子模块,包括:第四更新子模块,被配置为在所述标签数据中仅包括一个标签时,根据所述输出结果与所述标签得到的损失值更新所述共享参数和所述多个任务对应的任务参数。
进一步地,所述第一更新子模块或第二更新子模块,包括:第五更新子子模块,被配置为在所述标签数据包括多个标签时,根据所述输出结果与多个标签分别得到的累积损失值更新所述共享参数和所述多个任务对应的任务参数。
进一步地,所述第三更新子模块包括:第六更新子模块,被配置为在所述标签数据中包括一个第一标签时,保持所述共享参数不变的情况下,根据所述输出结果与所述第一标签得到的损失值更新第一任务参数;其中,所述第一任务参数为所述多个任务中所述第一标签对应的任务的任务参数。
进一步地,所述第三更新子模块包括:第七更新子模块,被配置为在所述标签数据中包括至少两个第二标签时,保持所述共享参数不变的情况下,根据所述输出结果与至少两个所述标签分别得到的损失值更新所述多个任务中至少两个第二任务对应的第二任务参数;其中,所述至少两个第二任务为所述至少两个第二标签分别对应的任务。
进一步地,所述共享参数为所述人工神经网络模型中底层的模型参数,而所述任务参数为所述人工神经网络模型中高层的模型参数。
根据本公开的另一个方面,还提供以下技术方案:
一种多任务处理装置,包括:第二获取模块,被配置为获取待处理数据;处理模块,被配置为利用上述多任务处理模型的训练方法训练得到的多任务处理模型对所述待处理数据进行处理,得到多个任务处理结果。
根据本公开的又一个方面,还提供以下技术方案:
一种多任务处理模型训练的硬件装置,包括:存储器,用于存储非暂时性计算机可读指令;以及处理器,用于运行所述计算机可读指令,使得所述处理器执行时实现上述任一多任务处理模型的训练方法所述的步骤。
根据本公开的又一个方面,还提供以下技术方案:
一种多任务处理的硬件装置,包括:存储器,用于存储非暂时性计算机可读指令;以及处理器,用于运行所述计算机可读指令,使得所述处理器执行时实现上述多任务处理方法所述的步骤。
根据本公开的又一个方面,还提供以下技术方案:
一种计算机可读存储介质,用于存储非暂时性计算机可读指令,当所述非暂时性计算机可读指令由计算机执行时,使得所述计算机执行上述任一方法中所述的步骤。
本公开实施例提供一种多任务处理及多任务处理模型的训练方法、装置、硬件装置和计算机可读存储介质。其中,该任务处理模型的训练方法包括:获取多个样本数据;其中,所述样本数据包括输入数据和标签数据,所述标签数据包括多个任务中至少一个任务期望从所述输入数据中得到的真实结果;利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型;其中,所述多任务处理模型包括共享参数和任务参数,所述共享参数为所述多个任务共有的模型参数,所述任务参数为所述多个任务中每个任务各自独有的模型参数。本公开实施例通过对人工神经网络模型进行训练得到多任务处理模型,该多任务处理模型包括多个任务共享的共享参数和多个任务各自对应的任务参数,训练过程中可以同时对共享参数和/或多个任务对应的任务参数一起训练,还可以分别对任务参数进行再次训练。通过本公开实施例训练得到的多任务处理模型由于包括多个任务共享的共享参数,因此在多任务处理过程中可以节约计算量,提高任务处理速度。
上述说明仅是本公开技术方案的概述,为了能更清楚了解本公开的技术手段,而可依照说明书的内容予以实施,并且为让本公开的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
附图说明
图1为根据本公开一个实施例的多任务处理模型的训练方法的流程示意图;
图2为根据本公开一个实施例的人工神经网络模型的共享参数和任务参数的示意图;
图3为根据图1所示实施例中步骤S2的流程示意图;
图4为根据本公开一个实施例的多任务处理方法的流程示意图;
图5为根据本公开一个实施例的多任务处理模型的训练装置的结构示意图;
图6为根据本公开一个实施例的多任务处理装置的结构示意图;
图7为根据本公开一个实施例的多任务处理模型训练的硬件装置的结构示意图;
图8为根据本公开一个实施例的计算机可读存储介质的结构示意图;
图9为根据本公开一个实施例的多任务处理模型的训练终端的结构示意图。
具体实施方式
以下通过特定的具体实例说明本公开的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本公开的其他优点与功效。显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。本公开还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本公开的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本公开的基本构想,图式中仅显示与本公开中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
另外,在以下描述中,提供具体细节是为了便于透彻理解实例。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。
为了解决如何在训练多个任务处理模型时避免人工智能模型的大量重复计算的技术问题,本公开实施例提供一种多任务处理模型的训练方法。本实施例提供的该多任务处理模型的训练方法可以由一计算装置来执行,该计算装置可以实现为软件,或者实现为软件和硬件的组合,该计算装置可以集成设置在服务器、终端设备等中。如图1所示,该多任务处理模型的训练方法主要包括如下步骤S1至步骤S3。其中:
步骤S1:获取多个样本数据;其中,所述样本数据包括输入数据和标签数据,所述标签数据包括多个任务中至少一个任务期望从所述输入数据中得到的真实结果。
其中,样本数据是用于训练人工神经网络模型的,样本数据的具体类型可以根据多个任务的实际情况而定。例如对于图像识别任务来说,样本数据包括图像数据和图像数据的标签数据。标签数据可以是人工标注的,或者通过其他方式获得的。例如,对于识别人脸图像的任务,样本数据中的输入数据为图像,标签数据为该图像是否包含人脸的标注,如果该图像中包含人脸,则标签数据可以为是,如果该图像中不包含人脸,则标签数据可以为否。本公开实施例由于是针对多个任务进行的模型训练的,因此对于同一个输入数据可以包括其中一个任务对应的一个标签,也可以包括多个任务对应的多个标签。例如,待进行训练的任务1、任务2和任务3分别用于识别图像中的人脸、猫和汉字,那么针对一个输入图像X,标签数据可以包括三个标签{y1,y2,y3}中的一个或多个,其中y1表示输入图像X中是否包含人脸,y2表示输入图像X中是否包含猫,y3表示输入图像X中是否包含汉字。
本实施例中的多个任务可以是能够对于同一数据进行不同处理的任务,并且多个任务的处理结果之间可以互不影响。例如,本实施例中多个任务可以包括用于识别图像中人脸的第一任务、用于识别猫脸位置的第二任务、用于识别汉字的第三任务等。
步骤S2:利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型;其中,所述多任务处理模型包括共享参数和任务参数,所述共享参数为所述多个任务共有的模型参数,所述任务参数为所述多个任务中每个任务各自独有的模型参数。
其中,人工神经网络模型的模型参数分为两部分,一部分是共享参数,另一部分是任务参数。任务参数又分为多个部分,每部分对应多个任务中的其中一个,假如人工神经网络模型总共有M个模型参数θ1-θM,假如其中θ1-θM-N为共享参数,而其余N个模型参数θM-N+1-θM可以分为多个部分,每部分模型参数对应一个任务。多个任务分别根据输入数据获得不同的处理结果,例如多个图像识别任务分别用于识别输入图像中的人脸、猫和汉字等。需要说明的是不同任务对应的任务参数互不重合,是互相独立的。
假如神经网络模型包括N层,其中第1层到i层的模型参数为共享参数,而第i+1层到第N层的模型参数为n(其中n>1)个任务的任务参数,如果第i+1层到第N层的每层包括m个神经元的情况下,每层的m个神经元上的模型参数可以被分成多组(每组模型参数的数量可以相同也可以不同,具体根据实际情况而定),每组模型参数对应n个任务之一的任务参数。
图2示出了利用本公开实施例提出的方法中三个任务对应的任务处理模型的结构示意图。其中,任务处理模型为多层人工神经网络模型,输入层包括多个神经元,每个神经元用于接收输入数据中的一个元素,输入层之后是共享参数所在的第一部分隐层,第一部分隐层之后是任务1、任务2和任务3分别对应的任务参数所在的第二部分隐层和输出层,第一部分隐层和第二部分隐层均可以包括一个或多个隐层,具体根据人工神经网络模型的设计而定。从输入层至第一部分隐层的第一层、第一部分隐层中各个隐层之间的模型参数均是共享参数,而第一部分隐层至第二部分隐层、第二部分隐层中各个隐层之间的模型参数为任务参数。从图2上可以看出,不同任务的任务参数是独立的。
在选定了人工神经网络模型后,可以根据人工神经网络模型的训练算法对样本数据进行处理,并不断更新迭代共享参数和任务参数,最终在迭代次数达到一定数量,或者模型参数呈收敛状态时,可以停止任务处理模型的训练,进而得到训练好的多任务处理模型,也即优化好的多任务处理模型的共享参数和任务参数。
假如总共有三个任务,训练完成后得到的共享参数为M个参数θ1-θM,任务1对应的任务参数为n1个参数η1-ηn1,任务2对应的任务参数为n2个参数ζ1-ζn2,任务3对应的任务参数为n3个参数δ1-δn3,那么任务1对应的模型参数为{θ1-θM、η1-ηn1},任务2对应的模型参数为{θ1-θM、ζ1-ζn2},任务3对应的模型参数为{θ1-θM、δ1-δn3}。将三个任务的模型参数拼接在一起就得到了多任务处理模型的模型参数{θ1-θM、η1-ηn1、ζ1-ζn2、δ1-δn3}。
本公开实施例提出的多任务处理模型的训练方法中,通过对人工神经网络模型进行训练得到多任务处理模型,该多任务处理模型包括多个任务共享的共享参数和多个任务各自对应的任务参数,训练过程中可以同时对共享参数和/或多个任务对应的任务参数一起训练,还可以分别对任务参数进行再次训练。通过本公开实施例训练得到的多任务处理模型由于包括多个任务共享的共享参数,因此在多任务处理过程中可以节约计算量,提供任务处理速度。
在一个可选的实施例中,步骤S2即利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型,可以包括:
将所述样本数据输入至所述人工神经网络模型,根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数。
该可选的实施例中,通过将样本数据中的输入数据逐个输入至人工神经网络模型,人工神经网络模型在对输入数据处理后得到输出结果,并根据输出结果与标签数据更新共享参数和任务参数。人工神经网络模型对输入数据的处理过程实际上是根据人工神经网络模型算法对输入数据进行处理,而人工神经网络模型算法中涉及模型参数,人工神经网络模型的算法基于人工神经网络模型的类型不同而不同,属于已有技术,在此不再赘述。
训练开始时,可以人为初始化人工神经网络模型的模型参数,也即本实施例中的共享参数和任务参数,之后将样本数据输入至人工神经网络模型,也即将输入数据和模型参数代入人工神经网络的算法进行计算,最终得到一个输出结果,训练人工神经网络模型的目的是为了使得人工神经网络模型的输出结果与该输入数据对应的标签无限接近,初始训练时,由于模型参数是人为初始化得到的,输出结果与标签数据相差较大,因此每次得到输出结果后,可以将输出结果和标签数据代入预先设定好的损失函数(损失函数可以根据所选择的人工神经网络模型的类型不同而不同,属于现有技术,在此不再赘述)计算得到一个损失值,之后再利用损失值对模型参数进行更新,在利用大量的样本数据重复迭代上述过程后,最终会得到能够使得人工神经网络模型的输出结果与标签很接近的一组模型参数。
该可选的实施例中,可以根据样本数据中的输入数据对应的输出结果和标签数据同时更新共享参数和多个任务对应的任务参数。
在一个可选的实施例中,如图3所示,步骤S2即利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型,可以包括:
步骤S31:利用第一样本数据集对所述人工神经网络模型进行首次训练,并在所述首次训练过程中根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数;
步骤S32:利用第二样本数据集对首次训练后的所述人工神经网络模型进行再次训练,并在所述再次训练过程中,根据所述人工神经网络模型的输出结果与所述标签数据更新所述任务参数。
该可选的实现方式中,对于人工神经网络模型的训练可以分为两个阶段,第一阶段利用第一样本数据集对人工神经网络模型进行训练,也即将第一样本数据集中的样本数据逐个输入至人工神经网络模型,并根据人工神经网络模型的输出结果与样本数据中的标签数据同时更新共享参数和任务参数。由于使用同样的输入数据和标签数据对多个不同任务的任务参数一起更新可能会导致有些任务的准确率并不高,因此可以利用第二阶段对人工神经网络模型进行再训练,再训练过程中可以在第一阶段训练得到的模型参数基础上,固定共享参数不变,将第二样本数据集中的样本数据逐个输入至第一阶段训练得到的人工神经网络模型,并仅更新任务参数,使得多个任务中的一个或多个任务的任务参数得到更进一步的优化,使得训练得到的多任务处理模型的准确率进一步提高。第一样本数据集可以是针对多个任务收集得到的各个数据集的组合,第二样本数据集可以是针对需要进行精调的一个或多个任务收集得到的数据集的组合,也就是说第二样本数据集可以是第一样本数据集的一个子集。
在一个可选的实施例中,根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数,包括:
在所述标签数据中仅包括一个标签时,根据所述输出结果与所述标签得到的损失值更新所述共享参数和所述多个任务对应的任务参数。
该可选的实现方式中,一个样本数据的标签数据可以包括一个或多个任务对应的一个或多个标签,在训练过程中同时更新共享参数和任务参数的情况下,如果一个样本数据的标签数据仅包括多个任务中某一任务对应的标签时,可以根据输入数据被人工神经网络模型处理得到的输出结果与该标签得到的损失值同时调整共享参数和多个任务对应的任务参数。例如,样本数据的输入数据为图像,标签数据包括该图像中包括人脸图像的标签,则在训练时,将图像输入至人工神经网络模型中,通过人工神经网络模型的输出结果与表示包含有人脸的标签计算损失值,并根据该损失值更新共享参数和所有任务的任务参数。
在一个可选的实施例中,根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数,包括:
在所述标签数据包括多个标签时,根据所述输出结果与多个标签分别得到的累积损失值更新所述共享参数和所述多个任务对应的任务参数。
该可选的实施例中,样本数据的标签数据中包括多个标签,也即多个任务对应的标签时,可以根据人工神经网络模型的输出结果与每个标签分别计算损失值,之后再将这些损失值累积后更新共享参数和所有任务的任务参数。例如,样本数据中输入数据为图像,标签数据包括三个任务对应的标签,分别表示该图像中包括人脸、不包括猫、不包括汉字;在训练时,将图像输入至人工神经网络模型中,根据人工神经网络模型的输出结果与表示包含有人脸的标签计算得到第一损失值,根据输出结果和表示不包括猫的标签计算得到第二损失值,根据输出结果和表示不包括汉字的标签计算得到第三损失值,将第一损失值、第二损失值、第三损失值累加得到累积损失值,之后再根据累积损失值共同更新共享参数和三个任务对应的任务参数。
在一个可选的实施例中,根据所述人工神经网络模型的输出结果与所述标签数据更新所述任务参数,包括:
在所述标签数据中包括一个第一标签时,保持所述共享参数不变的情况下,根据所述输出结果与所述第一标签得到的损失值更新第一任务参数;其中,所述第一任务参数为所述多个任务中所述第一标签对应的第一任务的任务参数。
该可选的实施例中,在人工神经网络模型的第二训练阶段,以第一训练阶段得到的训练结果为基础,也即在第一训练阶段得到的共享参数和任务参数的基础上,保持共享参数固定不变的情况下,对于各个任务的任务参数进行再调整。在一实施例中,样本数据的标签数据中包括一个第一标签时,可以根据该第一标签以及人工神经网络模型的输出结果计算得到的损失值更新该第一标签对应的任务的任务参数,而不更新共享参数和其他任务的任务参数。该可选的实现方式中,不同的标签可以用来更新不同任务对应的任务参数。在实际应用时,可以在第一训练阶段中得到的任务参数效果不达标的情况下,有针对性的对于效果不达标的任务对应的任务参数进行再调整。通过这种方式,既可以节省训练阶段的计算量,又可以使得训练后所有任务对应的任务参数效果都能达到预定的目标。
在一个可选的实施例中,根据所述人工神经网络模型的输出结果与所述标签数据更新所述任务参数,,包括:
在所述标签数据中包括至少两个第二标签时,保持所述共享参数不变的情况下,根据所述输出结果与至少两个所述第二标签分别得到的损失值更新所述多个任务中至少两个第二任务对应的第二任务参数;其中,所述至少两个第二任务为所述至少两个第二标签分别对应的任务。
该可选的实现方式中,样本数据的标签数据可以包括至少两个第二标签,分别对应于多个任务中的至少两个第二任务。在第二训练阶段,可以根据每个第二标签和输出结果分别计算损失值,并根据分别计算得到的损失值分别更新第二任务的第二任务参数,不同任务的任务参数的更新相互独立,能够根据输入数据的一次计算同时更新多个任务的任务参数,进一步达到精调多个任务的任务参数的目的。
在一个可选的实施例中,所述共享参数为所述人工神经网络模型模型中底层的模型参数,而所述任务参数为所述人工神经网络模型模型中高层的模型参数。
该可选的实施例中,人工神经网络模型模型可以包括输入层、多个隐层和输出层,从输入层到隐层、隐层之间和隐层到输出层,每两层之间都有模型参数,上一层的输出与上一层的模型参数通过某种计算能够得到当前层的输入,当前层的输入与当前层的模型参数通过某种计算能够得到下一层的输入,以此类推,最终能够得到输出层的输出结果。可以将人工神经网络模型中的底层模型参数作为共享参数,而高层模型参数作为任务参数,例如可以将输入层至第i个隐层的模型参数作为共享参数,而第i+1个隐层至输出层的模型参数作为任务参数,0<i<N,N为人工神经网络模型中隐层的层数。
本公开实施例还提供一种多任务处理方法。本实施例提供的该任务处理方法可以由一计算装置来执行,该计算装置可以实现为软件,或者实现为软件和硬件的组合,该计算装置可以集成设置在服务器、终端设备等中。如图4所示,该任务处理方法主要包括如下步骤S41至步骤S42。其中:
步骤S41:获取待处理数据。
其中,待处理数据可以根据任务的不同而不同,例如可以是图像数据。本实施例利用前述实施例中的任务处理模型的训练方法得到的任务处理模型对待处理数据进行处理。待处理数据的类型与上述样本数据中的输入数据相同,而待处理数据与样本数据所不同的是仅仅包括输入数据,不包括标签数据,也就是说待处理数据是结果未知的数据,需要通过任务处理模型进行处理后输出结果。例如,多任务处理模型可以用于识别图像中的人脸、猫脸位置和汉字,那么待处理数据可以是任意的一张图片,将该图片的数据输入至多任务处理模型后,可以多任务处理模型识别出该张图片中是否包含人脸图像、猫脸图像的位置以及是否包含汉字。
步骤S42:利用前述多任务处理模型的训练方法训练得到的多任务处理模型对所述待处理数据进行处理,得到多个任务处理结果。
其中,前述多任务处理模型的训练方法中可以得到多任务处理模型,本实施例中可以根据该多任务处理模型对待处理数据进行处理,得到多个任务处理结果,也即针对同一个待处理数据,可以得到多个不同任务处理得到的多个结果。
本实施例中多任务处理模型中由于多个任务共享一部分参数,使得待处理数据输入至多任务处理模型进行多任务处理时,针对多个任务该部分共享参数相关的计算仅执行一次,相较于已有技术可以减少计算量,节省计算资源。
本实施例的具体细节可参见前述对任务处理模型的训练方法实施例的描述,在此不再赘述。
在上文中,虽然按照上述的顺序描述了上述方法实施例中的各个步骤,本领域技术人员应清楚,本公开实施例中的步骤并不必然按照上述顺序执行,其也可以倒序、并行、交叉等其他顺序执行,而且,在上述步骤的基础上,本领域技术人员也可以再加入其他步骤,这些明显变型或等同替换的方式也应包含在本公开的保护范围之内,在此不再赘述。
下面为本公开装置实施例,本公开装置实施例可用于执行本公开方法实施例实现的步骤,为了便于说明,仅示出了与本公开实施例相关的部分,具体技术细节未揭示的,请参照本公开方法实施例。
为了解决如何减少模型训练时计算量的技术问题,本公开实施例提供一种多任务处理模型的训练装置。该装置可以执行上述多任务处理模型的训练方法实施例中所述的步骤。如图5所示,该装置主要包括:第一获取模块51和训练模块52。其中,第一获取模块51被配置为获取多个样本数据;其中,所述样本数据包括输入数据和标签数据,所述标签数据包括多个任务中至少一个任务期望从所述输入数据中得到的真实结果;训练模块52被配置为利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型;其中,所述多任务处理模型包括共享参数和任务参数,所述共享参数为所述多个任务共有的模型参数,所述任务参数为所述多个任务中每个任务各自独有的模型参数。
样本数据是用于训练人工神经网络模型的,样本数据的具体类型可以根据多个任务的实际情况而定。例如对于图像识别任务来说,样本数据包括图像数据和图像数据的标签数据。标签数据可以是人工标注的,或者通过其他方式获得的。例如,对于识别人脸图像的任务,样本数据中的输入数据为图像,标签数据为该图像是否包含人脸的标注,如果该图像中包含人脸,则标签数据可以为是,如果该图像中不包含人脸,则标签数据可以为否。本公开实施例由于是针对多个任务进行的模型训练的,因此对于同一个输入数据可以包括其中一个任务对应的一个标签,也可以包括多个任务对应的多个标签。例如,待进行训练的任务1、任务2和任务3分别用于识别图像中的人脸、猫和汉字,那么针对一个输入图像X,标签数据可以包括三个标签{y1,y2,y3}中的一个或多个,其中y1表示输入图像X中是否包含人脸,y2表示输入图像X中是否包含猫,y3表示输入图像X中是否包含汉字。
本实施例中的多个任务可以是能够对于同一数据进行不同处理的任务,并且多个任务的处理结果之间可以互不影响。例如,本实施例中多个任务可以包括用于识别图像中人脸的第一任务、用于识别人脸位置的第二任务、用于识别汉字的第三任务等。
其中,人工神经网络模型的模型参数分为两部分,一部分是共享参数,另一部分是任务参数。任务参数又分为多个部分,每部分对应多个任务中的其中一个,假如人工神经网络模型总共有M个模型参数θ1-θM,假如其中θ1-θM-N为共享参数,而其余N个模型参数θM-N+1-θM可以分为多个部分,每部分模型参数对应一个任务。多个任务分别根据输入数据获得不同的处理结果,例如多个图像识别任务分别用于识别输入图像中的人脸、猫和汉字等。需要说明的是不同任务对应的任务参数互不重合,是互相独立的。
假如神经网络模型包括N层,其中第1层到i层的模型参数为共享参数,而第i+1层到第N层的模型参数为n(其中n>1)个任务的任务参数,如果第i+1层到第N层的每层包括m个神经元的情况下,每层的m个神经元上的模型参数可以被分成多组(每组模型参数的数量可以相同也可以不同,具体根据实际情况而定),每组模型参数对应n个任务之一的任务参数。
在选定了人工神经网络模型后,可以根据人工神经网络模型的训练算法对样本数据进行处理,并不断更新迭代共享参数和任务参数,最终在迭代次数达到一定数量,或者模型参数呈收敛状态时,可以停止任务处理模型的训练,进而得到训练好的多任务处理模型,也即优化好的多任务处理模型的共享参数和任务参数。
假如总共有三个任务,训练完成后得到的共享参数为M个参数θ1-θM,任务1对应的任务参数为n1个参数η1-ηn1,任务2对应的任务参数为n2个参数ζ1-ζn2,任务3对应的任务参数为n3个参数δ1-δn3,那么任务1对应的模型参数为{θ1-θM、η1-ηn1},任务2对应的模型参数为{θ1-θM、ζ1-ζn2},任务3对应的模型参数为{θ1-θM、δ1-δn3}。将三个任务的模型参数拼接在一起就得到了多任务处理模型的模型参数{θ1-θM、η1-ηn1、ζ1-ζn2、δ1-δn3}。
本公开实施例提出的多任务处理模型的训练装置中,通过对人工神经网络模型进行训练得到多任务处理模型,该多任务处理模型包括多个任务共享的共享参数和多个任务各自对应的任务参数,训练过程中可以同时对共享参数和/或多个任务对应的任务参数一起训练,还可以分别对任务参数进行再次训练。通过本公开实施例训练得到的多任务处理模型由于包括多个任务共享的共享参数,因此在多任务处理过程中可以节约计算量,提供任务处理速度。
在一个可选的实施例中,所述训练模块52包括:
第一更新子模块,被配置为将所述样本数据输入至所述人工神经网络模型,根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数:
该可选的实施例中,通过将样本数据中的输入数据逐个输入至人工神经网络模型,人工神经网络模型在对输入数据处理后得到输出结果,并根据输出结果与标签数据更新共享参数和任务参数。人工神经网络模型对输入数据的处理过程实际上是根据人工神经网络模型算法对输入数据进行处理,而人工神经网络模型算法中涉及模型参数,人工神经网络模型的算法基于人工神经网络模型的类型不同而不同,属于已有技术,在此不再赘述。
训练开始时,可以人为初始化人工神经网络模型的模型参数,也即本实施例中的共享参数和任务参数,之后将样本数据输入至人工神经网络模型,也即将输入数据和模型参数代入人工神经网络的算法进行计算,最终得到一个输出结果,训练人工神经网络模型的目的是为了使得人工神经网络模型的输出结果与该输入数据对应的标签无限接近,初始训练时,由于模型参数是人为初始化得到的,输出结果与标签数据相差较大,因此每次得到输出结果后,可以将输出结果和标签数据代入预先设定好的损失函数(损失函数可以根据所选择的人工神经网络模型的类型不同而不同,属于现有技术,在此不再赘述)计算得到一个损失值,之后再利用损失值对模型参数进行更新,在利用大量的样本数据重复迭代上述过程后,最终会得到能够使得人工神经网络模型的输出结果与标签很接近的一组模型参数。
该可选的实施例中,可以根据样本数据中的输入数据对应的输出结果和标签数据同时更新共享参数和多个任务对应的任务参数。
在一个可选的实施例中,所述训练模块52包括:
第二更新子模块,被配置为利用第一样本数据集对所述人工神经网络模型进行首次训练,并在所述首次训练过程中根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数;
第三更新子模块,被配置为利用第二样本数据集对首次训练后的所述人工神经网络模型进行再次训练,并在所述再次训练过程中,根据所述人工神经网络模型的输出结果与所述标签数据更新所述任务参数。
该可选的实现方式中,对于人工神经网络模型的训练可以分为两个阶段,第一阶段利用第一样本数据集对人工神经网络模型进行训练,也即将第一样本数据集中的样本数据逐个输入至人工神经网络模型,并根据人工神经网络模型的输出结果与样本数据中的标签数据同时更新共享参数和任务参数。由于使用同样的输入数据和标签数据对多个不同任务的任务参数一起更新可能会导致有些任务的准确率并不高,因此可以利用第二阶段对人工神经网络模型进行再训练,再训练过程中可以在第一阶段训练得到的模型参数基础上,固定共享参数不变,将第二样本数据集中的样本数据逐个输入至第一阶段训练得到的人工神经网络模型,并仅更新任务参数,使得多个任务中的一个或多个任务的任务参数得到更进一步的优化,使得训练得到的多任务处理模型的准确率进一步提高。第一样本数据集可以是针对多个任务收集得到的各个数据集的组合,第二样本数据集可以是针对需要进行精调的一个或多个任务收集得到的数据集的组合,也就是说第二样本数据集可以是第一样本数据集的一个子集。
在一个可选的实施例中,所述第一更新子模块或第二更新子模块,包括:
第四更新子模块,被配置为在所述标签数据中仅包括一个标签时,根据所述输出结果与所述标签得到的损失值更新所述共享参数和所述多个任务对应的任务参数。
该可选的实现方式中,一个样本数据的标签数据可以包括一个或多个任务对应的一个或多个标签,在训练过程中同时更新共享参数和任务参数的情况下,如果一个样本数据的标签数据仅包括多个任务中某一任务对应的标签时,可以根据输入数据被人工神经网络模型处理得到的输出结果与该标签得到的损失值同时调整共享参数和多个任务对应的任务参数。例如,样本数据的输入数据为图像,标签数据包括该图像中包括人脸图像的标签,则在训练时,将图像输入至人工神经网络模型中,通过人工神经网络模型的输出结果与表示包含有人脸的标签计算损失值,并根据该损失值更新共享参数和所有任务的任务参数。
在一个可选的实施例中,所述第一更新子模块或第二更新子模块,包括:
第五更新子子模块,被配置为在所述标签数据包括多个标签时,根据所述输出结果与多个标签分别得到的累积损失值更新所述共享参数和所述多个任务对应的任务参数。
该可选的实施例中,样本数据的标签数据中包括多个标签,也即多个任务对应的标签时,可以根据人工神经网络模型的输出结果与每个标签分别计算损失值,之后再将这些损失值累积后更新共享参数和所有任务的任务参数。例如,样本数据中输入数据为图像,标签数据包括三个任务对应的标签,分别表示该图像中包括人脸、不包括猫、不包括汉字;在训练时,将图像输入至人工神经网络模型中,根据人工神经网络模型的输出结果与表示包含有人脸的标签计算得到第一损失值,根据输出结果和表示不包括猫的标签计算得到第二损失值,将第一损失值、第二损失值、第三损失值累加得到累积损失值,之后再根据累积损失值共同更新共享参数和三个任务对应的任务参数。
在一个可选的实施例中,所述第三更新子模块包括:
第六更新子模块,被配置为在所述标签数据中包括一个第一标签时,保持所述共享参数不变的情况下,根据所述输出结果与所述第一标签得到的损失值更新第一任务参数;其中,所述第一任务参数为所述多个任务中所述第一标签对应的任务的任务参数。
该可选的实施例中,在人工神经网络模型的第二训练阶段,以第一训练阶段得到的训练结果为基础,也即在第一训练阶段得到的共享参数和任务参数的基础上,保持共享参数固定不变的情况下,对于各个任务的任务参数进行再调整。在一实施例中,样本数据的标签数据中包括一个第一标签时,可以根据该第一标签以及人工神经网络模型的输出结果计算得到的损失值更新该第一标签对应的任务的任务参数,而不更新共享参数和其他任务的任务参数。该可选的实现方式中,不同的标签可以用来更新不同任务对应的任务参数。在实际应用时,可以在第一训练阶段中得到的任务参数效果不达标的情况下,有针对性的对于效果不达标的任务对应的任务参数进行再调整。通过这种方式,既可以节省训练阶段的计算量,又可以使得训练后所有任务对应的任务参数效果都能达到预定的目标。
在一个可选的实施例中,所述第三更新子模块包括:
第七更新子模块,被配置为在所述标签数据中包括至少两个第二标签时,保持所述共享参数不变的情况下,根据所述输出结果与至少两个所述标签分别得到的损失值更新所述多个任务中至少两个第二任务对应的第二任务参数;其中,所述至少两个第二任务为所述至少两个第二标签分别对应的任务。
该可选的实现方式中,样本数据的标签数据可以包括至少两个第二标签,分别对应于多个任务中的至少两个第二任务。在第二训练阶段,可以根据每个第二标签和输出结果分别计算损失值,并根据分别计算得到的损失值分别更新第二任务的第二任务参数,不同任务的任务参数的更新相互独立,能够根据输入数据的一次计算同时更新多个任务的任务参数,进一步达到精调多个任务的任务参数的目的。
在一个可选的实施例中,所述共享参数为所述人工神经网络模型模型中底层的模型参数,而所述任务参数为所述人工神经网络模型模型中高层的模型参数。
该可选的实施例中,人工神经网络模型模型可以包括输入层、多个隐层和输出层,从输入层到隐层、隐层之间和隐层到输出层,每两层之间都有模型参数,上一层的输出与上一层的模型参数通过某种计算能够得到当前层的输入,当前层的输入与当前层的模型参数通过某种计算能够得到下一层的输入,以此类推,最终能够得到输出层的输出结果。可以将人工神经网络模型中的底层模型参数作为共享参数,而高层模型参数作为任务参数,例如可以将输入层至第i个隐层的模型参数作为共享参数,而第i+1个隐层至输出层的模型参数作为任务参数,0<i<N,N为人工神经网络模型中隐层的层数。
本公开实施例提供一种多任务处理装置。该装置可以执行上述多任务处理方法实施例中所述的步骤。如图6所示,该装置主要包括:第二获取模块61和处理模块62。其中,第一获取模块61被配置为获取待处理数据;处理模块62被配置为利用上述多任务处理模型的训练方法训练得到的多任务处理模型对所述待处理数据进行处理,得到多个任务处理结果。
其中,待处理数据可以根据任务的不同而不同,例如可以是图像数据。本实施例利用前述实施例中的任务处理模型的训练方法得到的任务处理模型对待处理数据进行处理。待处理数据的类型与上述样本数据中的输入数据相同,而待处理数据与样本数据所不同的是仅仅包括输入数据,不包括标签数据,也就是说待处理数据是结果未知的数据,需要通过任务处理模型进行处理后输出结果。例如,多任务处理模型可以用于识别图像中的人脸、人脸位置和汉字,那么待处理数据可以是任意的一张图片,将该图片的数据输入至多任务处理模型后,可以多任务处理模型识别出该张图片中是否包含人脸图像、人脸图像的位置以及是否包含汉字。
其中,前述多任务处理模型的训练装置中可以得到多任务处理模型,本实施例中可以根据该多任务处理模型对待处理数据进行处理,得到多个任务处理结果,也即针对同一个待处理数据,可以得到多个不同任务处理得到的多个结果。
图7是图示根据本公开的实施例的多任务处理模型训练的硬件装置的硬件框图。如图7所示,根据本公开实施例的多任务处理模型训练的硬件装置70包括存储器71和处理器72。
该存储器71用于存储非暂时性计算机可读指令。具体地,存储器71可以包括一个或多个计算机程序产品,该计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。该易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。该非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。
该处理器72可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制多任务处理模型训练的硬件装置70中的其它组件以执行期望的功能。在本公开的一个实施例中,该处理器72用于运行该存储器71中存储的该计算机可读指令,使得该多任务处理模型训练的硬件装置70执行前述的本公开各实施例的多任务处理模型的训练方法的全部或部分步骤。
本领域技术人员应能理解,为了解决如何获得良好用户体验效果的技术问题,本实施例中也可以包括诸如通信总线、接口等公知的结构,这些公知的结构也应包含在本公开的保护范围之内。
有关本实施例的详细说明可以参考前述各实施例中的相应说明,在此不再赘述。
图7所示的多任务处理模型训练的硬件装置的硬件框图同样也适用于多任务处理的硬件装置。
图8是图示根据本公开的实施例的计算机可读存储介质的示意图。如图8所示,根据本公开实施例的计算机可读存储介质80,其上存储有非暂时性计算机可读指令81。当该非暂时性计算机可读指令81由处理器运行时,执行前述的本公开各实施例的多任务处理模型的训练方法或多任务处理方法的全部或部分步骤。
上述计算机可读存储介质80包括但不限于:光存储介质(例如:CD-ROM和DVD)、磁光存储介质(例如:MO)、磁存储介质(例如:磁带或移动硬盘)、具有内置的可重写非易失性存储器的媒体(例如:存储卡)和具有内置ROM的媒体(例如:ROM盒)。
有关本实施例的详细说明可以参考前述各实施例中的相应说明,在此不再赘述。
图9是图示根据本公开实施例的多任务处理模型的训练终端的硬件结构示意图。如图9所示,该多任务处理模型的训练终端90包括上述多任务处理模型的训练装置实施例。
该终端设备可以以各种形式来实施,本公开中的终端设备可以包括但不限于诸如移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置、车载终端设备、车载显示终端、车载电子后视镜等等的移动终端设备以及诸如数字TV、台式计算机等等的固定终端设备。
作为等同替换的实施方式,该终端还可以包括其他组件。如图9所示,该多任务处理模型的训练终端90可以包括电源单元91、无线通信单元92、A/V(音频/视频)输入单元93、用户输入单元94、感测单元95、接口单元96、控制器97、输出单元98和存储单元99等等。图9示出了具有各种组件的终端,但是应理解的是,并不要求实施所有示出的组件,也可以替代地实施更多或更少的组件。
其中,无线通信单元92允许终端90与无线通信系统或网络之间的无线电通信。A/V输入单元93用于接收音频或视频信号。用户输入单元94可以根据用户输入的命令生成键输入数据以控制终端设备的各种操作。感测单元95检测终端90的当前状态、终端90的位置、用户对于终端90的触摸输入的有无、终端90的取向、终端90的加速或减速移动和方向等等,并且生成用于控制终端90的操作的命令或信号。接口单元96用作至少一个外部装置与终端90连接可以通过的接口。输出单元98被构造为以视觉、音频和/或触觉方式提供输出信号。存储单元99可以存储由控制器97执行的处理和控制操作的软件程序等等,或者可以暂时地存储己经输出或将要输出的数据。存储单元99可以包括至少一种类型的存储介质。而且,终端90可以与通过网络连接执行存储单元99的存储功能的网络存储装置协作。控制器97通常控制终端设备的总体操作。另外,控制器97可以包括用于再现或回放多媒体数据的多媒体模块。控制器97可以执行模式识别处理,以将在触摸屏上执行的手写输入或者图片绘制输入识别为字符或渲染对象。电源单元91在控制器97的控制下接收外部电力或内部电力并且提供操作各元件和组件所需的适当的电力。
图9所示的多任务处理模型的训练终端的硬件结构示意图同样也适用于多任务处理模型终端。
本公开提出的多任务处理模型的训练方法或多任务处理方法的各种实施方式可以以使用例如计算机软件、硬件或其任何组合的计算机可读介质来实施。对于硬件实施,本公开提出的多任务处理模型的训练方法或多任务处理方法的各种实施方式可以通过使用特定用途集成电路(AS I C)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的电子单元中的至少一种来实施,在一些情况下,本公开提出的多任务处理模型的训练方法或多任务处理方法的各种实施方式可以在控制器97中实施。对于软件实施,本公开提出的多任务处理模型的训练方法或多任务处理方法的各种实施方式可以与允许执行至少一种功能或操作的单独的软件模块来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来实施,软件代码可以存储在存储单元99中并且由控制器97执行。
有关本实施例的详细说明可以参考前述各实施例中的相应说明,在此不再赘述。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
另外,如在此使用的,在以“至少一个”开始的项的列举中使用的“或”指示分离的列举,以便例如“A、B或C的至少一个”的列举意味着A或B或C,或AB或AC或BC,或ABC(即A和B和C)。此外,措辞“示例的”不意味着描述的例子是优选的或者比其他例子更好。
还需要指出的是,在本公开的系统和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
可以不脱离由所附权利要求定义的教导的技术而进行对在此所述的技术的各种改变、替换和更改。此外,本公开的权利要求的范围不限于以上所述的处理、机器、制造、事件的组成、手段、方法和动作的具体方面。可以利用与在此所述的相应方面进行基本相同的功能或者实现基本相同的结果的当前存在的或者稍后要开发的处理、机器、制造、事件的组成、手段、方法或动作。因而,所附权利要求包括在其范围内的这样的处理、机器、制造、事件的组成、手段、方法或动作。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
Claims (14)
1.一种多任务处理模型的训练方法,其特征在于,包括:
获取多个样本数据;其中,所述样本数据包括输入数据和标签数据,所述标签数据包括多个任务中至少一个任务期望从所述输入数据中得到的真实结果;
利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型;其中,所述多任务处理模型包括共享参数和任务参数,所述共享参数为所述多个任务共有的模型参数,所述任务参数为所述多个任务中每个任务各自独有的模型参数。
2.根据权利要求1所述的方法,其特征在于,利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型,包括:
将所述样本数据输入至所述人工神经网络模型,根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数。
3.根据权利要求1所述的方法,其特征在于,利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型,包括:
利用第一样本数据集对所述人工神经网络模型进行首次训练,并在所述首次训练过程中根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数;
利用第二样本数据集对首次训练后的所述人工神经网络模型进行再次训练,并在所述再次训练过程中,根据所述人工神经网络模型的输出结果与所述标签数据更新所述任务参数。
4.根据权利要求2或3所述的方法,其特征在于,根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数,包括:
在所述标签数据中仅包括一个标签时,根据所述输出结果与所述标签得到的损失值更新所述共享参数和所述多个任务对应的任务参数。
5.根据权利要求2或3所述的方法,其特征在于,根据所述人工神经网络模型的输出结果与所述标签数据更新所述共享参数和任务参数,包括:
在所述标签数据包括多个标签时,根据所述输出结果与多个标签分别得到的累积损失值更新所述共享参数和所述多个任务对应的任务参数。
6.根据权利要求3所述的方法,其特征在于,根据所述人工神经网络模型的输出结果与所述标签数据更新所述任务参数,包括:
在所述标签数据中包括一个第一标签时,保持所述共享参数不变的情况下,根据所述输出结果与所述第一标签得到的损失值更新第一任务参数;其中,所述第一任务参数为所述多个任务中所述第一标签对应的任务的任务参数。
7.根据权利要求3所述的方法,其特征在于,根据所述人工神经网络模型的输出结果与所述标签数据更新所述任务参数,包括:
在所述标签数据中包括至少两个第二标签时,保持所述共享参数不变的情况下,根据所述输出结果与至少两个所述第二标签分别得到的损失值更新所述多个任务中至少两个第二任务对应的第二任务参数;其中,所述至少两个第二任务为所述至少两个第二标签分别对应的任务。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述共享参数为所述人工神经网络模型中底层的模型参数,而所述任务参数为所述人工神经网络模型中高层的模型参数。
9.一种多任务处理方法,其特征在于,包括:
获取待处理数据;
利用权利要求1-8任一项所述的方法训练得到的多任务处理模型对所述待处理数据进行处理,得到多个任务处理结果。
10.一种多任务处理模型的训练装置,其特征在于,包括:
第一获取模块,被配置为获取多个样本数据;其中,所述样本数据包括输入数据和标签数据,所述标签数据包括多个任务中至少一个任务期望从所述输入数据中得到的真实结果;
训练模块,被配置为利用所述多个样本数据对人工神经网络模型进行训练,得到多任务处理模型;其中,所述多任务处理模型包括共享参数和任务参数,所述共享参数为所述多个任务共有的模型参数,所述任务参数为所述多个任务中每个任务各自独有的模型参数。
11.一种多任务处理装置,其特征在于,包括:
第二获取模块,被配置为获取待处理数据;
处理模块,被配置为利用权利要求1-8任一项所述的方法训练得到的多任务处理模型对所述待处理数据进行处理,得到多个任务处理结果。
12.一种多任务处理模型训练的硬件装置,包括:
存储器,用于存储非暂时性计算机可读指令;以及
处理器,用于运行所述计算机可读指令,使得所述处理器执行时实现根据权利要求1-8中任意一项所述的方法。
13.一种多任务处理的硬件装置,包括:
存储器,用于存储非暂时性计算机可读指令;以及
处理器,用于运行所述计算机可读指令,使得所述处理器执行时实现根据权利要求9所述的方法。
14.一种计算机可读存储介质,用于存储非暂时性计算机可读指令,当所述非暂时性计算机可读指令由计算机执行时,使得所述计算机执行权利要求1-9中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811108040.2A CN109447259A (zh) | 2018-09-21 | 2018-09-21 | 多任务处理及多任务处理模型训练方法、装置和硬件装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811108040.2A CN109447259A (zh) | 2018-09-21 | 2018-09-21 | 多任务处理及多任务处理模型训练方法、装置和硬件装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109447259A true CN109447259A (zh) | 2019-03-08 |
Family
ID=65532624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811108040.2A Pending CN109447259A (zh) | 2018-09-21 | 2018-09-21 | 多任务处理及多任务处理模型训练方法、装置和硬件装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109447259A (zh) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110059696A (zh) * | 2019-04-26 | 2019-07-26 | 杭州智趣智能信息技术有限公司 | 一种图像标注方法、装置和计算机可读存储介质 |
CN110148081A (zh) * | 2019-03-25 | 2019-08-20 | 腾讯科技(深圳)有限公司 | 图像处理模型的训练方法、图像处理方法、装置及存储介质 |
CN110659646A (zh) * | 2019-08-21 | 2020-01-07 | 北京三快在线科技有限公司 | 一种多任务证件图像自动处理方法、装置、设备及可读存储介质 |
CN111160562A (zh) * | 2019-11-18 | 2020-05-15 | 清华大学 | 基于元学习优化方法的连续学习方法及装置 |
CN111338818A (zh) * | 2020-02-24 | 2020-06-26 | 北京声智科技有限公司 | 一种事件处理方法及相关设备 |
CN111368748A (zh) * | 2020-03-06 | 2020-07-03 | 深圳市商汤科技有限公司 | 网络训练方法及装置、图像识别方法及装置 |
CN111858868A (zh) * | 2019-12-31 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | 一种客服应答模型训练方法和系统 |
CN112016576A (zh) * | 2019-05-30 | 2020-12-01 | 浙江商汤科技开发有限公司 | 训练神经网络的方法、图像处理方法、装置、设备和介质 |
CN112070093A (zh) * | 2020-09-22 | 2020-12-11 | 网易(杭州)网络有限公司 | 生成图像分类模型的方法、图像分类方法、装置和设备 |
CN112527383A (zh) * | 2020-12-15 | 2021-03-19 | 北京百度网讯科技有限公司 | 用于生成多任务模型的方法、装置、设备、介质和程序 |
CN112559007A (zh) * | 2020-12-14 | 2021-03-26 | 北京百度网讯科技有限公司 | 多任务模型的参数更新方法、装置及电子设备 |
CN112596868A (zh) * | 2020-11-27 | 2021-04-02 | 出门问问(武汉)信息科技有限公司 | 模型训练方法及装置 |
CN112801203A (zh) * | 2021-02-07 | 2021-05-14 | 新疆爱华盈通信息技术有限公司 | 基于多任务学习的数据分流训练方法及系统 |
CN113127431A (zh) * | 2020-01-10 | 2021-07-16 | 浙江大学 | 智能多任务特征数据共享方法及装置 |
CN113516239A (zh) * | 2021-04-16 | 2021-10-19 | Oppo广东移动通信有限公司 | 模型训练方法、装置、存储介质及电子设备 |
CN113570119A (zh) * | 2021-07-07 | 2021-10-29 | 北京淇瑀信息科技有限公司 | 基于Xgboost的多任务处理方法、装置及电子设备 |
CN113704388A (zh) * | 2021-03-05 | 2021-11-26 | 腾讯科技(深圳)有限公司 | 多任务预训练模型的训练方法、装置、电子设备和介质 |
CN112527383B (zh) * | 2020-12-15 | 2024-05-31 | 北京百度网讯科技有限公司 | 用于生成多任务模型的方法、装置、设备、介质和程序 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106203395A (zh) * | 2016-07-26 | 2016-12-07 | 厦门大学 | 基于多任务深度学习的人脸属性识别方法 |
CN106778583A (zh) * | 2016-12-07 | 2017-05-31 | 北京理工大学 | 基于卷积神经网络的车辆属性识别方法与装置 |
CN108062573A (zh) * | 2017-12-29 | 2018-05-22 | 广东欧珀移动通信有限公司 | 模型训练方法及装置 |
CN108108821A (zh) * | 2017-12-29 | 2018-06-01 | 广东欧珀移动通信有限公司 | 模型训练方法及装置 |
CN108229582A (zh) * | 2018-02-01 | 2018-06-29 | 浙江大学 | 一种面向医学领域的多任务命名实体识别对抗训练方法 |
CN108280488A (zh) * | 2018-02-09 | 2018-07-13 | 哈尔滨工业大学 | 基于共享神经网络的可抓取物体识别方法 |
CN108537329A (zh) * | 2018-04-18 | 2018-09-14 | 中国科学院计算技术研究所 | 一种利用Volume R-CNN神经网络进行运算的方法和装置 |
-
2018
- 2018-09-21 CN CN201811108040.2A patent/CN109447259A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106203395A (zh) * | 2016-07-26 | 2016-12-07 | 厦门大学 | 基于多任务深度学习的人脸属性识别方法 |
CN106778583A (zh) * | 2016-12-07 | 2017-05-31 | 北京理工大学 | 基于卷积神经网络的车辆属性识别方法与装置 |
CN108062573A (zh) * | 2017-12-29 | 2018-05-22 | 广东欧珀移动通信有限公司 | 模型训练方法及装置 |
CN108108821A (zh) * | 2017-12-29 | 2018-06-01 | 广东欧珀移动通信有限公司 | 模型训练方法及装置 |
CN108229582A (zh) * | 2018-02-01 | 2018-06-29 | 浙江大学 | 一种面向医学领域的多任务命名实体识别对抗训练方法 |
CN108280488A (zh) * | 2018-02-09 | 2018-07-13 | 哈尔滨工业大学 | 基于共享神经网络的可抓取物体识别方法 |
CN108537329A (zh) * | 2018-04-18 | 2018-09-14 | 中国科学院计算技术研究所 | 一种利用Volume R-CNN神经网络进行运算的方法和装置 |
Non-Patent Citations (2)
Title |
---|
RAJEEV RANJAN 等: "An All-In-One Convolutional Neural Network for Face Analysis", 《2017 12TH IEEE INTERNATIONAL CONFERENCE ON AUTOMATIC FACE & GESTURE RECOGNITION (FG 2017)》 * |
贺智超: "基于深度学习和迁移学习的多任务图像分类", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110148081A (zh) * | 2019-03-25 | 2019-08-20 | 腾讯科技(深圳)有限公司 | 图像处理模型的训练方法、图像处理方法、装置及存储介质 |
CN110148081B (zh) * | 2019-03-25 | 2024-02-23 | 腾讯科技(深圳)有限公司 | 图像处理模型的训练方法、图像处理方法、装置及存储介质 |
WO2020192704A1 (zh) * | 2019-03-25 | 2020-10-01 | 腾讯科技(深圳)有限公司 | 图像处理模型的训练方法、图像处理方法、装置及存储介质 |
US11935166B2 (en) | 2019-03-25 | 2024-03-19 | Tencent Technology (Shenzhen) Company Limited | Training method and apparatus for image processing model, image processing method and apparatus for image processing model, and storage medium |
CN110059696B (zh) * | 2019-04-26 | 2021-05-18 | 杭州智趣智能信息技术有限公司 | 一种图像标注方法、装置和计算机可读存储介质 |
CN110059696A (zh) * | 2019-04-26 | 2019-07-26 | 杭州智趣智能信息技术有限公司 | 一种图像标注方法、装置和计算机可读存储介质 |
CN112016576A (zh) * | 2019-05-30 | 2020-12-01 | 浙江商汤科技开发有限公司 | 训练神经网络的方法、图像处理方法、装置、设备和介质 |
CN110659646A (zh) * | 2019-08-21 | 2020-01-07 | 北京三快在线科技有限公司 | 一种多任务证件图像自动处理方法、装置、设备及可读存储介质 |
CN111160562A (zh) * | 2019-11-18 | 2020-05-15 | 清华大学 | 基于元学习优化方法的连续学习方法及装置 |
CN111858868A (zh) * | 2019-12-31 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | 一种客服应答模型训练方法和系统 |
CN113127431A (zh) * | 2020-01-10 | 2021-07-16 | 浙江大学 | 智能多任务特征数据共享方法及装置 |
CN111338818A (zh) * | 2020-02-24 | 2020-06-26 | 北京声智科技有限公司 | 一种事件处理方法及相关设备 |
CN111368748A (zh) * | 2020-03-06 | 2020-07-03 | 深圳市商汤科技有限公司 | 网络训练方法及装置、图像识别方法及装置 |
CN111368748B (zh) * | 2020-03-06 | 2023-12-01 | 深圳市商汤科技有限公司 | 网络训练方法及装置、图像识别方法及装置 |
CN112070093A (zh) * | 2020-09-22 | 2020-12-11 | 网易(杭州)网络有限公司 | 生成图像分类模型的方法、图像分类方法、装置和设备 |
CN112596868A (zh) * | 2020-11-27 | 2021-04-02 | 出门问问(武汉)信息科技有限公司 | 模型训练方法及装置 |
JP2022028871A (ja) * | 2020-12-14 | 2022-02-16 | ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド | マルチタスクモデルのパラメータ更新方法、装置及び電子機器 |
JP7194252B2 (ja) | 2020-12-14 | 2022-12-21 | ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド | マルチタスクモデルのパラメータ更新方法、装置及び電子機器 |
CN112559007A (zh) * | 2020-12-14 | 2021-03-26 | 北京百度网讯科技有限公司 | 多任务模型的参数更新方法、装置及电子设备 |
CN112527383A (zh) * | 2020-12-15 | 2021-03-19 | 北京百度网讯科技有限公司 | 用于生成多任务模型的方法、装置、设备、介质和程序 |
CN112527383B (zh) * | 2020-12-15 | 2024-05-31 | 北京百度网讯科技有限公司 | 用于生成多任务模型的方法、装置、设备、介质和程序 |
CN112801203A (zh) * | 2021-02-07 | 2021-05-14 | 新疆爱华盈通信息技术有限公司 | 基于多任务学习的数据分流训练方法及系统 |
CN113704388A (zh) * | 2021-03-05 | 2021-11-26 | 腾讯科技(深圳)有限公司 | 多任务预训练模型的训练方法、装置、电子设备和介质 |
CN113516239A (zh) * | 2021-04-16 | 2021-10-19 | Oppo广东移动通信有限公司 | 模型训练方法、装置、存储介质及电子设备 |
CN113570119A (zh) * | 2021-07-07 | 2021-10-29 | 北京淇瑀信息科技有限公司 | 基于Xgboost的多任务处理方法、装置及电子设备 |
CN113570119B (zh) * | 2021-07-07 | 2024-06-07 | 北京淇瑀信息科技有限公司 | 基于Xgboost的多任务处理方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109447259A (zh) | 多任务处理及多任务处理模型训练方法、装置和硬件装置 | |
Chui et al. | What AI can and can’t do (yet) for your business | |
Yang et al. | Transfer-learning-based online Mura defect classification | |
Lv et al. | Generative adversarial networks for parallel transportation systems | |
Ong et al. | Memetic computation—past, present & future [research frontier] | |
CN107443373B (zh) | 基于关节臂机器人的避碰轨迹规划方法和装置 | |
Cavallo et al. | Optimal coordinated planning amongst self-interested agents with private state | |
CN108885717A (zh) | 异步深度强化学习 | |
US11559887B2 (en) | Optimizing policy controllers for robotic agents using image embeddings | |
CN105160397A (zh) | 训练精炼的机器学习模型 | |
CN111514585B (zh) | 智能体的控制方法及系统、计算机装置以及存储介质 | |
Hildebrandt et al. | Opportunities for reinforcement learning in stochastic dynamic vehicle routing | |
CN111602144A (zh) | 生成指令序列以控制执行任务的代理的生成神经网络系统 | |
CN107844784A (zh) | 人脸识别方法、装置、计算机设备和可读存储介质 | |
CN110503074A (zh) | 视频帧的信息标注方法、装置、设备及存储介质 | |
CN109313722A (zh) | 存储器高效的基于时间的反向传播 | |
CN110647920A (zh) | 机器学习中的迁移学习方法及装置、设备与可读介质 | |
CN110366734A (zh) | 优化神经网络架构 | |
CN109196527A (zh) | 广度和深度机器学习模型 | |
US9454733B1 (en) | Training a machine learning model | |
CN110520868A (zh) | 分布式强化学习 | |
CN109328362A (zh) | 渐进式神经网络 | |
Gao et al. | Decision-making method for vehicle longitudinal automatic driving based on reinforcement Q-learning | |
CN112476424A (zh) | 机器人控制方法、装置、设备及计算机存储介质 | |
Henke et al. | Straight talk about big data |
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 |