CN111985624A - 神经网络训练和部署方法、文本翻译方法及相关产品 - Google Patents
神经网络训练和部署方法、文本翻译方法及相关产品 Download PDFInfo
- Publication number
- CN111985624A CN111985624A CN202010894158.3A CN202010894158A CN111985624A CN 111985624 A CN111985624 A CN 111985624A CN 202010894158 A CN202010894158 A CN 202010894158A CN 111985624 A CN111985624 A CN 111985624A
- Authority
- CN
- China
- Prior art keywords
- neural network
- sub
- training
- target
- training set
- 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
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 698
- 238000012549 training Methods 0.000 title claims abstract description 420
- 238000000034 method Methods 0.000 title claims abstract description 91
- 238000013519 translation Methods 0.000 title claims abstract description 68
- 230000006870 function Effects 0.000 claims description 113
- 238000012545 processing Methods 0.000 claims description 36
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012216 screening Methods 0.000 claims description 8
- 238000000605 extraction Methods 0.000 claims description 2
- 230000007547 defect Effects 0.000 abstract description 3
- 238000004364 calculation method Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012886 linear function Methods 0.000 description 5
- 210000002569 neuron Anatomy 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000007935 neutral effect Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 2
- 238000002922 simulated annealing Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
-
- 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)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Machine Translation (AREA)
Abstract
本申请提供了一种神经网络训练和部署方法、文本翻译方法及相关产品,其中,本申请首先获取目标神经网络和部署需求信息;目标神经网络以及目标神经网络包括的子神经网络均为训练好的神经网络,部署需求信息包括用于表示目标设备承载能力的信息;之后基于部署需求信息,从训练好的神经网络中,获取部署在目标设备上的待部署神经网络;最后将待部署神经网络部署在所述目标设备上。本申请能够根据目标设备的承载能力,从目标神经网络以及目标神经网络包括的各个子神经网络中筛选适用的神经网络进行部署,避免了需要根据不同设备的承载能力多次训练神经网络的缺陷,提高了神经网络的训练和部署效率,节约了训练资源。
Description
技术领域
本申请涉及计算机及深度学习技术领域,具体而言,涉及一种神经网络训练和部署方法、文本翻译方法及相关产品。
背景技术
随着深度学习技术的发展,各种不同的神经网络结构在图像处理、自然语言处理等任务中起到了关键的作用,并且展示了优越的性能。然而,由于不同的使用场景中,部署神经网络的设备的计算能力或承载能力不同,因此对相同功能的神经网络,需要根据不同设备的计算能力分别训练不同规模的神经网络,训练完成后,再将训练得到的各个神经网络部署到匹配的设备上。
上述训练方法,各个神经网络之间的参数无法共享,训练效率低下,训练资源浪费。
发明内容
本申请实施例至少提供一种神经网络训练和部署方法,以提高不同规模的神经网络的训练效率。
第一方面,本申请实施例提供了一种神经网络部署方法,包括:
获取目标神经网络和部署需求信息;所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络,所述部署需求信息包括用于表示目标设备承载能力的信息;
基于所述部署需求信息,从所述训练好的神经网络中,获取部署在所述目标设备上的待部署神经网络;
将所述待部署神经网络,部署在所述目标设备上。
该方面,能够根据目标设备的承载能力,从目标神经网络以及目标神经网络包括的各个子神经网络中筛选适用的神经网络进行部署,也就意味着,无需根据不同设备的承载能力多次训练神经网络,以满足不同设备对各类神经网络的部署需求,而是利用训练好的目标神经网络以及目标神经网络本身所包括的多个子神经网络,以从中确定满足部署需求的神经网络(指的可以是目标神经网络本身,和/或目标神经网络所包括的一个或是多个子神经网络)进行部署、应用,节省了训练不同神经网络所耗费的资源,提高了神经网络的部署效率。
在一种可能的实施中,所述部署需求信息包括以下至少一项:
所述目标设备的运算能力信息;网络速度需求信息。
该实施方式,根据目标设备的运算能力信息能够筛选到适用于目标设备的待部署神经网络,保证待部署神经网络部署到目标设备上后能够正常使用。根据网络速度需求信息能够筛选到符合计算速度需求的待部署神经网络。
在一种可能的实施中,在所述获取目标神经网络之前,还包括:
从待训练神经网络中抽取多个子神经网络;
利用第一真实训练集对所述待训练神经网络进行训练,得到第一神经网络,以及,利用所述第一真实训练集对所述多个子神经网络中的每个子神经网络分别进行训练,得到所述每个子神经网络对应的第一子神经网络;
将多个真实样本分别输入所述第一神经网络进行处理,得到每个真实样本对应的样本处理结果,并基于所述多个真实样本以及得到的多个样本处理结果生成第一预测训练集;
利用第二真实训练集对所述第一神经网络进行训练,并利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到所述目标神经网络。
该实施方式,利用真实训练集和处于神经网络训练中间状态的第一神经网络的输出形成的第一预测训练集,对待训练神经网络和从待训练神经网络中抽取的各个子神经网络分别进行训练,能够使各个子神经网络与待训练神经网络之间相互促进,实现待训练神经网络与各个子神经网络之间参数共享。对训练好的目标神经网络进行裁剪,得到的子神经网络能够部署在具有对应的承载能力的设备上,即通过一次训练能够得到适用于不同承载能力的神经网络,提高了神经网络的训练效率,节省了训练资源。
在一种可能的实施方式中,所述利用第二真实训练集对所述第一神经网络进行训练,并利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到所述目标神经网络,包括:
利用第二真实训练集对所述第一神经网络进行训练,得到第二神经网络,以及,利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到每个第一子神经网络对应的第二子神经网络;
获取第三真实训练集,并基于与所述第三真实训练集中的训练样本相关联的关联样本,生成第二预测训练集;
利用所述第二预测训练集对所述第二神经网络进行训练,并利用所述第三真实训练集和所述第二预测训练集对多个第二子神经网络中的每个第二子神经网络分别进行训练,得到所述目标神经网络。
该实施方式,在对待训练神经网络和各个子神经网络进行训练的过程中,进一步结合新的真实训练集,即上述第三真实训练集,和与真实训练集相关联的第二预测训练集进行训练,能够更好的实现待训练神经网络与各个子神经网络之间的参数共享。
在一种可能的实施方式中,所述利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,包括:
利用所述第二真实训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,生成每个第一子神经网络对应的第一目标函数;
利用所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,生成每个第一子神经网络对应的第二目标函数;
针对多个第一子神经网络中的每个第一子神经网络,基于所述第一子神经网络对应的第一目标函数和第二目标函数,对所述第一子神经网络进行训练。
该实施方式,利用第一预测训练集构造的第一目标函数和第二真实训练集构造的第二目标函数,共同对子神经网络进行训练,能够促使待训练神经网络与子神经网络实现参数共享。
在一种可能的实施方式中,所述基于所述第一子神经网络对应的第一目标函数和第二目标函数,对所述第一子神经网络进行训练,包括:
获取所述利用所述第二真实训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,生成每个第一子神经网络对应的第一目标函数的迭代次数,和/或,所述利用所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,生成每个第一子神经网络对应的第二目标函数的迭代次数;
基于获取的迭代次数,确定函数调节比例;
基于所述第一目标函数、第二目标函数和所述函数调节比例,生成目标训练函数;
利用所述目标训练函数,对所述第一子神经网络进行训练。
该实施方式,利用基于迭代次数确定的函数调节比例,整合第一目标函数和第二目标函数,利用整合得到的目标训练函数对子神经网络进行训练,能够降低第一神经网络输出中的噪声对神经网络训练的影响,保证训练得到的神经网络的精确度,同时,利用第一目标函数和第二目标函数整合后的目标训练函数训练子神经网络,能够促使待训练神经网络与子神经网络实现参数共享。
在一种可能的实施方式中,所述第三真实训练集中的训练样本包括待翻译的词汇和标准翻译词汇;
所述基于与所述第三真实训练集中的训练样本相关联的关联样本,生成第二预测训练集,包括:
基于所述训练样本中待翻译的词汇以及包括所述待翻译词汇的多个文本,确定在所述待翻译的词汇之后出现的预测词汇;
将所述预测词汇和所述标准翻译词汇组合,形成所述训练样本的关联样本;
利用所述第三真实训练集中的每个训练样本分别对应的所述关联样本,生成所述第二预测训练集。
该实施方式,利用预测出的待翻译的词汇之后可能出现的词汇构建预测训练集,并利用预测训练集对第一神经网络和各个第一子神经网络进行训练,能够促使待训练神经网络与子神经网络实现参数共享。
第二方面,本申请提供了一种神经网络训练方法,包括:
从待训练神经网络中抽取多个子神经网络;
利用第一真实训练集对所述待训练神经网络进行训练,得到第一神经网络,以及,利用所述第一真实训练集对所述多个子神经网络中的每个子神经网络分别进行训练,得到所述每个子神经网络对应的第一子神经网络;
将多个真实样本分别输入所述第一神经网络进行处理,得到每个真实样本对应的样本处理结果,并基于所述多个真实样本以及得到的多个样本处理结果生成第一预测训练集;
利用第二真实训练集对所述第一神经网络进行训练,并利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到目标神经网络,其中,所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络。
第三方面,本申请提供了一种文本翻译方法,所述方法包括:
获取待翻译文本;
通过目标设备上部署的翻译神经网络,对所述待翻译文本进行翻译,得到翻译结果;
其中,所述翻译神经网络为上述的待部署神经网络,和/或,所述翻译神经网络包括通过上述的神经网络训练方法得到的目标神经网络和/或所述目标神经网络中的至少一个子神经网络。
利用目标设备上部署的翻译神经网络进行文本翻译,能够较为准确的得到翻译后的文本。
第四方面,本申请提供了一种神经网络部署装置,包括:
获取模块,用于获取目标神经网络和部署需求信息;所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络,所述部署需求信息包括用于表示目标设备承载能力的信息;
网络筛选模块,用于基于所述部署需求信息,从所述训练好的神经网络中,获取部署在所述目标设备上的待部署神经网络;
网络部署模块,用于将所述待部署神经网络,部署在所述目标设备上。
第五方面,本申请提供了一种神经网络训练装置,包括:
子网络抽取模块,用于从待训练神经网络中抽取多个子神经网络;
第一训练模块,用于利用第一真实训练集对所述待训练神经网络进行训练,得到第一神经网络,以及,利用所述第一真实训练集对所述多个子神经网络中的每个子神经网络分别进行训练,得到所述每个子神经网络对应的第一子神经网络;
样本预测模块,用于将多个真实样本分别输入所述第一神经网络进行处理,得到每个真实样本对应的样本处理结果,并基于所述多个真实样本以及得到的多个样本处理结果生成第一预测训练集;
第二训练模块,用于利用第二真实训练集对所述第一神经网络进行训练,并利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到目标神经网络,其中,所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络。
第六方面,本申请提供了一种文本翻译装置,包括:
文本获取模块,用于获取待翻译文本;
翻译模块,用于通过目标设备上部署的翻译神经网络,对所述待翻译文本进行翻译,得到翻译结果;
其中,所述翻译神经网络为上述的待部署神经网络,和/或,所述翻译神经网络包括通过上述的神经网络训练方法得到的目标神经网络和/或所述目标神经网络中的至少一个子神经网络。
第七方面,本申请实施例提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如上述神经网络部署方法、或神经网络训练方法、或文本翻译方法的步骤。
第八方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述神经网络部署方法、或神经网络训练方法、或文本翻译方法的步骤。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本申请的实施例,并与说明书一起用于说明本申请的技术方案。应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的神经网络部署方法的流程图;
图2示出了本申请实施例所提供的神经网络训练方法的流程图;
图3示出了本申请实施例所提供的文本翻译方法的流程图;
图4示出了本申请实施例所提供的神经网络部署装置的结构示意图;
图5示出了本申请实施例所提供的神经网络训练装置的结构示意图;
图6示出了本申请实施例所提供的文本翻译装置的结构示意图;
图7示出了本申请实施例所提供的一种电子设备的示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
针对现有技术中,需要分别训练适用于不同承载的设备的神经网络,造成的神经网络训练效率低,资源消耗大的缺陷,本申请提供了一种神经网络部署和训练方法,其中,本申请利用真实训练集和处于训练中间状态的神经网络的输出形成的预测训练集,对待训练神经网络和从待训练神经网络中抽取的各子神经网络进行联合训练,能够使各个子神经网络与待训练神经网络之间相互促进,实现待训练神经网络与各个子神经网络之间参数共享。对训练好的目标神经网络进行裁剪,得到的子神经网络能够部署在具有对应的承载能力的设备上,即通过一次训练能够得到适用于不同承载能力的设备上,提高了不同规模的神经网络的训练和部署效率,节省了训练资源。
下面通过具体的实施例本申请提供的神经网络部署和训练方法及相关产品进行详细说明。
本申请提供的神经网络部署方法,应用于基于目标设备的承载能力等信息从训练好的目标神经网络中筛选待部署神经网络,并将筛选得到的待部署神经网络部署在目标设备上。具体地,如图1所示,本申请提供的神经网络部署方法可以包括如下步骤:
S110、获取目标神经网络和部署需求信息;所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络,所述部署需求信息包括用于表示目标设备承载能力的信息。
这里,目标神经网络包括多个子神经网络,子神经网络包括目标神经网络中的部分神经网络层和/或神经网络层中的部分神经元。目标神经网络的网络规模最大,需要具有较大承载能力的设备来承载,子神经网络的网络规模相对较小,可以利用具有较小承载能力的设备来承载。目标神经网络和各个子神经网络之间参数共享。上述网络规模对应于神经网络的结构复杂度,网络规模越大,神经网络的结构越复杂,包括的神经网络层或神经网络层中的神经元越多,网络规模越小,神经网络的结构越简单,包括的神经网络层或神经网络层中的神经元越少。
上述表示目标设备承载能力的信息具体可以是目标设备的运算能力信息,除此之外,部署需求信息还可以包括网络速度需求信息,该网络速度需求信息表示对待部署神经网络的计算速度的需求的信息。不同的神经网络由于网络规模不同,计算速度也不同,神经网络的网络规模越大,即神经网络的结构越复杂,其计算速度越慢,相反,神经网络的网络规模越小,即神经网络的结构越简单,其计算速度越快。在筛选待部署神经网络的时候,不仅考虑目标设备的承载能力,还可以考虑对待部署神经网络的计算速度的需求。在对计算速度要求不高,设备承载能力较强时,可以选取网络规模较大的神经网络,在需要较高的运算速度,设备的承载能力较弱时,可以选取网络规模较小的神经网络。
S120、基于所述部署需求信息,从所述训练好的神经网络中,获取部署在所述目标设备上的待部署神经网络。
根据目标设备的运算能力信息,筛选到适用于目标设备的待部署神经网络,以保证待部署神经网络部署到目标设备上后能够正常使用。根据网络速度需求信息筛选到符合计算速度需求的待部署神经网络,以适用于对应应用场景的需求。
S130、将所述待部署神经网络,部署在所述目标设备上。
上述实施例能够根据目标设备的承载能力,从目标神经网络以及目标神经网络包括的各个子神经网络中筛选适用的神经网络进行部署,避免了需要根据不同设备的承载能力多次训练神经网络的缺陷,提高了神经网络的训练和部署效率,节约了训练资源。
在一些实施例中,在执行步骤S110之前,还可以执行如下训练目标神经网络的步骤S1001-S1004:
S1001、从待训练神经网络中抽取多个子神经网络。
这里,待训练的神经网络是所要训练的具有最大网络规模的神经网络,该最大网络规模可以是由人工预先根据实际应用需求设定的,对应于神经网络的最大特征维度。最大网络规模具体可以是根据神经网络所要部署的设备的承载能力来设定,例如,对于需要部署在手机等端具有较小承载能力的设备上的神经网络,上述最大网络规模根据具有较小承载能力的设备的最大承载能力设定,设定的较小;对于要部署在服务器等具有较大承载能力的设备上的神经网络,上述最大网络规模根据具有较大承载能力的设备的最大承载能力设定,设定的较大。
除了设定最大网络规模,在抽取子神经网络的时候,还需要设置最小网络规模。最小网络规模对应的神经网络,相比于其他子神经网络和待训练神经网络来说结构最简单,包括的神经网络层或神经元最少。该最小网络规模也是是由人工预先根据实际应用需求设定的,对应于神经网络的最小特征维度。最小网络规模具体可以根据神经网络所要部署的设备的承载能力来设定,例如,对于需要部署在手机等具有较小承载能力的设备上的神经网络,最小网络规模是根据上述具有较小承载能力的设备的最小承载能力来设定的。
此步骤中,在抽取的子神经网络的时候,是根据最小网络规模随机抽取的,抽取的子神经网络的网络规模需要大于或等于上述最小网络规模。另外,如果抽取的子神经网络中不包括最小网络规模的子神经网络,则还需要另外抽取最小网络规模的神经网络作为其中的一个字神经网络。
根据上面的记载可知,最小网络规模是根据需要部署在设备的最小承载能力来确定的,如果不设置最小网络规模,则在抽取子神经网络时,可能抽取到具有更小网络规模的子神经网络,继而对这类具有更小网络规模的子神经网络进行训练,但是这类具有更小网络规模的子神经网络不会被需要部署在设备上,可见训练这类用不到的子神经网络,不仅会降低神经的训练效率,更会浪费训练资源。
上述待训练神经网络既可以是进行图像处理的神经网络,也可以是进行文字处理的神经网络,例如,该待训练神经网络可以是Transformer模型。
每次迭代的时候都会从待训练神经网络中随机抽取多个子神经网络,以便通过多次训练使待训练神经网络与各个子神经网络的之间参数共享。
S1002、利用第一真实训练集对所述待训练神经网络进行训练,得到第一神经网络,以及,利用所述第一真实训练集对所述多个子神经网络中的每个子神经网络分别进行训练,得到所述每个子神经网络对应的第一子神经网络。
这里,第一真实训练集中包括多个真实的训练样本,每个训练样本均包括一个真实样本和一个真实样本对应的标准值,例如,对于进行翻译的神经网络,训练样本可以包括一个待翻译的词汇和翻译后的标准翻译词汇,这里待翻译的词汇是真实存在的需要翻译的词汇,并非基于待翻译的词汇预测出的词汇等。
第一真实训练集是在执行此步骤之前预先获取的。此步骤利用第一真实训练集对所述待训练神经网络和随机抽取的多个子神经网络分别进行训练,目的是使待训练神经网络和各个子神经网络的参数梯度数量级尽量达到一致,对于共享参数达成一定的妥协。
上述,利用第一真实训练集对所述待训练神经网络进行训练,得到第一神经网络,利用第一真实训练集对子神经网络进行训练,得到第一子神经网络。该第一神经网络和第一子神经网络并非训练所要得到的神经网络,第一神经网络和各个第一子神经网络之间相同属性/或是同一定义的参数取值相近,但无法实现参数共享。第一神经网络和第一子神经网络是训练中得到的中间状态的神经网络。
S1003、将多个真实样本分别输入所述第一神经网络进行处理,得到每个真实样本对应的样本处理结果,并基于所述多个真实样本以及得到的多个样本处理结果生成第一预测训练集。
对于进行翻译的神经网络,真实样本可以是待翻译的词汇;样本处理结果可以是利用第一神经网络翻译得到的词汇。此步骤,利用处于神经网络训练中间状态的第一神经网络的输出形成训练各个子神经网络的训练集,即上述第一预测训练集。利用该第一预测训练集对各个子神经网络进行训练,消除了各个子神经网络之间的相互影响,有利于使待训练神经网络以及各子神经网络之间实现参数共享。
上述多个真实样本既可以全部或部分属于上述第一真实训练集,也可以是与上述第一真实训练集中的样本完全不同的样本,本申请对此不进行限定。
S1004、利用第二真实训练集对所述第一神经网络进行训练,并利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到所述目标神经网络。
这里,第二真实训练集中包括多个真实的训练样本,每个训练样本均包括一个真实样本和一个真实样本对应的标准值,例如,对于进行翻译的神经网络,训练样本可以包括一个待翻译的词汇和翻译后的标准翻译词汇,这里待翻译的词汇是真实存在的需要翻译的词汇,并非基于待翻译的词汇预测出的词汇等。
第二真实训练集与第一真实训练集可以全部不同或部分相同,本申请对此并不进行限定。步骤1003种的多个真实样本既可以全部或部分属于上述第二真实训练集,也可以是与上述第一真实训练集中的样本完全不同的样本,本申请对此也不进行限定。
第二真实训练集是在执行此步骤之前预先获取的。此步骤利用第二真实训练集对第一神经网络进行训练,并利用第二真实训练集和第一预测训练集对第一子神经网络进行训练,能够实现各个子神经网络与待训练神经网络之间参数共享,从而提高了神经网络训练的效率,减少了资源消耗。
该实施方式,利用真实训练集和处于神经网络训练中间状态的第一神经网络的输出形成的第一预测训练集,对待训练神经网络和从待训练神经网络中抽取的各个子神经网络分别进行训练,能够使各个子神经网络与待训练神经网络之间相互促进,实现待训练神经网络与各个子神经网络之间参数共享。对训练好的目标神经网络进行裁剪,得到的子神经网络能够部署在具有对应的承载能力的设备上,即通过一次训练能够得到适用于不同承载能力的神经网络,提高了神经网络的训练效率,节省了训练资源。
在一些实施例中,上述步骤1004中利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,具体可以利用如下步骤S10041-S10043实现:
S10041、利用所述第二真实训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,生成每个第一子神经网络对应的第一目标函数。
第一目标函数是利用真实的训练样本进行监督学习得到的。
S10042、利用所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,生成每个第一子神经网络对应的第二目标函。
第二目标函数是利用处于神经网络训练中间中间状态的第一神经网络的输出形成的训练样本,进行监督学习得到的。
本申请对上述S10041和S10042在执行顺序上不进行限定。
S10043、针对多个第一子神经网络中的每个第一子神经网络,基于所述第一子神经网络对应的第一目标函数和第二目标函数,对所述第一子神经网络进行训练。
这里,具体可以利用第一目标函数和第二目标函数形成训练第一子神经网络的目标训练函数,之后利用目标训练函数对第一子神经网络进行训练。具体可以利用如下子步骤S100431-S100434实现:
S100431、获取所述利用所述第二真实训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,生成每个第一子神经网络对应的第一目标函数的迭代次数,和/或,所述利用所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,生成每个第一子神经网络对应的第二目标函数的迭代次数。
这里,生成第一目标函数的迭代次数和生成第二目标函数的迭代次数相等,这里可以择一获取迭代次数。
S100432、基于获取的迭代次数,确定函数调节比例。
这里在确定函数调节比例的时候,具体可以是利用迭代次数和预设的一次函数来确定。该一次函数可以是一个单调递增的函数,随着迭代次数的增加,函数调节比例的值越来越大,迭代次数的增加到一定值时,函数调节比例不再发生变换。在具体实施时,可以利用模拟退火算法来确定此函数调节比例的值。
S100433、基于所述第一目标函数、第二目标函数和所述函数调节比例,生成目标训练函数。
这里具体可以利用如下公式形成目标训练函数:
目标训练函数=第一目标函数+函数调节比例×第二目标函数
根据步骤S100432中的说明可知,迭代次数较少的时候,函数调节比例的值较小,第二目标函数对目标训练函数的作用较小,利用目标训练函数训练子神经网络的时候,第二目标函数对子神经网络训练的作用较小,随着迭代次数的增加,第二目标函数对目标训练函数的作用较大,利用目标训练函数训练子神经网络的时候,第二目标函数对子神经网络训练的作用越来越大。函数调节比例的上述设计理念是:由于迭代次数少时,第一神经网络的输出噪声较大,此时,为了保证训练的精度,利用第一预测训练集生成的第二目标函数需要对目标训练函数的作用设置为较小。随着迭代次数的增加,第一神经网络的输出噪声变得较小,此时,利用第一预测训练集生成的第二目标函数可以对目标训练函数的作用设置为较大,不会影响对子神经网络的训练精度。
上述利用函数调节比例和上面的公式,对第一目标函数和第二目标函数进行整合,利用整合得到的目标训练函数对子神经网络进行训练,能够降低第一神经网络输出中的噪声对神经网络训练的影响,保证训练得到的神经网络的精确度,同时,利用第二真实训练集对应的第一目标函数和一预测训练集对应的第二目标函数整合后的目标训练函数训练子神经网络,并利用第二真实训练集对第一神经网络进行训练,能够实现各子神经网络与待训练神经网络之间实现参数共享。
S100434、利用所述目标训练函数,对所述第一子神经网络进行训练。
利用以上实施例中的方法训练得到的目标神经网络,能够完成对非机器重组文本的处理任务。对于具有更高要求的场景,例如重组文本的翻译,在步骤S1004利用第二真实训练集对所述第一神经网络进行训练,并利用所述第二真实训练集和所述第一预测训练集对所述第一子神经网络分别进行训练之后,并且在得到训练好的目标神经网络之前,还可以包括如下步骤1至步骤2:
步骤1、获取第三真实训练集,并基于与所述第三真实训练集中的训练样本相关联的关联样本,生成第二预测训练集。
这里,第三真实训练集中包括多个真实的训练样本,每个训练样本均包括一个真实样本和一个真实样本对应的标准值,例如,对于进行翻译的神经网络,训练样本可以包括一个待翻译的词汇和翻译后的标准翻译词汇,这里待翻译的词汇是真实存在的需要翻译的词汇,并非基于待翻译的词汇预测出的词汇等。
第二真实训练集、第一真实训练集以及第三真实训练集中任意两者之间,可以全部不同或部分相同,本申请对此并不进行限定。步骤1003种的多个真实样本既可以全部或部分属于上述第二真实训练集,也可以是与上述第一真实训练集中的样本完全不同的样本,也可以是与上述第三真实训练集中的样本完全不同的样本,本申请对此也不进行限定。
对于进行翻译的神经网络,具体可以利用如下子步骤11至子步骤13生成第二预测训练集:
子步骤11、基于所述训练样本中待翻译的词汇以及包括所述待翻译词汇的多个文本,确定在所述待翻译的词汇之后出现的预测词汇。
上述预测词汇并非真实存在的词汇,而是基于待翻译词汇所在的多个文本,推断出来的可能出现在待翻译的词汇之后的词汇,预测词汇可以是与待翻译词汇相邻的词汇,也可以是不与待翻译词汇相邻的词汇。
子步骤12、将所述预测词汇和所述标准翻译词汇组合,形成所述训练样本的关联样本。
子步骤13、利用所述第三真实训练集中的每个训练样本分别对应的所述关联样本,生成所述第二预测训练集。
利用预测出的待翻译的词汇之后可能出现的词汇构建预测训练集,并利用预测训练集对第一神经网络和各个第一子神经网络进行训练,能够促使待训练神经网络与子神经网络实现参数共享。
步骤2、利用所述第二预测训练集对所述第二神经网络进行训练,并利用所述第三真实训练集和所述第二预测训练集对多个第二子神经网络中的每个第二子神经网络分别进行训练,得到所述目标神经网络。
上述第二神经网络是利用第二真实训练集对所述第一神经网络进行训练得到的。上述第二子神经网络是利用所述第二真实训练集和所述第一预测训练集对所述第一子神经网络分别进行训练得到的。
上述利用所述第三真实训练集和第二预测训练集对所述第二子神经网络分别进行训练,具体可以利用如下子步骤21至子步骤23实现:
子步骤21、利用所述第三真实训练集对所述第二子神经网络进行训练,生成第三目标函数。
第三目标函数是利用真实的训练样本进行监督学习得到的。
子步骤22、利用所述第二预测训练集对所述第二子神经网络进行训练,生成第四目标函数。
第四目标函数是利用预测得到的词汇形成的训练样本,进行监督学习得到的。
本申请对上述子步骤21和子步骤22在执行顺序上不进行限定。
子步骤23、基于所述第三目标函数和第四目标函数,对所述第二子神经网络进行训练。
这里,具体可以利用第三目标函数和第四目标函数形成训练第二子神经网络的综合训练函数,之后利用综合训练函数对第二子神经网络进行训练。具体可以利用如下子公式形成综合训练函数:
目标训练函数=第三目标函数+调节比例参数值×第四目标函数
上述调节比例参数值可以是一个预设的常数,也可以是利用模拟退火方法确定的,确定的方式可以与上述函数调节比例的确定方式相同,具体可以是利用一个预设的一次函数,基于生成第三目标函数或第四目标函数的迭代次数,确定调节比例参数值;生成第三目标函数或第四目标函数的迭代次数越大,调节比例参数值越大,生成第三目标函数或第四目标函数的迭代次数增加到一定值时,调节比例参数值不再发生变化。确定调节比例参数值的一次函数与确定函数调节比例的一次函数可以不同,也可以相同,调节比例参数值与函数调节比例的值可以相同,也可以不同,本申请并不进行限定。
上述利用第二预测训练集构造的第四目标函数和第三真实训练集构造的第三目标函数,共同对子神经网络进行训练,能够促使最大规模的神经网络与子神经网络实现参数共享。
上述实施例在对待训练神经网络和各个子神经网络进行训练的过程中,进一步结合新的真实训练集,即上述第三真实训练集,和与真实训练集相关联的第二预测训练集进行训练,利用更多的训练集进行更多次的训练,能够更好的实现待训练神经网络与各个子神经网络之间的参数共享。
本申请上述实施例训练得到的目标神经网络与各个子神经网络之间参数共享,从目标神经网络中直接进行裁剪即可得到所需的子神经网络,不需要重新训练适用的神经网络,在保证神经网络的精度的前提下,大幅减少了神经网络的训练耗时,提高了神经网络的训练效率,减少了资源消耗。上述实施例中训练的目标神经网络适用于各种应用场景,例如,对于文字翻译场景,训练好的目标神经网络能够适用于服务器等承载能力较强的设备,服务器上安装训练好的目标神经网络之后,能够较为准确的进行文本翻译,同时目标神经中的子神经网络能够适用移动终端器等承载能力较弱的设备,移动终端上安装训练好的子神经网络之后,能够较为准确的进行文本翻译,避免了多次训练不同网络规模的神经网络,提高了神经网络的训练效率,节省了训练资源。再例如,对于图像识别场景,训练好的目标神经网络能够适用于服务器等承载能力较强的设备,服务器上安装训练好的目标神经网络之后,能够较为准确的进行图像识别,同时目标神经中的子神经网络能够适用移动终端器等承载能力较弱的设备,移动终端上安装训练好的子神经网络之后,能够较为准确的进行图像识别,避免了多次训练不同网络规模的神经网络,提高了神经网络的训练效率,节省了训练资源。再例如,对于阅读理解场景,训练好的目标神经网络能够适用于服务器等承载能力较强的设备,服务器上安装训练好的目标神经网络之后,能够较为准确的确定阅读理解的答案,同时目标神经中的子神经网络能够适用移动终端器等承载能力较弱的设备,移动终端上安装训练好的子神经网络之后,能够较为准确的确定阅读理解的答案,避免了多次训练不同网络规模的神经网络,提高了神经网络的训练效率,节省了训练资源。
本申请还提供了一种神经网络训练方法,该方法可以应用在客户端或服务端,用于训练参数共享的不同网络规模的神经网络,具体地,如图2所示,本申请提供的神经网路训练方法包括如下步骤:
S210、从待训练神经网络中抽取多个子神经网络。
S220、利用第一真实训练集对所述待训练神经网络进行训练,得到第一神经网络,以及,利用所述第一真实训练集对所述多个子神经网络中的每个子神经网络分别进行训练,得到所述每个子神经网络对应的第一子神经网络。
S230、将多个真实样本分别输入所述第一神经网络进行处理,得到每个真实样本对应的样本处理结果,并基于所述多个真实样本以及得到的多个样本处理结果生成第一预测训练集。
S240、利用第二真实训练集对所述第一神经网络进行训练,并利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到目标神经网络,其中,所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络。
本实施例中对待训练神经网络的训练过程与上述实施例中对待训练神经网络的的训练过程相同,不再赘述。
本申请还提供了一种文本翻译方法,应用于目标设备,如图3所示,包括:
S310、获取待翻译文本。
S320、通过目标设备上部署的翻译神经网络,对所述待翻译文本进行翻译,得到翻译结果。
其中,所述翻译神经网络为上述实施例中的待部署神经网络,和/或,所述翻译神经网络包括通过上述神经网络训练方法得到的目标神经网络和/或所述目标神经网络中的至少一个子神经网络。
利用目标设备上部署的翻译神经网络进行文本翻译,能够较为准确的得到翻译后的文本。
对应于上述神经网络部署方法,本申请还公开了一种神经网络部署装置,该装置中的各个模块能够实现上述各个实施例的神经网络部署方法中的每个步骤,并且能够取得相同的有益效果,因此,对于相同的部分这里不再进行赘述。具体地,如图4所示,神经网络部署装置包括:
获取模块410,用于获取目标神经网络和部署需求信息;所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络,所述部署需求信息包括用于表示目标设备承载能力的信息.
网络筛选模块420,用于基于所述部署需求信息,从所述训练好的神经网络中,获取部署在所述目标设备上的待部署神经网络。
网络部署模块430,用于将所述待部署神经网络,部署在所述目标设备上。
对应于上述神经网络训练方法,本申请还公开了一种神经网络训练装置,该装置中的各个模块能够实现上述各个实施例的神经网络训练方法中的每个步骤,并且能够取得相同的有益效果,因此,对于相同的部分这里不再进行赘述。具体地,如图5所示,本申请公开的神经网络训练装置包括:
子网络抽取模块510,用于从待训练神经网络中抽取多个子神经网络。
第一训练模块520,用于利用第一真实训练集对所述待训练神经网络进行训练,得到第一神经网络,以及,利用所述第一真实训练集对所述多个子神经网络中的每个子神经网络分别进行训练,得到所述每个子神经网络对应的第一子神经网络。
样本预测模块530,用于将多个真实样本分别输入所述第一神经网络进行处理,得到每个真实样本对应的样本处理结果,并基于所述多个真实样本以及得到的多个样本处理结果生成第一预测训练集。
第二训练模块540,用于利用第二真实训练集对所述第一神经网络进行训练,并利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到目标神经网络,其中,所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络。
对应于上述文本翻译方法,本申请还公开了一种文本翻译装置,该装置中的各个模块能够实现上述各个实施例的文本翻译方法中的每个步骤,并且能够取得相同的有益效果,因此,对于相同的部分这里不再进行赘述。具体地,如图6所示,本申请公开的一种文本翻译装置包括:
文本获取模块610,用于获取待翻译文本。
翻译模块620,用于通过目标设备上部署的翻译神经网络,对所述待翻译文本进行翻译,得到翻译结果。其中,所述翻译神经网络为上述实施例中的待部署神经网络,和/或,所述翻译神经网络包括通过上述实施例中的神经网络训练方法得到的目标神经网络和/或所述目标神经网络中的至少一个子神经网络。
对应于上述实施例中的神经网络部署方法、神经网络训练方法或文本翻译方法,本申请实施例还提供了一种电子设备700,如图7所示,为本申请实施例提供的电子设备700结构示意图,包括:
处理器71、存储器72、和总线73;存储器72用于存储执行指令,包括内存721和外部存储器722;这里的内存721也称内存储器,用于暂时存放处理器71中的运算数据,以及与硬盘等外部存储器722交换的数据,处理器71通过内存721与外部存储器722进行数据交换,当电子设备700运行时,处理器71与存储器72之间通过总线73通信,使得处理器71执行以下对应于神经网络部署方法的指令:获取目标神经网络和部署需求信息;所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络,所述部署需求信息包括用于表示目标设备承载能力的信息;基于所述部署需求信息,从所述训练好的神经网络中,获取部署在所述目标设备上的待部署神经网络;将所述待部署神经网络,部署在所述目标设备上训练好的目标神经网络包括训练好的第一神经网络和训练好的子神经网络。或使得处理器71执行以下对应于神经网络训练方法的指令:从待训练神经网络中抽取多个子神经网络;利用第一真实训练集对所述待训练神经网络进行训练,得到第一神经网络,以及,利用所述第一真实训练集对所述多个子神经网络中的每个子神经网络分别进行训练,得到所述每个子神经网络对应的第一子神经网络;将多个真实样本分别输入所述第一神经网络进行处理,得到每个真实样本对应的样本处理结果,并基于所述多个真实样本以及得到的多个样本处理结果生成第一预测训练集;利用第二真实训练集对所述第一神经网络进行训练,并利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到目标神经网络,其中,所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络。或使得处理器71执行以下对应于文本翻译方法的指令:获取待翻译文本;通过目标设备上部署的翻译神经网络,对所述待翻译文本进行翻译,得到翻译结果;其中,所述翻译神经网络为上述实施例中的待部署神经网络,和/或,所述翻译神经网络包括通过上述实施例中的神经网络训练方法得到的目标神经网络和/或所述目标神经网络中的至少一个子神经网络。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中神经网络部署方法、或神经网络训练方法、或文本翻译方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本申请实施例所提供的神经网络部署方法、或神经网络训练方法、或文本翻译方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行上述方法实施例中神经网络部署方法、或神经网络训练方法、或文本翻译方法的步骤,具体可参见上述方法实施例,在此不再赘述。
本申请实施例还提供一种计算机程序,该计算机程序被处理器执行时实现前述实施例的任意一种方法。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software DevelopmentKit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (14)
1.一种神经网络部署方法,其特征在于,包括:
获取目标神经网络和部署需求信息;所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络,所述部署需求信息包括用于表示目标设备承载能力的信息;
基于所述部署需求信息,从所述训练好的神经网络中,获取部署在所述目标设备上的待部署神经网络;
将所述待部署神经网络,部署在所述目标设备上。
2.根据权利要求1所述的神经网络部署方法,其特征在于,所述部署需求信息包括以下至少一项:
所述目标设备的运算能力信息;网络速度需求信息。
3.根据权利要求1或2所述的神经网络部署方法,其特征在于,在所述获取目标神经网络之前,还包括:
从待训练神经网络中抽取多个子神经网络;
利用第一真实训练集对所述待训练神经网络进行训练,得到第一神经网络,以及,利用所述第一真实训练集对所述多个子神经网络中的每个子神经网络分别进行训练,得到所述每个子神经网络对应的第一子神经网络;
将多个真实样本分别输入所述第一神经网络进行处理,得到每个真实样本对应的样本处理结果,并基于所述多个真实样本以及得到的多个样本处理结果生成第一预测训练集;
利用第二真实训练集对所述第一神经网络进行训练,并利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到所述目标神经网络。
4.根据权利要求3所述的神经网络部署方法,其特征在于,所述利用第二真实训练集对所述第一神经网络进行训练,并利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到所述目标神经网络,包括:
利用第二真实训练集对所述第一神经网络进行训练,得到第二神经网络,以及,利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到每个第一子神经网络对应的第二子神经网络;
获取第三真实训练集,并基于与所述第三真实训练集中的训练样本相关联的关联样本,生成第二预测训练集;
利用所述第二预测训练集对所述第二神经网络进行训练,并利用所述第三真实训练集和所述第二预测训练集对多个第二子神经网络中的每个第二子神经网络分别进行训练,得到所述目标神经网络。
5.根据权利要求3或4所述的神经网络部署方法,其特征在于,所述利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,包括:
利用所述第二真实训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,生成每个第一子神经网络对应的第一目标函数;
利用所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,生成每个第一子神经网络对应的第二目标函数;
针对多个第一子神经网络中的每个第一子神经网络,基于所述第一子神经网络对应的第一目标函数和第二目标函数,对所述第一子神经网络进行训练。
6.根据权利要求5所述的神经网络部署方法,其特征在于,所述基于所述第一子神经网络对应的第一目标函数和第二目标函数,对所述第一子神经网络进行训练,包括:
获取所述利用所述第二真实训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,生成每个第一子神经网络对应的第一目标函数的迭代次数,和/或,所述利用所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,生成每个第一子神经网络对应的第二目标函数的迭代次数;
基于获取的迭代次数,确定函数调节比例;
基于所述第一目标函数、第二目标函数和所述函数调节比例,生成目标训练函数;
利用所述目标训练函数,对所述第一子神经网络进行训练。
7.根据权利要求4所述的神经网络部署方法,其特征在于,所述第三真实训练集中的训练样本包括待翻译的词汇和标准翻译词汇;
所述基于与所述第三真实训练集中的训练样本相关联的关联样本,生成第二预测训练集,包括:
基于所述训练样本中待翻译的词汇以及包括所述待翻译词汇的多个文本,确定在所述待翻译的词汇之后出现的预测词汇;
将所述预测词汇和所述标准翻译词汇组合,形成所述训练样本的关联样本;
利用所述第三真实训练集中的每个训练样本分别对应的所述关联样本,生成所述第二预测训练集。
8.一种神经网络训练方法,其特征在于,包括:
从待训练神经网络中抽取多个子神经网络;
利用第一真实训练集对所述待训练神经网络进行训练,得到第一神经网络,以及,利用所述第一真实训练集对所述多个子神经网络中的每个子神经网络分别进行训练,得到所述每个子神经网络对应的第一子神经网络;
将多个真实样本分别输入所述第一神经网络进行处理,得到每个真实样本对应的样本处理结果,并基于所述多个真实样本以及得到的多个样本处理结果生成第一预测训练集;
利用第二真实训练集对所述第一神经网络进行训练,并利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到目标神经网络,其中,所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络。
9.一种文本翻译方法,其特征在于,所述方法包括:
获取待翻译文本;
通过目标设备上部署的翻译神经网络,对所述待翻译文本进行翻译,得到翻译结果;
其中,所述翻译神经网络为权利要求1至7中任意一项所述的待部署神经网络,和/或,所述翻译神经网络包括通过权利要求8所述的神经网络训练方法得到的目标神经网络和/或所述目标神经网络中的至少一个子神经网络。
10.一种神经网络部署装置,其特征在于,包括:
获取模块,用于获取目标神经网络和部署需求信息;所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络,所述部署需求信息包括用于表示目标设备承载能力的信息;
网络筛选模块,用于基于所述部署需求信息,从所述训练好的神经网络中,获取部署在所述目标设备上的待部署神经网络;
网络部署模块,用于将所述待部署神经网络,部署在所述目标设备上。
11.一种神经网络训练装置,其特征在于,包括:
子网络抽取模块,用于从待训练神经网络中抽取多个子神经网络;
第一训练模块,用于利用第一真实训练集对所述待训练神经网络进行训练,得到第一神经网络,以及,利用所述第一真实训练集对所述多个子神经网络中的每个子神经网络分别进行训练,得到所述每个子神经网络对应的第一子神经网络;
样本预测模块,用于将多个真实样本分别输入所述第一神经网络进行处理,得到每个真实样本对应的样本处理结果,并基于所述多个真实样本以及得到的多个样本处理结果生成第一预测训练集;
第二训练模块,用于利用第二真实训练集对所述第一神经网络进行训练,并利用所述第二真实训练集和所述第一预测训练集对多个第一子神经网络中的每个第一子神经网络分别进行训练,得到目标神经网络,其中,所述目标神经网络以及所述目标神经网络包括的子神经网络均为训练好的神经网络。
12.一种文本翻译装置,其特征在于,包括:
文本获取模块,用于获取待翻译文本;
翻译模块,用于通过目标设备上部署的翻译神经网络,对所述待翻译文本进行翻译,得到翻译结果;
其中,所述翻译神经网络为权利要求1至7中任意一项所述的待部署神经网络,和/或,所述翻译神经网络包括通过权利要求8所述的神经网络训练方法得到的目标神经网络和/或所述目标神经网络中的至少一个子神经网络。
13.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至7任一所述的神经网络部署方法、或如利要求8所述的神经网络训练方法、或如利要求9所述的文本翻译方法的步骤。
14.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至7任一所述的神经网络部署方法、或如利要求8所述的神经网络训练方法、或如利要求9所述的文本翻译方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010894158.3A CN111985624A (zh) | 2020-08-31 | 2020-08-31 | 神经网络训练和部署方法、文本翻译方法及相关产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010894158.3A CN111985624A (zh) | 2020-08-31 | 2020-08-31 | 神经网络训练和部署方法、文本翻译方法及相关产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111985624A true CN111985624A (zh) | 2020-11-24 |
Family
ID=73440325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010894158.3A Pending CN111985624A (zh) | 2020-08-31 | 2020-08-31 | 神经网络训练和部署方法、文本翻译方法及相关产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111985624A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112541577A (zh) * | 2020-12-16 | 2021-03-23 | 上海商汤智能科技有限公司 | 神经网络生成方法及装置、电子设备和存储介质 |
WO2023115776A1 (zh) * | 2021-12-24 | 2023-06-29 | 上海商汤智能科技有限公司 | 一种神经网络推理方法及装置、计算机设备、计算机可读存储介质、计算机程序产品 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107145946A (zh) * | 2017-03-17 | 2017-09-08 | 华南理工大学 | 一种在不同神经网络结构间进行知识迁移的方法 |
CN110517278A (zh) * | 2019-08-07 | 2019-11-29 | 北京旷视科技有限公司 | 图像分割和图像分割网络的训练方法、装置和计算机设备 |
CN111382863A (zh) * | 2018-12-28 | 2020-07-07 | 上海欧菲智能车联科技有限公司 | 一种神经网络压缩方法及装置 |
-
2020
- 2020-08-31 CN CN202010894158.3A patent/CN111985624A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107145946A (zh) * | 2017-03-17 | 2017-09-08 | 华南理工大学 | 一种在不同神经网络结构间进行知识迁移的方法 |
CN111382863A (zh) * | 2018-12-28 | 2020-07-07 | 上海欧菲智能车联科技有限公司 | 一种神经网络压缩方法及装置 |
CN110517278A (zh) * | 2019-08-07 | 2019-11-29 | 北京旷视科技有限公司 | 图像分割和图像分割网络的训练方法、装置和计算机设备 |
Non-Patent Citations (2)
Title |
---|
HAN CAI: "Once-for-All: Train One Network and Specialize it for Efficient Deployment", INTERNATIONAL CONFERENCE ON LEARNING REPRESENTATIONS, 26 April 2020 (2020-04-26), pages 1 - 15 * |
SHAWNL1: "Distilling the Knowledge in a Neural Network", pages 1 - 6, Retrieved from the Internet <URL:https://blog.csdn.net/shawnL1/article/details/103872311> * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112541577A (zh) * | 2020-12-16 | 2021-03-23 | 上海商汤智能科技有限公司 | 神经网络生成方法及装置、电子设备和存储介质 |
WO2023115776A1 (zh) * | 2021-12-24 | 2023-06-29 | 上海商汤智能科技有限公司 | 一种神经网络推理方法及装置、计算机设备、计算机可读存储介质、计算机程序产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109871532B (zh) | 文本主题提取方法、装置及存储介质 | |
CN111858869B (zh) | 一种数据匹配方法、装置、电子设备和存储介质 | |
CN108984155B (zh) | 数据处理流程设定方法和装置 | |
CN108304376B (zh) | 文本向量的确定方法、装置、存储介质及电子装置 | |
CN111985624A (zh) | 神经网络训练和部署方法、文本翻译方法及相关产品 | |
CN111870959A (zh) | 一种游戏中的资源推荐方法及装置 | |
CN111709415B (zh) | 目标检测方法、装置、计算机设备和存储介质 | |
CN111882048A (zh) | 一种神经网络结构搜索方法及相关设备 | |
CN114048322A (zh) | 知识图谱的噪声识别方法、装置及计算机可读存储介质 | |
CN114398040A (zh) | 一种神经网络推理方法、装置、计算机设备及存储介质 | |
CN113434722B (zh) | 图像分类方法、装置、设备及计算机可读存储介质 | |
JP7063274B2 (ja) | 情報処理装置、ニューラルネットワークの設計方法及びプログラム | |
CN116383521B (zh) | 主题词挖掘方法及装置、计算机设备及存储介质 | |
CN111324725B (zh) | 一种话题获取方法、终端、计算机可读存储介质 | |
CN116561338A (zh) | 工业知识图谱生成方法、装置、设备及存储介质 | |
CN114782720A (zh) | 文案的配图确定方法、装置、电子设备、介质及程序产品 | |
CN115115901A (zh) | 获取跨域学习模型的方法及装置 | |
Lysechko et al. | Experimental study of optimized face recognition algorithms for resource–constrained | |
CN113255933A (zh) | 特征工程和图网络生成方法和装置、分布式*** | |
CN114118411A (zh) | 图像识别网络的训练方法、图像识别方法及装置 | |
CN113159297A (zh) | 一种神经网络压缩方法、装置、计算机设备及存储介质 | |
CN113887458A (zh) | 一种训练方法、装置、计算机设备和存储介质 | |
CN111985644A (zh) | 神经网络生成方法及装置、电子设备及存储介质 | |
CN112825143A (zh) | 深度卷积神经网络压缩方法、装置、存储介质及设备 | |
CN115146596B (zh) | 召回文本的生成方法、装置、电子设备及存储介质 |
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 |