登录
首页精彩阅读前景、行业、技能……关于机器学习入门,你想知道的都在这儿!
前景、行业、技能……关于机器学习入门,你想知道的都在这儿!
2016-03-24
收藏
每天一个数据分析师」第19期内容奉上,请享用~

编者按:

围棋人机大战一役,火的不仅是AlphaGo和李世石,还有机器学习。作为人工智能的一个分支,机器学习越来越受到瞩目。本期C君采访了计算机科学博士邹博老师,为有志于机器学习的小伙伴提供一些经验分享。

近期,CDA也邀请邹博老师开设了机器学习课程,开课在即,可在文尾扫码了解更多详情。

Question=DA
Answer=邹博

DA:能否简单地阐述一下机器学习的概念?

邹博:以机动车自动驾驶为例,假定已经完成了视频采集和信号转换的前提下,如果使用传统算法,一种思路是列举所有的交通规则,分为道路拥挤、行驶缓慢、较慢、畅通等情况,按照事先给定的规则对机动车操作完成各项动作,达到起步、加速、刹车、拐弯等功能。

很明显的是,由于路况信息复杂,穷尽所有情况是不可能的;因此,可以在给定一个响应模型的前提下,使用各种模拟的路况(即样本)训练这个模型,通过正负反馈对模型的参数进行调整。当参数收敛或者达到某要求时,我们认为训练结束。然后就可以在各种路况下做验证和测试了。

这个例子说明:让机器在给定大量样本的前提下,不断的调整参数——这个过程就像让机器来学习一样,这就是“机器学习”。多说一句的是,虽然我们举的例子是“机动车”,但Machine Learning中的Machine是指的分类器、模型的意思,只不过大家看到的自动驾驶、AlphaGO等是成型的产品,必然是某个“机器”罢了。如SVM(Support Vector Machine)中的字母M,就是Machine——在某些向量(点,vertor)的支持(support)下的一个分类器(machine)。


DA:经过人机围棋大战事件,很多人对人工智能产生了兴趣,机器学习与人工智能是一种怎么样的关系?

邹博机器学习可以在一定程度上看成是人工智能的分支。让机器在给定大量样本的前提下,不断的调整参数,最终得到(近似)最优的参数值,从而具备预测、分类、决策等功能。

DA:在国内,机器学习的应用现状和前景是怎样的?

邹博:火爆!

DA:机器学习主要应用于什么行业?有哪些应用形式?

邹博机器学习在图像处理、语音识别、自然语言处理方面发挥了越来越大的作用,如使用GBDT选择特征,配合Logistic做分类,已经成了点击率预估的经典模型。同时,机器学习也渗透到各个传统行业中产生巨大的社会价值。

举例来说,以前可以使用隐马尔科夫模做语音识别,说话人的语音信号可以转化成文字输出(这就为接下来的文本翻译、文字到语音两个步骤做了准备,即机器的“同声传译”问题);当前可以使用深度学习的方式,将错误率大幅度降低,逐步逼近实用化水平。

刚刚结束的AlphaGO和李世石的人机大战,就是经典的卷积网络的应用(再配合机器学习方法做快速预估);而这个模型最吸引人的是它的通用性——通过给定其他样本,AlphaGO学到参数后就可以用于医疗等其他领域,这和以往的AI模型(如深蓝DeepBlue)是不同的。

另外,在人脸识别、目标检测、拥塞预测等传统的数据处理领域,机器学习更是完全胜任。

DA:对于初学者来说,机器学习的难点在哪里?

邹博:对于机器学习的掌握,我觉得至少分为三个方向:

1.对机器学习的算法做理论分析和改进,推动学科发展。

达到这一要求,需要有深厚的理论功底和科研能力,大体上,或许需要优秀的博士经历(或与之相当的水平)加一点点天赋。但这决不是“与我无关”的一个发展方向,现在机器学习界中的中国人面孔越来越多,一定程度上说明中国人蛮适合做相关工作的。

2.团队的技术负责与核心。

如果达到这一点,需要:

(1)对数学有自己的理解——个人认为,对数学需要有“Gauss式的硬推导+Eular式的直观理解”;

(2)对机器学习的算法本身清晰理解——适用环境是什么、参数如何选择、优缺点有哪些、算法之间的横向比较等;

(3)编码实现能力。能够使用至少一种语言,把自己的想法付诸实践并根据数据本身做自适应的调整——不要认为大牛不会编码,世界上从来没有出现过不会编程的顶级人才;

(4)熟悉开源库和数据处理工具;熟练而恰当的使用工具,提高效率。

我想,这个职业要求是绝大多数人机器学习者的努力目标。

3.能够使用各项开源库,胜任项目和任务要求。

达到这个要求,是能够跟别人说“我是做机器学习的”最低要求;但这依然需要熟悉数据清洗特征选择、算法调参、效果解释等内容,熟悉各种算法的适用条件,根据遇到的样本分布做最合理的选择或组合。如果能够熟悉各个算法本身的技术原理、时空复杂度,将有极大的帮助。

可以看出,每个方向有各个方向的要求,并且这3个方向没有先后难易之分。可以根据自己的兴趣和期望做最合适的规划。


DA:如果初学者想要进行机器学习,需要经过一个什么样的过程?

邹博:如果以刚才谈到的3个方向为基础,学习过程是不一样的。这就是有人认为“数学非常重要”,有人说“特征选择才是根本”的原因。其实,我觉得这个课程本身就是蛮好的学习过程,不是么?:)


DA:能否按照从入门到进阶的顺序,推荐一些参考书目、学习网站和博客等资料?

邹博:推荐看这几本:

Christopher M. Bishop, Pattern Recognition and Machine Learning, Springer-Verlag, 2006

Kevin P. Murphy, Machine Learning:A Probabilistic Perspective, The MIT Press, 2012

李航,统计学习方法,清华大学出版社,2012

Stephen Boyd,Lieven Vandenberghe, Convex Optimization, Cambridge University Press, 2004

Thomas M. Cover, Joy A. Thomas, Elements of Information Theory,2006

此外,各个章节有特定的经典论文,如:

Alex Rodriguez, Alessandro Laio, Clustering by fast search and find of density peaks, Science 344.6191, 2014

David M. Blei, Andrew Y. Ng, Michael I. Jordan, Latent Dirichlet Allocation, 2003


邹博

北师大计算机博士毕业,在科学院从事机器学习数据挖掘科研工作,主持完成三维计算几何行业建模软件,擅长方向为机器学习数据挖掘、自然语言处理、计算几何。主持三维数字地质图制图技术及其应用、三维地质建模应用示范研究、遥感信息解译与像元增强研究等多项部级科研项目,对大型软件架构有深刻理解,改进了多项遥感图像的分割、分类、增强算法并用于实际。在多家大学和教育机构担任机器学习数据挖掘讲师,实战经验丰富,算法推导细致透彻,广受学员好评。





数据分析咨询请扫描二维码

客服在线
立即咨询