关于机器学习,你应该知道的 3 个热门专业术语

标签: dev | 发表时间:2018-10-13 00:00 | 作者:
出处:http://itindex.net/relian


编者按:如果你是刚入门机器学习的AI探索者,你知道什么是胶囊网络吗?AutoML和元学习又是什么?为了帮大家节省查阅晦涩难懂的论文的时间,我们邀请微软亚洲研究院机器学习组实习生吴郦军、罗人千帮大家用最通俗的语言解释了这三个机器学习领域的热门词汇,赶紧收藏吧!


胶囊网络Capsule Networks

胶囊网络(Capsule Networks)是深度学习三巨头之一的Geoffrey Hinton提出的一种全新的神经网络。最初发表在2017年的NIPS会议上:Dynamic Routing Between Capsules。胶囊网络基于一种新的结构——胶囊(Capsule),通过与现有的卷积神经网络(CNN)相结合,从而在一些图像分类的数据上取得了非常优越的性能。


何谓胶囊?简单来说, 胶囊就是将原有大家熟知的神经网络中的个体神经元替换成了一组神经元组成的向量,这些神经元被包裹在一起,组成了一个胶囊。因此,胶囊网络中的每层神经网络都包含了多个胶囊基本单元,这些胶囊与上层网络中的胶囊进行交互传递。



胶囊网络的主要特点是什么呢?与传统CNN相比优势是什么呢?下图简单比较了胶囊和传统的神经网络中神经元的不同。

 


两者最大的不同在于, 胶囊网络中的神经元是一个整体,包含了特征状态的各类重要信息,比如长度、角度、方向等,而传统的CNN里每个神经元都是独立的个体,无法刻画位置、角度等信息。这也就是为什么CNN通过数据增广的形式(对于同一个物体,加入不同角度、不同位置的图片进行训练),能够大大提高模型最后的结果。


胶囊网络能够保证图像中不同的对象(比如人脸中的鼻子、眼睛、嘴巴)之间的相对关系不受角度改变的影响,这一特性来自于图形图像学的启发。对于3D图像,人类的大脑能够在不同的位置对于这个图像都做出准确的判别。当我们以向量的形式将特性状态封装在胶囊中时,胶囊拥有状态特性的长度(以概率形式加权编码)以及状态的方向(特征向量的方向)。因此对于胶囊来说,长度相同的特征,其方向也存在着变化,而这样的变化对于模型训练就正如不同角度的增广图像。


胶囊的工作原理是基于“囊间动态路由”的算法,这是一种迭代算法。简单地说,两层之间的胶囊信息传递,会通过计算两者之间的一种相关信息来决定下层的胶囊如何将自己的特征传递给上层的胶囊。也就是说,下层胶囊将其输出发送给对此表示“同意”的上层胶囊,利用输入与输出之间的点积相似性,来更新路由间的系数。


跟传统的CNN相比,当前的胶囊网络在实验效果上取得了更好的结果,但是训练过程却慢了很多,因此胶囊网络依然很有很大的发展空间。


自动机器学习AutoML

在实际的AI应用中,如果想让机器学习获得比较好的学习结果,除了对数据进行初步分析、处理,可能还需要依赖领域知识对数据进行进一步的特征提取和特征选择,然后根据不同的任务及数据特征选择合适的机器学习模型,在训练模型时还要调大量的超参数,尝试各种tricks。整个过程中需要花费大量的人工和时间。因此,机器学习从业者都戏称自己是“调参工程师”,称自己的工作是“有多少人工就有多少智能”。对于初入门的小白及大量普通开发者来说,机器学习工具比较难以掌握。


为了减少这些需要人工干预的繁杂工作, 自动机器学习(Automatic Machine Learning,简称AutoML)应运而生。它能 自动选择合适的算法模型以及调整超参数,并最终取得不错的学习效果。简单来说,自动机器学习过程就是用户提供数据集,确定任务目标,之后的工作就交给AutoML来处理,用户将会得到一个训练好的模型。这大大降低了使用机器学习工具的门槛,让机器学习工具的使用过程变得简单、轻松。


我们以AutoML里的一个子领域NAS(Neural Architecture Search,神经网络结构搜索)为例。顾名思义,NAS是自动搜索神经网络的结构。传统神经网络都是由人工设计的,经过长时间的演化迭代,从AlexNet到DenseNet,性能不断上升,效果也不断提升。但正如前文所说,神经网络结构的演化过程耗费了大量的人工。不同的基础网络结构,如AlexNet、VGG、ResNet、DenseNet等需要深度学习的专业研究人员进行研究改进,而它们在具体任务上的应用又需要进一步调整相应的参数和结构。



NAS旨在针对给定的数据集和学习任务,自动搜索出适用于该任务的好的网络结构。决定一个神经网络“区别于其它网络”的关键因素包括网络结构里每层的运算操作(如不同种类、大小的卷积和池化操作)、每层的大小、层与层之间的连接方式、采用的激活函数等。这些关键因素在传统的人工设计的神经网络里都是固定的,但在自动搜索网络结构里可能都是未知的。算法需要通过自动搜索进而最终决定一个神经网络的结构。


2016年Barret Zoph等人发表了Neural architecture search with reinforcement learning一文,文中提出了控制器-子网络的框架,其中子网络即我们要应用在目标任务上的网络,控制器则负责生成子网络的结构。对于图像类任务,子网络采用CNN,搜索其每层的运算操作和连接方式;对于文本类任务,子网络采用RNN时,搜索其每层的激活函数和连接方式。控制器搜索出的子网络结构在目标任务的数据验证集上的性能则作为reward反馈给控制器,通过强化学习进行训练,使得控制器经过不断的学习迭代生成更好的子网络结构。但是这一工作使用了大量GPU资源,耗费了一个月时间才得到了最后的结果。


随后,有一系列的工作对NAS做出了改进:改进搜索空间(搜索单一block里的结构,之后堆叠多个block作为最终网络)、改进搜索算法(使用演化算法、梯度优化等)、提升搜索效率(通过参数共享等)等。这些工作提升了NAS本身的搜索效率和性能,同时搜索出的CNN网络也在主要的数据集(CIFAR10、CIFAR100、IMAGENET)上取得了SOTA,超过了人工设计的网络的性能。微软亚洲研究院机器学习组发表在NIPS 2018上的工作Neural Architecture Optimization [1],利用网络结构在验证集上的性能对网络的梯度信息来优化网络结构。首先将离散的网络结构用编码器转换成连续空间里的向量,然后训练了一个预测器来预测该向量(网络结构)在验证集上的性能,从而可以直接基于预测结果对该向量的梯度进行优化,生成更好的向量(网络结构),最后再通过解码器解码将生成的向量解码成离散的网络结构。我们的算法搜索出的CNN和RNN结构在相应任务(CIFAR10、CIFAR100、PTB、Wikitext-2)上皆取得了超过其它NAS工作的最好性能。


元学习Meta Learning

我们期待的通用人工智能的目标是让人工智能像人一样学会推理、思考,能快速学习。对于现实世界的很多问题,人类之所以能够快速学习是因为人类具有强大的思考推理能力以及学习能力。人类能够利用以往学习到的知识经验来指导新知识的学习,做到“触类旁通”、“举一反三”,这让人类的学习行为变得十分高效。


元学习(Meta Learning)的目的就是研究如何让机器学习系统拥有学习的能力,能够更好、更高效地学习,从而取得更好的学习效果。比如对于数据集,采取什么方式、什么顺序、什么策略进行学习,对于学习效果如何进行评测,这些都会影响到模型学习的效果。



微软亚洲研究院机器学习组今年发表在NIPS 2018上的工作Learning to Teach with Dynamic Loss Functions [2]使用一个teacher model来指导student model(学习具体任务的模型)学习,让student model在学习过程中动态利用学习到的不同的损失函数(loss function)来处理不同数据的学习,学习到的模型在相应任务上取到了很好的结果。


你还想了解哪些AI领域的专业词汇呢?欢迎在评论区留言!


参考文献

[1] Renqian Luo, Fei Tian, Tao Qin, Tie-Yan Liu, Neural Architecture Optimization, NIPS 2018


[2] Lijun Wu, Fei Tian, Yingce Xia, Tao Qin, Tie-Yan Liu, Learning to Teach with Dynamic Loss Functions, NIPS 2018


作者简介


吴郦军,微软亚洲研究院-中山大学联合培养博士生,目前直博四年级在读。研究方向包括机器学习、深度学习、强化学习、机器翻译等,曾在NIPS,EMNLP,AAAI,IJCAI等会议上发表论文。



罗人千,微软亚洲研究院-中国科学技术大学联合培养博士生,目前博士三年级在读。研究方向包括机器学习、深度学习、机器翻译等,曾在NIPS上发表论文。



你也许还想看


  微软AutoML工具,现已加入Azure机器学习服务豪华套餐

  ICLR 2018论文 | Learning to Teach:让AI和机器学习算法教学相长

  书单丨成为机器学习大神,你不能不懂数学



感谢你关注“微软研究院AI头条”,我们期待你的留言和投稿,共建交流平台。来稿请寄:[email protected]



相关 [机器学习 知道 专业术语] 推荐:

关于机器学习,你应该知道的 3 个热门专业术语

- - IT瘾-dev
编者按:如果你是刚入门机器学习的AI探索者,你知道什么是胶囊网络吗. 为了帮大家节省查阅晦涩难懂的论文的时间,我们邀请微软亚洲研究院机器学习组实习生吴郦军、罗人千帮大家用最通俗的语言解释了这三个机器学习领域的热门词汇,赶紧收藏吧. 胶囊网络Capsule Networks 胶囊网络(Capsule Networks)是深度学习三巨头之一的Geoffrey Hinton提出的一种全新的神经网络.

基于机器学习的知道推荐—Enlister

- - 搜索引擎技术博客
基于机器学习的知道推荐—Enlister.         Enlister—最大的中文问答网站“百度知道”的问题推荐系统名字. 这个由几个百度一线工程师研发的系统,自2012年1月上线以来,承担着百度知道千万级登录用户的问题推荐计算.          百度知道这样的问答社区型网站有个典型特点:有些用户在平台上提出问题,这些问题被另一些用户发现,其中有能力且有意愿的人回答了这几个问题.

[译] 每个人都应该知道的十个机器学习常识

- - IT瘾-tuicool
当别人在高谈阔论机器学习时,你却插不上嘴,这是一种怎样的体验. 不懂机器学习没有关系,但你一定要知道下面的十个机器学习基本常识. 曾经在Endeca、谷歌和LinkedIn领导机器学习开发的Daniel Tunkelang为我们概括总结了这十个常识. 机器学习就是从数据中挖掘洞见,而人工智能是炒作.

机器学习五步走

- - 我爱机器学习
经常会有人问“我该如何在机器学习方面更进一步,我不知道我接下来要学什么了. 一般我都会给出继续钻研教科书的答案. 每当这时候我都会收到一种大惑不解的表情. 但是进步确实就是持续的练习,保持较强的求知欲,并尽你可能的完成具有挑战性的工作. 因为他是为数不多的几种可以让你真真让你获取坚实知识的媒介. 是的,你可以选择选一门课,注册MOOC,参加一些讨论班.

机器学习之路

- - 我爱机器学习
自从答应简二毛博士将自己的机器学习历程和心得分享给大家至今,转眼间半年已经过去了,感谢简博士分享和开源精神的鼓舞,这也正是本系列关于机器学习介绍博客的动力来源. 之前有些网友,师弟们问我,学习机器学习怎么入手,从看什么书开始. 如果你只愿意看一本书,那么推荐Bishop的PRML,全名Pattern Recognition and Machine Learning. 这本书是机器学习的圣经之作,尤其对于贝叶斯方法,介绍非常完善.

机器学习算法Boosting

- - 标点符
机器学习通常会被分为2大类:监督学习和非监督学习. 在监督学习中,训练数据由输入和期望的输出组成,然后对非训练数据进行预测输出,也就是找出输入x与输出y之间的函数关系F:y = F(x). 根据输出的精确特性又可以分为分类和回归. 分类和回归的区别在于输出变量的类型. 定量输出称为回归,或者说是连续变量预测.

Mahout实现的机器学习算法

- - ITeye博客
使用命令:mahout -h.   在Mahout实现的机器学习算法见下表:. EM聚类(期望最大化聚类). 并行FP Growth算法. 并行化了Watchmaker框架. 非Map-Reduce算法. 扩展了java的Collections类. Mahout最大的优点就是基于hadoop实现,把很多以前运行于单机上的算法,转化为了MapReduce模式,这样大大提升了算法可处理的数据量和处理性能.

国内的机器学习几个人

- - 丕子
转: http://blog.csdn.net/playoffs/article/details/7588597. 推荐几个机器学习和数据挖掘领域相关的中国大牛:. 李航:http://research.microsoft.com/en-us/people/hangli/,是MSRA Web Search and Mining Group高级研究员和主管,主要研究领域是信息检索,自然语言处理和统计学习.

Apache Mahout 0.8 发布,机器学习库

- - 开源中国社区最新新闻
Apache Mahout 0.8 发布了,Apache Mahout 是 Apache Software Foundation (ASF) 开发的一个全新的开源项目,其主要目标是创建一些可伸缩的机器学习算法,供开发人员在 Apache 在许可下免费使用. 该项目已经发展到了它的最二个年头,目前只有一个公共发行版.

Ruby的机器学习项目

- - 阳志平的网志-技术类
作者是辉瑞公司的小牛,可惜烂尾了. 我在改啊改啊,可惜现在是商业项目,暂时不能放出改掉的部分. 对了,顺便做个小广告,去年组织翻译的一本小书:社会网络分析:方法与实践. 已经上市了,感兴趣的可以翻翻:. 社会网络分析:探索关系背后的科学与技术. treat:自然语言处理. 类似于igraph,也是桥接处理nlp.