某些函数在处理概率分布时会经常出现,尤其是深度学习的模型中用到的概率分布。
logistic sigmoid 函数
σ(x)=11+e−x
`
从 sigmoid 函数图像中可以看出,定义域
R
, 而值域范围
(0,1)
,单调递增。因而这个函数通常用来产生 Bernoulli 分布中的参数
ϕ
.
当
x
取非常大的正值或者负值的时候,就会出现 饱和(saturate)现象,函数会变得很平,并且对输入的微小改变变得不敏感。
softplus 函数
ζ(x)=log(1+ex)
之所以叫 softplus, 是因为这个函数 soft(软化/平滑)了 positive part function
x+=max(0,x)
. 但千万注意 不要把 softplus 和 softmax 名称搞混。
从 softplus 的函数图像可以看出,定义域是
R
, 值域是
(0,+∞)
, 因而 softplus 函数可以用来产生正态分布的
β
和
σ
参数。
logistic sigmoid 和 softplus 之间的紧密联系
σ(x)=11+e−1=exex+1(1.1)
1−σ(x)=σ(−x)(1.2)
ddxσ(x)=σ(x)(1−σ(x))=σ(x)σ(−x)(1.3)
ddxζ(x)=σ(x)(1.4)
logσ(x)=−ζ(−x)(1.5)
∀x∈(0,1),σ−1(x)=logx1−x(1.6)
∀x>0,ζ−1(x)=log(ex−1)(1.7)
ζ(x)=∫x−∞σ(y)dy(1.8)
ζ(x)−ζ(−x)=x(1.9)