神經元——Swish 函數&&Maxout 單元
本部分介紹Swish函數和Maxout單元
- Swish 函數
Swish函數是一種自門控(Self-Gated)激活函數,定義為
\operatorname{swish}(x)=x \sigma(\beta x)
其中
σ(·)
為Logistic函數,
β
為可學習的參數或一個固定超參數。
σ(·) ∈ (0, 1)
可以看作是一種軟性的門控機制。當
σ(βx)
接近于1時,門處于“開”狀态,激活函數的輸出近似于
x
本身;當
σ(βx)
接近于0時,門的狀态為“關”,激活函數的輸出近似于0。
上圖給出了 Swish 函數的示例。當
β = 0
時,Swish 函數變成線性函數
x/2
。當
β = 1
時,Swish函數在
x > 0
時近似線性,在
x < 0
時近似飽和,同時具有一定的非單調性。當
β → +∞
時,
σ(βx)
趨向于離散的
0-1
函數,Swish函數近似為ReLU函數。是以,Swish函數可以看作是線性函數和ReLU函數之間的非線性插值函數,其程度由參數
β
控制。
- Maxout 單元
Maxout單元也是一種分段線性函數。Sigmoid型函數、ReLU等激活函數的輸入是神經元的淨輸入
z
,是一個标量而 maxout 單元的輸入是上一層神經元的全部原始輸入,是一個向量
x = [x_1; x_2; · · · , x_d]
。
每個maxout單元有
K
個權重向量
w_k ∈ R ^d
和偏置
b_k (1 ≤ k ≤ K)
。對 于輸入
x
,可以得到
K
個淨輸入
z_k, 1 ≤ k ≤ K
。
z_{k}=\mathbf{w}_{k}^{\mathrm{T}} \mathbf{x}+b_{k}
其中
\mathbf{w}_{k}=\left[w_{k, 1}, \cdots, w_{k, d}\right]^{\mathrm{T}}
為第
k
個權重向量。
Maxout單元的非線性函數定義為
\operatorname{maxout}(\mathbf{x})=\max _{k \in[1, K]}\left(z_{k}\right)
Maxout 單元不單是淨輸入到輸出之間的非線性映射,而是整體學習輸入到輸出之間的非線性映射關系。Maxout 激活函數可以看作任意凸函數的分段線性近似,并且在有限的點上是不可微的。