Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

大规模集成Transformer模型,阿里达摩院如何打造WMT 2018机器翻译获胜系统

在刚刚结束的 WMT2018 国际机器翻译大赛上,阿里巴巴达摩院机器智能实验室机器翻译团队打败多个国外巨头与研究机构,并在英文-中文翻译、英文-俄罗斯语互译、英文-土耳其语互译这 5 个项目的自动评测指标 BLEU 分值都位居第一。阿里达摩院机器智能实验室的陈博兴博士和司罗教授向机器之心介绍了阿里在机器翻译领域的布局应用,以及如何通过对标准的 Transformer 模型进行改进和优化,而获得更为优秀的神经机器翻译系统。

WMT 的全称是 Workshop on Machine Translation,是国际公认的顶级机器翻译赛事之一,也是各大科技公司与学术机构展示自身机器翻译实力的平台。由陈博兴博士带领的达摩院机器翻译团队,在此次比赛中使用业界最新的 Transformer 结构,进行了网络结构的改进和对词语位置信息的充分利用,全面改进了机器翻译的性能。更重要的是,翻译团队充分利用了阿里的计算资源优势,每一种翻译任务都集成了几十上百个基础模型,这需要非常庞大的计算力而实现最优的性能。

在本文中,我们首先会介绍阿里达摩院为什么要做机器翻译及它在 WMT 2018 所采用的基础模型和修正方法,同时还会介绍达摩院所采用的模型集成方法。随后我们还将介绍阿里在模型训练中所采用的模型调优方法,它们可以令译文具有更好的可读性。最后,我们会介绍这一顶尖神经机器翻译系统的部署与应用。

为什么阿里要做机器翻译

机器翻译是阿里国际化的生命线。」印度、拉美、东南亚等新兴市场,都被认为将产生「下一个五万亿美元」。作为阿里达摩院机器智能实验室 NLP 首席科学家,司罗不仅肩负着带领团队探索机器翻译前沿技术的任务,更要支持阿里全球业务的快速发展,帮助阿里国际化跨过「语言」这道门槛。

「这也是为什么阿里在此次 WMT 比赛上,除了英中翻译外,还参加中国企业很少涉足的英文-俄罗斯语互译、英文-土耳其语互译,并在这 4 个项目上战胜诸多国外巨头与研究机构,夺得冠军。这背后的推动力量,正是机器翻译在阿里国际化中体现的巨大业务价值。同时,背靠世界最大、质量最好的跨境电商语料库,也让阿里机器翻译技术能在短时间内,取得世界领先。这就是我们期待看到的,研发与业务的协同发展。」

阿里在神经机器翻译模型上的探索

近年来,基于编码器解码器框架的神经机器翻译系统取得了很大的进步与应用。最开始我们基于循环神经网络构建神经机器翻译的标准模型,后来我们考虑使用卷积神经网络提升并行训练效果,而去年谷歌等研究团队更是提出不使用 CNN 和 RNN 抽取特征的 Transformer。尽管 Transformer 在解码速度和位置编码等方面有一些缺点,但它仍然是当前效果最好的神经机器翻译基本架构。

阿里机器翻译团队在 WMT 2018 竞赛上主要采用的还是 Transformer 模型,但是会根据最近的一些最新研究对标准 Transformer 模型进行一些修正。这些修正首先体现在将 Transformer 中的 Multi-Head Attention 替换为多个自注意力分支,而模型会在训练阶段中将学习结合这些分支注意力模块。其次,阿里采用了一种编码相对位置的表征以扩展自注意力机制,并令模型能更好地理解序列元素间的相对距离。

不过据陈博兴博士介绍,在阿里集成的基础模型中,也会有一些基于 RNN 的 Seq2Seq 模型,它会使用标准的编码器-注意力机制-解码器的架构。这些 Seq2Seq 模型在每项翻译任务中大约占所有集成模型中的 10%,集成模型的主体还是 Transformer 模型。

在 NMT 中,基于 Seq2Seq 的模型一般在编码器中会使用多层 LTSM 对输入的源语词嵌入向量进行建模,并编码为一个上下文向量。但是这样编码的定长上下文向量很难捕捉足够的语义信息,因此更好的方法即读取整个句子或段落以获取上下文和主旨信息,然后每一个时间步输出一个翻译的目标语词,且每一个时间步都关注输入语句的不同部分以获取翻译下一个词的语义细节。这种关注输入语句不同部分的方法即注意力机制。Seq2Seq 模型的最后一部分即将编码器与注意力机制提供的上下文信息输入到由 LSTM 构成的解码器中,并输出预测的目标语。

虽然基于 RNN 的 Seq2Seq 模型非常简洁明了,但目前最优秀的神经机器翻译模型并没有采用这种架构。例如去年 Facebook 在 Convolutional Sequence to Sequence Learning 论文中提出的用 CNN 做神经机器翻译,它在准确度尤其是训练速度上都要超过最初基于 RNN 的模型。而后来谷歌在论文 Attention is all you need 中所提出的 Transformer 更进一步利用自注意力机制抽取特征而实现当前最优的翻译效果。

Transformer 基本架构

阿里在翻译系统中主要采用的模型架构还是谷歌原论文所提出的 Transformer。陈博士表示,目前无论是从性能、结构还是业界应用上,Transformer 都有很多优势。例如,自注意力这种在序列内部执行 Attention 的方法可以视为搜索序列内部的隐藏关系,这种内部关系对于翻译以及序列任务的性能有显著性提升。

如 Seq2Seq 一样,原版 Transformer 也采用了编码器-解码器框架,但它们会使用多个 Multi-Head Attention、前馈网络、层级归一化和残差连接等。下图从左到右展示了原论文所提出的 Transformer 架构、Multi-Head Attention 和标量点乘注意力。本文只简要介绍这三部分的基本概念与结构,更详细的 Transformer 解释与实现请查看机器之心的 GitHub 项目:基于注意力机制,机器之心带你理解与训练神经机器翻译系统

正如与陈博士所讨论的,上图右边的标量点乘注意力其实就是标准 Seq2Seq 模型中的注意力机制。其中 Query 向量与 Value 向量在 NMT 中相当于目标语输入序列与源语输入序列,Query 与 Key 向量的点乘相当于余弦相似性,经过 SoftMax 函数后可得出一组归一化的概率。这些概率相当于给源语输入序列做加权平均,即表示在翻译一个词时源语序列哪些词是重要的。

上图中间的 Multi-head Attention 其实就是多个点乘注意力并行地处理并最后将结果拼接在一起。一般而言,我们可以对三个输入矩阵 Q、V、K 分别进行 h 个不同的线性变换,然后分别将它们投入 h 个点乘注意力函数并拼接所有的输出结果。这种注意力允许模型联合关注不同位置的不同表征子空间信息,我们可以理解为在参数不共享的情况下,多次执行点乘注意力。阿里的翻译系统其实会使用另一种组合点乘注意力的方法,即不如同 Multi-head 那样拼接所有点乘输出,而是对点乘输出做加权运算。

最后上图左侧为 Transformer 的整体架构。输入序列首先会转换为词嵌入向量,在与位置编码向量相加后可作为 Multi-Head 自注意模块的输入,该模块的输出再与输入相加后将投入层级归一化函数,得出的输出再馈送到全连接层后可得出编码器模块的输出。这样相同的 6 个编码器模块(N=6)可构成整个编码器架构。解码器模块首先同样构建了一个自注意力模块,然后再结合前面编码器的输出实现 Multi-Head Attention,最后投入全连接网络并输出预测词概率。此外,每一个编码器与解码器的子层都会带有残差连接与 Dropout 正则化

加权的 Transformer 网络

阿里根据论文 WEIGHTED TRANSFORMER NETWORK FOR MACHINE TRANSLATION 修正原版网络架构,陈博士表示:「我们首先将谷歌原论文中的 Multi-Head 改进为 Multi-Branch,也就是在每次执行注意力计算时,模型会考虑多个分支以获得更多的信息。这种机制修正原版 Transformer 中等价处理每一个点乘注意力的方式,而允许为不同点乘注意力分配不同的权重。Multi-Branch 的方法因为简化了优化过程而能提升收敛速度 15 − 40%,且还能提升 0.5 个 BLEU 分值。」

对于加权的 Transformer 来说,我们需要修改谷歌原版中的 Multi-Head 与 FFN。首先计算多个点乘注意力 head_i 的方式是一样的,不过 Multi-Branch 如下会计算 head_i bar 而不是将所有 head 拼接在一起。head_i bar 即归一化的点乘注意力,它输入前馈网络 FFN 并将结果做加权和就能得出 Multi-Branch 的最后输出。

其中所有 k_i 与α_i 的和分别都等于 1,M 表示总的分支数,且表达式 BranchedAttention 会计算所有独立分支注意力值的加权和。如下所示为阿里翻译系统所采用的 Multi-Branch 结构,其中 k 是可学习的参数以缩放所有分支对后续运算的贡献大小,α 同样也评估各注意力分支对结果的贡献大小。

如下所示编码器与解码器的架构基本一致,只不过解码器会增加一个 Mask 层以控制模型能访问的目标语序列,即避免当前位置注意到后面位置的信息。这种 Multi-Branch 的修正结构每一个模块只会增加 M 个参数,即 α 的数量,这对于整体模型来说基本是可忽略不计的。

相对位置表征

除了采用 Multi-branch 代替 Multi-head,阿里在 WMT 2018 竞赛上采用的模型还有一处比较大的修改,即使用一种可以表征相对位置方法代替谷歌原论文中所采用的位置编码。这种位置信息在注意力机制中非常重要,因为 Transformer 仅采用注意力机制,而它本身并不能像 RNN 或 CNN 那样获取序列的位置顺序信息。所以如果语句中每一个词都有特定的位置,那么每一个词都可以使用向量编码位置信息,这样注意力机制就能分辨出不同位置的词。

陈博士说:「我们另一个改进是参考了谷歌最近发表的一篇论文,在自注意力机制中加入相对位置信息。在 Transformer 原论文中,位置编码使用的是绝对位置信息,也就是说每一个位置会给一个固定的描述。但是我们在实践中发现语言中的相对位置非常重要,例如在英语到法语的翻译中,英语是形容词加名词,而法语是名词加形容词。这种位置结构其实与短语所在的绝对位置没有太大的关系,相反相对位置对正确的翻译会有很大的影响。」

在原版 Transformer 中,谷歌研究者使用不同频率的正弦和余弦函数实现位置编码:

其中 pos 为词的位置,i 为位置编码向量的第 i 个元素。给定词的位置 pos,我们可以将词映射到 d_model 维的位置向量,该向量第 i 个元素就由上面两个式子计算得出。也就是说,位置编码的每一个维度对应于正弦曲线,波长构成了从 2π到 10000⋅2π的等比数列。

而阿里机器翻译团队采用的方法会考虑输入序列中成对元素之间的位置关系,因此我们可以将输入词序列建模为一个有向的全连接图。在论文 Self-Attention with Relative Position Representations 中,作者们将词 x_i 到词 x_j 之间的有向边表示为  两个向量,它们分别会与 Value 和 Key 向量相加而添加 x_i 到 x_j 的相对位置信息。

上图展示了将输入词序列表示为一个有向全连接图,成对词之间会有两条有向边。每条边都编码了相对位置信息,且相对位置信息的表达如上已经给出。

如下我们将向原版点乘自注意力运算中加入相对位置信息:

其中 z_i 表示一个点乘注意力,α 表示经过 Softmax 后的概率,它衡量了输入序列需要注意哪些词。后面即 Value 向量加上相对位置信息的过程,因为是自注意力过程,所以 Value 向量等于输入向量。因为 Value 向量与 Key 向量是成对出现的,所以相对位置信息同时还应该添加到 Key 向量中,如下表达式在计算 Query 与 Key 向量间相似性的过程中实现了这一点:

其中 e 为 Query 向量与 Key 向量的内积,度量了它们之间的余弦相似性,如果将这种相似性归一化则可以度量翻译某个词时我们应该关注哪些重要的输入词。同样因为这是自注意力机制,那么 Query 与 Key 向量都是输入向量 x。上式分子中的相加项即将相对位置信息加入 Key 向量中。

除了上述这种标准的相对位置修正外,陈博士还表示阿里机器翻译团队在解码部分也会添加这种相对位置信息,这种改进能提升大概 0.4 个 BLEU 分值。

模型集成

对于追求极致准确度的模型来说,速度并不是阿里参赛系统所首要考虑的事情。陈博士说:「这个比赛系统追求性能上的最大化,因此我们会准备上百到几百个基础模型,然后再根据贪心算法从这些备选的基础模型中获取最优的集成方案。一般这样的集成根据不同的任务会有几十到上百个基础模型。」

其实前面所述的新型 Transformer 架构与修正方案并不会引起翻译质量的质变,阿里翻译模型真正强大的地方在于大规模的模型集成,这强烈地需要阿里云提供算力支持。这种大规模的集成模型除了需要海量的计算力,同时在调参与优化过程中会遇到很多困难。这一点,阿里云与阿里机器翻译团队凭借经验有效地解决了它们。

据陈博士表示,阿里在选择集成的基础模型时会使用贪心算法。也就是说首先选择第一个基于 Seq2Seq 或 Transformer 的基础模型,然后从几百个备选模型中依次选择不同的基础模型,并考虑能获得最优性能的两模型集成方法。有了前面两个模型的集成,再考虑集成哪个模型能获得最好的性能而确定三模型集成方法。这样一直迭代下去,直到添加任何基础模型都不能提升性能就结束集成策略。这一过程对于计算力的需求非常大,因此还是得益于阿里云的支持。

最后在集成模型的联合预测中,阿里机器翻译团队采取所有基础模型预测结果的期望作为下一个词的预测结果。陈博士说:「在集成模型预测下一个词的时候,各个基础模型都会给下一个词打分,而我们会取这些分值的加权平均值作为最后的预测分值。其中各基础模型所加的权也是模型自己学的,优秀基础模型所赋予的权重会大一些,不那么优秀的会赋予小的权重。」

调优与应用

提升译文效果

阿里其实也用了两种技术提升译文的可读性,首先是基于神经网络的词尾预测,这一研究成果阿里已经发表在了今年的 AAAI 上。其次是另一种干预神经网络翻译时间与日期的技术。第一种技术主要解决的是复杂词形的翻译,例如在英语到俄语的翻译中,阿里会将词干与词尾切分开,然后先预测词干再预测词尾。这样词尾的预测能利用更多的信息而提升预测结果,因此也就能提升复杂词形的译文效果。

第二个技术关注于数字或日期等低频词的翻译。因为神经网络很难从细节学习到数字或日期的翻译,所以阿里在原文端使用命名实体识别标记它们,并基于简单的规则系统进行翻译。这样就能提升译文的流利程度与翻译效果。

在 WMT 挑战赛外,在真实场景的翻译中,司罗教授表示:「阿里的翻译团队既包括机器翻译团队,也包括人工翻译团队。其中机器翻译团队完全是算法驱动的,而人工翻译团队会基于机器翻译进行修正。这样机器翻译与人工翻译就能成为一种促进关系,人力可以对翻译结果进行修正并反馈给系统而产生更流畅的译文。」

根据陈博士的解释,阿里巴巴在论文 Improved English to Russian Translation by Neural Suffix Prediction 中提出的这种词尾预测方法在解码过程中会独立地预测词干与词尾,它的基本观察即俄语和土耳其语等语言中的词尾更多与前后词的词尾相关,而与前后词的词干关系比较小。具体来说,在每一个解码过程中都会先于词尾生成词干。且在训练过程中会使用两种类型的目标端序列,即词干序列与词尾序列,它们都是原目标端序列分割出来的。下图展示了目标端(俄语)的这种词干与词尾分割:

其中词尾序列中的标记「N」代表对应词干没有词尾,上图下部分的 stemming 表示从原目标序列切分为词干和词尾两部分。由于词干的数量要远少于词的数量,且词尾的数量甚至只有数百,这很大程度上降低了词汇数据的稀疏性。此外,这种结构在预测词尾时可以考虑前面生成的词干序列,这进一步提升了词尾预测的准确性,也令译文读起来更加流畅。

部署与应用

其实模型在推断过程中也会做一些如量化等模型压缩方法,陈博士表示阿里在训练中会使用 FP32,而在推断中会使用 FP8 以节省计算成本。但为 WMT 2018 准备的高性能模型并不能直接部署到应用中,因为实际应用要求更低的延迟。

陈博士说:「如果要翻译一个 30 词的句子,我们需要控制响应时间在 200 毫秒左右。因此我们需要在效率和性能上找到一个平衡,一般已经应用的在线系统也使用相同的基础模型,但不会如同竞赛系统那样实现大规模的集成。此外,在这一次的 WMT 竞赛中,我们累积了非常多的经验,因此随后我们也会将这些经验逐渐加到在线系统中去。」

阿里翻译团队选择小语种作为攻克对象是根据阿里巴巴业务而定的,不论是俄语还是土耳其语,阿里巴巴电商都需要将英文的产品描述翻译到对应的小语种,所以有这样优秀的翻译平台才能扩展业务。

据悉,阿里现在每天的电商机器翻译总量已达 7.5 亿次。以阿里巴巴国际站为例,七成买家以英语沟通,还有 30% 为小语种。而卖家端的调研数据显示,大约 96% 的卖家对小语种无能为力,需要借助第三方软件工具进行翻译沟通。这一现状,催生了对机器翻译的巨大需求。

伴随着阿里速卖通、全球站在俄罗斯、西班牙、巴西、土耳其等国的发展,目前阿里机器翻译团队已能支持包括俄语、西班牙语、泰语、印尼语、土耳其语在内的 21 种语言。包含跨境贸易所需的商品内容展示,跨语言搜索,买卖家实时沟通翻译等 100 多个跨境电商服务场景。

司罗教授表示:「机器翻译的发展无法脱离用户与场景,阿里机器翻译的不断进步,得益于在电商、新零售、物流等领域积累的丰富场景和数据。特别是在俄语、土耳其语、西班牙语的探索上,让我们看到了机器翻译的巨大商业价值与应用潜力。」

工程神经机器翻译自然语言处理达摩院Transformer
2
相关数据
权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

神经机器翻译技术

2013 年,Nal Kalchbrenner 和 Phil Blunsom 提出了一种用于机器翻译的新型端到端编码器-解码器结构 [4]。该模型可以使用卷积神经网络(CNN)将给定的一段源文本编码成一个连续的向量,然后再使用循环神经网络(RNN)作为解码器将该状态向量转换成目标语言。他们的研究成果可以说是神经机器翻译(NMT)的诞生;神经机器翻译是一种使用深度学习神经网络获取自然语言之间的映射关系的方法。NMT 的非线性映射不同于线性的 SMT 模型,而且是使用了连接编码器和解码器的状态向量来描述语义的等价关系。此外,RNN 应该还能得到无限长句子背后的信息,从而解决所谓的「长距离重新排序(long distance reordering)」问题。

词嵌入技术

词嵌入是自然语言处理(NLP)中语言模型与表征学习技术的统称。概念上而言,它是指把一个维数为所有词的数量的高维空间嵌入到一个维数低得多的连续向量空间中,每个单词或词组被映射为实数域上的向量。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

收敛技术

在数学,计算机科学和逻辑学中,收敛指的是不同的变换序列在有限的时间内达到一个结论(变换终止),并且得出的结论是独立于达到它的路径(他们是融合的)。 通俗来说,收敛通常是指在训练期间达到的一种状态,即经过一定次数的迭代之后,训练损失和验证损失在每次迭代中的变化都非常小或根本没有变化。也就是说,如果采用当前数据进行额外的训练将无法改进模型,模型即达到收敛状态。在深度学习中,损失值有时会在最终下降之前的多次迭代中保持不变或几乎保持不变,暂时形成收敛的假象。

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

机器翻译技术

机器翻译(MT)是利用机器的力量「自动将一种自然语言(源语言)的文本翻译成另一种语言(目标语言)」。机器翻译方法通常可分成三大类:基于规则的机器翻译(RBMT)、统计机器翻译(SMT)和神经机器翻译(NMT)。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

卷积神经网络技术

卷积神经网路(Convolutional Neural Network, CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。卷积神经网路由一个或多个卷积层和顶端的全连通层(对应经典的神经网路)组成,同时也包括关联权重和池化层(pooling layer)。这一结构使得卷积神经网路能够利用输入数据的二维结构。与其他深度学习结构相比,卷积神经网路在图像和语音识别方面能够给出更好的结果。这一模型也可以使用反向传播算法进行训练。相比较其他深度、前馈神经网路,卷积神经网路需要考量的参数更少,使之成为一种颇具吸引力的深度学习结构。 卷积网络是一种专门用于处理具有已知的、网格状拓扑的数据的神经网络。例如时间序列数据,它可以被认为是以一定时间间隔采样的一维网格,又如图像数据,其可以被认为是二维像素网格。

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

余弦相似性技术

余弦相似性通过测量两个向量的夹角的余弦值来度量它们之间的相似性。0度角的余弦值是1,而其他任何角度的余弦值都不大于1;并且其最小值是-1。从而两个向量之间的角度的余弦值确定两个向量是否大致指向相同的方向。两个向量有相同的指向时,余弦相似度的值为1;两个向量夹角为90°时,余弦相似度的值为0;两个向量指向完全相反的方向时,余弦相似度的值为-1。这结果是与向量的长度无关的,仅仅与向量的指向方向相关。余弦相似度通常用于正空间,因此给出的值为0到1之间。

命名实体识别技术

命名实体识别(NER)是信息提取(Information Extraction)的一个子任务,主要涉及如何从文本中提取命名实体并将其分类至事先划定好的类别,如在招聘信息中提取具体招聘公司、岗位和工作地点的信息,并将其分别归纳至公司、岗位和地点的类别下。命名实体识别往往先将整句拆解为词语并对每个词语进行此行标注,根据习得的规则对词语进行判别。这项任务的关键在于对未知实体的识别。基于此,命名实体识别的主要思想在于根据现有实例的特征总结识别和分类规则。这些方法可以被分为有监督(supervised)、半监督(semi-supervised)和无监督(unsupervised)三类。有监督学习包括隐形马科夫模型(HMM)、决策树、最大熵模型(ME)、支持向量机(SVM)和条件随机场(CRF)。这些方法主要是读取注释语料库,记忆实例并进行学习,根据这些例子的特征生成针对某一种实例的识别规则。

查询技术

一般来说,查询是询问的一种形式。它在不同的学科里涵义有所不同。在信息检索领域,查询指的是数据库和信息系统对信息检索的精确要求

正则化技术

当模型的复杂度增大时,训练误差会逐渐减小并趋向于0;而测试误差会先减小,达到最小值后又增大。当选择的模型复杂度过大时,过拟合现象就会发生。这样,在学习时就要防止过拟合。进行最优模型的选择,即选择复杂度适当的模型,以达到使测试误差最小的学习目的。

贪心算法技术

贪心法,又称贪心算法、贪婪算法、或称贪婪法,是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是最好或最优的算法。比如在旅行推销员问题中,如果旅行员每次都选择最近的城市,那这就是一种贪心算法。

推荐文章
暂无评论
暂无评论~