浅谈基于CNN卷积神经网络的图像识别

目录

前言

一、卷积神经网络(CNN)是什么?

二、CNN的层次结构

1.输入层

2.卷积层

3.池化层

参考文章:



前言

卷积神经网络(CNN,有时被称为 ConvNet)是很吸引人的。在短时间内,它们变成了一种颠覆性的技术,打破了从文本、视频到语音等多个领域所有最先进的算法,远远超出了其最初在图像处理的应用范围。


一、卷积神经网络(CNN)是什么?

CNN 由许多神经网络层组成。卷积和池化这两种不同类型的层通常是交替的。网络中每个滤波器的深度从左到右增加。最后通常由一个或多个全连接的层组成。

浅谈基于CNN卷积神经网络的图像识别_第1张图片

 

下面我将逐层分析,带你简单直观地了解CNN

二、CNN的层次结构

1.输入层

CNN的输入层与传统神经网络类似

特别的:用于图像识别时,输入层的输入数据应转化为四维数组

2.卷积层

卷积层由输入数据(上一层的输出经过激活函数后的数据),卷积核组成

其中卷积核相当于一个滤波器,即将图像数组中的特征值抽样出来。

如下:卷积核大小为2*2,则每次抽样2*2个像素点

浅谈基于CNN卷积神经网络的图像识别_第2张图片

 

代码如下:

model.add(Convolution2D(
    input_shape = (28,28,1),#输入平面
    filters = 32,#卷积核/滤波器个数
    kernel_size = 5,#卷积窗口大小
    strides = 1,#步长
    padding = 'same',#padding方式sanme/valid
    activation = 'relu'
))

3.池化层

池化的作用简单来说就是 将图像进一步压缩,把特征值进一步放大。

代码如下:

model.add(MaxPooling2D(
    pool_size = 2,
    strides = 2,
    padding = 'same'
))#将特征图大小/2

参考文章:

卷积神经网络(CNN)详解 - 知乎

卷积神经网络(CNN,ConvNet)及其原理详解

详解卷积神经网络(CNN)_liuhe_的博客-CSDN博客_卷积神经网络

你可能感兴趣的:(神经网络,人工智能,深度学习)