APP下载

大数据时代机器学习的新趋势

2012-03-30康,向勇,喻

电信科学 2012年12期
关键词:机器领域监督

陈 康,向 勇,喻 超

(1.中国电信股份有限公司广东研究院 广州 510630;2.广州优亿信息科技有限公司 广州 510630)

1 引言

机器学习是人工智能的一个核心研究领域。1997年Mitchell T M在“Machine Learning”一书中给出了机器学习的经典定义“计算机利用经验改善系统自身性能的行为”[1]。人类具有学习能力,其学习行为背后具有非常复杂的处理机制,这种处理机制就是机器学习理论。机器学习主要研究如何使用计算机模拟和实现人类获取知识(学习)过程,创新、重构已有的知识,从而提升自身处理问题的能力。机器学习的最终目的是从数据中获取知识。

近年来,大数据吸引了越来越多的关注。从各种各样的数据(包括结构化、半结构化和非结构化数据)中快速获得有价值信息的能力,就是大数据技术。传统数据分析技术着重于用预先设定的适当统计方法对数据进行分析,以求发现数据的功能和价值;与传统数据分析相比,大数据技术的其中一个核心目标是要从体量巨大、结构繁多的数据中挖掘出隐藏在背后的规律,从而使数据发挥最大化的价值。从大量结构繁多的数据中挖掘隐藏规律,对人工操作而言,几乎无能为力,必须与机器学习相结合,由计算机代替人去挖掘信息,获取知识。大数据技术的目标实现与机器学习的发展必然密不可分。

业界对大数据的特征也进行了归纳,主要包括以下4点(“4个 V”):数据体量巨大 (volume)、数据类型繁多(variety)、数据价值密度低(value)、有很多实时数据要求快速处理(velocity)。由于这几大特征,大数据的发展从研究方向、评测指标以及关键技术等方面对机器学习都提出了新的需求和挑战。

2 研究方向

在整个机器学习的发展历程中,一直有两大研究方向。一是研究学习机制,注重探索、模拟人的学习机制;二是研究如何有效利用信息,注重从巨量数据中获取隐藏的、有效的、可理解的知识。学习机制的研究是机器学习产生的源泉,但随着大数据时代各行业对数据分析需求的持续增加,通过机器学习高效地获取知识,已逐渐成为当今机器学习技术发展的主要推动力。

大数据时代的机器学习更强调“学习本身是手段”,机器学习成为一种支持技术和服务技术,如何基于机器学习对复杂多样的数据进行深层次的分析,更高效地利用信息成为当前机器学习研究的主要方向。机器学习越来越朝着智能数据分析的方向发展,并已成为智能数据分析技术的一个重要源泉。另外,在大数据时代,随着数据产生速度的持续加快,数据的体量有了前所未有的增长,而需要分析的新的数据种类也在不断涌现,如文本的理解、文本情感的分析、图像的检索和理解、图形和网络数据的分析等,机器学习研究领域涌现了很多新的研究方向,很多新的机器学习方法被提出并得到了广泛应用。比如,考虑如何利用未标识数据的半监督学习 (semi-supervised learning)[2,3],有效解决训练数据质量问题;提高学习结果的泛化能力的集成学习(integrated learning)[4];在不同的领域进行知识迁移的迁移学习(transfer learning)等,吸引了广泛的研究和兴趣。

机器学习要成为大数据时代的有效分析方法,还应特别解决可扩展性问题,即如何处理大规模数据的问题,这时需要考虑采用并行化的方法。大数据时代的特点及要求如下。

(1)大量的数据实例

在很多领域,如互联网和金融领域,训练实例的数量是非常大的,每天汇合几十亿事件的数据集是很常见的。另外,越来越多的设备包括传感器,持续记录观察的数据可以作为训练数据,这样的数据集可以轻易地达到几百TB。有效处理大数据集的比较好的方式是组合服务器群的存储和带宽。最近提出的几个计算框架如MapReduce和DryadLINQ,让大数据集的计算变得更加容易。这些框架通过简单的、天然可并行化的语言原语将编程框架和使用高容量存储及执行平台的能力有效地组合在一起。

(2)输入数据的高维度

机器学习的应用包括自然语言、图形或者视频,这些应用中的数据实例是由很多数量的特征来表示的,远远超过了目前常见的能够轻松处理的特征量级别。在特征空间进行并行计算是可以将计算扩展得更丰富的表示方法,还可以加入一些在特征空间进行迭代运算的算法。

(3)模型和算法的复杂性

一些高准确性的学习算法,基于复杂的非线性模型或者采用昂贵的计算子程序。在这两种情况下,将计算分配到多个处理单元是大数据学习算法的关键点。某些领域的数据在一些基本的特征上是非线性结构,在这些应用中采用高度非线性表示方法比采用简单的算法在性能上要好很多。这类算法的一个共同特征是计算复杂性,单台机器的学习过程可能会非常慢。采用并行多节点或者多核处理,可提高在大数据中使用复杂算法和模型的计算速度。

(4)计算时间的限制

很多应用,如自动导航或智能推荐等,都需要进行实时预测。在这些情形下由于推理速度的限制,需要推理算法的并行化。决定系统计算时间的因素一般有两个:一是单任务的处理时间,该情况下计算时间的缩短可以通过提高系统单机的处理能力和吞吐量来解决;另一个因素是时延,在绝大多数应用场合,任务由多个相互关联的进程组成,不同进程的处理时间长短不一,任务整体的处理实际有待于各个进程的结果,如某一进程处理时间延长会造成时延,整个任务的处理速度会随着时延的增加快速下降。例如,自动导航需要基于多个传感器做出路径规划的决策;智能推荐需要综合用户的特征分析、历史记录等。处理能力、吞吐量和时延的限制并不总是兼容,但对于两者来说,采用高度并行化的硬件(如GPU或者FPGA等)十分有效。

(5)预测级联

有些应用要求顺序、互相依赖的预测,这些应用具有高度复杂的联合输出空间,并行化在这种情形下可以大大提高推理的速度。很多现实中的问题如物体追踪、话音识别以及机器翻译,都要求执行一系列互相依赖的预测,形成预测级联。如果一个级联作为一个推理任务,就会有一个很大的联合输出空间,因为计算复杂性的增加,通常会导致非常高的计算成本。在预测任务之间的互相依赖性通常是通过对单个任务进行阶梯式的并行化以及自适应的任务管理来实现的。

(6)模型选择和参数扫描

调整学习算法的超参数以及统计重要性评估要求多次执行学习和推理,这些过程属于所谓的可并行化应用,本身就非常适合并发执行。在参数扫描中,学习算法在配置不同的同一个数据集上运行多次,然后在一个验证集上进行评估;在统计重要性测试过程中如交叉验证或者bootstraping中,训练和测试在不同的数据子集上重复执行,执行的结果汇合在一起以进行接下来的统计重要性测试。在这些任务中,并行平台的用途是非常明显的。

3 主要评测指标

大数据的价值发现好比大海捞针,从数据中挖掘出价值,而不是被大量数据所淹没。这要求服务于大数据的机器学习技术在以下各个方面能有较好的适应能力。

(1)泛化能力

通常期望经训练样本训练的机器学习算法具有较强的泛化能力,也就是能对新输入给出合理响应的能力,这是评估机器学习算法性能的最重要指标。机器学习最基本的目标是对训练数据中的实例进行泛化推广。不管有多少数据,在测试时要再次看到那些同样的实例是非常不可能的。在训练数据上表现好是很容易的,只需要记住那些实例。在机器学习中最一般的错误是在训练数据上进行测试,然后错误地认为成功了。这样选择的分类器如果在新数据上进行测试,输出的结果可能不会比随机的猜测更好。

(2)速度

在机器学习中,和速度有关的参数有训练速度和测试速度,这两者是互相关联的。有的算法能够取得很好的训练速度,但测试速度却很慢;而有的算法恰恰相反。所以一个很重要的研究方向是如何协调这两者之间的关系,开发出在训练速度和测试速度方面表现都很好的机器学习算法。

(3)可理解性

很多功能强大的机器学习算法基本上都是“黑盒子”,对用户而言,只能看到输出结果,却不知道为什么是这样的结果。随着数据量的增加、问题复杂度的提高,人们在得到结果的同时更加希望了解为什么得到这样的结果。

(4)数据利用能力

人们收集数据的能力越来越强,收集的数据类型也越来越多,不仅包括有标识的数据,还有大量未标识的数据以及那些含有大量噪声、不一致、不完整的脏数据、平衡数据。如果还是像以前一样简单地丢弃脏数据,在信息过程中只使用已标识数据,不使用未标识数据,那么就会造成数据的很大浪费,而且学习到的模型的泛化能力会面临很大的问题。所以研究并开发能够有效利用所有这些数据的机器学习方法具有非常重要的实际意义。

(5)代价敏感

面向算法研究的机器学习原型系统在向实际可用的机器学习系统转换时,会面临更多、更复杂的内外部因素的影响。这其中一个重要的因素就是在现实世界中,不同的领域中不同误判结果间代价的平衡性,有的误判结果可能会导致很严重的后果,而有的则影响很小。大数据分析的精髓就在于综合各种内部、外部数据对一个事物进行360°的刻画和解读,涉及的因素更多。近年来,代价敏感的学习算法就是这方面的一个有效的解决方案。在这类算法中,通过引入代价信息来度量误判的严重性,不同的代价参数代表不同的损失,最终的目标是最小化总的代价而不是总的错误。

(6)知识的迁移性

如何将从一个任务中学习到的知识迁移到其他任务中,以提高其他相关任务的学习性能。比如,监督学习的公式化中包括学习函数,在很多大数据场景中,可能会需要学习一系列相关的函数,比如用户互联网社交关系判断函数以及用户实际生活社交关系判断函数。虽然在这两种情况下判断函数会有所不同,但它们还是有很多共同点的。

(7)数据隐私性

如何在获得数据分析成果的同时,保护数据的隐私。

4 关键技术

当前,机器学习研究与应用中最常用的关键技术有:半监督学习、集成学习(含Boosting、Bagging等算法)、迁移学习、贝叶斯网络、决策树、统计学习理论与支持向量机、隐马尔可夫模型、神经网络、k近邻方法、序列分析、聚类、粗糙集理论、回归模型等。其中在大数据分析中,半监督学习、集成学习、迁移学习和概率图模型(probabilistic graphical model,PGM)等技术尤为重要。

4.1 半监督学习

按照传统的机器学习理论框架,机器学习可以分为有监督学习和无监督学习两类。在有监督学习中,利用的是已标识数据,而无监督学习中只利用未标识数据。在大数据时代,随着数据采集技术和存储技术的发展,获取大量未标识数据是很容易的。但如果要获得大量的已标识数据,因为需要领域人才的参与,非常耗时耗力,而且也是一个很容易出错的过程。所以,在现实世界中,未标识数据的数量远大于已标识数据的数量,如果这些未标识数据不能得到很好的利用,学到的模型的泛化能力可能会很差,还会造成数据的浪费;而如果像无监督学习一样只使用未标识数据,就会忽视已标识数据的价值。半监督学习就是研究如何综合利用少量已标识数据和大量未标识数据,获得具有良好性能和泛化能力的学习机器。

半监督学习利用的数据集X={x1,x2,…,xn}(n=l+u)可以分为两部分:一部分是有标识的数据集Xl={x1,…,xl},这部分数据集中的样本点xi的类别标识yi已经给出;另一部分是无标识数据集Xu={xl+1,…,xl+u},这部分数据集中样本点的类别标识未知。与实际情况相符,一般假设u>>l,即无标识数据远远多于有标识数据。半监督学习的工作原理主要基于3个假设:半监督光滑假设、聚类假设以及流型假设[5]。

半监督光滑假设是指如果在高密度区的两个点是相近的,即由一个高密度路径相连,那么它们对应的输出也是相近的;如果两个点被一个低密度区域分隔,那么对应的输出不一定是相近的,适用于分类和回归学习任务。聚类假设是指属于同一个聚类的数据实例,很有可能具有相同的分类标识。根据这个假设,可以利用未标识数据更准确地找到每个聚类的边界。聚类假设并不是指每个分类都形成一个单一的、紧凑的聚类,只表示不太可能在同一个聚类中观察到属于两个不同分类的数据。流型假设是指高维的数据大致上分布在一个低维的流型上。很多统计方法和机器学习算法中的一个主要问题是所谓的维数灾难问题,这个问题对生成式模型的半监督学习有很大影响,而流型假设为这个问题的解决提供了一个很好的基础。如果数据正好分布在低维的流型中,那么机器学习算法就可以在这个低维的空间中进行,从而避免维数灾难的问题。

半监督学习方法包括基于生成式模型的半监督学习、基于低密度划分的半监督学习、基于图的半监督学习以及基于不一致性的半监督学习。基于生成式模型的半监督学习方法利用了聚类假设,未标识数据所属类别的概率被看成一组缺失参数,采用最大期望算法对生成式模型的参数进行极大似然估计。基于生成式模型的半监督学习方法具有简单、直观的特点,在训练数据特别是有标识数据很少时,可以获得比判别式模型更好的性能。但在模型假设与数据分布不一致时,使用大量的未标识数据来估计模型参数会降低学到模型的泛化能力。所以需要寻找合适的生成式模型,这需要大量的相关领域的知识。基于低密度划分的半监督学习方法也基于聚类假设,要求决策边界尽量通过数据较为稀疏的区域,以免把聚类中稠密的数据点分到决策边界两侧。基于图的半监督学习方法基于流型假设,假设所有的样本点(包括已标识与未标识)以及之间的关系可以表示为一个无向图的形式,图的节点为数据样本点,而边则体现了两个样本点之间的相似度关系。基于图的半监督算法的优化目标就是要保证在已标识点上的结果尽量符合而且要满足流型假设要求。基于不一致性的半监督学习方法利用了聚类假设和流型假设,使用两个或多个学习机器,通过在不同视图下的数据集进行学习的两个分类器之间的交互来提高分类器的精度,未标识样例被分类器逐步标识,选出确信度最高的样例加入训练集,不断重复,直到未标识集全部标识为止,更新模型。

根据以上的讨论,半监督学习可以利用未标识数据来提高学习的性能。但在实际应用中,很难测试到底哪些假设(光滑假设、聚类假设、流型假设)是成立的,如果选择了错误的算法,那么学习算法的性能有可能很差。在这种情况下 ,安全的半监督学习算法具有很大的应用前景,在任何情况下,至少能够获得和监督学习同样的性能。通过维护多种类型学习器的一个后验分布,贝叶斯建模提供了一个可行的方案。这种方案面临的挑战是需要在假设和学习器中定义一个智能的先验分布,并为不同类型的半监督学习器定义贝叶斯公式,以便可以定义一个合适的似然函数。其他的安全的半监督学习算法还可以通过开发顽健的基于图的方法来获得,或者不做那么严格的假设,使得这些假设在更多、更复杂的数据集中都可以被满足。

另外,以上讨论的半监督学习算法只是利用了已标识数据和未标识数据之间的关系,还有很多其他类型的关系并没有得到很好的利用,这在大数据时代尤为突出。比如,假设希望为社交网络中的人预测分类标识或者数字型数值等,那么社交网络中人与人之间的朋友关系或者共同的兴趣爱好、相近的地理位置、点击了同一个广告等关系,都可以用来提高半监督学习的性能。将这些信息集成到半监督学习的算法中具有非常重要的实际意义。

4.2 集成学习

在现实生活中,一群人经常能比一个人做出更好的决策,特别是当群体中的每个人都有不同见解时。对于机器学习来说,这个道理同样适用。集成学习就是这样的机器学习方法,通过将多个不同的学习系统的结果进行整合,可以获得比单个学习系统更好的性能。在集成学习中,即便是采用更简单的学习系统,也可以获得更好的性能。另外,集成学习的架构本质上就具有易于并行的特性,为在处理大数据时提高训练和测试效率提供了很好的基础。自集成学习的概念提出,集成学习在很多领域得到了快速的发展和广泛的应用。

传统的机器学习的原理是搜索,通过搜索所有可能函数构成的假设空间集合,找出一个最逼近未知函数的近似函数。一般来说,传统机器学习的输出结果都会面临3个方面的问题:统计、计算和表示上的问题。在搜索一个由巨大的训练数据集构成的假设空间时,就会面临统计上的问题。由于可用的训练数据很多,就会存在多个具有相同准确度的不同假设,但传统的机器学习算法必须在这些不同的假设中挑选一个。选择哪一个都面临着很大的风险,虽然这些输出在训练数据上的表现相同,但在新的数据上的表现可能有很大的差距。如果采用集成学习中那种简单、平等的投票机制进行选择,就可以降低这样的风险。在学习算法不能保证在假设空间中找到一个最好的输出结果时,就面临计算上的问题,常出现在因为计算的复杂性而不得不采用启发式方法时,找到的结果有可能是局部最优的,如果利用加权方法,将各种局部最优的结果整合起来作为输出,可以有效降低这种局部最优的风险。最后,当假设空间没有包含可以逼近未知函数的假设时,就面临表示上的问题。如果可以给每个假设赋予不同的权重,并进行简单的投票方式,就有可能找到一个非常逼近未知函数的近似函数。

通过以上的分析,可以看到集成学习可以解决传统机器学习中的很多问题。在大数据时代,由于数据体量大、数据结构复杂、数据的质量参差不齐,以上这些问题可能更加突出,所以集成学习必定会成为大数据分析强有力的工具。

一个集成学习算法包括多个基本学习器(经常称作弱学习器),基本学习器通常在训练数据上运用传统的机器学习算法(如决策树、神经网络或其他的学习算法)而生成的。同构集成学习采用单个基本学习算法生成相同类型的基本学习器,异构集成学习则采用多个不同的学习算法生成不同类型的基本学习器。在异构集成学习中,因为没有单个相同的基本学习算法,所以有很多学者更倾向于称这些学习器为组件学习器。集成学习的泛化能力远远超过了基本学习器的泛化能力,这恰恰是集成学习的优势,即可以提高那些仅仅比随机猜测好一点的弱学习器的性能,将其变成可以做出准确预测的强学习器。根据基本学习器生成的方法,可以将集成学习分为两类:一类是顺序的集成学习方法,基本学习器是按次序生成的,这类算法利用基本学习器之间的相关性,整体的性能通过减小残余错误的方式来提高,一个典型的例子是Boosting;另一类是并行集成学习方法,基本学习器是并行生成的,这类算法利用基本学习器之间的独立性,通过综合多个独立的基本学习器,可以大大减小学习的错误,一个典型的例子是Bagging。

Boosting算法的核心是弱学习假设[6],即假设基本学习器在基于给定的训练数据上只产生一个比随机猜测好一点的弱结果。Boosting算法只能通过不断地调用基本学习算法从训练数据中学习,如果基本学习器只是简单地重复调用,并利用相同的训练数据集,这种方式不可能产生好的结果。Boosting的基本思路是为基本学习器选择合适的训练数据集,使得每次调用基本学习器都可以从数据中得到一些新的信息。这可以通过选择以前的基本学习器表现差的数据集,对这些数据集进行加强学习,这样基本学习器可以输出比之前更好的结果。

Bagging由Breiman提出[7],其两个主要的组件是bootstrap和aggregation。Bagging的最关键环节是如何获得尽可能独立的基本学习器。在给定一个训练数据集时,一个可行的方案是将训练数据分成多个不重叠的训练数据子集,并对这些子集进行抽样,然后在每个抽样的数据集上训练出一个基本学习器。最终的学习结果是对多个学习器的学习结果进行多数投票而产生的。Bagging采用bootstrap分布来生成不同的基本学习器。具体地,在给定一个包含m个训练实例的训练数据集时,抽样生成m个训练实例,有些原始的训练实例可能会出现不止一次,而有些可能在抽样中根本就不出现。重复这样的过程T次,就可以得到T个含m个数据实例的抽样。然后,针对每个抽样数据集运用基本的学习算法,就可以训练得到一个基本学习器。在基本学习器输出结果的聚集时,Bagging采用最常用的策略(即投票)来聚集分类结果,利用求平均值来聚集回归结果。

在生成一系列的基本学习器后,集成学习通过组合这些基本学习器的方式来获得更强的泛化能力,而不是从中选择一个最佳的基本学习器。所以这种组合的方法是直观重要的,会直接影响集成学习的性能。目前提出的组合方法有很多,主要介绍平均法和投票法。

平均法对于数值型输出结果是常用的组合方法,包括简单平均法、加权平均法。简单平均法又称算术平均法[8],因为简单易用在现实应用中得到了广泛的使用。但其有效性是基于假设单个学习器的错误是不相关的,而在集成学习中因为单个学习器在相同的问题上进行训练,所以这个假设在集成学习中常常是不成立的。加权平均法给每个基本学习器赋予不同的权重,然后进行平均,不同的权重意味着不同的重要性。简单平均法是加权平均法的一个特例,但加权平均法的性能并不是明显优于简单平均法的性能。这是因为在现实世界中,数据通常有很大的噪声,所以估计的权重经常是不可靠的。特别是在一个大的集成学习中,有很多权重系数需要估计,这很容易导致过度拟合问题;而简单平均法不要估计任何的权重系数,所以不太可能存在这方面的问题。一般来说,对有近似性能的基本学习器使用简单平均法是适合的;基本学习器各有优劣势时,采用加权平均法可以获得更好的性能。

投票法是对于非数值型输出结果的常用组合方法,包括多数投票法、最大投票法以及加权投票法。多数投票法是最常用的一种投票法,每个基本学习器投票选出一个分类标识,集成学习最终输出的分类标识是超过半数投票的分类标识,如果没有分类标识的得票数超过半数,集成学习就不会有任何的输出结果。与多数投票法不同,最大投票法选择获得最多票数的分类标识作为最终的输出结果,并不要求输出结果必须获得超过半数的选票,所以不可能出现没有输出结果的情况。在出现得票数相同的分类标识时,任意选择一个作为输出。考虑到每个基本学习器具有不同的性能,加权投票法给那些性能好的基本学习器更多的投票权。

以上讨论的集成学习方法的预测效果显著优于单个基本学习机,但它们存在一些缺点:与基本学习机相比,其预测速度明显下降,且随着基本学习机数目的增多,它们所需的存储空间也急剧增多,这对于在线学习更是一个严重问题。那么是否可以利用少量的基本学习机就可以达到更好的性能呢?国内的学者周志华等人提出“选择性集成”为这个问题给出了肯定的答案。理论分析和试验研究表明,从已有的基本学习机中将作用不大和性能不好的基本学习机剔除,只挑选一些基本学习机用于构建集成则可以得到更好的预测效果。限于篇幅,不对选择性集成展开讨论。

4.3 概率图模型

大数据给很多领域带来了很大的挑战,其中之一就是如何处理大量的不确定性数据,这些数据普遍存在于电信、互联网、科学计算、经济、金融等领域中,如何从这些不确定性数据中获取知识是大数据分析的一个重要任务。概率图模型是概率论与图论相结合的产物,是概率分布的图形化表示,概率图模型为捕获随机变量之间复杂的依赖关系、构建大规模多变量统计模型提供了一个统一的框架[9]。概率图模型在统计学、计算学以及数学等很多领域都是研究热点,如生物信息学、通信理论、统计物理、组合优化、信号和图像处理、信息检索和统计机器学习等。

概率图模型一方面用图论的语言直观揭示问题的结构,另一方面又按照概率论的原则对问题的结构加以利用,降低推理的计算复杂度。概率图模型中的一个核心概念是因子分解,根据一个底层图的结构,一个概率图模型由一组概率分布所构成。概率图通过图形的方式来捕获并展现所有随机变量的联合分布,通过分解成各因子乘积的方式来实现,每个因子只和部分变量有关。概率图模型主要包括贝叶斯网络、马尔可夫网络和隐马尔可夫模型。限于篇幅,以下只详细介绍贝叶斯网络的主要原理及特性。

贝叶斯网络又称为信念网、概率网或者因果网,用于表示变量之间的依赖关系,并为任何全联合概率分布提供自然、有效、简明规范的一种有向无环图结构[10]。通过贝叶斯网络,可以采用系统化以及本地化的方法将某种情形的概率信息构建成一个有机的整体。贝叶斯网络还提供了一系列的算法,通过这些算法可以自动地对这些信息推导出更多隐含的意思,为在这些情形下进行决策提供基础。从技术层面看,随着随机变量的不断增加,通过概率论和统计学中传统的表格及方程来表示这些变量的联合概率分布是不可行的,贝叶斯网络则为这些联合概率分布提供了一个非常紧凑的表示方法。贝叶斯网络的一个主要特征是可保证数据的一致性和完整性,这是因为对于任意的贝叶斯网络,有且只有一个概率分布满足这个贝叶斯网络的各种限制条件。贝叶斯网络的另一个特征是,在很多情况下要明确地生成联合概率分布在计算上是不可行的,而在贝叶斯网络中可以通过高效率的算法来计算这些概率。这些算法的效率以及准确性与贝叶斯网络的拓扑以及相关的查询是十分相关的。贝叶斯网络还具有非常灵活的学习机制,可以模拟人类的学习方式和认知过程,灵活地对结构和参数进行相应的修正与更新。所以,贝叶斯网络是目前最为常用的概率图模型。

4.4 迁移学习

在大数据环境下,大量新的数据在大量不同的新的领域(如新闻、电子商务、图片、视频、博客、播客、微博、社交网络等)呈爆炸性增长,要在这些新的领域应用传统的机器学习方法,就需要大量有标识的训练数据。基于这些有标识的训练数据,运用统计学习的理论,传统的机器学习通常可以获得很好的性能。但是,如果对每个领域都标识大量训练数据,会耗费大量的人力与物力。所以,如果有了大量其他领域的不同分布下的有标识的训练数据,能否利用从这些训练数据中学习到的知识帮助在新环境中的学习任务?其实人类是具有这种学习能力的,即在多个任务之间进行知识迁移的能力,在碰到新的学习任务时,人类会从以前学习的经验中认知并运用相关的知识。新的学习任务和以前的经验相关性越大,就越容易掌握新的任务。知识在不同场景之间迁移转化的能力被称作迁移学习[11]。这正是传统机器学习所缺乏的,其根本原因在于传统的机器学习一般假设训练数据与测试数据服从相同的数据分布,即学习的知识和应用的问题具有相同的统计特征。当学习和应用的场景发生迁移后,统计特征往往会发生改变,这将大大影响统计学习的效果。提高机器学习能力的一个关键问题就在于,要让机器能够继承和发展过去学到的知识,这其中的关键就是让机器学会迁移学习。

迁移学习可以通俗地解释为,一个会下象棋的人可以更容易地学会下围棋;一个认识桌子的人可以更容易地认识椅子;一个会骑自行车的人更容易学会骑摩托。迁移学习一个有代表性的定义是,给定一个源领域和学习任务以及一个目标领域和学习任务,迁移学习的任务是通过利用源领域和学习任务的知识来提高在目标领域的学习性能。在这里,源领域和目标领域是不同的,或者源学习任务和目标学习任务是不同的,当两者都一样时,就是传统意义上的机器学习问题。

迁移学习的目标是利用源任务中的知识来提高目标任务中的学习性能,这可以通过3个方面来度量。

·在目标任务中仅仅采用了迁移的知识,还没有进行任何进一步的学习之前,与没有采用知识迁移的算法相比所能获得的初始性能提升。

·在利用了迁移知识之后,对目标任务进行充分学习所需要的时间。

·与没有知识迁移的情况相比,在目标任务中能够获得的最终的性能到底有多少提高。

如果迁移方法降低了性能,称为负迁移。在迁移方法研究中的一个主要挑战是在适当相关的任务中生成正迁移,同时在不太相关的任务之间尽量避免负迁移。当一个代理将从一个任务中的知识运用到另一个任务中时,经常需要将一个任务中的特征映射到其他任务的特征中,以指定任务之间的对应关系。在迁移学习的很多工作中,通常由人来提供这种映射,但可以设计一些方法自动地执行这些映射。

根据迁移学习的定义,迁移学习分为:归纳迁移学习、直推迁移学习以及无监督迁移学习[11]。在归纳迁移学习中,源领域和目标领域可以是相同的或者是不同的,但是目标任务和源任务肯定是不同的。在这种情况下,需要利用目标领域的部分已标识数据来归纳用于目标领域中的目标预测模型。另外,根据在源领域中已标识数据和未标识数据的不同情况,归纳学习可以进一步分成两种:第一种是在源领域中有很多可用的已标识数据;第二种情况是在源领域中没有可用的已标识数据。这和自学习的情况有些类似。归纳迁移学习的一个例子是Tradaboost算法,其基本思路是将源领域数据和目标领域数据混合在一起训练,然后通过类似AdaBoost的结构来调整权重和计算错误率实现迁移学习。已经有很多研究对归纳迁移学习进行了探讨,这些研究工作可以分为基于实例、基于特征、基于参数以及基于关系的知识迁移。

直推迁移学习研究的是不同领域中相同的学习任务之间的知识迁移[12],一般情况是原始领域中有大量标识数据可供利用,而目标领域只有无标识数据可供利用。在这里,源领域和目标领域的不同又包括两种情况:一种是源领域的特征空间和目标领域是不同的;另一种是两个领域的特征空间相同,但输入数据的边缘分布概率不同。“直推”的意思和传统机器学习中是有区别的。在传统的机器学习中,直推学习是指在训练阶段,所有的测试数据都是可用的,学习到的模型无法重用到新的数据中;而在这里是强调学习任务必须相同,目标领域中只需要有部分可用的为标识数据。在直推迁移学习中,只有基于实例的知识迁移以及基于特征的知识迁移两种实现方案。在无监督迁移学习中,源领域和目标领域可以是相同的或者是不同的,目标任务和源任务是不同的,只是相关的。在这种迁移方法中,源领域和目标领域都没有可用的已标识数据,所以迁移难度最大。目前这方面的研究也很少,只有基于特征的迁移实现方案。

给定一个目标任务,任何迁移方法的有效性依赖于源任务以及源任务是如何与目标任务相关的。如果它们之间有很强的关系并且能够被迁移方法很好地利用,目标任务的性能可以通过迁移大大提高。但是,如果源任务和目标任务没有足够的相关性,或者迁移方法并没有很好地利用这种关系,目标任务的性能不仅得不到提高,还有可能降低,即产生负迁移。从理论上来说,一个迁移方法在适当相关的任务之间应该生成正迁移,而在任务不是很相关时则应避免负迁移,但在实际中是很难同时达到这些目标。具有防护措施避免负迁移的迁移方案,通常会因为这种措施对正迁移产生一些小的影响。相反,那些激进的迁移方案在产生很大的正迁移效应时,通常对负迁移没有任何防护。

避免负迁移的一个方案是在学习目标任务时,尽量识别并拒绝源任务中的有害知识。这种方案的目标是让有害信息的影响最小化,这样迁移的性能至少可以不差于没有迁移的情况。在极端的情况下,学习代理可以完全丢弃迁移的知识,另外一些方法则可以有选择地拒绝部分知识并选择部分知识。如果有不止一个源任务,而是一套可选的源任务,那么就有更大的可能性避免负迁移。在这种情况下,避免负迁移的问题就成为如何选择最好的源任务。没有对负迁移进行较多防护的迁移方法在这种情形下可以很有效,只要选择的最佳源任务是一个很好的选择。

人类具有天生的方法在多个任务之间进行知识迁移,即在碰到新的学习任务时,会从以前学习的经验中认知并运用相关的知识。新的学习任务和以前的经验相关性越大,就越容易掌握新的任务。传统的机器学习算法,通常只是解决一些孤立的任务。迁移学习试图通过将在一个或多个源任务中学习到的知识进行迁移,将它们用在相关的目标任务中以提高其学习性能。这些能够进行知识迁移的技术,标志着机器学习向人类学习的道路上又前进了一步。

5 结束语

大数据时代的数据绝大多数是大量无标识的数据和少量有标识数据的组合,半监督学习方法是处理该类数据的有效方法;随着数据量的激增,单一学习器的学习成果和效率难以满足要求,通过多个学习器整合后的集成学习方法能较有效地获取学习的结果;概率图模型通过图形可视化的方式为多种结构的大数据分析提供了简单有效的分析模型;而通过迁移学习,已有的学习成果能不断积累并衍生引用到未知的领域。当然,与大数据相关的机器学习研究领域还有很多,如大规模机器学习的算法并行化,这也是未来机器学习的一个重点方向,有待在后续实际工作中不断研究探索。

1 Tom Mitchell. Machine Learning. McGraw Hill Higher Education,1997

2 Olivier C,Bernhard S,Alexander Z.Semi-Supervised Learning.The MIT Press,2006

3 Zhu X J.Semi-Supervised Learning Literature Survey.Madison:University of Wisconsin,2008

4 Zhou Z H.Ensemble Methods:Foundations and Algorithms.Boca Raton,FL:Chapman&Hall/CRC,2012

5 梁吉业,高嘉伟,常瑜.半监督学习研究进展.山西大学学报,2009,32(4):528~534

6 Freund Y,Schapire R E.A decision theoretic generalization of online learning and application to boosting.Journal of Computer and System Sciences,1997,55(1):119~139

7 Breiman L.Bagging predictors.Machine Learning,1996,24(2):123~140

8 张春霞,张讲社.选择性集成算法综述.计算机学报,2011(8)

9 Koller D,Friedman N.Probabilistic Graphical Models:Principles and Techniques.The MIT Press,2009

10 Darwiche A.Modeling and Reasoning with Bayesian Networks.Cambridge University Press,2009

11 Pan JL,YangQ.A surveyon transferlearning.IEEE Transactions on Knowledge and Data Engineering(IEEE TKDE),2010,22(10):1345~1359

12 Bahadori M T,Liu Y,Zhang D.Learning with minimum supervision:a generalframework for transductive transfer learning.IEEE International Conference on Data Mining(ICDM),2011

猜你喜欢

机器领域监督
机器狗
机器狗
突出“四个注重” 预算监督显实效
领域·对峙
未来机器城
监督见成效 旧貌换新颜
夯实监督之基
无敌机器蛛
新常态下推动多层次多领域依法治理初探
监督宜“补”不宜“比”