卷积神经网络详解 卷积神经网络包括哪几层及各层功能
2024-02-16 16:27:55新闻中心

  技术。它是一种专门为处理多维数组而设计的神经网络。CNN不仅大范围的应用于领域,还在自然语言处理、语音识别和游戏等领域有广泛应用。下文将详细地介绍CNN的各层及其功能。

  卷积层是CNN的核心组成部分,其作用是提取输入图像的特征。卷积层通过卷积操作将输入图像与多个卷积核进行卷积运算,从而提取出图像中的多个特征。每个卷积核能提取出不同的特征,如边缘、斑点、纹理等,多个卷积核能提取出更多的特征。卷积层通常会包括多个滤波器,用于在输入图像上提取多个特征图。

  卷积层处理输入数据时,会以固定大小的滑动窗口扫描输入数据。这个滑动窗口被称为卷积核或滤波器,其大小通常为3×3、5×5等。卷积核会与输入数据做点积运算,计算在每个位置上得到特征图的值。通过不同大小的卷积核比如 3×3, 5×5 等,CNN在不同尺度下学习图像特征。

  池化层通常跟在卷积层之后,其作用是降低输入数据的维度,并减少计算量。池化层通常会选择一个固定的窗口大小与固定的步长。在窗口范围内,池化层会选择一个最大值或平均值作为输出。这样的一个过程可以看做是对输入数据来进行采样,其有实际效果的减少了特征图中的冗余信息,提高了计算效率。

  在池化层中,max pooling 和 average pooling 是常用的两种方法。其中 max pooling 可以越来越好的提取出输入数据中的特征,拥有一定的不变性。

  Max Pooling 是被大范围的应用的一种池化方式,它的作用是对特征图做降采样。Max Pooling 操作一般会用一个2×2的窗口,以2为步长,对每个通道的特征图做相关操作。从特征图中提取出每个矩形窗口相应位置的最大元素,将这些最大值组成的新矩阵作为输出。

  如下图所示,是 Max Pooling 作用的示意图。在这个示例中,一个2×2 的窗口以2的步长从原矩阵中扫描过来,提取矩阵中每个窗口中的最大元素组成新矩阵。能够准确的看出,新矩阵维度比原矩阵降低了一半。

  Average Pooling (均值池化)是另一种常用的池化方式,它的作用也是对特征图做降采样。Average Pooling 操作和 Max Pooling 操作类似,但是输出的值是窗口内元素的平均值。

  批标准化层通常跟在卷积层或全连接层之后,其作用是将输入数据来进行归一化处理。这可以使输入数据有更可靠的分布,有很大效果预防神经网络中产生梯度消失的问题。

  批标准化使用输入数据的平均值和标准差,对数据来进行归一化处理。这样的一个过程可以看作是对输入数据来进行均值缩放和平移,使其具有更可靠的分布。批标准化可以轻松又有效提高训练速度和网络的准确性。

  激活函数通常跟在卷积层或全连接层之后,其作用是对输出数据来进行非线性变换。激活函数能使神经网络具有更强的表示和逼近能力。

  Sigmoid 激活函数是最常见的激活函数之一,它的公式为 f(x) = 1 / (1 + exp(-x))。Sigmoid 函数的特点是输出值在0到1之间,这使它可以被用于二分类问题。然而,当网络很深时,Sigmoid 激活函数易产生梯度消失的问题,限制了神经网络的深度。

  Tanh 激活函数与 Sigmoid 函数相似,但是它输出值的范围在-1到1之间,因此它可以被用于多元分类问题。Tanh 函数在神经网络中使用较少。

  ReLU(修正线性单元)激活函数处理速度快,具有快速训练、实现简单、结果不易消失、计算速度快等优点。ReLU的公式为f(x)=max(0, x),即对于一个输入的x,若其小于0,则激活函数返回0,否则返回其本身。ReLU的优点是计算速度快,实现较为简单,而且相对于其他激活函数已经证明其效果更好。

  Leaky ReLU是ReLU的一种变型,如下图。当x小于0时,函数在该点斜率较小,而不是像ReLU那样完全水平,这可以缓解ReLU死亡神经元的问题。在一些实际应用中,Leaky ReLU的性能确实优于ReLU。

  以上就是卷积神经网络的几个核心组成部分。在实际应用中,卷积神经网络通常包含多个卷积层和池化层、批标准化层以及经典的激活函数。这些组件相互协作,构成了强大的深度学习模型,能够适用于图像分类、目标检测、人脸识别等诸多领域,慢慢的变成了计算机视觉领域中最成功的模型之一。

Copyright © 2018 安博体育app全站下载 All Rights Reserved
网站地图 备案信息: 湘ICP备14017517