深圳电商网站建设公司设计网站的制作框架

当前位置: 首页 > news >正文

深圳电商网站建设公司,设计网站的制作框架,旅游网站后台模板,wordpress如何关闭自动更新目录 引入 一、CNN基本结构 1、卷积层 2、下采样层 3、全连接层 二、CNN参数训练 总结 引入 卷积神经网络#xff08;CNN#xff09;是一种有监督深度模型框架#xff0c;尤其适合处理二维数据问题#xff0c;如行人检测、人脸识别、信号处理等领域#xff0c;是带…目录 引入 一、CNN基本结构 1、卷积层 2、下采样层 3、全连接层 二、CNN参数训练 总结 引入 卷积神经网络CNN是一种有监督深度模型框架尤其适合处理二维数据问题如行人检测、人脸识别、信号处理等领域是带有卷积结构的深度神经网络也是首个真正意义上成功训练多层网络的算法。CNN与传统的神经网络的主要区别在于权值共享与非全连接。权值共享能够避免算法过拟合通过拓补结构建立层与层间非全连接空间关系来降低训练参数的数目这也是卷积神经网络的基本思想。 CNN经过反馈训练学习多个能够提取输入数据特征的卷积核这些卷积核与输入数据进行逐层卷积并池化来逐级提取隐藏在数据中拓补结构的特征。随着网络结构层层深入提取的特征也逐渐变得抽象最终获得输入数据的平移、旋转及缩放不变性的特征表示。相比传统神经网络CNN将特征提取与分类过程同时进行避免了两者在算法匹配上的难点。 一、CNN基本结构 CNN主要由卷积层与下采样层交替重复出现来构建网络结构卷积层用来提取输入神经元数据的局部特征不但可以增强特征信息还会降低图像中的噪声下采样层用来对其上一层提取的数据进行缩放映射以减小训练数据量同时也使得提取的特征具有一定的缩放不变性。一般来说可选不同尺寸的卷积核来提取多尺度特征获得不同大小的局部信息。 例如用于图像识别的CNN基本框架如图所示两层卷积、两层下采样、一层全连接然后输出分类 1、卷积层 对图像和滤波矩阵做内积逐个元素相乘再求和即为卷积。图像即一个数据窗口滤波矩阵可理解成权重层/卷积核如下图 上图卷积核为3x3所以做卷积后9个数变为1个数每计算完一个数据窗口内的局部数据后数据窗口不断平移滑动直到计算完所有数据涉及几个参数①深度depth神经元的个数决定输出的depth厚度也代表滤波器的个数②步长stride滑动多少步可到边缘如3x3的卷积核一次滑移2步③填充值zero-pading在外围补充多少圈0方便从初始位置以步长为单位可以刚好滑移到末尾位置——总长可以被步长整除。 滑移时数距窗口的数据一直在变化每次滤波器卷积核都是对某一局部的数据窗口一个特征图进行卷积这就是所谓的CNN的局部感知机制但是权重值没变这就是CNN的参数权重共享机制。 输入图像与可学习的核进行卷积操作经过激活函数得到C1的特征图卷积层的计算公式如下  其中表示第层的特征图的第k个表示获得第k个特征图的所有被卷积的输入图像表示对应滤波核的可学习参数代表卷积操作表示层的第n个特征图第表示第层的第n个输入图像所对应的加权偏置S(·)是卷积层的激励函数。 由上式C1特征图由多个输入图卷积累加获得但对于同一幅输入图其卷积核参数是一致的这也是权值共享的意义。卷积核的初值不是随机设置是通过无监督的预先训练或按照一定标准给定如仿照生物视觉特征用Gabor滤波器进行预处理。此处的卷积操作是针对图像的二维离散卷积操作步骤主要是先将卷积核模板旋转180°然后再将卷积核中心平移到所求像素点处进行卷积操作对应像素相乘并累加得到图像上该像素点的卷积值。 2、下采样层 下采样也可称为池化池化是指特征图分别在高、长方向上缩小运算以增强模型的鲁棒性当输入数据发生微小偏差时结果仍然是相同的——即下采样层通过降低网络空间分辨率来增强缩放不变性计算公式如下 其中表示可训练的标量参数其值随下采样方法的不同而变化常用下采样方法有大值下采样、均值下采样或称最大池化、平均池化前者更适合提取图像纹理后者能很好地保存图像背景。例如均值采样表示对m x m像素块进行下采样常用大小是2 x 2如此输出图像每个维度均为原图的每个输出图均有一个加权偏置然后将输出结果输入到一个非线性函数如Sigmoid函数。 假设一个4x4的特征图池化窗口kenerl size为2池化步长为2则最大池化方法结果如下平均池化顾名思义每个框取平均值 下采样的优势①降维减少网络要学习的参数数量②防止过拟合增强模型对一般情况的适应性③增大感知野④可以实现不变性平移不变性、旋转不变性、尺度不变性。 劣势在于下采样过程会丢失大量的特征信息但是这些信息可以通过一些特有手段在一定程度上弥补。 3、全连接层 相邻层的所有神经元都有连接称为全连接fully connected全连接层在整个CNN中起到分类器的作用。全连接层常出现在最后几层一般用Affine层实现该层每个神经元与前一层的所用神经元进行全连接用来把前面提取的特征综合起来——即对前面设计的特征做加权和。由于全相连的特性其参数也是最多的为了提升CNN网络性能全连接层的激活函数一般用到ReLU函数 上图的全连接神经网络中Affine层后跟着激活函数ReLU层或Sigmoid层上图堆叠了4层Affine-ReLU组合然后第5层是Affine层最后又Softmax层输出最终结果一个概率。注意这里的例子只有第5层AffineSoftmax是上面讨论的全连接输出层。前面的网络层可根据需要选择是否全连接CNN输出层一般采用线性全连接层目前最常用的分类方法有逻辑回归、Softmax分类方法。 作用全连接层主要用于线性映射将输入数据从低维空间映射到高维空间也可以加入非线性激活函数实现非线性映射。如果说卷积层、池化层和激活函数等操作是将原始数据映射到隐层特征空间的话全连接层则起到了将学到的“分布式特征表示”映射到样本标记空间的作用——把前面局部特征重新通过权值矩阵组装成完整的图。 举例如图一开始是9x9的图像经过一系列卷积、池化、激活函数操作后即将进入到全连接层红框 到了全连接层时全连接层是一维数据所以要将feature map变为一维。①假设在到达全连接层时是3个2x2的矩阵此时这12x1向量中的每一个元素就是输入层的一个神经元②然后得到的一维向量输入到网络中以概率Softmax的方式判断是X还是非X粗线表示特征明显的数据即是X还是非X③根据计算得到的权重矩阵对其进行加权求和就得到了每个分类得分然后根据Softmax函数进行概率计算得到X的概率为0.92不是X的概率为0.5 逻辑回归和Softmax分类方法下次单独出一期博客卷积分权值和偏置bias两部分也会进一步探讨归一化也会进一步学习 二、CNN参数训练 CNN参数训练过程与传统的人工神经网络类似采用BP反向传播算法包括前向传播与反向传播两个阶段假设共有N个训练样本分为C类误差函数如下 其中是第n个样式的第k维的网络输出值为对应的期望值误差函数为两者方差的累积。参数训练过程一般采用SGD算法但是优化算法LBFGS在卷积神经网络参数优化中较SGD算法效果有明显提高。 卷积神经网络实际应用中会有很多问题如网络参数如何预学习收敛条件以及非全连接规则等均需要实际应用中进一步解决与优化。这里介绍一种Boosting_like CNN算法假设对输入样本加一个惩罚权值则第层的输入与上一层的输出存在如下线性关系 其中为输出层的权值为偏置训练过程中不断调整。为上一层的输出即本层的输入。为输出层的激励函数一般为sigmoid或双曲正切函数通过求导得到输出层的灵敏度为 误差对权值的导数如下 最后对每个神经元运用更新法进行权值更新 为学习率由此可以获得权值的更新方法。 CNN可以看作多个特征提取器串联每一个特征提取器提取的特征由低级别到高级别并且特征提取结果相互制约——一个特征提取器的分类结果不仅和前一层有关系还受到后一层反馈的制约。假设CNN有n个阶段则用n个不同阶段的输出训练分类器可以得到n个弱分类器所以使用Boosting算法在训练过程中不断调节样本权重分布以此来给不同网络层次结构提供更好的分类情况的反馈信息进而提高网络性能使得网络更加稳定——……具体可参考相关论文 总结 此总结内容包括上次的神经网络与深度学习博客 深度学习是自动学习分类所需的低层次或高层次特征算法例如机器视觉深度学习算法从原始图像去学习得到它的低层次表达例如边缘之后在低层次表达的基础上通过线性或非线性的组合在建立高层次的表达。  深度学习能更好地表示数据特征。由于模型层次、参数很多因此模型有能力处理大规模数据对于图像、语音这种特征不明显的问题能通过大规模数据训练取得很好效果。 此外深度学习框架将特征提取和分类整合在一个框架用数据去学习特征减少了手工设计特征的巨大工作量效果好还使用方便