卷积神经网络原理推导
- 格式:ppt
- 大小:903.50 KB
- 文档页数:29


卷积神经网络(CNN)一、简介卷积神经网络(Convolutional Neural Networks,简称CNN)是近年发展起来,并引起广泛重视的一种高效的识别方法。
1962年,Hubel和Wiesel在研究猫脑皮层中用于局部敏感和方向选择的神经元时发现其独特的局部互连网络结构可以有效地降低反馈神经网络的复杂性,继而提出了卷积神经网络[1](Convolutional Neural Networks-简称CNN)7863。
现在,CNN已经成为众多科学领域的研究热点之一,特别是在模式分类领域,由于该网络避免了对图像的复杂前期预处理,可以直接输入原始图像,因而得到了更为广泛的应用。
Fukushima在1980年基于神经元间的局部连通性和图像的层次组织转换,为解决模式识别问题,提出的新识别机(Neocognitron)是卷积神经网络的第一个实现网络[2]。
他指出,当在不同位置应用具有相同参数的神经元作为前一层的patches时,能够实现平移不变性1296。
随着1986年BP算法以及T-C问题[3](即权值共享和池化)9508的提出,LeCun和其合作者遵循这一想法,使用误差梯度(the error gradient)设计和训练卷积神经网络,在一些模式识别任务中获得了最先进的性能[4][5]。
在1998年,他们建立了一个多层人工神经网络,被称为LeNet-5[5],用于手写数字分类,这是第一个正式的卷积神经网络模型3579。
类似于一般的神经网络,LeNet-5有多层,利用BP算法来训练参数。
它可以获得原始图像的有效表示,使得直接从原始像素(几乎不经过预处理)中识别视觉模式成为可能。
然而,由于当时大型训练数据和计算能力的缺乏,使得LeNet-5在面对更复杂的问题时,如大规模图像和视频分类,不能表现出良好的性能。
因此,在接下来近十年的时间里,卷积神经网络的相关研究趋于停滞,原因有两个:一是研究人员意识到多层神经网络在进行BP训练时的计算量极其之大,当时的硬件计算能力完全不可能实现;二是包括SVM在内的浅层机器学习算法也渐渐开始暂露头脚。
conv2d原理一、概述conv2d是卷积神经网络(Convolutional Neural Network,CNN)中最常用的操作之一。
它在计算机视觉和图像处理领域中广泛应用。
本文将详细介绍conv2d的原理及其在CNN中的应用。
二、卷积操作介绍卷积操作是指通过一个滤波器(或称为卷积核、过滤器、权重)在输入图像上滑动,对输入图像的像素进行加权求和,从而得到输出图像。
每个滤波器由一组可学习的权重参数组成。
三、卷积核的工作原理卷积核的尺寸通常是一个正方形或长宽比相等的矩形,其大小由用户指定。
在进行卷积操作时,卷积核以一定的步长在输入图像上滑动,与当前所覆盖的图像区域进行卷积运算。
在每个位置,卷积核与输入图像上相应的像素以及周边的像素进行加权求和,生成一个输出值。
四、卷积核的作用卷积核的作用是提取图像的特征。
通过调整卷积核的权重,可以获得不同种类的特征。
例如,一个卷积核可能会检测图像中的边缘,另一个卷积核可能会检测图像中的纹理等。
五、卷积操作的过程卷积操作的过程可以概括为以下几个步骤: 1. 初始化卷积核的权重参数。
2. 将卷积核与输入图像进行卷积计算。
3. 对卷积结果进行非线性变换(如ReLU激活函数)。
4. 可选地,对卷积结果进行池化操作,减小特征图的尺寸。
5. 重复以上步骤,直到获得最终的特征图。
六、卷积操作的参数卷积操作涉及多个参数的设置,包括卷积核的尺寸、步长、填充和通道数等。
1. 卷积核的尺寸决定了卷积操作中滤波器的大小。
2. 步长决定了滤波器在输入图像上滑动的距离。
3. 填充指的是在输入图像的边缘填充像素值,以保持输出特征图的大小。
4. 通道数决定了输入图像和输出特征图的通道数。
七、卷积操作在CNN中的应用卷积操作是CNN的核心组件之一,它在图像分类、目标检测、语义分割等任务中发挥着重要的作用。
1. 在图像分类任务中,卷积操作用于提取图像的特征,并通过全连接层进行分类。
⼀⽂看懂卷积神经⽹络-CNN(基本原理独特价值实际应⽤)卷积神经⽹络 – CNN 最擅长的就是图⽚的处理。
它受到⼈类视觉神经系统的启发。
CNN 有2⼤特点:能够有效的将⼤数据量的图⽚降维成⼩数据量能够有效的保留图⽚特征,符合图⽚处理的原则⽬前 CNN 已经得到了⼴泛的应⽤,⽐如:⼈脸识别、⾃动驾驶、美图秀秀、安防等很多领域。
CNN 解决了什么问题?在 CNN 出现之前,图像对于⼈⼯智能来说是⼀个难题,有2个原因:图像需要处理的数据量太⼤,导致成本很⾼,效率很低图像在数字化的过程中很难保留原有的特征,导致图像处理的准确率不⾼下⾯就详细说明⼀下这2个问题:需要处理的数据量太⼤图像是由像素构成的,每个像素⼜是由颜⾊构成的。
现在随随便便⼀张图⽚都是 1000×1000 像素以上的,每个像素都有RGB 3个参数来表⽰颜⾊信息。
假如我们处理⼀张 1000×1000 像素的图⽚,我们就需要处理3百万个参数!1000×1000×3=3,000,000这么⼤量的数据处理起来是⾮常消耗资源的,⽽且这只是⼀张不算太⼤的图⽚!卷积神经⽹络 – CNN 解决的第⼀个问题就是「将复杂问题简化」,把⼤量参数降维成少量参数,再做处理。
更重要的是:我们在⼤部分场景下,降维并不会影响结果。
⽐如1000像素的图⽚缩⼩成200像素,并不影响⾁眼认出来图⽚中是⼀只猫还是⼀只狗,机器也是如此。
保留图像特征图⽚数字化的传统⽅式我们简化⼀下,就类似下图的过程:图像简单数字化⽆法保留图像特征图像的内容假如有圆形是1,没有圆形是0,那么圆形的位置不同就会产⽣完全不同的数据表达。
但是从视觉的⾓度来看,图像的内容(本质)并没有发⽣变化,只是位置发⽣了变化。
(本质)并没有发⽣变化,只是位置发⽣了变化所以当我们移动图像中的物体,⽤传统的⽅式的得出来的参数会差异很⼤!这是不符合图像处理的要求的。
⽽ CNN 解决了这个问题,他⽤类似视觉的⽅式保留了图像的特征,当图像做翻转,旋转或者变换位置时,它也能有效的识别出来是类似的图像。