softplus

softplus

概念

softplus是一种smoothed relu激活函数,定义为:
s o f t p l u s ( x ) = l o g ( 1 + e x ) softplus(x)= log(1 + e^{x}) softplus(x)=log(1+ex)

作用和意义:

  1. softplus是relu函数的smoothed版本,使得relu函数在0处的非光滑点变得光滑。这有利于优化和数值稳定性。
  2. softplus总是非负的,因此常用于预测非负值,如概率值等。
  3. softplus的导数是一个高斯函数,这使得BackProp过程更加平滑。
  4. softplus在0附近的增长速度更缓慢,这能够生成更加清晰区分的概率分布。

实际案例:

  1. 当 predicts 非负值如概率时,使用 softplus 作为激活函数,如:
outputs = tf.keras.layers.Dense(1, activation='softplus')(inputs)

这可以输出0-1之间的概率值。
2. 在VAE(变分自编码器)中,softplus常用于参数化logits和variance:

z_mean = tf.keras.layers.Dense(latent_dim)(h)
z_log_var = tf.keras.layers.Dense(latent_dim)(h)   
z = z_mean + tf.exp(0.5 * z_log_var) * eps   

# 使用softplus parameterize z_log_var
z_log_var = tf.keras.activations.softplus(z_log_var)
  1. 在一些GANs(生成对抗网络)模型中也会使用softplus来参数化logits。

总之,softplus是一个很有用的激活函数,主要用于输出非负值,提高数值稳定性,生成光滑的概率分布等。在许多生成模型和VAE中有广泛应用。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Miss.wei

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值