当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.math.log_sigmoid用法及代码示例


按元素计算 x 的 log sigmoid。

用法

tf.math.log_sigmoid(
    x, name=None
)

参数

  • x 类型为 float32float64 的张量。
  • name 操作的名称(可选)。

返回

  • x 类型相同的张量。

具体来说,y = log(1 / (1 + exp(-x)))。为了数值稳定性,我们使用 y = -tf.nn.softplus(-x)

使用示例:

如果一个正数很大,那么它的 log_sigmoid 将接近 0,因为公式将是 y = log( <large_num> / (1 + <large_num>) ),它近似于为 0 的 log (1)

x = tf.constant([0.0, 1.0, 50.0, 100.0])
tf.math.log_sigmoid(x)
<tf.Tensor:shape=(4,), dtype=float32, numpy=
array([-6.9314718e-01, -3.1326169e-01, -1.9287499e-22, -0.0000000e+00],
      dtype=float32)>

如果负数很大,则其log_sigmoid 将接近数字本身,因为公式将是y = log( 1 / (1 + <large_num>) ),即log (1) - log ( (1 + <large_num>) ),它近似于作为数字本身的- <large_num>

x = tf.constant([-100.0, -50.0, -1.0, 0.0])
tf.math.log_sigmoid(x)
<tf.Tensor:shape=(4,), dtype=float32, numpy=
array([-100.       ,  -50.       ,   -1.3132616,   -0.6931472],
      dtype=float32)>

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.math.log_sigmoid。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。