-人工神经元\激活函数
2021/12/31 6:07:18
本文主要是介绍-人工神经元\激活函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
#--------------------------------|--------------------------------------------------------------------------# |
-为什么要激活函数:
-线性变换无法扩展特征空间,得到的特征空间有限,线性的层只能学习到输入(输入空间)的线性变换(仿射变换)。
-非线性的激活函数能将输入空间映射到更丰富的特征空间。
-指示函数(indicator function)
-符号函数:
-感知器:
-接受几个二进制输入,并产生一个二进制输出。
-说明:激活函数要可导才能求解,感知机不连续无法求导。
输入:{0,1} 输出:{0,1} |
-sigmoid\S型神经元:
-和感知器类似,但是被修改为权重和偏置的微⼩改动只引起输出的微⼩变化。
-说明:两端的倒数趋近于0,会导致参数长时间无法更新,导致梯度弥散。[※][Link]
输入:(0,1) 输出:(0,1) | |
-tanh神经元:
-tanh在RNN\LSTM中用的多一些。
输入:(-1,1) 输出:(-1,1) |
-饱和激活函数&非饱和激活函数:
-饱和激活函数:sigmoid和tanh。
-非饱和激活函数:ReLU及其变体。
-(1)能解决所谓的"梯度消失"问题。
-(2)函数计算简单,求导简单,它能加快收敛速度。
-Relu\修正线性神经元(rectified linear neuron)\修正线性单元(rectified linear unit):
-优点:梯度为0或1不会变化,计算简单\快速\加快网络训练,相比sigmoid不容易出现梯度弥散\爆炸的情况。
-缺点:
-由于负数部分恒为0,会导致一些神经元无法激活。
-输出不是以0为中心的。
|
-Leak_relu:
-leakrelu是为了解决Relu函数0区间带来的影响,而且包含了relu的所有优点。
-负值的斜率是固定的,是预先定义的。其中k是leak系数比较小趋近于0,一般选择0.01或0.02或通过学习而来。
-PReLU\参数化修正线性单元:[※][Link] -PReLU是Leaky ReLU的一个变体。
-研究表明,PReLU能提高准确率但是也稍微增加了过拟合的风险。 -作者称,在ImageNet分类(2015,Russakovsky等)上,PReLU是超越人类分类水平的关键所在。 |
-RReLU\随机纠正线性单元: -RReLU也是Leaky ReLU的一个变体。 -负值的斜率在训练中是随机的,在测试中变成了固定的。在训练时斜率是从一个均匀分布U(a,b)中随机抽取的。 |
-Elu:
-Elu激活函数也是为了解决Relu的0区间带来的影响,但相对于leak_relu来说,计算要更耗时间一些。
-根据一些研究,ELU分类精确度是高于ReLU的。
|
-softplus:
-softplus函数与ReLU函数接近,但比较平滑,同ReLU一样是单边抑制,有宽广的接受域(0,+inf)。
-但是由于指数运算,对数运算计算量大的原因,而不太被人使用.并且从一些人的使用经验来看(Glorot et al.(2011a)),效果也并不比ReLU好。softplus的导数恰好是sigmoid函数。
-softmax:
-柔性最大值可看作一个概率分布。
-softmax近似方法:
-Word2vec中的分层(hierarchical) softmax是其中一种。
-softmax求导方法:
|
-二分类问题,应该选择sigmoid还是softmax?
-Sigmoid函数针对两点分布提出:
-分类成目标类别的概率P,而不分类到该类别的概率是(1 - P)。
-是对一个类别的"建模"。
-Softmax函数针对多项分布提出:
-当类别数是2时,它退化为二项分布。
-是对两个类别"建模"。
-理论上:
-两者是没有任何区别的。
-两点分布&二项分布。[Link]
-经验上:
-对于NLP而言,这两者之间确实有差别,Softmax的处理方式有时候会比Sigmoid的处理方式好一点。
-对于CV而言,这两者之间也是有差别的,Sigmoid的处理方式有时候会比Softmax的处理方式好一点。
#--------------------------------|--------------------------------------------------------------------------# |
关键信息 极其关键 TODO&链接
宋体_Consolas_12号_Cambria Math | 橙色底纹 | 金色底纹 | -todo- |
| |||
|
|
|
这篇关于-人工神经元\激活函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南