神经网络和深度学习 | ||
---|---|---|
上一篇 | 主目录 | 下一篇 |
【前言】
在B站的一个视频上有一个《大白话讲解卷积神经网络》的教学视频,讲的很好很好,建议观看 视频链接
1 卷积核的特征提取
卷积得到的feature match image如下所示,值越大表示响应越大:
用不同卷积核进行卷积(卷积结果跟卷积核长得很像,表示图像中的特征被卷积核提取出来了;如果长得不像,说明图像中不具有该卷积核要提取的特征):
用某一卷积核对图像进行卷积,当卷积某个区域时,对于该卷积核的特征,有以下三种情况
1.1 完全符合特征
用如上图所示的卷积核对图像进行卷积:
当图像中卷积区域与卷积核的元素全部相等时(或者分布完全一致时)卷积取得最大值。意义描述:卷积核提取到了该特征,因此响应很大。
1.2 部分符合特征
用如上图所示的卷积核对图像进行卷积:
当图像中卷积区域与卷积核的元素部分相等时(或者分布部分一致时)卷积取得介于最大值和最小值的中间值。意义描述:图像中的特征类似于卷积核中要提取的,因此有部分响应。
1.3 完全不符合特征
将得到一个最小值
2 多通道卷积
一幅RGB三通道的图像,使用两个卷积核(每个卷积核包含三个卷积平面,是3X3X3的立方体)进行卷积,得到两幅卷积后的图像,其中卷积的结果图像中的每一个元素是卷积核中三个平面与RGB对应卷积后求和得到的一个数。如下图所示:
3 池化
池化层的输入就是卷积层输出的原数据与相应的卷积核相乘后的输出矩阵
池化层的目的:
A 为了减少训练参数的数量,降低卷积层输出的特征向量的维度
B 减小过拟合现象,只保留最有用的图片信息,减少噪声的传递
最常见的两种池化层的形式:
A 最大池化:max-pooling——选取指定区域内最大的一个数来代表整片区域
B 均值池化:mean-pooling——选取指定区域内数值的平均值来代表整片区域
池化就是一个下采样(缩小图片)的过程,更多关于:下采样和上采样
在卷积神经网络中,网络结构一般是:卷积层-池化层-卷积层-池化层-…-全连接层
池化后将大大减少矩阵的大小,但在可接受范围内
最重要的是:池化后的矩阵仍保留着池化前矩阵的特征(看主对角线)。如下图:
上图中池化窗口是2X2的,第一行第四列中0.33所在的池化窗口只有0.33和-0.11这一列,需要填补(填0或者复制一份)
https://www.jianshu.com/p/b742c8c92b26
4 激活函数
Relu
5 实例
识别X、O。网络结构:
经过卷积,激活和池化:
展开:
在全连接层:
在求解X或O的概率时,分别有对应的权重
求X概率时:这16个数分别乘以X对应的权重得到的就是X的概率;O同理
最后两个概率结果之和为一(训练集为标签X或O,分类标签两类:X或O)
神经网络和深度学习系列笔记: 传送门