小白学数据之什么是神经网络-阿里云开发者社区

开发者社区> 大数据文摘> 正文

小白学数据之什么是神经网络

简介:

导语


在上一次的小白学数据时间里,我们了解了什么叫做机器学习。目前最热门的一种机器学习方法叫做神经网络。它经历了90年代到00年代的深山归隐期,在10年代重出江湖的时候,已经令世人刮目相看。知道前几天在围棋界打败天下无敌手的AlphaGo吧(甚至输入法都提示我,G应该大写)?用的就是神经网络。神经网络这个听起来无比深奥的概念,其实小白也能够明白它是个啥。让我们试试是否可以“窥一斑而知全豹”。

 

小白问:好吧,你来给我讲讲什么是神经网络吧?

答:神经网络,顾名思义,就是由神经元之间互相交流,从而形成的一个网络结构。在计算机出现之后,神经网络特指利用计算机模拟人类脑神经工作的算法。


小白问:呃,忘了我是小白啦?算法是个啥意思?

答:算法就是计算机的工作流程。一个很简单的例子,我们想要一个机器人去烧水,那么它打开壶盖,拧开水龙头,往壶里接水,拧紧水龙头,关壶盖,把壶放在电磁炉上,通电烧水,这整个流程就是一个算法。


小白问:那什么是神经元呢?

答:人脑中数以千万计的小细胞就称为神经元,它们之间相互连接,形成错综复杂的网络关系。每时每刻,这些小细胞都在一直感知世界并从中进行学习,也在互相交流学习经验。每一个神经元都代表了一个不同的想法、记忆或者,感觉。 

0?wx_fmt=jpeg
                           
clip_image001.gif

小白问:等一下,你说的是人脑里的神经元?不是说计算机算法吗?神经网络算法是在模拟我们人脑神经元工作?

答:对!我们以谷歌的深度梦想项目 (Deep Dream)来作为例子。在深度梦想这个人工神经网络中,谷歌的工程师创造了一堆人工神经元(每一个神经元都可以是一个独立的CPU,或者一个CPU上的一个核。现在可以认为,每一个神经元是一个GPU的一个处理单元。),然后将这些神经元一层一层的累起来。


当给计算机输入一幅图片时,层与层之间的神经元会一起协同工作,以弄清楚它们所在的这样一个网络能够看到些什么。在不断的学习过程中,每一层的神经元在它自己的水平上,都会对这幅图片有更加“深入”的理解。下一层的神经元会在这一层神经元的帮助下,对图片内容有更贴切的“猜想”。在用非常大量的已知图片去训练深度梦想之后,它最终就可以区分猫咪和小狗—甚至它可以自己画出来这些小萌宠。

clip_image002.jpg

0?wx_fmt=jpeg

小白问: 听说神经网络是个新玩意儿啊!那人工神经网络和计算机通常传统的工作流程有什么区别吗?

答:我们讲讲最先进的人工神经网络(就是有好几层累起来的,所谓深度神经网络。想知道什么是深度学习吗?关注我们之后的小白学数据栏目哦~)与计算机普通工作流程的区别吧。让我们举个很简单的例子。宝妈妈之前有一个大宝,妈妈给大宝买了一个很萌的卷笔刀,并且告诉大宝,卷笔刀只能用来卷铅笔,不可以把手指插进去。于是,大宝知道了卷笔刀只可以卷铅笔。后来,宝妈妈有了小宝,妈妈很小就让小宝上了幼稚园。有一次,一个小朋友,小明,拿来了一个小玩意,他用那个小玩意把自己的铅笔削得尖尖的。小明告诉大家,这个小玩意叫做卷笔刀。另外一个小朋友觉得很新奇,就拿来玩,她把自己的小拇指插进了卷笔刀,结果哇的一声哭了,还留了血。从此以后,小宝知道了,卷笔刀只能用来卷铅笔,不可以用来卷手指。所以呢,大宝,就是计算机常见的工作流程,你得喂它一堆规则,让它建立起一个学习集合;小宝,就是我们这里讲的人工神经网络了,你给它很多实例,让它自己,通过几层神经元之间的交互反馈学习,获得知识。一句话,神经网络就是让计算机学会自己学习。


小白问:你又用我不知道的生词儿了。什么叫反馈学习啊?

答:反馈学习的过程就是不断修正自我感知的过程。比如很小的时候,我们可能认为身高小于1米的人就称之为小孩子,但在不断学习的过程中,我们后来知道,有一种侏儒症患者,即便他们是成人,身高也可能小于1米。这个学习过程,就叫做反馈学习,即不断用外界的实例来更正自己的感知世界。神经网络也是这样工作的哟~


小白问:你刚才说了这么多,能不能再给我串起来,简单的说一下到底什么是神经网络吗?

答:好呢。传统计算机的思维过程,有点像搭乘地铁。为了去到市区,计算机也许需要通过许多站,也许,还需要换乘几号线。但人脑的思维过程,更类似空间穿梭  --  可以瞬时从一个地点去到另一个地点。一旦我们经历了一次到市区的地铁之行—就会在脑袋中,把这两个站直接连接起来,这两个站之间就可以直接联系,而无需经过中间的那些站。神经网络,就是要模拟人脑的思维过程。


回到字面解释上来,神经元能够实时的更新它们的连接方式,以使工作效率更高。这就是我们怎样学习,怎样将新的想法集合起来形成创新性的思维的过程。如果我们能够在神经网络中模拟出同样的效果,那么,我们就可以教会计算机像人类一样思考。

所以呢,一句话,神经网络就是通过神经元之间不断更新自我以及彼此之间的联系,使计算机能够更加灵活的学习。


小白问:和常规的计算机比起来,神经网路更擅长做什么呢?

答:只要现在人类比计算机更擅长做的事情,神经网络也同样擅长(它本来就是因为想模仿人类大脑而产生的嘛~):例如,写一个故事,分析艺术作品想要传达的含义,甚至说,驾驶汽车,或者从说话内容和肢体语言来理解一个人。让我们再来谈谈谷歌的深度梦想。在看一幅图片时,谷歌开发的这个神经网络并不是仅仅看到的是像素。实际上,它可以告诉你这幅图片包含了些什么。这是人类与生俱来拥有的能力,但迄今为止,这还是计算机无法做到的事情。


小白问:神经网络还有哪些好的应用呢?

答:除了深度梦想,谷歌的无人驾驶汽车也是用神经网络来检测行人的。但神经网络可不是谷歌的专利。脸书使用神经网络来区分人脸并判别你的朋友。神经网络还被用来设计新的字体、创造数字涂鸦,甚至在推特上假扮特朗普。


小白问:在未来的短短几年内,神经网络会发展成什么样子?

答:神经网络是使计算机更像人类的关键,可以自动化人脑解决问题的过程,并拥有创新的能力。将神经网络和交互式界面相结合,就可能最终实现真正的人工智能—这场革命会彻底改变我们做任何事情的方式。以后设计师不仅仅是使用神经网络;神经网络自己本身就可以变成一个非常好的设计师(因为神经元们在不断的学习,也在不断的更新自己的知识)。


你现在基本上了解神经网络大概在干嘛了吗?我们还会有进阶版,更深入的介绍神经网络和深度学习。小白下次见!


原文发布时间为:2016-04-20

本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“BigDataDigest”微信公众号

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
大数据文摘
使用钉钉扫一扫加入圈子
+ 订阅

官方博客
官网链接