ML:激活函数和损失函数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ShellDawn/article/details/88700214

激活函数为了去线性化

  • sigmoid

sigmoid 在0.5附近解空间太大,熵垒,俗称梯度大平原,很难跳出。

优点,用于表达概率,例如DBN,RNN,LSTM中的一些gate是不能将sigmoid换成relu,这样概率表达都错了。

  • tanh

tanh解空间比sigmoid小,解空间比relu大,事实上,一定区间的解空间大小决定了,当值落入该区间跳出当难易程度。

  • ReLu
    max(0,x)

缓和梯度消失问题,relu不像sigmoid没有一个梯度衰减的尾巴,强度上不封顶,使得反向传播过程只有权重的乘积带来的梯度衰减。然而,一些网络可能需要clip掉梯度,避免不封顶的爆炸梯度回传。

稀疏度问题,relu的稀疏机理同dropout机理不一样,dropout等效于动态L2规范带来的稀疏,是通过打压W来实现稀疏。
relu稀疏是因为如果输入为0,输出也会为零。

初始化不好一样饱和。

  • leaky ReLu

max(ax,x)

通常a = 0.01

参考:

  1. https://www.zhihu.com/question/41841299/answer/92683898

损失函数为了修正参数:

扫描二维码关注公众号,回复: 5721749 查看本文章

交叉熵损失函数:
两个概率分布在同一潜在事件集(定义域)下对交叉熵度量,分布Q的最优化编码来对分布P的样本进行编码所使用的编码平均位数。

H(P,Q) = sum(P(x)*log(Q(x)))

猜你喜欢

转载自blog.csdn.net/ShellDawn/article/details/88700214