机器之心编辑部发布

同济大学综述论文:基于深度生成模型的药物研发

利用人工智能技术进行小分子设计以及新药研发是制药领域的热点研究问题之一。人工智能技术有望缩短药物研发时间,减少药物研发成本。近日,国际计算化学领域著名期刊 WIREs 系列刊物《WIREs Computational Molecular Science》发表同济大学刘琦教授课题组长文,系统探讨了基于深度生成模型(Deep Generative Models)进行药物研发的计算问题。机器之心经授权对此论文进行编译介绍,感兴趣的读者可查看原英文论文。

论文:Advances and challenges in deep generative models for de novo molecule generation

论文链接:http://onlinelibrary.wiley.com/doi/10.1002/wcms.1395/abstract

摘要:分子的 de novo 生成需要按预期属性生成新的或修正过的分子结构。深度生成模型与传统机器学习方法中的判别模型不同,它利用深度学习模型强大的表征学习能力,提供了直接生成预期分子的可能性。尽管深度生成模型机器学习社区中一直被广泛讨论,但与分子的 de novo 生成相关的深度生成模型的计算问题还需要具体研究。本文简洁深入地讨论了在分子的 de novo 生成问题上应用深度生成模型的最新进展,特别强调了在这一特定领域成功应用深度生成网络所要面临的重要挑战。

1 引言

在计算分子科学中,新分子的 de novo 设计和结构与属性分析是一个很重要的问题。近几年,基于人工智能的新方法,尤其是深度学习模型,在新分子的 de novo 设计与分析这一问题上展现出了光明的前景。深度学习模型通过级联非线性特征变换在训练样本上形成了抽象的表征学习(如分子表征),能够有效提取任意输入-输出关系的基本特征,从而促进分子计算科学中的定量构效关系(QSAR)分析。此外,这样的深度表征能力也促进了能够处理分子的 de novo 生成问题的生成模型的发展。

分子的 de novo 生成需要按照预期属性生成新的或修正过的分子结构。一般而言,解决这个问题离不开逆 QSAR 问题,即,要在已知 QSAR 模型的约束下生成新结构。逆 QSAR 问题的重点在于定义一个把分子活性映射到化合物描述符上的逆映射函数,然后将这个化合物描述符转化为新的化合物结构。定义一个将描述符转化为化学结构的显式逆映射函数仍极具挑战性;由于大部分正向转换函数都是非线性的,因此获得逆向映射十分困难。然而,与传统机器学习方法中的判别模型不同,深度生成模型可以基于具有强大表征学习能力的深度学习模型,在不使用显式逆映射函数的情况下直接生成预期分子。这为分子的 de novo 生成开辟了一条新的道路。

尽管机器学习社区一直在广泛讨论深度生成模型,但它们在分子计算科学中的具体应用却尚未被开发。这说明缺乏针对分子 de novo 生成的深度生成模型相关计算问题的具体研究。本文针对在分子的 de novo 生成问题上应用深度生成模型的最新进展,提供了一个简洁而又深入的探讨。我们在此也特地强调了在这一特定领域成功应用深度生成模型所面临的若干重要挑战。

2 利用深度生成模型进行分子的 de novo 生成的最新进展

2.1 生成模型判别模型

我们从区分生成模型判别模型开始讨论。这两者的主要区别在于分布类型——判别模型直接学习条件概率分布,而生成模型学习的是联合概率分布。就分子分析而言,如果要预测给定分子 x 的属性 y,我们既可以用判别模型直接计算 P(y|x),也可以用生成模型计算 P(x,y)——再通过贝叶斯规则推导 P(y|x)。应用生成模型的优势在于可以用它们以监督(即建模 P(x,y))或无监督(即建模 P(x))的方式推断真实数据的分布。这种学习数据分布的方式可以用于数据模拟或新数据合成。

生成模型旨在学习训练集的真实数据分布以便生成具有变化的新数据点。但它不可能总是能以显式或隐式的方式了解数据的确切分布。因此,需要对与真实数据分布相似的分布进行建模。和传统的浅层模型(如高斯混合模型朴素贝叶斯模型)相比,深度生成模型利用了深度神经网络的强大力量,它旨在学习近似真实分布的函数。下文讨论了深度生成模型及其在分子的 de novo 生成方面的应用。

2.2 用于分子的 de novo 生成的深度生成模型分类

2.2.1 问题设定

就下列所有不同的深度生成模型而言,输入数据集一般都包含 T 个带有特定标签的训练分子,标记为,其中 x_i 表示一般由特征向量表示的分子(如 SMILES 表征或结构分子指纹),y_i 表示分子活性的数值,或指向某个特定分子属性的离散值。以下生成模型的目的是根据这些训练数据生成特定的数据分布,该分布可用于数据采样以及生成 N 个新分子。这些分子应该来自于同样的训练域,它们属性相似但分子结构不同。在实践中,训练数据的标签 y_i 不是必须的,而整个训练过程能够以无监督的方式进行。

图1:用于分子 de novo 生成的不同深度生成模型:(a) 基于自编码器的模型;(b) 基于生成对抗网络的模型;(c) 基于循环神经网络的模型;(d) 与强化学习结合的混合模型

我们一般将深度生成模型分为四类,它们分别是:基于自编码器的模型、基于生成对抗网络的模型、基于循环神经网络的模型以及将深度生成模型强化学习结合在一起的混合模型(图 1,表 1)。

2.2.2 基于自编码器的模型:变分自编码器对抗自编码器

自编码器是一种针对无监督特征表征学习的、基于神经网络的架构。基本的自编码器包括编码器、解码器以及距离函数。编码器是高维输入数据到低维表征的映射,而解码器则是在给定低维表征的情况下对原始输入的重建。距离函数量化了原始输入和重建输出之间偏差的损失信息。但是基础的自编码器不能直接应用于分子的 de novo 生成,因为模型可能只学习到了一些训练数据的显式映射,而不是分子的泛化样本函数。因此,这些模型要根据这一约束进行修改,如变分自编码器对抗自编码器即需要从输入数据中学习隐变量 z。变分自编码器提供了一个公式,其中连续表征 z 被解释为概率生成模型中的隐变量。假设 P(z) 为连续表征上的先验分布,Q(z|x) 是概率编码分布,P(x|z) 为概率解码分布。Q(z|x) 和 P(x|z) 的参数可以在变分自编码器的训练过程中通过反向传播推断出来(表 1a)。对变分自编码器而言,我们一般假设隐变量 z 的先验分布 P(z) 必须遵循零均值化和单位方差的多元高斯分布(图 1a)。至于对抗自编码器,它与变分自编码器的差别在于其架构中添加了额外的判别器神经网络来强化编码器 Q(z|x) 的输出,使其遵循特定的目标分布,同时解码器的重构误差被最小化(图 1b)。这一想法借鉴了生成对抗网络模型的主流思想(图 1c)。对这两个模型来说,通过解码器学到 P(x|z),即可以实现分子的 de novo 生成。

表 1 分子 de novo 生成的深度生成模型的分类

已经有研究者提出了一些在分子的 de novo 生成上应用 VAE 和 AAE 模型的研究(表 1)。通过 VAE 或 AAE 从 ZINC 分子数据库定向采样了 2 型多巴胺受体和 MCF-7 细胞系化合物,但没有很好地记录其模型生成能力,也没有对这些模型进行比较。Lim 等人提出使用条件 VAE 生成有五个目标属性的类药性分子。Dai 等人通过在解码器上引入句法和语义约束提出了一种新的句法导向的变分自编码器(SD-VAE)来生成句法有效且语义合理的化合物。这种方法极具启发性和创造性,因为在分子的 de novo 设计方面,生成合理的分子也是一个具有挑战性的问题。和 VAE 相比,AAE 一般会更灵活,也更适用于分子的 de novo 生成,因为从理论上讲,AAE 可以在不需要之前的高斯分布要求的情况下拟合特定分布。此外,AAE 中分子生成时的重构误差也比 VAE 更低。但这两种模型都缺少在大范围训练数据集上的综合客观的表现基准

2.2.3 基于 GAN 的模型

GAN 是一个极具吸引力的 AI 模型,该模型由两个在零和博弈中存在竞争关系的神经网络的框架实现。其中,一个网络生成候选数据(生成模型),另一个评估这些数据(判别模型)。一般而言,生成网络学习从潜在空间到想要的特定数据分布的映射,而判别网络判断真实的数据分布和由生成器产生的候选数据的距离(图 1c)。和基于 AE 的模型相比:1)通过同时最小化生成器和判别器的损失,GAN 可以具备更强的约束;2)和基于 AE 的模型相比,GAN 没有先验分布的要求;3)基于 AE 的模型本质上还是侧重于特征表征和隐变量的建模,生成任务是次要的。因此,为优化生成任务而生的 GAN,会更有效更直接地生成分子。尽管 GAN 广泛应用于图像生成,但在 de novo 分子生成方面应用得很少(表 1)。在 RL 设置中提出了目标强化的生成对抗网络(ORGAN),这是 GAN 框架中第一个用于分子生成的研究工作。随后提出了基于 ORGAN 框架的分子 GAN(MolGAN)模型,该模型的设计是为了解决在 ORGAN 中的分子图表征而非 SMILES 表征的问题。我们推测将 GAN 应用于 de novo 分子生成的最大阻碍是通过维持两个对抗过程的平衡来训练 GAN。在训练 GAN 时出现的这样的问题常称作模式崩塌(mode collapse)。基本思想是生成器可能会意外产生几个完全相同的样本(完全崩塌),或者是有一些共同属性的相似的样本(部分崩塌)。在这样的情况下,生成器生成的样本会呈现出很差的多样性,这就限制了学习后的 GAN 的有用性。这在分子生成中是一个大问题,因为生成分子的多样性是评估生成模型性能的一个重要指标。

也有人提出了一些改进 GAN 中模式崩塌(mode collapse)问题的办法。有人将提出的不同形式的 GAN 收集在 GAN ZOO(https://github.com/hindupuravinash/the-gan-zoo)中,但对模型的训练来说依旧存在巨大的挑战。研究者热切期望未来能解决这一问题并将 GAN 应用于 de novo 分子的生成过程中。

2.2.4 基于 RNN 的模型

基于 RNN 的模型被广泛用于自然语言处理中的统计语言模型。最近的一些研究提出了将 RNN 用于 de novo 分子生成的方法(见表 1)。Segler 等人探索了通过首先训练通用的先验模型使用 RNN 生成针对特定目标的库的可能性,接着,基于一小组针对特定目标的活性化合物对我们所关注的模型进行微调。这种迁移学习的理念在图像识别中得到了成功的应用。RNN 的基本架构维护一个内部状态,这对于跟踪序列中前面看到的符号是必要的。通过使用如长短期记忆(LSTM)单元和门控循环单元(如图 1d)等微架构,RNN 的性能得到了很大的提高。为了将分子设计和自然语言处理联系起来,我们可以用一种序列形式表示分子,例如使用 SMILES 表征。在大量的 SMILES 字符串上进行训练后,RNN 模型可以被用来生成新的没有被包含在训练集中的有效 SMILES 字符串。在这种情况下,RNN 可以被看做是分子结构的生成模型。RNN 的应用已经成为近年来 de novo 分子生成的主流方式。与基于自编码器(AE)和对抗生成网络(GAN)的模型相比,RNN 具有以下的优势:(a)序列化的分子的 SMILES 表征天生适用于 RNN 模型;(b)RNN 模型可用于处理各种长度的表征,而基于自编码器或生成对抗网络的模型通常要求分子由固定长度的向量表示;(c) 与训练基于自编码器和生成对抗网络的模型相比,训练 RNN 模型较为容易一些。

2.2.5 将深度生成模型强化学习相结合的混合模型

研究人员已经提出了一些将深度生成模型强化学习相结合的混合模型用于 de novo 分子生成的方法(见表 1)。强化学习是用于解决动态决策问题的人工智能的一类人工智能算法。在分子生成中使用强化学习的基本思想是通过强化学习引导或约束整个分子生成过程,以获得所需的性质。在这一动态过程中,通常会设计出一个用于分子生成的生成模型,并用一个预测模型进行分子评估。评估结果会被作为奖励或惩罚反馈给系统,从而引导生成器以一种交互的方式生成所需的分子(见图 1e)。目前有两种典型的将深度生成模型强化学习相结合的模式,即包括 ORGAN 、MolGAN 在内的基于 GAN 的模型,以及基于 ANC 的(对抗性神经计算机)模型。前者是自然语言处理研究社区之前使用的 SeqGAN 模型的扩展,使用 RNN 或简单的多层感知器作为核心生成器。后者是基于对抗性神经计算机的模型,包括基于对抗性阈值神经计算机(ATNC)的和基于增强对抗性神经计算机(RANC)的模型,它们使用可微神经计算机(DNC)作为核心生成器,比基于 GAN 的模型更有效。将深度生成模型强化学习耦合的混合模型是未来深度生成 de novo 分子生成的方向,但这种较高的模型复杂度和模型训练方法仍然是十分具有挑战性的问题。

3 新分子生成领域的深度生成模型面临的挑战

3.1 分子表征——阿基琉斯之踵

对于所有可以用于 de novo 分子生成的模型来说,恰当的分子表征是应用程序成功的关键。不恰当的分子表征可能成为 de novo 分子生成任务中的阿基琉斯之踵。在这个特定的应用场景中,分子表征任务需要考虑的关键因素是:(a)表征应该尽可能信息丰富,以表示分子属性;(b)表征应该能够容易地逆向生成分子式。如表 1 所示,我们总结了两类目前用于生成分子的分子表示,包括基于 SMILE 表征和基于分子图表征的 one-hot 编码。

目前,大多数深层生成模型使用 SMILE 表征和 one-hot 编码来表示小分子。SMILE 是一种从分子图推导而来的基于字符串的表征方式。因此,RNN 是处理此类表示的理想候选模型。RNN 模型的缺点是既要学习句法规则又要学习表征的顺序歧义。SMILE 字符串是由基于图的分子表示生成的,而在原始图空间中工作可以去除额外开销。最近的进展还包括直接应用 GAN 等其它深度生成模型来处理这种图表征。例如,MolGAN 是一种基于 GAN 的用于分子生成的深度生成模型,专门用于处理图表征 [18 ]。Li 等人 [39] 还提出了多目标 de novo 药物设计的两种图生成模型,即基于马尔可夫过程的图生成(MolMP)和基于 RNN 的图生成(MolRNN)。然而,这两种类型的表征都不能完全、具体地表示分子信息(见第 3.4 节)。新的和信息丰富的分子表征需要被继续关注并应用于深度生成模型

3.2 模型对比基准测试—如何评估生成样本的合理性和多样性

de novo 分子生成的模型对比基准测试和验证是非常具有挑战性的。验证新生成的分子最直接的方法是合成它们并通过实验验证它们的预期特性。显然,以这种方式定量评估生成模型的性能是不可能的。为此,现有的对比基准常常涉及到设计各种评价指标来评估生成样本的质量和多样性。在这里,医药化学家和统计学家做出了很大的贡献。通常,这些指标可以被分为四类,它们包括:(a)用于评估模型重构能力的指标,即模型在潜在空间中将数据编码为一种表征方法的能力,并通过对这种表征解码来重构输入。这些指标特别适合对基于自编码器的模型进行评估;(b)用来评估生成样本多样性的指标,包括 Fréchet Chembl——净距离 [42],内部化学多样性、外部的化学多样性 [43,44];(c)用来评估生成样本的有效性的指标,包括生成有效分子的比率;(d)用来评估生成分子特性的指标,包括分子成药性,可合成性及可溶解性。多数现有模型通过使用 RDKit [45] 评估生成样本的有效性来进行评估。一些其它的模型评估了生成样本的多样性(见表 1)。然而,目前的深度生成模型尚不能完全重现待生成的分子的自然化学多样性 [43]。研究人员提出了一个协作平台 DiversityNet(见表 2),它可以对化学领域的人工智能生成模型进行对比基准测试。我们在这里还提出了一些新的指标,这些指标从 GAN 社区借鉴,并期望可以用于分子生成模型进行对比基准测试,这些指标包括核最大平均差(MDD)、推土机距离(Wasserstein)和 1-近邻分类器 [48]。这些指标本质上是为了评估两种不同分布的距离而设计的,在这里可以将它们用于评估基于 GAN 的 de novo 分子生成模型

表 2:与深度生成分子 de novo 设计相关的开源平台

3.3 需要开源工具和平台实现可重用性和可复现性

训练用于 de novo 分子生成的深度生成模型是非常具有技术性和挑战性的。迫在眉睫的是,我们需要开发开源工具和平台实现可重用性和可复现性。表 2 列出了一些与 de novo 分子生成相关的开源平台。其中,ChemTS 提供了一个 python 库,用于使用 RNN 实现蒙特卡洛树搜索,用以 de novo 分子生成。ORGANIC 和 REINVENT 分别实现了相关文献中提出的特定模型。当前所有可用的平台都没有被专门设计用来解决 de novo 分子生成问题,或者说他们只实现一个特定的算法,但这限制了这些工具(见表 2)的广泛使用。研究人员还需要再接再厉,设计出更全面、有效的工具来专门解决 de novo 分子生成问题。

3.4 从图像和文本生成到分子生成还有很长的路要走!

最后,这些深度学习模型起源于图像处理文本挖掘研究社区。这些社区已经开发出了鲁棒性很强的技术,我们可以借鉴这些技术来设计 de novo 分子。例如,最初用于大规模图像数据库 ImageNET 的图像处理的基于迁移学习的微调技术已经被成功应用于 de novo 分子生成。虽然分子生成可以与图像和文本生成进行类比,但是将这些模型直接应用到分子上是非常具有挑战性的,原因如下:(a)图像和文本的表征与分子的表征有很大的不同。用整个像素或整个单词的集合来具体地表示一个完整的图像或句子是很直接的,基于这些表征的重构也是如此。同时,深度学习模型的抽象能力可以直接应用到图像和文本中进行特征表示学习,从而避免了手动标注的特征工程。然而,像 SMILE 模式这样的分子表征是手工设计的,并且是基于线性的,通常不能表示关于分子的其他有意义的信息。目前,我们缺乏一个有效的分子表征,包含适合深度生成模型解析的完整分子信息。(b)图像和文本具有容错性。修改单个像素或单个字母一般不会影响对整个图像或文本的理解。然而,分子对错误是十分敏感的。原子水平的变化将极大地影响分子的性质,因此,为了获得所需的性质,产生一个分子的生成模型必须是高精度的。

4 结语

总而言之,从图像和文本生成到分子生成还有很长的路要走!我们希望利用图像和文本挖掘社区开发的技术来设计更有针对性的深度学习技术,这些技术可以成功地被用来解决 de novo 分子生成的特定需求。这一特殊领域未来的前景是光明的,我们现在只是刚刚开始将复杂的人工智能技术应用于药物研发。

作者介绍:本论文由同济大学刘琦教授课题组受邀撰稿完成,刘琦教授课题组以 AI 和机器学习计算技术为基础,重点关注关于药物研发、肿瘤精准治疗及基因编辑领域的交叉计算问题研究,曾获 2017 年吴文俊人工智能自然科学奖三等奖。同时积极进行计算机科学和生物医学交叉领域的科普宣传。

理论人工智能药物研发深度生成模型同济大学
21
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

高斯分布技术

正态分布是一个非常常见的连续概率分布。由于中心极限定理(Central Limit Theorem)的广泛应用,正态分布在统计学上非常重要。中心极限定理表明,由一组独立同分布,并且具有有限的数学期望和方差的随机变量X1,X2,X3,...Xn构成的平均随机变量Y近似的服从正态分布当n趋近于无穷。另外众多物理计量是由许多独立随机过程的和构成,因而往往也具有正态分布。

判别模型技术

在机器学习领域,有一种分类方法将模型分为判别模型和生成模型(generative model)两种。 判别模型是一种对未知数据y与已知数据x之间关系进行建模的方法,是一种基于概率理论的方法。已知输入变量x,判别模型通过构建条件概率P(y|x)分布预测结果,或试图直接从输入x的空间学习映射到标签{0,1}(如感知器算法)的函数。生成模型则是考虑x与y之间的联合分布。 在实际应用中判别模型非常常见,如:逻辑回归(logistic regression),支持向量机(support vector machine), 提升方法(Boosting),条件随机场(conditional random fields),神经网络(neural network),随机森林(random forests)典型的生成模型则包括:高斯混合模型(Gaussian Mixture Model),隐马尔科夫模型(hidden markov model),简单贝叶斯(naive Bayes)等。不难看出两者的区别。

具有策略梯度的序列 GAN技术

GAN的一个变种

重构技术

代码重构(英语:Code refactoring)指对软件代码做任何更动以增加可读性或者简化结构而不影响输出结果。 软件重构需要借助工具完成,重构工具能够修改代码同时修改所有引用该代码的地方。在极限编程的方法学中,重构需要单元测试来支持。

多层感知机技术

感知机(Perceptron)一般只有一个输入层与一个输出层,导致了学习能力有限而只能解决线性可分问题。多层感知机(Multilayer Perceptron)是一类前馈(人工)神经网络及感知机的延伸,它至少由三层功能神经元(functional neuron)组成(输入层,隐层,输出层),每层神经元与下一层神经元全互连,神经元之间不存在同层连接或跨层连接,其中隐层或隐含层(hidden layer)介于输入层与输出层之间的,主要通过非线性的函数复合对信号进行逐步加工,特征提取以及表示学习。多层感知机的强大学习能力在于,虽然训练数据没有指明每层的功能,但网络的层数、每层的神经元的个数、神经元的激活函数均为可调且由模型选择预先决定,学习算法只需通过模型训练决定网络参数(连接权重与阈值),即可最好地实现对于目标函数的近似,故也被称为函数的泛逼近器(universal function approximator)。

变分自编码器技术

变分自编码器可用于对先验数据分布进行建模。从名字上就可以看出,它包括两部分:编码器和解码器。编码器将数据分布的高级特征映射到数据的低级表征,低级表征叫作本征向量(latent vector)。解码器吸收数据的低级表征,然后输出同样数据的高级表征。变分编码器是自动编码器的升级版本,其结构跟自动编码器是类似的,也由编码器和解码器构成。在自动编码器中,需要输入一张图片,然后将一张图片编码之后得到一个隐含向量,这比原始方法的随机取一个随机噪声更好,因为这包含着原图片的信息,然后隐含向量解码得到与原图片对应的照片。但是这样其实并不能任意生成图片,因为没有办法自己去构造隐藏向量,所以它需要通过一张图片输入编码才知道得到的隐含向量是什么,这时就可以通过变分自动编码器来解决这个问题。解决办法就是在编码过程给它增加一些限制,迫使其生成的隐含向量能够粗略的遵循一个标准正态分布,这就是其与一般的自动编码器最大的不同。这样生成一张新图片就比较容易,只需要给它一个标准正态分布的随机隐含向量,这样通过解码器就能够生成想要的图片,而不需要给它一张原始图片先编码。

零和博弈技术

零和博弈,又称零和游戏或零和赛局,与非零和博弈相对,是博弈论的一个概念,属非合作博弈。零和博弈表示所有博弈方的利益之和为零或一个常数,即一方有所得,其他方必有所失。在零和博弈中,博弈各方是不合作的。非零和博弈表示在不同策略组合下各博弈方的得益之和是不确定的变量,故又称之为变和博弈。

人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

参数技术

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

表征学习技术

在机器学习领域,表征学习(或特征学习)是一种将原始数据转换成为能够被机器学习有效开发的一种技术的集合。在特征学习算法出现之前,机器学习研究人员需要利用手动特征工程(manual feature learning)等技术从原始数据的领域知识(domain knowledge)建立特征,然后再部署相关的机器学习算法。虽然手动特征工程对于应用机器学习很有效,但它同时也是很困难、很昂贵、很耗时、并依赖于强大专业知识。特征学习弥补了这一点,它使得机器不仅能学习到数据的特征,并能利用这些特征来完成一个具体的任务。

神经网络技术

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

门控循环单元技术

门控循环单元(GRU)是循环神经网络(RNN)中的一种门控机制,与其他门控机制相似,其旨在解决标准RNN中的梯度消失/爆炸问题并同时保留序列的长期信息。GRU在许多诸如语音识别的序列任务上与LSTM同样出色,不过它的参数比LSTM少,仅包含一个重置门(reset gate)和一个更新门(update gate)。

深度生成模型技术

深度生成模型基本都是以某种方式寻找并表达(多变量)数据的概率分布。有基于无向图模型(马尔可夫模型)的联合概率分布模型,另外就是基于有向图模型(贝叶斯模型)的条件概率分布。前者的模型是构建隐含层(latent)和显示层(visible)的联合概率,然后去采样。基于有向图的则是寻找latent和visible之间的条件概率分布,也就是给定一个随机采样的隐含层,模型可以生成数据。 生成模型的训练是一个非监督过程,输入只需要无标签的数据。除了可以生成数据,还可以用于半监督的学习。比如,先利用大量无标签数据训练好模型,然后利用模型去提取数据特征(即从数据层到隐含层的编码过程),之后用数据特征结合标签去训练最终的网络模型。另一种方法是利用生成模型网络中的参数去初始化监督训练中的网络模型,当然,两个模型需要结构一致。

特征工程技术

特征工程是利用数据所在领域的相关知识来构建特征,使得机器学习算法发挥其最佳的过程。它是机器学习中的一个基本应用,实现难度大且代价高。采用自动特征工程方法可以省去采用人工特征工程的需求。Andrew Ng 说“挖掘特征是困难、费时且需要专业知识的事,应用机器学习其实基本上是在做特征工程。”

朴素贝叶斯技术

朴素贝叶斯是一种构建分类器的简单方法。该分类器模型会给问题实例分配用特征值表示的类标签,类标签取自有限集合。它不是训练这种分类器的单一算法,而是一系列基于相同原理的算法:所有朴素贝叶斯分类器都假定样本每个特征与其他特征都不相关。举个例子,如果一种水果其具有红,圆,直径大概3英寸等特征,该水果可以被判定为是苹果。尽管这些特征相互依赖或者有些特征由其他特征决定,然而朴素贝叶斯分类器认为这些属性在判定该水果是否为苹果的概率分布上独立的。

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合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)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

迁移学习技术

迁移学习是一种机器学习方法,就是把为任务 A 开发的模型作为初始点,重新使用在为任务 B 开发模型的过程中。迁移学习是通过从已学习的相关任务中转移知识来改进学习的新任务,虽然大多数机器学习算法都是为了解决单个任务而设计的,但是促进迁移学习的算法的开发是机器学习社区持续关注的话题。 迁移学习对人类来说很常见,例如,我们可能会发现学习识别苹果可能有助于识别梨,或者学习弹奏电子琴可能有助于学习钢琴。

高斯混合模型技术

高斯混合模型(Gaussian Mixture Model,GMM)是单一高斯概率密度函数的延伸,就是用多个高斯概率密度函数(正态分布曲线)精确地量化变量分布,是将变量分布分解为若干基于高斯概率密度函数(正态分布曲线)分布的统计模型。

图像处理技术

图像处理是指对图像进行分析、加工和处理,使其满足视觉、心理或其他要求的技术。 图像处理是信号处理在图像领域上的一个应用。 目前大多数的图像均是以数字形式存储,因而图像处理很多情况下指数字图像处理。

自然语言处理技术

自然语言处理(英语:natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。

条件概率分布技术

条件概率分布(Conditional Probability Distribution,或者条件分布,Conditional Distribution )是现代概率论中的概念。 已知两个相关的随机变量X 和Y,随机变量Y 在条件{X =x}下的条件概率分布是指当已知X 的取值为某个特定值x之时,Y 的概率分布。

生成模型技术

在概率统计理论中, 生成模型是指能够随机生成观测数据的模型,尤其是在给定某些隐含参数的条件下。 它给观测值和标注数据序列指定一个联合概率分布。 在机器学习中,生成模型可以用来直接对数据建模(例如根据某个变量的概率密度函数进行数据采样),也可以用来建立变量间的条件概率分布。

生成对抗网络技术

生成对抗网络是一种无监督学习方法,是一种通过用对抗网络来训练生成模型的架构。它由两个网络组成:用来拟合数据分布的生成网络G,和用来判断输入是否“真实”的判别网络D。在训练过程中,生成网络-G通过接受一个随机的噪声来尽量模仿训练集中的真实图片去“欺骗”D,而D则尽可能的分辨真实数据和生成网络的输出,从而形成两个网络的博弈过程。理想的情况下,博弈的结果会得到一个可以“以假乱真”的生成模型。

文本挖掘技术

文本挖掘有时也被称为文字探勘、文本数据挖掘等,大致相当于文字分析,一般指文本处理过程中产生高质量的信息。高质量的信息通常通过分类和预测来产生,如模式识别。文本挖掘通常涉及输入文本的处理过程,产生结构化数据,并最终评价和解释输出。'高品质'的文本挖掘通常是指某种组合的相关性,新颖性和趣味性。

长短期记忆网络技术

长短期记忆(Long Short-Term Memory) 是具有长期记忆能力的一种时间递归神经网络(Recurrent Neural Network)。 其网络结构含有一个或多个具有可遗忘和记忆功能的单元组成。它在1997年被提出用于解决传统RNN(Recurrent Neural Network) 的随时间反向传播中权重消失的问题(vanishing gradient problem over backpropagation-through-time),重要组成部分包括Forget Gate, Input Gate, 和 Output Gate, 分别负责决定当前输入是否被采纳,是否被长期记忆以及决定在记忆中的输入是否在当前被输出。Gated Recurrent Unit 是 LSTM 众多版本中典型的一个。因为它具有记忆性的功能,LSTM经常被用在具有时间序列特性的数据和场景中。

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

深度神经网络技术

深度神经网络(DNN)是深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似,深度神经网络也能够为复杂非线性系统提供建模,但多出的层次为模型提供了更高的抽象层次,因而提高了模型的能力。

语言模型技术

语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。由于字词与句子都是任意组合的长度,因此在训练过的语言模型中会出现未曾出现的字串(资料稀疏的问题),也使得在语料库中估算字串的机率变得很困难,这也是要使用近似的平滑n元语法(N-gram)模型之原因。

对抗自编码器技术

对抗自编码器通过使用对抗学习(adversarial learning)避免了使用 KL 散度。在该架构中,训练一个新网络来有区分地预测样本是来自自编码器的隐藏代码还是来自用户确定的先验分布 p(z)。编码器的损失函数现在由重建损失函数与判别器网络(discriminator network)的损失函数组成。

推荐文章
妙啊……同济人感到一丝丝骄傲