购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

4-4 激励函数

激励函数(Activation Function)是将方程式乘上非线性函数,变成非线性模型,目的是希望能提供更通用的解决方案,而非单纯的线性回归。

Qutput = activation function ( x 1 w 1 + x 2 w 2 +…+ x n w n + bias )

PyTorch提供非常多种的Activation Function函数,可参阅官网中的Activation Functions介绍 [14]

范例.列举常用的Activation Function函数并进行测试。

下列程序代码请参考【04_12_Activation_Functions.ipynb】。

(1)ReLU:早期隐藏层使用Sigmoid函数,近年发现ReLU效果更好。

公式:ReLU(x)=max(0,x),将小于0的数值转换为0,即过滤掉负值的输入。

执行结果:[5, 2, 0, 0]。

(2)LeakyReLU:ReLU将小于0的数值转换为0,会造成某些特征( x )失效,为保留所有的特征,LeakyReLU将小于0的数值转换为非常小的负值,而非0。

公式:LeakyReLU(x)=max(0, x )+negative_slope×min(0, x )。

执行结果:[5.0000, 2.0000, 0.0000, -0.1000, -1.0000]。

(3)Sigmoid:罗吉斯回归(Logistic regression),将输入值转换为[0, 1],适合二分类。

公式:

执行结果:[9.9331e-01, 8.8080e-01, 5.0000e-01, 4.5398e-05, 3.7201e-44],均介于[0, 1]之间。

(4)Tanh:将输入值转换为[-1, 1],适合二分类。

公式:

执行结果:[0.9999, 0.9640, 0.0000, -1.0000, -1.0000],均介于[-1, 1]之间。

(5)Softmax:将输入转换为概率,总和为1,通常使用在最后一层,方便比较每一类的预测概率大小。

公式:

执行结果:[0.0321, 0.0871, 0.2369, 0.6439],总和为1。 BtjenE2jYfSetcPCUCSP9XG8LWMZzlg8gRhkoEMyK1qboNpSibhmjAf9zgJI7jCR

点击中间区域
呼出菜单
上一章
目录
下一章
×