人工智能、机器学习、深度学习不是等号 而是一层层的

伏苇亮
导读 介绍一场改变全球十亿人信息服务的革命!谷歌和微软争相布局的云计算服务大数据是什么意思?其实是一种精神!一场改变全球十亿人信息服务的

介绍一场改变全球十亿人信息服务的革命!谷歌和微软争相布局的云计算服务大数据是什么意思?其实是一种精神!一场改变全球十亿人信息服务的革命!谷歌和微软争相布局的云计算服务大数据是什么意思?其实是一种精神!这是“机器学习专题”第三篇。

从Google AlphaGo到Chatbot聊天机器人,智能科学,精准医疗,机器翻译.近年来,关于人工智能和机器学习的新闻不时传来,这项技术一夜之间占领了各大媒体版面。

不仅谷歌、脸书、微软、百度、IBM等巨头纷纷进入这一领域,英伟达首席执行官黄仁勋也宣布将显卡转型为人工智能计算公司,强调人工智能的到来。

说到人工智能,你的想象力是什么?

人们对人工智能的想象无非是电影、戏剧中的机器人形象。来自史蒂文斯皮尔伯格的《A.I.人工智能》,可爱的男孩,《智能叛变》,想要控制人类统治世界的机器人,《智能叛侣》,可以欺骗人类情感的人工意识。但是除了这些,让我们来看看我们每天使用的产品:

从垃圾邮件的自动分类,图像识别,自动翻译.你知道里面有人工智能吗?不过,具体来说,我们会把这种技术称为“机器学习”。

人工智能到底是什么?什么是机器学习?什么是深度学习?三者有什么区别?要解决的问题是什么?

今天就来说说未来十年真正改变你我生活的新一代技术。

人工智能:如何用计算机解决问题?自从计算机发明以来,人类一直渴望让计算机拥有类似人类的智慧。说到人工智能,很容易让人想到电影和科幻小说里经常聊天,做饭,突然想毁掉被人类取代的机器人形象。

“智慧”到底是什么?如果计算机能准确回答我们的问题,或者学会下棋、煮咖啡,就能确定计算机有智慧吗?如何确定它真的有意识,懂情感?那时候AI技术还没有真正发展起来,哲学家和人类学家已经就这个问题做了很多广泛的讨论。

根据这个问题,哲学家约翰塞尔提出了“强A.I”和“弱A.I”的分类,认为应该区分两者。

人工智能受电影和科幻小说的影响,强调计算机将具有自我意识、个性、情感、感知和社会化等人类特征。另一方面,弱人工智能主张机器只能用思维模拟人类的行为,而不是真正懂得如何思考。他们认为机器只能模拟人类,却没有意识,不理解动作本身的意义。

简单来说,如果训练一只鹦鹉回答所有人类的问题,并不意味着这只鹦鹉知道问题本身和答案的意义。

在图灵提出的图灵测试中,如果一台机器在没有被识别为自己机器的情况下与人类对话,就可以宣称这台机器拥有智慧。

这可以被视为对人工智能的一次测试,但强烈的人工智能倡导者可能会认为,表现出“智慧”的行为并不意味着它真的拥有智慧,理解对话的意义。

当然,弱人工智能的倡导者也可以反驳——我们永远不可能知道另一个人的想法。比如我和一个人说话,我不知道对方的思维方式是否和我一样,所以我们不能否认这个机器有智能的可能性。

是不是有点像庄子和惠子的对话“子非鱼,鱼知其乐”?

有兴趣的读者可以就以上问题继续讨论和深入思考。但是,在计算机科学界,直到现在也没有必要纠结于这个问题。科学家关心的是我们能用人工智能解决什么样的问题。

还记得我们是怎么把电脑放进来的吗?& gt文中提到,最早的冯纽曼架构的通用计算机是在1945年开发的。20世纪50年代,计算机科学开始。从科学家到普通大众,都对计算机充满了无尽的想象。“人工智能”一词最早产生于1956年在达特茅斯举行的一次传奇研讨会,与会者包括几位当代著名学者。

当时,世界上第一台通用计算机EDVAC刚刚问世十年。任何一个见过计算机超强计算能力的人都会想当然地认为,计算机总有一天会比人类更聪明,甚至超越人类。

其中,纽维尔和西蒙现场展示了被称为“世界上第一个人工智能程序”的逻辑理论家,一个可以自动证明定理的程序。

伴随着各界的高度期待,不仅是艺术界的盛兴相关题材,包括大导演弗里茨兰的《大都会》、科幻作家艾萨克阿西莫夫的《机器人三定律》等,但也是主流科学界估计,要成功创造出与人类智能高度相当的人工智能,大概还需要20到30年的时间。

然而,人工智能的研究很快面临瓶颈。如果你看过& lt电脑是怎么来的?& gt文章中,你可以清楚地感受到计算机的发明。

的数学模型基础和思想,是建立在逻辑运算上。

从康托尔的集合论、到希尔伯特的可数无限集、哥德尔不完备定理、图灵以图灵机来演绎哥德尔不完备定理等等,都是利用符号来表达的形式系统,再用有限的数学式去证明这个系统不会出现矛盾。可想而知,这使得当代人对于人工智慧的研究方向也是以「逻辑符号推导」为出发点。解的问题包括利用Search Tree来走出迷宫、或河内塔(Hanoi)问题。

河内塔问题:传说某间寺院有三根柱子,上串64个金盘。寺院里的僧侣以下述规则,将这些盘子从第一根移动至第三根:

盘的尺寸由下到上依次变小 每次只能移动一个圆盘 大盘不能叠在小盘上面

传说当这些盘子移动完毕的那一刻,世界就会灭亡。然而若传说属实,僧侣们需要264-1步才能完成这个任务;若他们每秒可完成一个盘子的移动,就需要5,849亿年才能完成。整个宇宙现在也不过137亿年。

不过若用电脑的递迴解,很快就能做完了。我们会在《简单的演算法》系列第二集中和大家继续探讨这个问题。

第一次人工智慧泡沫后,研究领域转为「机器学习」

然而问题来了──机器程序是由人类撰写出来的,当人类不知道一个问题的解答时、机器同样不能解决人类无法回答的问题。另一个问题是当时电脑的计算速度尚未提升、储存空间也小、数据量更不足够。

对人工智慧的研究方向局限于逻辑数学领域、加上硬体环境上的困境,使早期人工智慧只能解一些代数题和数学证明,难以在实务上有所应用。

在1970年代末时,一些知名研发计画如纽厄尔和西蒙的「通用问题求解器」和政府领头的「第五代电脑系统」达不到预期效果时,人工智慧开始被人们视为一场现代炼金术,企业与政府纷纷撤资、研究基金被削减、多个计画被停止,迎来了人工智慧的第一场寒冬期。然而虽然此时人工智慧的研究迈入了瓶颈,但是电脑硬体却是以指数型的方式进步。

1965年Intel创始人摩尔观察到半导体晶片上的电晶体每一年都能翻一倍;到了1975年,这个速度调整成每两年增加一倍,电脑的运算能力与储存能力同时跟着摩尔定律高速增涨。如今,电脑的运算能力约为30年前的100万倍。此段介绍欢迎参考<晶圆代工争霸战:半导体知识>一文。

我们上面提到,早期的人工智慧研究聚焦在逻辑推论的方法,专注于模仿人类推理过程的思考模式,需要百分之百确定的事实配合,实务上应用困难。但有没有可能换一个思考模式,比如用统计机率学来处理人工智慧的问题呢?假设一个命题为:「某个特定事件会发生吗?」同样是判断「是」或「否」的二分法,数学逻辑的思考方式是证明TRUE或FLASE。

但我们也能用机率来量化对于某些不确定命题的想法,想法改为:「我们可以多确定这个事件会发生?」确定的程度可以用0到1之间的数值来表示。

如果你一路读完电脑科学领域的初始发展、知道图灵、冯纽曼等巨头,与纽厄尔等早期图灵奖(电脑科学界最高荣誉)得主的研究方向,到如今人们对于人工智慧研究的思想转变,会发现……这可是多大的突破!此即为时下热门的话题「机器学习」(Machine Learning)。

「机器学习」是一门涵盖电脑科学、统计学、机率论、博弈论等多门领域的学科,从1980开始蓬勃兴起。

机器学习之所以能兴起,也归功于硬体储存成本下降、运算能力增强(包括本机端与云端运算),加上大量的数据能做处理。

电脑从大量的资料中找出规律来「学习」,称为「机器学习」,也是「资料科学」(Data Science)的热门技术之一。

最早研究机器学习的理论都是统计学家或机率学家所发表的,到后来电脑科学界的人发现:「噢,这些理论可以帮助我们来解决一些问题!」又加进来研究,可以说是「资工+统计」的双重Domain Knowhow。另外,这也是为什么「机器学习」会被称之为人工智慧领域的一支。要实现人工智慧的方式有很多,像早期的符号逻辑学也是人工智慧的实践方向。

所以说别再说现在红的是「人工智慧」啦!人工智慧领域很多元也很广泛,早在1950年代就已经红过了。

什么是深度学习?机器学习的一个分支

不过除了机器学习,最近常听到的「深度学习」又是什么意思呢?类神经网路、深度神经网路和深度学习是不一样的东西吗?

虽然有点绕口令,不过请跟我唸一次:

「机器学习」是「人工智慧」的一个分支。「深度学习」是「机器学习」的一个分支。

也就是说人工智慧包在最外层、机器学习包在第二层、深度学习是第三层。

2013年7月,Google收购了一家才创立一年、叫做DNNresearch的公司。甚至,这家公司仅有三个人。为多伦多大学教授Geoffrey Hinton教授和他的两位学生。

是什么魔力,让Google愿意砸大钱在一家名不见经传的公司?你可能没听过DNNresearch、或不认识该公司的创办人Geoffrey Hinton,但你不能不知道的事情是,Google眼馋的、正是背后的深度学习(Deep Learning)技术。可以说后续AlphaGo的出现,除了主导研发的DeepMind之外,还有Hinton的协助。

什么是深度学习?为何各产业为之风靡?这就让我们来聊聊深度学习发展的前身「类神经网路」(Neural Network)啦。

在本文的前半段,我们只很简单说明了,1950年代电脑发明的时候人类就寄望、能出现比人类运算能力更强、更聪明的机器出现,称为人工智慧。在1950年代以数理逻辑的为主要研究方向。

机器学习是由统计机率学、加上电脑科学方法的一个延伸学科,在数理逻辑研究方向失败后,机器学习在1980年代到2006年间成为研究主流。但机器学习的理论有很多,包括支援向量机(SVM)、决策树(Decision Tree)、AdaBoost、随机森林等等(决策树的原理相当好理解,欢迎参考此解说)。其中有一个分支在1980年初的时候一度兴起,叫「类神经网路」(Artificial Neural Network)。

类神经网路的衰颓、与浅层机器学习方法兴起

1943年就有学者用数学模型来模拟生物大脑的神经网路。这个研究后续分成了两派,一派转向了生物神经学、一派转向了人工智慧。

1980年代,当时的诺贝尔医学奖得主研究了大脑内部的神经迴路而轰动一时。也让科学家们对「模拟人类大脑的运算模型」抱持了高度期待。

1986年,Rumelhar和Hinton等学者提出了反向传播算法(Back Propagation),解决了神经网路所需要的複杂计算量问题,从而带动了神经网路的研究热潮。然而过了不久就发现反向传播法遇到了瓶颈──反向传播的优化(找出误差的最小值)问题,使得神经网路只要超过3层以上就几乎没有效果。

由于本篇旨在讲解人工智慧发展简史,关于什么是「反向传播」、「误差最小值」、「梯度消失」,会在日后另发一篇文讲解类神经网路原理,读者只要先记得一个概念就好:此时的多层神经网路宣告失败。

如果神经网路无法达到多层的运算,相较之下不如採用其它层数小于3且效果又更好的机器学习算法,比如SVM、随机森林等,此时SVM火热了一段时间,在垃圾信件分类上做得特别好。

同时间,学术界一度放弃类神经网路的研究方向,甚至只要有论文或研究标明「Neural Network」,几乎不愿意花心思阅览或刊出。

2006年HINTON成功训练多层神经网路、称为深度学习

此时的Hinton还很年轻,仍不离不弃对于神经网路的研究。也正是这股热情,使他整整力撑30年、终于在2006年找到了解方、提出限制玻尔兹曼机(RBM)模型,成功训练多层神经网路。

这带来了类神经网路模型复甦的又一春。由于Neural Network长久以来太过恶名昭彰,Hinton决定把多层的神经网路(Deep Neural Network)重命名为深度学习(Deep Learning)。

同时,他又用有点讽刺意味的说法,将Neural Network以外、层数小于3的机器学习方法,包括SVM等称为「浅层学习」(Shallow Learning),可能是想一雪长久以来被SVM压在头顶上的不爽吧。

讲白点,人工智慧就一个buzz word,用电脑模型运算来解问题。别再问:人工智慧有一天会不会跟人类谈恋爱有意识惹。

Hinton因此被称为「深度学习之父」。也就是说,这是一个励志故事。当大家都放弃时、再撑30年还是会有转机的!(咳咳)

儘管如此,Hinton就算在2006年就提出了RBM模型,深度学习还是没有红起来。大家只是知道:「噢类神经网路也不是完全没用嘛。」由于忽视已久,加上运算量过于庞大(当时都是採用CPU来运算。好不容易耗费5天才终于跑完一个模型,结果发现有问题、改个模型参数又要再等5天。等真正训练好的时候都已经不知何日了。)

只能说2006年的突破只是带来一丝曙光。真正的转折点,还是要到2012年。那年10⽉,机器学习界发⽣了⼀项⼤事。

2012年深度学习+GPU一战成名,爆发人工智慧热潮

ImageNet是全世界最大的图像识别资料库。每年,史丹佛大学都会举办ImageNet图像识别竞赛,参加者包括了Google、微软、百度等大型企业,除了在比赛中争夺图像识别宝座、同时测试自家系统的效能与极限。

其实从2007年ImageNet比赛创办以来,每年的比赛结果、每家都差不多,错误率大致落在30%、29%、28%……瓶颈一直无法突破。

结果2012年Hinton的两个学生以SuperVision的队伍名参赛,以16.42%的错误率远胜第二名的26.22%。用的正是深度学习技术。

此景一出,大家都疯了!从此爆发深度学习热潮,一堆企业争相投入深度学习的研究领域。Google才在2013年收购了Hinton和他的两位学生,2015年的冠军Microsoft,已以3.5%的错误率赢得冠军,超越⼈类5%。发展可谓一日千里。 

深度学习之所以在2006年还没真正火热起来,问题在于硬体运算能力不足──传统大家都是用CPU来运算,然而速度缓慢。深度学习会大量用到矩阵运算,最合适的硬体事实上是负责图形处理的GPU。直到2012年Hinton的两位学生利用「深度学习+GPU」的组合,才真正发挥GPU的威力。

但为什么这么长以来的时间,都没有人用GPU来运算呢?因为编译有其难度。我们之所以能用CPU做运算,是因为CPU有编译器(Compiler)这样的设计,能让工程师写完程式后、经过编译器的转译、成为CPU看得懂的机械码。

然而一般GPU并没有类似的设计,因此工程师难以直接写程式让GPU来运算。直到NVIDIA在2006-2007年间推出全新运算架构CUDA——NVIDIA成为深度学习运算必用硬体的关键。使用者可以撰写C语言、再透过CUDA底层架构转译成GPU看得懂的语言。

这也是自GPU可以拿来做大规模运算的概念推出之后,首次可以让人使用C语言来运用GPU蕴藏已久的强大运算能力,故NVIDIA从GeForce 8系列之后的显示卡全开始支援CUDA技术。

而CUDA的成功,更直接导致了深度学习的运算全部都使用NVIDIA家的GPU。这种惊人的影响力,不论是深度学习、机器学习、自动车、虚拟实境(VR)、电竞游戏,每一项都跟NVIDIA习习相关。

这也让NVIDIA的GPU从此一飞沖天,股价也随之高涨──NVIDIA从去年12月开始连续9个交易日创历史收盘新高、到年底为止涨幅高达255.95%MarketWatch也报导,NVIDIA是2016年S&P 500指数表现最好的成分股。

2016年8月,NVIDIA在其每年举办的GTC大会上(GPU Technology Conference,俗称老黄的传教大会),执行长黄仁勋强调NVIDIA在人工智慧领域上的深耕、能提供最完整的软硬体解决方案。

整场大会以深度学习为重要主角,同时宣布推出全世界第一个专门用来运算深度学习的超级电脑——DGX-1伺服器,售价129,000美金。

今年5月,NVIDIA再度宣布推出全新DGX工作站,最大卖点莫过于搭配了採用Vota架构的Tesla V100,可在单台系统内,搭配四台Tesla V100,提供相当于400颗CPU的效能。

今天,我们讲解了人工智慧、机器学习和深度学习的由来。再帮大家回顾一次这张图:

三者的包含关係为:人工智慧>机器学习>深度学习 1950年人工智慧发展,以数理逻辑为基础 1980年多层类神经网路失败,浅层机器学习方法(SVM等)兴起 2006年Hinton成功训练多层神经网路 2012年因ImageNet比赛让深度学习重回学界视野,同时开启NVIDIA GPU作为运算不可或缺硬体的大门

今天的人工智慧简史就到这边结束了。接下来的几篇,会用更深入的方式将本文中的模型与故事叙述得更为详细。

欢迎大家继续收看。

本文经写点科普,请给指教授权刊登,原文刊载于此

标签:

免责声明:本文由用户上传,如有侵权请联系删除!