介绍:今天来讲一下CNN中的四个基本部件:池化操作,激活函数,全连接层,目标函数。 池化操作通常使用的池化操作为平均值池化和最大值池化,需要指出的是, 同卷积层操作不同,池化层不包含需要学习的参数。使用时仅需指定池化类型、池化操作的核大小和池化操作的步长等超参数即可。 最大值池化在每次操作时,将池化核覆盖区域中所有值的最大值作为池化结果,如图:(平均值也是一样的流程) 池化操作的作用:从上面的图片中可以发现,池化操作后的结果相比其输入降小了,其实池化操作实际上就是一种“降采样”操作。概括为三点:
激活函数:激活函数层又称非线性映射层, 顾名思义,激活函数的引入为的是增加整个网络的表达能力(即非线性)。否则, 若干线性操作层的堆叠仍然只能起到线性映射的作用,无法形成复杂的函数。直观上,激活函数模拟了生物神经元特性:接受一组输入信号并产生输出。 在神经科学中,生物神经元通常有一个阈值,当神经元所获得的输入信号累积效果超过了该阈值,神经元就被激活而处于兴奋状态;否则处于抑制状态。 之前逻辑回归的文章中讲过sigmoid函数,今天我们来讲一下当今最火爆的激活函数ReLU,实际应用中更广泛,效果更好。 ReLU的中文意思是修正线性单元,函数实际上是一个分段函数,其定义为: 由图可见, 函数的梯度在 x ≥ 0 时为1,反之为0。对 x ≥ 0 部 分完全消除了sigmoid型函数的梯度饱和效应。同时,在实验中还发现相比sigmoid型函数, 函数有助于随机梯度下降方法收敛,收敛速度约快6倍左右(这个倍数是从论文上看到的,虽然我没有做过测试,但能发表到国际期刊上,肯定是经过大量测试,可信度高)。 用图片来感受一下,更直观: 全连接层:全连接层将学到的特征表示映射到样本的标记空间,在整个卷积神经网络中起到“分类器”的作 用。在实际使用中,全连接层可由卷积操作实现:对前层是全连接的全连接层可以 转化为卷积核为 1 × 1 的卷积;而前层是卷积层的全连接层可以转化为卷积核 为 h × w 的全局卷积,h 和 w 分别为前层卷积输出结果的高和宽。 目标函数:上面提到全连接层是将网络特征映射到样本的标记空间做出预测,目标函数的 作用则用来衡量该预测值与真实样本标记之间的误差。在当下的卷积神经网络 中,交叉熵损失函数和 l2 损失函数分别是分类问题和回归问题中最为常用的目 标函数。 总结:上篇文章讲的卷积操作,加上本篇的池化操作,激活函数,全连接层,目标函数,构成了整个卷积神经网络的基本部件,结合前馈运算,反馈运算思考一下卷积神经网络的工作流程。 |
|