著名统计学家、中国人民大学统计学院教授吴喜之教授程序员
受权转载自AI科技大本营算法
ID:rgznai100编程
采访 | 胡永波,鸽子微信
导读网络
机器学习是一门在统计学和计算机科学交叉点上茁壮成长起来的学科。关于数据的学问,全在统计学里。机器学习
在经典统计学中,对于数据性质的研究、偏差的分析、数据质量的判断、数据模型的创建,有着很是丰富的思想、理论和经验成果。对于机器学习来讲,统计学既是理论基础,又是思想宝库。编程语言
可是现实世界中,机器学习的实践者大多出身计算机科学,除了本科学的那一点工科几率论与数理统计,对于统计学,基本上是“随用随学,够用为止”,所以统计学当中大量的思想资源其实是被闲置的。函数
事实上,不管是作人工智能,仍是作商业数据分析,若是可以对统计学有系统的理解,那么,他对于机器学习的研究和应用便会如虎添翼,登堂入室。工具
不过大多数统计学出身的学者推崇数学模型驱动的路子,在他们看来,直接从一堆实际数据出发作预测分析的“野路子”,是登不了学术的大雅之堂的。所以至关多的统计学者并无积极投身机器学习的研究、教学和应用中,与机器学习界的交流也远远不够。post
吴喜之教授则走的是一条实用应用之路。
吴喜之教授是我国著名的统计学家,退休前在中国人民大学统计学院任统计学教授。吴教授上世纪六十年代就读于北京大学数学力学系,八十年代出国深造,在美国北卡罗来纳大学得到统计学博士学位,是改革开放以后第一批留美并得到统计学博士学位的中国学者。多年来吴教授在国内外数十所高校讲授统计学课程,在国内统计学界享有盛誉。
早在十多年前,吴教授就第一个在国内大学统计学课堂引入 R 语言,培养了国内第一批 R 语言专家。现在他已古稀之年,仍然孜孜不倦的学习新方法、新工具,而且亲自编程实践,探索不辍。
在统计学家当中,他积极拥抱机器学习方法,而且撰写多部专著,致力于融合统计学和机器学习方法。另外一方面,他对于机器学习,特别是数据性质和质量分析、回归与分类,复杂数据统计方法以及时间序列分析,有着统计学家特有的深入思想和丰富实践,对于机器学习的实践者,是可贵的明师。
所以咱们抓住吴教授在京的宝贵时间,对他进行了一次专访,请他结合亲身实践经验,谈谈机器学习与统计学相互结合促进的问题。在访谈中吴教授介绍了大量的案例,清晰简明地阐述了他对于机器学习和统计学一些重大问题的见解,是咱们学习数据科学、机器学习和人工智能一份可贵的参考。
*如下是访谈的部份内容。
作数据就要各领域交叉
AI科技大本营:如今你们都关心人工智能,但咱们AI科技大本营内部在讨论的时候就发现,人工智能的关注点更多的是放在算法、模型方面,至于上游的数据搜集和处理过程,你们关心得并很少。您怎么看待这一现象呢?
吴教授:的确是这样的,作任何数据分析,首先要有数据。可是怎么获得这些数据,就是一个费力不讨好的工做了。但这里的事情必须得干。好比,人们能经过编程拿到一些网络数据,可是,拿到数据之后,你怎么看待这个数据?怎么处理?用什么模型?这毫不是一个标准的教科书问题,而是一个集知识、经验、逻辑及创新能力为一体的过程。就拿个人书来讲,我在书中写模型,用的虽然都是国外现成的真实数据,但倒是挑选过的,若是对咱们手中的应用数据,直接用书中的模型就未必合适,至少也须要作各类各样的处理。
好比过去,我参与过税务总局的一个项目,但愿把数据中会逃税的那些人给找出来,但数据并未指明哪些人逃税。按照机器学习的术语,这属于"无监督学习",对这个具体数据,没有教科书或文献给出任何的方法。具体的数据没有哪两个是同样的,这就要有独特的处理方法,你必须考虑基于什么样的偷税漏税机理和背景来创建模型,你总不能说你们都在偷税漏税,而的目的是要把最有可能偷税漏税的人找出来,因此你就要了解企业避税方面的思惟方式和可能采用的方法。
这就是说,你既要有相关应用领域的知识,又得知道怎么来处理数据,还要会编程什么的……全部的东西你都会了,才能作好。这就是数据科学比较复杂、比较费劲的地方,须要有较强的跨学科能力。
AI科技大本营:那通常企业在数据处理上的问题多出在哪里呢?解决这里的问题须要什么样的能力?
吴教授:处理数据还在其次,他们不少没有处理数据最起码的条件,只能作一些很简单的事情。记得在90年代,我去过一些比较落后的工厂:像是当时的天津汽车厂,生产雁牌轻型货车,从零件到成品没有完整的记录,基本上没有多少有关质量的数据;还有一个生产镍氢电池的工厂,他们但愿改进质量,但缺少关键的数据……这一类的问题有好多,你就很难作。由于到具体单位解决问题时,你但愿他有什么数据,他可能就是没有,要想作好事情得从头开始干预。这说明企业生产线上的问题没有那么简单,不是你想拿什么就能拿到什么。但在生产实践上,偏偏须要这方面的数据来作质量控制,企业本身意识不强,你就很难越俎代庖。
AI科技大本营:当下机器学习很是火热,在它落地到这些具体的应用场景时,应该怎么面对这里的数据呢?
吴教授:如今专业编程的人比较多,但真正明白这个数据,理解咱们须要从数据获得什么知识的很少。因此,一开始很难泛泛回答。
就说前面税务总局的项目,我刚过去时并不清楚,就让他们先给我讲那个问题,我思考以后,就有了一个大致的概念。这些东西很难说是某一个领域的知识,它是一些领域的知识加上经验、加上数据知识……相互关联起来,而后才有进一步怎么去作的打算。
这不是简单靠几本书、几个模型就能解决的。并且,书上的模型通常比较固定,例子也相对简单,毕竟书上只能介绍那点东西。好比说回归,通常回归书上大部分篇幅写的都是一百年前的线性最小二乘回归,但在最近十几年中就发展了大量基于算法的新回归方法。仅我写的书中介绍的机器学习回归就有不少种,好比基于决策树的有随机森林、bagging、boosting,还有支持向量机及较早就发展的神经网络,它们都可以作回归,每每都比线性最小二乘回归强大……但你必需要挑一个最好的,因此就须要你把这些数据拿过来作交叉验证,要让数据本身来讲话,来肯定哪一个模型好,哪一个模型坏。而经典统计上肯定模型的优劣方法严重依赖于对数据的没法证实的众多数学假定。
在机器学习方面,很重要的一点就是交叉验证,就是用一部分数据来创建一个模型,而后用另一块数据来验证这个模型好很差。可是在经典统计里就没有这种东西。
以经典最小二乘回归为例,作了不少没法验证的数学假定,好比模型及偏差的线性形式假定,样本点的独立同分布假定,分布的正态性(或大样本)假定,对损失函数的二次形式的假定等等,而后根据各类检验统计量获得p值,再按照p值大小获得结论(每每不加区别地认为p值小于0.05就显著)。
这些基于百年前的知识结构产生的内容就要安排学生们花一个学期来学,即便这样古老的课程还有许多原则性错误出现于教科书中,而数据科学所须要的最有用的内容却每每被忽略。因此我常讲经典统计的数学式教学方法和模型驱动的思惟方式误人子弟,这天然会得罪很多人。
通常来讲统计专业出身的人对模型比较重视,但对数据感受不够,甚至不敢触动陌生结构的数据(若是不是惧怕的话),搞机器学习必须既了解模型又乐于和数据打交道。因此学统计的若是不跟搞计算机的合做就什么也干不成,这一点应该让你们都知道。
AI科技大本营:那反过来像程序员这种学计算机的人,他们应该怎么跟统计学结合呢?
吴教授:统计学对课程基础的要求比较高,没有办法速成。咱们知道,单纯的编程比较容易学,他们最好是在应用中学习统计的批判性思惟,须要什么学什么,这样可以保持兴趣和学习动力,学的也较快。
但统计专业中,至关部分统计教授都不会编程,更不熟悉实际的数据分析,这还包括某些博导,他们见到稍微复杂的数据就蒙了。他们能够假定出一个模型,而后就说他们的模型怎么怎么好,但这是在很强的假定之下,好比数据必定要知足什么数学条件……必定要在这个条件下他们的模型才很好,他们最苦恼的就是寻找符合他们条件的数据(为了发表文章),但实际上只有老天爷才知道是否存在这样知足他们条件的数据。
统计学的两种文化
北大时期的吴喜之教授
AI科技大本营:您是怎么开始作机器学习的?
吴教授:由于教学生,我要了解最新的方法,只要能用的、好用的,我就要教给学生去用。要想当好老师就须要不断学习新的知识。机器学习这块跟计算机编程直接相连,我学了之后,用机器学习的方法来解决问题,我以为比经典统计要好用得多,真的不是一个数量级。
AI科技大本营:不是一个数量级,这该怎么讲呢?
吴教授:这是一种比方,而不是严格的术语。不过简单来形容的话,对于不少复杂的数据,用机器学习的预测偏差若是只是1%、2%左右的话,那用经典统计就可能有百分之十几以上,差异就很大。固然,对于比较简单的数据,经典统计也可能表现不错,这不能一律而论。尽管从数学上,那些经典的东西看起来很漂亮,很吸引人(特别是对数学背景的),但面对复杂的现实世界,必需要改变思想,无论方法漂亮与否,关键是可以解决问题。许多机器学习方法也很美,但不是数学公式漂亮,而是其思惟及逻辑的美。如今都有飞机了,你还靠拉着板车在那走,那就是你的问题了。
AI科技大本营:那您是何时开始用机器学习的?
吴教授:这个是在非典的时候,03年吧,是用R语言。在中国,我大概是头一个在正式课堂上教R语言的。
在那之前,我已经在教S-Plus了,S-Plus跟R很像,都是编程语言。但当时多数老师教统计是不用编程语言的,他们会用盗版的SPSS及SAS等点鼠标式傻瓜软件,不只侵犯版权,还会让学生产生依赖性。因此国内的学生不懂计算机编程,跟这一点关系很大。老师本身都不会编程,只能教学生用盗版软件。只学点鼠标确定是学不会编程、也看不懂代码的。
我开始教R语言的那一级的学生,有些在数据领域中比较出名,好比李舰和刘思喆,比我要强多了。
后来我读了一篇颇有名的文章,《统计建模:两种文化》(Statistical Modeling: The Two Cultures, 2001),做者是Leo Breiman,加州大学伯克利一个颇有名的教授(CART决策树、bagging及随机森林的发明者),他去世后我才读到他的这篇文章。他在文章中狠批了把数据限制在假定模型中的经典统计学界,而后大力推广他在商业咨询中用机器学习作算法模型的有效经验,这一点我感同身受。
机器学习圈子意识到数据的生成过程是复杂和未知的,这一点符合实际,学完以后就能用出来,因此我就本身去推广。可是在国内推广很难,只能本身去教、去写书,把机器学习的东西写进书里,让更多的人掌握。
用机器学习来改造统计学
AI科技大本营:那我可不能够这样理解,你如今更多的但愿,实际上是想把机器学习的一些思想注入到统计学这个学科里边,对吧?
吴教授:我是但愿改变统计学,用机器学习这个思想来改造统计学。机器学习的思惟方式就是科学的思惟方式。整个统计学界的问题太多,因此就须要改造。把它从数学假定主导的思惟方式改造过来,从模型驱动改变成数据驱动或问题驱动,机器学习是实现这种改造的一个最佳方式。
其实我一直都对处理实际的数据感兴趣,尽可能从数据出发来作统计,问题驱动的思惟一直都有。九几年还在南开的时候,我就不断倡导这个事情。如今统计学作的不少东西都跟实际数据没什么关系,这种作法不过是把人禁锢在本身的模型里作梦。脱离实际的统计不可是无用的,并且是有害的。
Breiman的这篇文章使个人思惟更加清晰,目的更加明确,Breiman的文章对我近年来走过的路程有着无可比拟的指导意义。
AI科技大本营:咱们应该怎么基于问题驱动的思惟来学习呢,吴老师您在这方面都是怎么作的?
吴教授:搞数据科学应该是问题驱动,学习知识也应该是问题驱动。我不喜欢完整地看大部头的统计书,由于整本整本地看下来,目的不明,被做者牵着走,效果确定很差……必定要有感兴趣的问题来引导,才好钻研进去。学东西必定要问题驱动。好多新方法,我都是从R语言里面学来的:首先看那些软件包能解决什么问题;若是对这些问题感兴趣我就看它的方法;若是想知道方法里面是什么原理、用的什么数学、为何这样作,就去进一步看参考文献……这一套下来我天然就学会了;相对于打基础式的学习方法来讲,这是相反的学习方法,是拉动式学习方法。
若是被老师限制住,你就算再聪明也能学傻了。因此必定不能死学,必定要有个目标,要有一个感兴趣的目的。好比,你的目标是把这个数据分析好,你必须考虑用什么方法来解决,怎么来编程……这里面的兴趣天然而然就来了。若是你只是为了编程而编程,把语法1、2、3、四背下来,你就没有一个载体把它们串起来。这是我最讨厌的学习方式,学生为了打基础,盲目地先看这本书,再看那本书,一堆书看完以后就彻底迷失了,若是记忆力好会记一些东西,但绝对不会有助于增长动手能力。
反过来,为了解一个问题,你须要什么东西就去看什么,主动权在你手中掌握,这种拉动式的方式就让你有动机去学,并且学到的东西都是有用的。这是个人经验,你要是让我从头至尾去看一本书,我确定是看不下去的。
AI科技大本营:那您在教学生的时候是怎样的,是如何让学生也能把你这套东西用起来的?
吴教授:对通常学生来讲,我多是有点像赶鸭子上架,如同魔鬼训练。在每一个学校,我都给每一个学生一个或者两个国外的数据网址,没有两个学生数据相同,而后给他们讲解一些包括机器学习在内的数据分析方法及编程初步,而且给他们一些我本身编的程序模板,目的是让他们获得任何从数据能够获得的结论。期末每一个学生要上交数据、代码及PPT或Word文件,而且上台在必定时间内向你们讲解数据的意义、所用的模型、计算过程及结论。这以后,学生就不再惧怕数据了。前年在云南的大理大学我就是这样作的,学生的基础虽然不如一些重点大学好,但都作出来了,并且许多人把我给的做业做为毕业论文。
前些天我看到他们本科毕业论文中有三我的还得了优秀论文奖。以前我在云南师大教课也同样,他们学起来也挺苦的,不事后来其中有几我的参加前年的全国大学生统计建模大赛,还拿到了一等奖。
固然,他们中的一些人在作完做业,甚至得奖之后,也可能仍是不那么明白里面的道理,也可能只是会用现成的工具,但已经有了飞跃的进步,最重要的是他们有了信心。由于一开始他们真是什么程序都不会,掌握的统计方法也颇有限,要现教R语言及各类统计方法才能把课上下去。他们老师原来教的最可能是Excel。我曾经看到一本教学生怎么用Excel来解决问题的很不错的书。我看了这书之后,花了半天功夫写了大约一页R程序,把那一本书的问题全给解决了,这说明R程序语言的简洁及强大的能力。
总之,一个结果就是给学生一种新的眼界及新的体验,让他们有信心来把事情作下去。
实际上,零基础的人也能够学机器学习,好比云南的一个烟草公司,我给他们一线的员工讲过几天统计,里面有人仍是外语专业出身的,连统计的基本概念都不清楚,我就这样给他们讲,讲完给他们不一样的网站数据去作,结果包括外语专业在内的绝大部分学员都作完了所分配的数据分析。
刚开始学习的时候,你不可能什么都学、什么都知道。你要从基础的模型开始,去理解它背后是怎么想的,为何要这么编程序、这么去处理,这样作的好处是什么、能避免什么样的问题,背后这些东西弄清楚了,你就能弄清楚本身的问题是怎么出的。这样你就能学会怎么去用这些模型,甚至发展本身的一些新东西出来。
其实弄懂机器学习背后的机理并不难,也不须要事先读不少专业书。即便是Breiman那几个天才的发明,他背后的思惟方式及编程原则并不复杂,若是把这些弄清楚,你对统计学的理解就能进一大步。
吴喜之教授亲自编写程序解决问题
AI科技大本营:这么说来,咱们学机器学习、学数据科学,其实首先就是要有一种由问题来驱动的数据思惟,用上这种思惟就是对统计学的改造,咱们能这样理解吗?
吴教授:一百年来,因为没有计算机,数据量有限,因而由数学家发展的经典统计引入了大量的数学假定来弥补数据信息的不足,这就给统计打上了很深的数学烙印,而且致使了不少统计学家模型驱动的错误思惟方式。在计算技术飞速发展以及数据膨胀的新时代,若是还把本身束缚在这种模型驱动的思惟方式中,就会被时代所抛弃。机器学习是典型的数据驱动的思惟方式,它从数据出发,经过各类计算方法来理解数据,并创建适当的算法模型来拟合数据并获得结论。不只在应用中,并且要在统计教学中大量引入机器学习方法是很是必要的,目的是还统计以数据驱动或问题驱动的原本面目。
深度学习与计算机视觉
稀牛学院最新线上课程,带你了解人工智能领域中,计算机视觉的理论基础与前沿应用!不只有完善的班级管理,更是首次承诺足量GPU的培训课程!
将来已至,AI不远!
快扫码与时代互动吧!
点击图片阅读
DOTA2中战胜Dendi的AI如何炼出?OpenAI公布两周集训细节(含实战视频)
内容转载自公众号
微信扫一扫关注该公众号