文档介绍:AI入门:卷积神经网络如果对深度学****还不了解的同学,建议你先看下之前的文章《深度学****到底有多深?》,对深度学****有一定的认知,对接来了的讨论可能会更容易理解。以下是本文讨论内容的大纲:下文的卷积神经网络,N表示。假设我们要做图像识别,把一张图片丢到机器,机器能理解的就是每个像素点的值,如下图:我们在搭建好神经网络模型之后,需要做的就是用数据训练,最终需要确定的是每一个神经元参数w和b,这样我们就可以确定模型了。假设我们输入的是50*50像素的图片(图片已经很小了),这依然有2500个像素点,而我们生活中基本都是RGB彩***像,有三个通道,那么加起来就有2500*3=7500个像素点。如果用普通的全连接,深度比较深时,那需要确认的参数太多了,对于计算机的计算能力,和训练模型来说都是比较困难一件事。因此,普通神经网络的问题是:需要确认的参数太多。那CNN是怎么解决这个问题的呢?请接着往下看。第一步:局部监测假设我们要看一张图片中有没有猫耳朵,也许我们不需要看整张图片,只需要看一个局部就行了。因此看是否是一只猫,只需要看是否有猫尾、是否有猫嘴、是否有猫眼,如果都有,那机器就预测说这张图片是一只猫。因为这种方法看的是图片的局部,而不是全部,也就是说神经元连接的是部分的特征变量,而不是全部的特征变量,因此参数比较少。(如果这里看不懂没关系,我们后面会详细解释)。看到这里你可能会疑问,我怎么知道取哪个局部,我怎么知道猫耳在图片的哪个部位?不着急,后面会讲到。第二步:抽样,缩小图片假设我们要识别一张50*50像素的猫相片,如果我们把图片缩小到25*25个像素点,那其实还是能看出这是一只猫的照片。因此,如果把图片缩小了,就相当于输入的特征变量变少了,这样也能减少参数的量。卷积神经网络就是用上面这两步的思想来减少参数,N的架构是怎样的?又是怎么运行的?N的架构流程图:第一步:卷积,即局部监测。第二步:特征抽样,即缩小图片。然后重复第一、第二步(具体重复多少次,人为决定)。第三步:全连接,把第一、二步的结果,输入到全连接的神经网络中,最后输出结果。首先,把图片转化成机器可以识别的样子,把每一个像素点的色值用矩阵来表示。这里为了方便说明,我们就简化,用6*6像素来表示,且取只RGB图片一层。然后,我们用一些过滤器跟输入的图片的矩阵做卷积。(如果不知道卷积怎么运行的话,可以去问下百度)那过滤器是什么呢?——过滤器就是用来检测图片是否有某个特征,卷积的值越大,说明这个特征越明显。说到这里,我们回顾一下前面提到的问题:我怎么知道取哪个局部,我怎么知道猫耳在图片的哪个部位?用的办法就是:移动窗口卷积。同一个过滤器,会在原图片矩阵上不断的移动,每移动一步,就会做一次卷积。(每一移动的距离是人为决定的)因此移动完之后,就相当于一个过滤器就会检测完整张图片,哪里有相似的特征。卷积跟神经元是什么样的关系呢?上图所示有3点需要说明:1)每移动一下,其实就是相当于接了一个神经元。2)每个神经元,连接的不是所有的输入,只需要连接部分输出。说到这里可能你又会有疑问了,移动一下就是一神经元,这样不就会有很多神经元了吗?那不得又有很多参数了吗?确实可能有很多神经元,但是同一个过滤器移动时,参数是强行一致的,公用参数的。3)所以同一个过滤器移动产生的神经元可能有很多个,但是他们的参数是公用的,因此参数不