前几篇介绍完了主要的核心层—用于构建普通的常用网络,卷积层—主要用于构建卷积神经网络CNN—反馈网络,递归层—主要用于构建递归神经网络/循环神经网络RNN—前馈网络。那么主流的几种网络已经介绍的差不多了。现在来介绍几个比较新的神经网络模型,都是最近几年神经网络领域大牛们根据最新研究的数学算法以及生物生理特性研发的。这几种网络我尚未实际使用过,因此只是简单的介绍一下方法及参数,具体的使用还是请各位读者自行研究,也可以留言讨论。我会在后期进行实际使用及了解之后,作进一步的介绍及使用过程详细更新。
本节介绍的网络基本是基于ReLu(Rectified Linear Unit,线性纠正函数)改进的。而且这些模型都是经过实验证明其性能有显著提高。
一、LeakyReLU
keras.layers.advanced_activations.LeakyReLU(alpha=0.3)
是ReLU(Rectified Linear Unit)的特殊版本,允许当单元不被激活(f(x)= alpha*x for x < 0)时也会有一个很小的梯度。
inputshape: 任意。当把该层作为模型的第一层时,必须使用该参数(是一个整数元组,不包括样本维度)
outputshape: 同input shape一样。
参数:
alpha : float>=0,负斜率系数。
二、PReLU
keras.layers.advanced_activations.PReLU()
参数化线性单元,和Leaky ReLU相似,两者的每一个输入单元都有自己的alpha系数,并且这些系数都会随着训练过程而得到不断地学习。
** inputshape: 任意。当把该层作为模型的第一层时,必须使用该参数(是一个整数元组,不包括样本维度)
** outputshape: 同input shape一样。
** 本小节参考文献**:
三、ParametricSoftplus
keras.layers.advanced_activations.ParametricSoftplus()
arametric Softplus,其形式是f(x) = alpha * (1 + exp(beta * x)) 。它本质上是ReLU在参数控制纠正锐度的平滑版本。而其参数的初始化更接近于ReLu而不是标准的softplus:alpha=0.2
,beta=0.5
。这些参数分别适合每一个隐藏单元。
** inputshape: 任意。当把该层作为模型的第一层时,必须使用该参数(是一个整数元组,不包括样本维度)
** outputshape: 同input shape一样。
** 本小节参考文献**:
InferringNonlinear Neuronal Computation Based on Physiologically Plausible Inputs
四、Thresholded Linear
keras.layers.advanced_activations.ThresholdedLinear(theta)
参数化线性单元,提供了一个阈值,使参数的值当被置0时接近于0而非0。
** inputshape: 任意。当把该层作为模型的第一层时,必须使用该参数(是一个整数元组,不包括样本维度)
** outputshape: 同input shape一样。
** 参数**:
theta: float>=0。激活阈值大小
** 本小节参考文献**:
Zero-Bias Autoencodersand the Benefits of Co-Adapting Features
DelvingDeep into Rectifiers: Surpassing Human-Level Performance on ImageNetClassification
五、Thresholded ReLu
keras.layers.advanced_activations.ThresholdedReLu(theta)
inputshape: 任意。当把该层作为模型的第一层时,必须使用该参数(是一个整数元组,不包括样本维度)
** outputshape: 同input shape一样。
** 参数:
theta: float>=0。激活阈值大小
** 本小节参考文献**:
Zero-Bias Autoencodersand the Benefits of Co-Adapting Features
原文地址