一.概述;
卷积神经网络(Convolutional Neural Network, CNN)是一种专门用于处理具有类似网格结构的数据(如图像)的深度学习模型。
主要用于处理机器视觉任务。
主要功能;
1.图像分类
2.目标检测
3.图像分割
1.1.与传统神经网络的区别;
全连接神经网络(FCN)
-
结构:每一层的每个神经元都与前一层的所有神经元相连。
-
参数数量:参数数量通常非常大,尤其是在处理高维输入(如图像)时。
-
示例:多层感知器(Multilayer Perceptron, MLP)。
卷积神经网络(CNN)
-
结构:包含卷积层、池化层、全连接层等组件。卷积层通过卷积核在输入数据上滑动,提取局部特征。
-
参数数量:参数数量相对较少,因为卷积核的权重在不同位置共享。
-
示例:LeNet、AlexNet、VGG、ResNet 等。
2. 参数共享
全连接神经网络(FCN)
-
参数共享:没有参数共享机制,每个神经元都有独立的权重。
-
缺点:参数数量庞大,容易导致过拟合。
卷积神经网络(CNN)
-
参数共享:卷积层的权重在不同位置共享,减少了参数数量。
-
优点:参数共享使得网络能够更好地捕捉局部特征,减少过拟合。
3. 局部连接
全连接神经网络(FCN)
-
局部连接:每个神经元与前一层的所有神经元相连,不考虑输入数据的局部性。
-
缺点:无法有效利用输入数据的局部结构。
卷积神经网络(CNN)
-
局部连接:卷积层通过卷积核在输入数据上滑动,提取局部特征。
-
优点:能够有效利用输入数据的局部结构,提取局部特征。
4. 处理输入数据
全连接神经网络(FCN)
-
输入数据:通常需要将输入数据展平为一维向量,丢失了输入数据的二维或三维结构。
-
示例:图像数据需要展平为 28×28=78428×28=784 维的向量。
卷积神经网络(CNN)
-
输入数据:直接处理二维或三维的输入数据,保留了数据的结构信息。
-
示例:图像数据可以直接输入到卷积层,保留了 28×2828×28 的二维结构。
二.卷积层
2.1.卷积核
卷积核用于提取图像的特征数据。
卷积核的定义:
1.卷积核的个数: 决定了特征矩阵的通道数。有几个通道就有几个特征数据
2.卷积核的值 : 通常是系统初始化,或是自己根据需求定义。
3.卷积核的大小:常见的卷积核有1×1、3×3、5×5等,一般都是奇数 × 奇数。
2.2.卷积的计算思想
卷:从左往右,从上往下
积:乘积,求和
卷积的过程是将卷积核在图像上进行滑动计算,每次滑动到一个新的位置时,卷积核和图像进行点对点的计算,并将其求和得到一个新的值,然后将这个新的值加入到特征图中,最终得到一个新的特征图。
滑动法,从左往右滑动,从上往下滑动。
卷积的重要性在于它可以将图像中的特征与卷积核进行卷积操作,从而提取出图像中的特征。
可以通过不断调整卷积核的大小、卷积核的值和卷积操作的步长,可以提取出不同尺度和位置的特征。