CNN卷积特征的可视化

2019-10-29 10:00:15 浏览数 (1)

本文主要是实现了一个简单的卷积神经网络,并对卷积过程中的提取特征进行了可视化.

卷积神经网络最早是为了解决图像识别的问题,现在也用在时间序列数据和文本数据处理当中,卷积神经网络对于数据特征的提取不用额外进行,在对网络的训练的过程当中,网络会自动提取主要的特征.

  卷积神经网络直接用原始图像的全部像素作为输入,但是内部为非全连接结构.因为图像数据在空间上是有组织结构的,每一个像素在空间上和周围的像素是有关系的,和相距很远的像素基本上是没什么联系的,每个神经元只需要接受局部的像素作为输入,再将局部信息汇总就能得到全局信息.   权值共享和池化两个操作使网络模型的参数大幅的减少,提高了模型的训练效率. 权值共享:   在卷积层中可以有多个卷积核,每个卷积核与原始图像进行卷积运算后会映射出一个新的2D图像,新图像的每个像素都来自同一个卷积核.这就是权值共享.

池化: 降采样,对卷积(滤波)后,经过激活函数处理后的图像,保留像素块中灰度值最高的像素点(保留最主要的特征),比如进行 2X2的最大池化,把一个2x2的像素块降为1x1的像素块.

Padding

卷积核在提取特征时的动作成为padding,它有两种方式:SAME和VALID。卷积核的移动步长不一定能够整除图片像素的宽度,所以在有些图片的边框位置有些像素不能被卷积。这种不越过边缘的取样就叫做 valid padding,卷积后的图像面积小于原图像。为了让卷积核覆盖到所有的像素,可以对边缘位置进行0像素填充,然后在进行卷积。这种越过边缘的取样是 same padding。如过移动步长为1,那么得到和原图一样大小的图像。 如果步长很大,超过了卷积核长度,那么same padding,得到的特征图也会小于原来的图像。

训练交叉熵代价

训练数据中的一个样本

第一个卷积层提取的特征

2x2池化后的特征

第二层卷积提取特征

2x2池化后的特征

https://blog.csdn.net/u014281392/article/details/74316028

0 人点赞