CNN卷积神经网络

(声明:本文章是在学习他人视频的学习笔记,图片出处均来自该up主,侵权删 up主链接:同济子豪兄的个人空间_哔哩哔哩_bilibili)

卷积神经网络就像一个黑箱,有输入和输出,输入是一个图像阵列也就是一个图片,输出就是这个图片是啥 

CNN卷积神经网络_第1张图片

比如说图片是一个X那么它就输出一个X,O就输出一个O 

CNN卷积神经网络_第2张图片 就算这个图片经过一些变换,它的结果仍然不变,并不会被误导也就是它的鲁棒性和抗干扰能力比较强

CNN卷积神经网络_第3张图片

对于计算机来说要识别一些变换的图像是非常难的 

CNN卷积神经网络_第4张图片

但是我们可以通过识别这些不变的关键点来识别变换后的图形,识别出它与原图的相似性 

CNN卷积神经网络_第5张图片 那么卷积神经网络是怎么运算的呢?

 绿色区域为图片像素矩阵,CNN将黄色区域的值算出来并记录在粉色区域CNN卷积神经网络_第6张图片

直到算到最后一个区域 

CNN卷积神经网络_第7张图片

 将X图像与它的三个特征作卷积运算就会得到旁边这三个特征图(feature map),仔细看你会发现这三个feature map会与他们做卷积的特征图相似,说明X图像中含有这三个特征,但如果你用O的图像与这三个特征图做卷积运算得出来的feature map就不会与原来的特征图相似,是一个乱码图CNN卷积神经网络_第8张图片

CNN卷积神经网络_第9张图片

但在实践运用中需要检测的特征点太多了,每个都作卷积运算的话,这个运算量是非常非常大的,因此我们需要对图像进行压缩,即进行池化(pooling) 

如图就是池化,将原来20×20的图像变为2×2的图像 ,这样做注定会丢失一部分数据,但这是在我们可接受的范围内的

 CNN卷积神经网络_第10张图片

池化分为两种:一种是最大值池化(将区域内的最大值来代替这个区域的所有值),另外一种是平均值池化(将区域内的所有数的平均值来代表这个区别的所有值)

CNN卷积神经网络_第11张图片

 在进行最大值池化后,可以发现这个feature map仍然保留了对角线的特征CNN卷积神经网络_第12张图片

 ReLUs是对所有小于0的值取0 CNN卷积神经网络_第13张图片

 我们反复的进行卷积、ReLUs、池化就可以得到一个很小的feature mapCNN卷积神经网络_第14张图片

 再把这些值进行全连接,就是feature map的每一个值拿出来排列CNN卷积神经网络_第15张图片

feature map的每一个数字都有它的权重,把数字乘以权重再加起来就可以得到是X的概率 

CNN卷积神经网络_第16张图片 每一个像素的权重,最后算完得出X的概率为0.92CNN卷积神经网络_第17张图片

你可能感兴趣的:(人工智能,cnn,深度学习)