专栏名称: CSDN
CSDN精彩内容每日推荐。我们关注IT产品研发背后的那些人、技术和故事。
51好读  ›  专栏  ›  CSDN

CCAI 2017 | 日本理化学研究所先进智能研究中心主任杉山将:弱监督机器学习的研究进展

CSDN  · 公众号  · 科技媒体  · 2017-07-26 13:38

正文

日本理化学研究所先进智能研究中心主任 杉山将


记者 | JayZhang


7 月 22 - 23 日,在中国科学技术协会、中国科学院的指导下,由中国人工智能学会、阿里巴巴集团 & 蚂蚁金服主办,CSDN、中国科学院自动化研究所承办的 2017 中国人工智能大会(CCAI 2017)在杭州国际会议中心盛大召开。


在本次大会上,日本人工智能和机器学习领域新一代的代表性人物——日本理化学研究所先进智能研究中心主任Masashi Sugiyama(中文名:杉山将)为参会者带来了《弱监督机器学习的研究进展》的演讲。杉山将在机器学习领域发表过很多重要的理论,是这个领域最知名的学者之一,出版了机器学习相关书籍《图说机器学习》(中文版)。

以下内容根据杉山将本次主题演讲整理,略有删减:

大家早上好,我叫杉山将,非常高兴能够参加今天的大会,也很高兴和这么多中国的研究人员见面,我也特别喜欢杭州的文化和当地的美食。


在过去的4-5年中,AI在日本发展地非常快,这也让我能有机会出相关的教科书,其中有一本翻译成了中文——《图说机器学习》。其实我看得懂中文,所以我觉得今天演讲的中文标题的翻译是很准确的。


下面我所要讲的东西和今天大会的主题非常契合。



昨天漆远谈到了金融领域的机器学习,从大数据的角度来看,它是机器学习很重要的研究领域,并且目前还是非常的成功,我也一直对基于大数据来做机器学习这件事情非常感兴趣。然而,现在对于很多的应用领域而言是无法获取大规模的标注数据的,比如医药、制造业、防灾等领域。当数据量不够时,我们需要相应的机器学习方法来应对。


今天我会讲一些关于小数据的研究进展,我的演讲和其他的演讲者相比会更没有那么的技术性,希望大家可以了解一下小数据分类的研究状况,其中还是有一些让人欣喜的研究进展的。



监督学习、非监督学习和半监督学习概述


回到我们所讨论的话题,首先还是要去关注一个最简单的问题,就是二元分类的问题。


我们会有一些训练数据(如下图),其中蓝色圈点代表正例,而红色叉点代表负例。这样的二分类问题,其实已经被研究很多年了,由于我们已经有了大量的标注数据,所以能够得到非常好的分类结果,我们都知道现在最优的分类结果是这样的。



然而,想要获取大量的标注数据是非常耗时耗力的,我们希望也能够对无标注数据进行分类,这就是无监督分类的由来。


其实无监督分类和聚类是一样的,比如下面这张图中的数据点聚成了两簇,每一个簇代表一个类别,这样才是非常好的分类结果。然而很遗憾现在我们这个假设(即聚类的结果表示一个类别)并未得到相应的验证,所以从这个层面上来看,还没有非常合理的办法来做无监督分类。



我非常喜欢11年前提出另一种方法的论文:由于我们有大量的无标注数据和少量的标注数据,那么基于少量的标注数据就能在一定程度上找到边界,然后结合所找到的边界和大量无标注数据的聚类结果,从而找出更多的边界。这就是半监督分类。



然而,半监督分类和无监督分类面临同样的问题,也就是簇要能够跟类别对应起来。如果一个簇总 能对应着 一个类别,这样就完美了。但事实并非如此,这就是我们今天所要讨论的内容。


接下来我先总结一下前面说过的内容。


对于不同类型的分类方法,标注的成本有高有低,所取得的分类准确率也有高有低。对于监督分类,能够取得很高的分类准确率但同时标注的成本非常高;而对于半监督和非监督分类,标注的成本都比较低(甚至没有),但取得的分类准确率并不高。


如何让左下角的这两种方法(即半监督和非监督分类)能够取得较高的分类准确率,同时保持比较低的标注成本?


这是我们所面临和需要解决的难题。



现在深度学习技术非常热门,但我今天讲的东西不是深度学习,这并不是说要忽视深度学习,其实这个话题跟深度学习也是有关系的。


模型方面,从简单到复杂,我们有线性模型、增量模型、基于核函数的模型和深度学习模型等;机器学习方法方面,有监督学习、无监督学习、半监督学习和增强学习等。


任意的学习方法和模型都是可以相结合的,不过我今天要讲的东西是关于学习方法的,它可以使用任何的模型,包括深度学习模型。当然我更倾向于使用线性模型,因为这更简单,如果你想使用更加复杂的模型也是完全可以的。




弱监督学习的研究进展


下面是今天演讲的议程,接下来会给大家介绍四种不同的分类方法,后面如果有机会我会介绍一下理化学研究所AIP研究中心。



UU数据分类


首先看一下UU (Unlabeled, Unlabeled) 分类,U代表的无标注的数据(Unlabeled data)。


那么我们是怎样对无标注的数据进行分类的呢?假设我们有两个未标注的数据集,它们唯一的不同在于类先验(class-priors,即所属的类别)的不同。它们的函数分布如图中的左右下角,数量上各占50%左右,其实我们并不需要知道具体的比例。基于这种假设,我们需要训练一个分类器,而基于无标注数据的训练是极具挑战的。



那么怎么训练分类器呢?


首先来看一下类先验的区别是什么,在正类和负类之间,我们只看p(x)和p’(x)之间的差异,这就是我们划分正负类的标准。


假设通过某些技术方法,我们能够获取这些数据的正负类分布的先验信息,正负类的分布比例是对等的,也就是说一半数据是正类,一半是负类。x代表非标注的数据,C是一个常数,由于没有相应的标注数据,所以我们对C的值难以有个合理的估计。尽管如果C没有具体的值,我们不知道哪一侧是正类,哪一侧是负类,但这并不要紧,因为类别之间的差异性往往很明显,最终表现在符号为正或负,所以我们有时可以将常数C忽略掉。我们只看最终符号的正负,这样可以让我们得到最优的分类结果。



接下来的做法都是很直观的。因为我们要处理的是一些未标注数据,第一种方法是做核密度的估计,我们对两类数据点对应的p(x)和p’(x)进行估计,从而计算它们之间的差值,这样能够很自然地解决分类问题。然而,遗憾的是这种方法虽然简单,但有可能对p(x)-p’(x)的差值产生了低估,这是因为对p(x)和p’(x)的估计函数过于平滑所导致的。


第二种方法是直接对密度的差值进行估计,利用Kim等人所提出的模型,尽可能把密度差异的估计偏差达到最小,这种方法用一个线性的模型就能够得到相应的解决方案。


第三种方法是对密度差的第一项进行直接的估计,这是最为直接的方法。对于我们这个问题来说,第三种方法遵循了Vapnik原则。我们要解决的问题不能太过泛化,在这个场景中,我们想要估计密度的差值,这将涉及到非凸优化方面的问题(例如可使用CCCP方法来解)。



下面是我们做的一些实验结果,比较的指标是误分类率的类均值。



表格的左侧一栏是表示不同的数据集,对比的方法中有聚类的方法,可以看出聚类的方法并不是很有用。表格中间的是一些普通方法,其中第二种是估计p(x)-p’(x)的差值,可以看出越靠近左侧的方法取得的效果越好,这是因为对应解决问题的方式更加直接,因此直接的估计密度差值或者是密度差值的符号函数的值会更加有效。


在实际的应用中,我们通常选择左侧的两种方法。


PU数据分类


下一个话题要谈的是如何处理PU (Positive, Unlabeled)的数据,也就是只有正例数据和未标注的数据。


我们有两类数据样本,一种是属于正类的,另外一类是未标注的。当然未标注的数据里包含了正类和负类两种数据,但是我们并不知道其中哪些是正类,哪些是负类。对应这种数据类型的一个例子是,比如有一些你点击和未点击的网站,对于那些未点击的网站中,你既有未来可能会点击的,也会有你不会点击的(或者有想点击的,但可能由于忙而没有真正点击的),对这些网站点击数据,我们可以应用PU的分类方法。


另外,我相信在社交媒体上面也会有这样的分类场景,判断一个用户是不是你的好友。对于已经认识的朋友,朋友之间有着很好的联系,所以我们能够得到相应的数据样本;然而,对于非朋友关系的用户们,我们并不知道他们相互讨厌对方所以没有成为朋友,还是如果有机会是能够成为朋友的,所以他们之间没有链接并不代表它就是负类的(不能成为朋友)。







请到「今天看啥」查看全文