电脑如何像人一样思考?人工智能(一)机器学习与神经网络(56)

作者: admin 分类: 科学 发布时间: 2021-08-20 10:36

        那么这个神经网络是如何帮助我们做一些事,比如识别图像的呢?我们也举一个例子啊,比如说我们就要识别一个图像,这个图像呢还是像素比较低的。它是一个5乘5的图像。这个5乘5的图像,那一共也就只有五五二十五个格子嘛。我在这儿是我格子里面呢,我哎写了一个字母,大家能看出来我写的这个。黑的啊,这个地方形成了一个字母,是什么字母吧,能看出来吧,是X对不对啊,我们大脑就能够识别它是X现在我就问你,如果用计算机去识别的话,你怎么能看出他是个X呢?实际上在我们看来,这是一幅图。

        但是计算机看来呀,他其实就一大堆数,他每一个格子要么黑的白的,比如说黑的是一白的是零吧,所以他所代表的就是一共X1X2。一直到X25,一共有25个输入端,这25个输入端代表了一大堆数字。那黑的就是一白的,就是这样就110,哎,怎么一直最后一个数是一。对不对?你相当于是把这一大堆数字输入的电脑之中的输入完了之后,我就想问你,这一大堆数字代表了什么字母,那你该怎么做?你不就通过这一系列的训练过程找到一大堆的参数。判断他是不是一个X吗?有人说,那你这里边只有黑和白两种情况,万一我这是灰度图怎么办?你灰度图的话,每个数字就不是零和一了,就是0到255的一个灰度值嘛。说我是彩色的怎么办?那就是RGB3个颜色,你分别代进去吧,把数据量扩大就行了。所以从本质上讲,不管是什么图,我最后都能换成一大堆的数字,我就可以把这一大堆的数字作为输入。

        我进行神经元里面去,然后进行训练训练。训练参数W1W2一直到B最后我找到一个误差最小的函数,这就是一个成功的训练。从此之后我利用这一大堆参数,我就能判断这个玩意儿是不是X那么如果只想判断这幅图是X或者不是X那也许下一层神经元就够了。但是啊我们在现实生活中说,阅读文章要理解别人的语言,要进行图像识别,你仅仅用一层神经元啊,往往是达不到效果的。于是呢我们就涉及到多层神经病院。那意思是说呀,你现在有一个输入,然后输入端的连接,每一个第一个隐藏的神经元,然后第一个隐藏把这些数据输出来之后,选择向下游输出,输出到第二掩藏。

        第二隐藏输出的结果又进入到第三隐藏,这就是所谓的。多层神经网络,每两层神经网络之间的连接呀都会有大量的参数。那我们通过一定的算法能够让大量的参数调整到最优,啊,使得最后的误差函数最小,这样就是一个成功的训练。这样呢我们就不光能够识别说这个字母到底是XX是不是X我还可以看这个X写的好不好啊,就可以让机器像人一样,让思国思家思社稷赏花赏月赏秋香了。不过呀全连接网络最大的问题是在于他实在是太复杂了。那比如说啊。我们这只是一个5乘5的图片。那么假如说我们有三层神经网络,每一层有25个神经元的话,每一层的参数就有六百多个,三层呢就有2000来个这个参数需要调,是吧?而且这还是一个最简单的图片。

        那你如果是一个彩色图是吧?你如果是一个比较大的什么11920乘1080的这种图片,那么你识别起来就会非常的复杂,算起来也非常慢。这也是前几次啊这个人工智能陷入低谷的原因,就是不管是算力还是算法都跟不上。那么现在为什么又重新起来的,就是因为吧刚才说的这个辛顿,他提出了反向传播算法,bp算法。bp算法的意思是说,你在调整参数的时候啊,你不用像以前一样这样调了,你可以先调最后一层,最后一层调完了往前调是吧?在一直调调前,最前面这一层就。叫反向传播。

        那么这种算法比以前的算法呢复杂度要低啊,所以呢也引领了这个第三次的人工智能浪潮。说到这儿啊,不知道大家是不是对人工智能已经有了一个粗浅的认识的啊。那么很显然啊,这种算法如此的复杂,我们在程序员编程的时候,不可能一切从零开始边是不是啊必须得有一些算法呢已经编好了,放在这儿,这就是什么呢?这就是所谓的。人工智能的框架。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!