CN109791631A - 奖励增强模型训练 - Google Patents
奖励增强模型训练 Download PDFInfo
- Publication number
- CN109791631A CN109791631A CN201780052196.0A CN201780052196A CN109791631A CN 109791631 A CN109791631 A CN 109791631A CN 201780052196 A CN201780052196 A CN 201780052196A CN 109791631 A CN109791631 A CN 109791631A
- Authority
- CN
- China
- Prior art keywords
- output
- training
- machine learning
- candidate
- task
- 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
- 238000012549 training Methods 0.000 title claims abstract description 181
- 230000002708 enhancing effect Effects 0.000 title description 2
- 238000010801 machine learning Methods 0.000 claims abstract description 111
- 238000000034 method Methods 0.000 claims abstract description 36
- 230000006870 function Effects 0.000 claims description 30
- 238000009826 distribution Methods 0.000 claims description 28
- 238000005259 measurement Methods 0.000 claims description 22
- 238000005070 sampling Methods 0.000 claims description 22
- 238000003860 storage Methods 0.000 claims description 7
- 238000013519 translation Methods 0.000 claims description 7
- 238000007476 Maximum Likelihood Methods 0.000 claims description 4
- 230000000873 masking effect Effects 0.000 claims 1
- 238000012545 processing Methods 0.000 description 24
- 238000004590 computer program Methods 0.000 description 14
- 238000013528 artificial neural network Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 230000000306 recurrent effect Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000000712 assembly Effects 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 241000009334 Singa Species 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Machine Translation (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种方法包括获得识别要被训练以执行机器学习任务的机器学习模型的数据,所述机器学习模型被配置为接收输入示例并且根据多个模型参数的当前值来处理所述输入示例,以为所述输入示例生成模型输出;获得用于训练所述机器学习模型的初始训练数据,所述初始训练数据包括多个训练示例、以及对于每个训练示例,包括应当由所述机器学习模型通过处理所述训练示例生成的基础事实输出;从所述初始训练数据生成经修改的训练数据;以及在所述经修改的训练数据上训练所述机器学习模型。
Description
相关申请的交叉引用
本申请要求于2016年8月25日提交的美国临时申请序列No.62/379,705的优先权。该在先申请的公开内容被认为是本申请的公开内容的一部分并且通过引用结合在本申请的公开内容中。
背景技术
本说明书涉及训练机器学习模型。
机器学习模型接收输入并基于接收到的输入生成输出(例如,预测输出)。一些机器学习模型是参数模型,并基于接收到的输入和模型的参数的值生成输出。
一些机器学习模型是深度模型,其采用模型的多个层来为接收到的输入生成输出。例如,深度神经网络是深度机器学习模型,其包括输出层和一个或多个隐藏层,每个隐藏层将非线性变换应用于接收到的输入以生成输出。
一些神经网络是递归神经网络。递归神经网络是接收输入序列并从输入序列生成输出序列的神经网络。特别地,在从输入序列中的当前输入生成输出时,递归神经网络在处理输入序列中的先前输入之后使用网络的一些或全部内部状态。
发明内容
本说明书描述了在一个或多个地点的一个或多个计算机上实现为计算机程序的系统如何训练机器学习模型以执行机器学习任务(例如,结构化预测机器学习任务)。
一般而言,一个创新方面可以在用于训练机器学习模型的方法中嵌入。该方法包括:获得识别要被训练以执行机器学习任务的机器学习模型的数据,所述机器学习模型被配置为接收输入示例并且根据多个模型参数的当前值来处理输入示例,以为输入示例生成模型输出;获得用于训练机器学习模型的初始训练数据,所述初始训练数据包括多个训练示例以及,对于每个训练示例,包括应当由机器学习模型通过处理训练示例生成的基础事实(ground truth)输出;从初始训练数据生成经修改的训练数据,对于初始训练数据中的一个或多个训练示例中的每一个包括:通过对于多个候选辅助输出中的每一个,基于候选辅助输出相对于训练示例的基础事实输出的质量的相应测量,从多个候选辅助输出中进行选择,以从训练示例的基础事实输出为训练示例生成辅助输出,并且将训练示例的基础事实输出替换为训练示例的辅助输出;以及,在经修改的训练数据上训练机器学习模型。机器学习任务可以是结构化的输出预测任务。
在一些实现中,在经修改的训练数据上训练机器学习模型可以包括使用梯度下降训练技术训练机器学习模型,以生成与训练示例的辅助输出匹配的训练示例的模型输出。
在一些其它实现中,在经修改的训练数据上训练机器学习模型可以包括使用最大似然训练来训练机器学习模型。
所述候选辅助输出相对于基础事实输出的质量的测量可以是用于候选辅助输出的机器学习任务的任务奖励函数的值。机器学习任务可以是其中机器学习模型生成作为令牌序列的输出的任务,并且任务奖励函数是基础事实输出和候选辅助输出之间的负编辑距离。
在一些实现中,机器学习任务是机器翻译任务,并且任务奖励函数是候选辅助输出的BLEU得分。
在一些实现中,机器学习任务是语音识别任务,并且任务奖励函数是候选辅助输出的负字错误率。
在一些实现中,机器学习任务是图像掩蔽任务,并且任务奖励函数基于(i)在候选辅助输出中被掩蔽的像素和在基础事实输出中被掩蔽的像素的并集(union),以及(ii)在候选辅助输出中被掩蔽的像素和在基础事实输出中被掩蔽的像素的交集(intersection)。
从多个候选辅助输出中进行选择可以包括:根据多个候选辅助输出上的得分分布从多个候选辅助输出中采样候选辅助输出,其中所述得分分布中每个候选辅助输出的得分是基于候选辅助输出相对于训练示例的基础事实输出的质量的测量。每个候选输出的得分可以基于由控制得分分布的集中度(concentration)的温度超参数缩放的质量的测量。每个候选输出的得分可以与指数化的缩放的质量的测量成比例。对候选输出进行采样可以包括:使用分层采样和/或重要性采样对候选输出进行采样。
可以实现本说明书中描述的主题的特定实施例,以便实现以下优点中的一个或多个。本说明书中描述的主题一般而言针对用于结构化输出预测的训练方案,其将任务奖励优化结合到机器学习模型的训练中。针对输出的任务奖励被定义为其与用于输入的基础事实输出的相似性。在训练期间仅使用最大可能性或其它常规目标并忽略任务奖励的常规方法不能在给定训练输入的情况下辨别替代的不正确输出,例如,无论是接近还是远离基础事实目标,所有替代输出同样受到惩罚。通过将任务奖励函数结合到训练中,训练方案提供了对现有技术的改进,因为它产生了在训练之后更好地执行的机器学习模型(即,在任务上更好地执行的模型),因为它们可以生成在任务奖励函数上得分更高的输出。此外,训练方案使用经修改的训练数据来训练机器学习模型,所述训练数据包括从平稳分布而不是随时间演变(即,在训练过程中改变)的非平稳分布(例如,取决于模型参数的值的模型分布)采样的辅助输出。通过从不取决于时间的固定分布来采样辅助输出,一旦对辅助输出的集合进行了采样,就可以使用同一辅助输出集合来训练所有训练示例,而无需在训练期间对新的辅助输出集合进行采样。因此,该训练方案以计算高效的方式结合任务奖励函数,并且训练机器学习模型的系统可以使用其较少的存储容量,从而降低系统复杂性并缩短训练时间,同时与现有技术相比实现相同或更好的结果。
在附图和以下描述中阐述本说明书的主题的一个或多个实施例的细节。根据说明书、附图和权利要求,本主题的其它特征、方面和优点将变得显而易见。
附图说明
图1是机器学习系统的示例的框图。
图2是用于训练机器学习模型以执行机器学习任务的示例处理的流程图。
图3是用于从初始训练数据生成经修改的训练数据的示例处理的流程图。
各个附图中相同的标号和名称指示相同的元件。
具体实施方式
本说明书描述了在一个或多个地点的一个或多个计算机上实现为计算机程序的系统(例如,机器学习系统)如何训练机器学习模型以执行机器学习任务(例如,结构化预测机器学习任务)。给定输入x,结构化预测机器学习任务涉及预测作为结构化对象而不是标量离散值或实数值的输出y。例如,诸如文本到词性任务之类的自然语言处理任务(其涉及将自然语言中的句子翻译成诸如解析树的句法表示)是结构化的预测机器学习任务。其它结构化预测机器学习任务可以包括语音识别任务、机器翻译任务或图像掩蔽任务。
图1是机器学习系统100的示例的框图。机器学习系统100是在一个或多个地点的一个或多个计算机上实现为计算机程序的系统的示例,其中实现下面描述的系统、组件和技术。
机器学习系统100被配置为在机器学习任务上训练机器学习模型110。所述机器学习模型110是具有多个参数的参数模型。机器学习模型110可以接收输入并基于接收到的输入并基于所述模型110的参数的值生成输出(例如,预测的输出)。
在一些情况下,机器学习模型110是深度机器学习模型,其采用多层操作来为接收到的输入生成输出。例如,深度神经网络是深度机器学习模型,其包括输出层和一个或多个隐藏层,每个隐藏层将非线性变换应用于接收到的输入以生成输出。
一般而言,机器学习系统100通过调整机器学习模型110的参数的值来针对特定任务训练机器学习模型110,以优化模型110在特定任务上的性能,例如,通过优化目标函数。
为了在特定任务上训练机器学习模型110,所述机器学习系统100被配置为获得初始训练数据114。所述初始训练数据114包括训练示例以及,对于每个训练示例,应当由机器学习模型通过处理训练示例生成的基础事实输出。
然后,系统100从初始训练数据生成经修改的训练数据,并且在经修改的训练数据上(即,代替在获得的初始训练数据上)训练机器学习模型110。
特别地,系统100可以使用辅助输出生成引擎112生成经修改的训练数据。对于初始训练数据114中的一个或多个训练示例中的每一个,引擎112从训练示例的基础事实输出为训练示例生成辅助输出120。
特别地,对于给定训练示例和训练示例的对应基础事实输出,引擎112从候选辅助输出集合中选择候选辅助输出。在一些情况下,候选辅助输出集合是可以由模型110生成的所有输出的集合。在一些其它情况下,候选辅助输出集合是可以由模型110生成的所有输出的集合的子集。
对于每个候选辅助输出,基于候选辅助输出相对于(relative to)训练示例的基础事实输出的质量的测量,引擎112从候选辅助输出集合中选择候选辅助输出。一般而言,候选辅助输出相对于基础事实输出的质量的测量是用于辅助输出的机器学习任务的任务奖励函数的值。
为了选择候选辅助输出,引擎112根据候选辅助输出上的得分分布从候选辅助输出中采样候选辅助输出。所述得分分布中的每个候选辅助输出的得分是基于候选辅助输出相对于训练示例的基础事实输出的质量的测量。下面参考图3更详细地描述所述得分分布。
引擎112可以使用适合于分布和质量的测量的采样技术对候选辅助输出进行采样。例如,引擎112可以使用分层采样和/或重要性采样。
在引擎112针对每个训练示例对候选辅助输出进行采样之后,系统100用候选辅助输出替换训练示例的基础事实输出。然后,系统100使用候选辅助输出和训练示例作为经修改的训练数据,以在机器学习任务上训练模型110。给定经修改的训练数据,系统100训练模型110以确定优化目标函数的经训练的参数值116。下面参考图2更详细地描述在机器学习任务上训练模型110。
图2是用于训练机器学习模型以执行机器学习任务的示例处理的流程图。为方便起见,处理200将被描述为由位于一个或多个地点的一个或多个计算机的系统执行。例如,根据本说明书适当编程的机器学习系统(例如,图1的机器学习系统100)可以执行处理200。
所述系统获得识别要被训练以执行机器学习任务的机器学习模型的数据(步骤202)。
机器学习模型是具有多个参数的参数模型。机器学习模型被配置为接收输入示例并根据多个模型参数的当前值来处理输入示例,以便为输入示例生成模型输出。
在一些情况下,机器学习模型是深度机器学习模型,其使用模型的多个层为接收到的输入生成输出。例如,深度神经网络是深度机器学习模型,其包括输出层和一个或多个隐藏层,每个隐藏层将非线性变换应用于接收到的输入以生成输出。
接下来,系统获得用于训练机器学习模型的初始训练数据(步骤204)。初始训练数据包括多个示例以及,对于每个训练示例,对应的基础事实输出。给定训练示例的基础事实输出是应当由机器学习模型通过处理训练示例生成的输出。例如,初始训练数据可以包括N个训练示例-基础事实输出对的集合
其中x是训练示例,并且y*是训练示例的基础事实输出。
然后,系统从初始训练数据生成经修改的训练数据(步骤206)。
例如,针对初始训练数据中的一个或多个训练示例中的每一个,系统通过从训练示例的基础事实输出生成训练示例的辅助输出来生成经修改的训练数据。下面参考图3更详细地描述从初始训练数据生成经修改的训练数据。
然后,系统在经修改的训练数据上训练机器学习模型(步骤208)。一般而言,给定经修改的训练数据,系统通过调整机器学习模型的参数的值来在特定任务上训练机器学习模型,以优化模型在该特定任务上的性能,例如,通过优化目标函数。
在一些实现中,目标函数可以采用以下形式:
其中,对于每个训练示例,q(y|y*;τ)是针对训练示例的多个候选辅助输出(例如,可以由训练示例的模型生成的所有可能输出)的得分分布。给定训练示例的基础事实输出y*和用作控制得分分布集中度的超参数的温度参数τ,得分分布基于候选辅助输出相对于训练示例的基础事实输出的质量的测量向候选辅助输出集合中的候选辅助输出y指派得分。给定训练示例x并且给定机器学习模型的参数θ的当前值,log pθ(y|x)表示候选辅助输出y的对数似然。
给定经修改的训练数据,除了用于给定训练示例的基础事实输出被对应的辅助输出替换之外,系统可以通过遵循常规的最大似然训练处理在给定的训练示例上训练机器学习模型。
例如,最大似然训练处理中,目标函数的梯度可以采用以下形式:
给定一小批(a mini-batch)训练示例,系统可以使用随机梯度下降法来估计梯度特别地,对于所述一小批中的每个训练示例,系统首先根据得分分布q(y|y*;τ)使用训练示例的基础事实输出y*对训练示例的辅助输出y进行采样,然后在采样的辅助输出上优化对数似然,例如,通过遵循所述一小批中的训练示例的平均梯度。
得分分布q(y|y*;τ)结合了任务奖励函数,并且参考图3更详细地描述。但是,一般而言,所述分布q(y|y*;τ)在训练期间不改变,因此被称为平稳分布。因此,可以在训练开始之前对所有基础事实输出的所有辅助输出进行采样,并且在训练期间不需要从分布中再采样。虽然将任务奖励结合到训练中的其它方法(例如,基于强化学习的方法)将目标优化为预期奖励,其涉及从随时间演变的模型分布(即,非平稳分布)中采样并且因此需要在训练期间多次对辅助输出的多个集合进行采样,但是所描述的技术可以仅采样一个辅助输出集合并且将这个集合用于整个训练处理。因此,这种训练技术在计算上是高效的,因为它减少了训练处理所需的训练时间和计算机资源(例如,存储空间)。
图3是用于从初始训练数据生成经修改的训练数据的示例处理的流程图。为方便起见,处理300将被描述为由位于一个或多个地点的一个或多个计算机的系统执行。例如,根据本说明书适当编程的机器学习系统(例如,图1的机器学习系统100)可以执行处理300。
系统确定用于初始训练数据中的训练示例的候选辅助输出集合的得分分布(步骤302)。在一些情况下,候选辅助输出集合是可以由系统正在训练的机器学习模型生成的所有输出的集合。在一些其它情况下,候选辅助输出集合是可以由模型生成的所有输出的集合的子集。得分分布中的每个候选辅助输出的得分是基于候选辅助输出相对于训练示例的基础事实输出的质量的测量。
一般而言,候选辅助输出相对于基础事实输出的质量的测量是用于候选辅助输出的机器学习任务的任务奖励函数的值。
例如,如果机器学习任务是其中机器学习模型生成作为令牌序列的输出的任务(例如,自然语言处理任务、语音识别任务或机器翻译任务),那么任务奖励函数可以是基础事实输出和候选辅助输出之间的负编辑距离。
作为另一个示例,如果机器学习任务是机器翻译任务,那么任务奖励函数可以是候选辅助输出的BLEU得分。
作为另一个示例,如果机器学习任务是语音识别任务,那么任务奖励函数可以是候选辅助输出的负字错误率。
作为另一个示例,如果机器学习任务是图像掩蔽任务,那么任务奖励函数可以基于(i)在候选辅助输出中被掩蔽的像素和在基础事实输出中被掩蔽的像素的并集,以及(ii)在候选辅助输出中被掩蔽的像素和在基础事实输出中被掩蔽的像素的交集。
在一些情况下,得分可以基于由控制得分分布的集中度的温度超参数缩放的质量的测量。温度超参数可以是非负参数。另外,得分可以与被指数化后的缩放的质量的测量成比例。
例如,在一些实现中,得分分布可以表示如下:
其中y*是基础事实输出,y是属于候选辅助输出集合的候选辅助输出,r(y,y*)是确定候选辅助输出y相对于基础事实输出y*的质量的测量的任务奖励函数,τ是用作控制得分分布的集中度的超参数的温度参数,并且其中
在确定得分分布之后,系统针对初始训练数据中的一个或多个训练示例中的每一个,基于得分分布从训练示例的基础事实输出生成训练示例的辅助输出(步骤304)。
特别地,系统根据得分分布从候选辅助输出集合中采样候选辅助输出。
系统可以使用适合于得分分布和质量测量的采样技术对输出进行采样。
例如,系统可以使用分层采样对候选辅助输出进行采样。在分层采样中,系统首先选择两个候选辅助输出之间的距离度量(metric)。例如,对于其中机器学习模型生成作为令牌序列的输出的机器学习任务(例如,自然语言处理任务、语音识别任务或机器翻译任务),距离度量可以是汉明(Hamming)距离或编辑距离。在这种情况下,任务奖励函数r(y,y*)可以是基础事实输出与机器学习模型生成的模型输出之间的所选距离的负数。然后,系统通过使用重要性采样来根据具有任务奖励函数的分布q(y|y*;τ)对辅助输出进行采样。可以通过上述距离度量来定义重要性采样过程的提议分布。
在为每个训练示例生成辅助输出之后,系统用训练示例的辅助输出替换训练示例的基础事实输出(步骤306)。然后将训练示例和辅助输出用作经修改的训练数据以训练机器学习模型。
本规范使用与系统和计算机程序组件相关的术语“配置”。对于被配置为执行特定操作或动作的一个或多个计算机的系统,意味着系统已经在其上安装了软件、固件、硬件或它们的组合,这些软件、固件、硬件或它们的组合在操作中使得系统执行所述操作或动作。对于被配置为执行特定操作或动作的一个或多个计算机程序,意味着一个或多个程序包括当由数据处理装置执行时使装置执行所述操作或动作的指令。
本说明书中描述的主题和功能操作的实施例可以在数字电子电路系统中、在有形实施的计算机软件或固件中、在包括本说明书中公开的结构及其结构等同物的计算机硬件中,或者它们当中一个或多个的组合中实现。本说明书中描述的主题的实施例可以被实现为一个或多个计算机程序,即,在有形非瞬态存储介质上编码的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制数据处理装置的操作。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备,或它们当中的一个或多个的组合。可替代地或附加地,程序指令可以在人工生成的传播信号(例如,机器生成的电、光或电磁信号)上编码,其中信号被生成以编码信息,以传输到合适的接收器装置以供数据处理装置执行。
术语“数据处理装置”是指数据处理硬件并且涵盖用于处理数据的所有类型的装置、设备和机器,包括例如可编程处理器、计算机或者多个处理器或计算机。装置还可以或者还包括专用逻辑电路系统,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,装置还可以可选地包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或者它们当中的一个或多个的组合的代码。
也可以被称为或描述为程序、软件、软件应用、应用、模块、软件模块、脚本或代码的计算机程序可以用任何形式的编程语言编写,包括编译或解释性语言,或声明性或程序性语言;并且它可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程或适于在计算环境中使用的其它单元。程序可以但不必与文件系统中的文件对应。程序可以存储在保持其它程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本)、专用于所讨论的程序的单个文件中,或者存储在多个经协调的文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。可以部署计算机程序以在一个计算机上或在位于一个站点上或分布在多个站点上并通过通信网络互连的多个计算机上执行。
在本说明书中,术语“引擎”广泛地用于指被编程为执行一个或多个具体功能的基于软件的系统、子系统或处理。一般而言,引擎将被实现为安装在一个或多个地点的一个或多个计算机上的一个或多个软件模块或组件。在一些情况下,一个或多个计算机将专用于特定的引擎;在其它情况下,可以在同一个或多个计算机上安装和运行多个引擎。
本说明书中描述的处理和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过对输入数据进行操作并生成输出来执行功能。处理和逻辑流程也可以由专用逻辑电路系统(例如,FPGA或ASIC)或专用逻辑电路系统和一个或多个编程计算机的组合来执行。
适合于执行计算机程序的计算机可以基于通用或专用微处理器或两者,或任何其它类型的中央处理单元。一般而言,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。中央处理单元和存储器可以由专用逻辑电路系统补充或结合到专用逻辑电路系统中。一般而言,还将包括或可操作地耦合以从一个或多个大容量存储设备接收数据或将数据发送到一个或多个大容量存储设备或两者,用于存储数据,例如磁、磁光盘或光盘。但是,计算机不需要这样的设备。而且,计算机可以嵌入在另一个设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式存储设备(例如,通用串行总线(USB)闪存驱动器),以仅举几例。
适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动盘;磁光盘;以及CD ROM和DVD-ROM盘。
为了提供与用户的交互,本说明书中描述的主题的实施例可以在具有用于向用户显示信息的显示设备(例如CRT(阴极射线管)或LCD(液晶显示器)监视器)以及用户可以通过其向计算机提供输入的键盘和定点设备(例如,鼠标或轨迹球)的计算机上实现。其它种类的设备也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声学、语音或触觉输入。此外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过响应于从web浏览器接收的请求而将网页发送到用户的设备上的web浏览器。而且,计算机可以通过向个人设备(例如,运行消息收发应用的智能电话)发送文本消息或其它形式的消息来与用户交互,并且从用户接收响应消息作为回报。
用于实现机器学习模型的数据处理装置还可以包括例如专用硬件加速器单元,用于处理机器学习训练或生产的公共和计算密集部分(即,推断、工作负载)。
可以使用机器学习框架(例如,TensorFlow框架、Microsoft认知工具包框架、Apache Singa框架或Apache MXNet框架)来实现和部署机器学习模型。
本说明书中描述的主题的实施例可以在包括后端组件(例如作为数据服务器)或者包括中间件组件(例如应用服务器)或者包括前端组件(例如,客户端计算机,具有用户可通过其与本说明书中描述的主题的实现交互的图形用户界面、Web浏览器或应用)或者一个或多个此类后端、中间件或前端组件的任意组合的计算系统中实现。系统的组件可以通过任何形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(LAN)和广域网(WAN),例如,互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系凭借在相应计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。在一些实施例中,服务器将数据(例如,HTML页面)发送到用户设备,例如,为了向与作为客户端的设备交互的用户显示数据和从用户接收用户输入。可以在服务器处从设备接收在用户设备处生成的数据(例如,用户交互的结果)。
虽然本说明书包含许多具体的实现细节,但是这些不应当被解释为对任何发明的范围或可能要求保护的范围的限制,而是作为可以特定于特定发明的特定实施例的特征的描述。在单独实施例的上下文中在本说明书中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实施例中实现。而且,虽然上面可以将特征描述为以某些组合起作用并且甚至最初就是如此声明的,但是在一些情况下可以从组合中切除来自所要求保护的组合的一个或多个特征,并且所要求保护的组合可以针对子组合或子组合的变化。
类似地,虽然操作在附图中描绘并以特定次序在权利要求中叙述,但是这不应当被理解为要求以所示的特定次序或按顺序执行这些操作,或者所有示出的操作都被执行以实现期望的结果。在某些情况下,多任务处理和并行处理可以是有利的。而且,上述实施例中的各种系统模块和组件的分离不应当被理解为在所有实施例中都需要这种分离,并且应当理解的是,所描述的程序组件和系统一般可以在单个软件产品中集成在一起或打包成多个软件产品。
已经描述了主题的特定实施例。其它实施例在以下权利要求的范围内。例如,权利要求中陈述的动作可以以不同的次序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的处理不一定需要所示的特定次序或顺序次序以实现期望的结果。在一些情况下,多任务处理和并行处理可以是有利的。
Claims (17)
1.一种方法,包括:
获得识别要被训练以执行机器学习任务的机器学习模型的数据,所述机器学习模型被配置为接收输入示例并且根据多个模型参数的当前值来处理所述输入示例,以为所述输入示例生成模型输出;
获得用于训练所述机器学习模型的初始训练数据,所述初始训练数据包括多个训练示例、以及针对每个训练示例包括应当由所述机器学习模型通过处理所述训练示例生成的基础事实输出;
对于所述初始训练数据中的一个或多个训练示例中的每一个训练示例,从所述初始训练数据生成经修改的训练数据:
通过对于多个候选辅助输出中的每一个候选辅助输出,基于所述候选辅助输出相对于所述训练示例的所述基础事实输出的质量的相应测量,从所述多个候选辅助输出中进行选择,以从所述训练示例的所述基础事实输出为所述训练示例生成辅助输出,以及
将所述训练示例的所述基础事实输出替换为所述训练示例的所述辅助输出;以及
在所述经修改的训练数据上训练所述机器学习模型。
2.如权利要求1所述的方法,其中所述机器学习任务是结构化输出预测任务。
3.如权利要求1或2中任一项所述的方法,其中在所述经修改的训练数据上训练所述机器学习模型包括使用梯度下降训练技术来训练所述机器学习模型以生成与所述训练示例的所述辅助输出匹配的所述训练示例的模型输出。
4.如权利要求3所述的方法,其中在所述经修改的训练数据上训练所述机器学习模型包括使用最大似然训练来训练所述机器学习模型。
5.如权利要求1-4中任一项所述的方法,其中所述候选辅助输出相对于所述基础事实输出的质量的测量是用于所述候选辅助输出的机器学习任务的任务奖励函数的值。
6.如权利要求5所述的方法,其中所述机器学习任务是其中所述机器学习模型生成作为令牌序列的输出的任务,并且其中所述任务奖励函数是所述基础事实输出和所述候选辅助输出之间的负编辑距离。
7.如权利要求5所述的方法,其中所述机器学习任务是机器翻译任务,并且其中所述任务奖励函数是所述候选辅助输出的BLEU得分。
8.如权利要求5所述的方法,其中所述机器学习任务是语音识别任务,并且其中所述任务奖励函数是所述候选辅助输出的负字错误率。
9.如权利要求5所述的方法,其中所述机器学习任务是图像掩蔽任务,并且其中所述任务奖励函数基于(i)在所述候选辅助输出中被掩蔽的像素和在所述基础事实输出中被掩蔽的像素的并集,以及(ii)在所述候选辅助输出中被掩蔽的像素和在所述基础事实输出中被掩蔽的像素的交集。
10.如权利要求1-9中任一项所述的方法,其中从所述多个候选辅助输出中进行选择包括:
根据所述多个候选辅助输出上的得分分布从所述多个候选辅助输出中采样候选辅助输出,其中所述得分分布中每个候选辅助输出的得分是基于所述候选辅助输出相对于所述训练示例的所述基础事实输出的质量的测量。
11.如权利要求10所述的方法,其中所述得分分布是平稳分布。
12.如权利要求10和11中任一项所述的方法,其中每个候选输出的所述得分是基于由控制所述得分分布的集中度的温度超参数缩放的质量的测量。
13.如权利要求12所述的方法,其中每个候选输出的所述得分与指数化的缩放的质量的测量成比例。
14.如权利要求9-13中任一项所述的方法,其中对所述候选输出进行采样包括:
使用分层采样对所述候选输出进行采样。
15.如权利要求9-14中任一项所述的方法,其中对所述候选输出进行采样包括:
使用重要性采样对所述候选输出进行采样。
16.一种系统,包括一个或多个计算机以及存储指令的一个或多个存储设备,所述指令在由所述一个或多个计算机执行时可操作,以使所述一个或多个计算机执行如权利要求1-15中任一项所述的相应方法的操作。
17.一种编码有指令的计算机存储介质,所述指令在由一个或多个计算机执行时,使得所述一个或多个计算机执行如权利要求1-15中任一项所述的相应方法的操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662379705P | 2016-08-25 | 2016-08-25 | |
US62/379,705 | 2016-08-25 | ||
PCT/US2017/048529 WO2018039510A1 (en) | 2016-08-25 | 2017-08-25 | Reward augmented model training |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109791631A true CN109791631A (zh) | 2019-05-21 |
Family
ID=59772816
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780052196.0A Pending CN109791631A (zh) | 2016-08-25 | 2017-08-25 | 奖励增强模型训练 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20190188566A1 (zh) |
EP (1) | EP3475890A1 (zh) |
CN (1) | CN109791631A (zh) |
WO (1) | WO2018039510A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110738062A (zh) * | 2019-09-30 | 2020-01-31 | 内蒙古工业大学 | 一种gru神经网络蒙汉机器翻译方法 |
CN112137835A (zh) * | 2019-06-27 | 2020-12-29 | 丰田自动车株式会社 | 学习系统、复健辅助系统、方法、程序及学习完毕模型 |
WO2022155842A1 (en) * | 2021-01-21 | 2022-07-28 | Alibaba Group Holding Limited | Quality estimation for automatic speech recognition |
CN115023695A (zh) * | 2020-01-21 | 2022-09-06 | 微软技术许可有限责任公司 | 更新用于人工智能的训练示例 |
TWI790443B (zh) * | 2019-06-01 | 2023-01-21 | 美商蘋果公司 | 用於機器學習模型建立之技術 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11144718B2 (en) * | 2017-02-28 | 2021-10-12 | International Business Machines Corporation | Adaptable processing components |
CN108681490B (zh) * | 2018-03-15 | 2020-04-28 | 阿里巴巴集团控股有限公司 | 针对rpc信息的向量处理方法、装置以及设备 |
US10565475B2 (en) * | 2018-04-24 | 2020-02-18 | Accenture Global Solutions Limited | Generating a machine learning model for objects based on augmenting the objects with physical properties |
US11551044B2 (en) | 2019-07-26 | 2023-01-10 | Optum Services (Ireland) Limited | Classification in hierarchical prediction domains |
US20210027206A1 (en) * | 2019-07-26 | 2021-01-28 | Optum Services (Ireland) Limited | Classification in hierarchical prediction domains |
US11755743B2 (en) * | 2019-09-03 | 2023-09-12 | Microsoft Technology Licensing, Llc | Protecting machine learning models from privacy attacks |
US11823058B2 (en) * | 2019-09-20 | 2023-11-21 | Google Llc | Data valuation using reinforcement learning |
US11354595B2 (en) * | 2020-04-01 | 2022-06-07 | International Business Machines Corporation | Similarity-based hierarchical data loading for machine learning training |
US11755688B2 (en) * | 2021-03-30 | 2023-09-12 | Singulos Research Inc. | Apparatus and method for generating training data for a machine learning system |
-
2017
- 2017-08-25 EP EP17761752.9A patent/EP3475890A1/en active Pending
- 2017-08-25 WO PCT/US2017/048529 patent/WO2018039510A1/en active Search and Examination
- 2017-08-25 US US16/328,207 patent/US20190188566A1/en not_active Abandoned
- 2017-08-25 CN CN201780052196.0A patent/CN109791631A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI790443B (zh) * | 2019-06-01 | 2023-01-21 | 美商蘋果公司 | 用於機器學習模型建立之技術 |
US11783223B2 (en) | 2019-06-01 | 2023-10-10 | Apple Inc. | Techniques for machine language model creation |
CN112137835A (zh) * | 2019-06-27 | 2020-12-29 | 丰田自动车株式会社 | 学习系统、复健辅助系统、方法、程序及学习完毕模型 |
CN110738062A (zh) * | 2019-09-30 | 2020-01-31 | 内蒙古工业大学 | 一种gru神经网络蒙汉机器翻译方法 |
CN115023695A (zh) * | 2020-01-21 | 2022-09-06 | 微软技术许可有限责任公司 | 更新用于人工智能的训练示例 |
WO2022155842A1 (en) * | 2021-01-21 | 2022-07-28 | Alibaba Group Holding Limited | Quality estimation for automatic speech recognition |
Also Published As
Publication number | Publication date |
---|---|
US20190188566A1 (en) | 2019-06-20 |
WO2018039510A1 (en) | 2018-03-01 |
EP3475890A1 (en) | 2019-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109791631A (zh) | 奖励增强模型训练 | |
JP7157154B2 (ja) | 性能予測ニューラルネットワークを使用したニューラルアーキテクチャ探索 | |
JP7210531B2 (ja) | ニューラルアーキテクチャ検索 | |
JP6790286B2 (ja) | 強化学習を用いたデバイス配置最適化 | |
US11164573B2 (en) | Method and apparatus for controlling page | |
US11288568B2 (en) | Reinforcement learning using advantage estimates | |
EP3446260B1 (en) | Memory-efficient backpropagation through time | |
EP3523759B1 (en) | Image processing neural networks with separable convolutional layers | |
US10268671B2 (en) | Generating parse trees of text segments using neural networks | |
KR102302609B1 (ko) | 신경망 아키텍처 최적화 | |
KR102172277B1 (ko) | 듀얼 심층 신경 네트워크 | |
JP6789303B2 (ja) | ニューラルネットワークを用いたテキストセグメントの係り受け解析の生成 | |
US9141916B1 (en) | Using embedding functions with a deep network | |
US11328183B2 (en) | Imagination-based agent neural networks | |
JP7316453B2 (ja) | オブジェクト推薦方法及び装置、コンピュータ機器並びに媒体 | |
CN110023928A (zh) | 预测搜索引擎排名信号值 | |
JP2021501417A (ja) | ニューラルアーキテクチャ検索 | |
JP2019517074A (ja) | 疑似カウントを使用する強化学習 | |
US20190295688A1 (en) | Processing biological sequences using neural networks | |
CN110291540A (zh) | 批再归一化层 | |
CN110402445A (zh) | 使用递归神经网络处理序列数据 | |
CN110462638A (zh) | 使用后验锐化训练神经网络 | |
CN109643323A (zh) | 使用强化学习来选择内容项 | |
CN109891437A (zh) | 使用神经网络处理文本序列 | |
US20160266874A1 (en) | Technology recommendation for software environment |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190521 |