當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python tf.compat.v1.reduce_logsumexp用法及代碼示例


計算 log(sum(exp(跨張量維度的元素)))。 (不推薦使用的參數)

用法

tf.compat.v1.reduce_logsumexp(
    input_tensor, axis=None, keepdims=None, name=None, reduction_indices=None,
    keep_dims=None
)

參數

  • input_tensor 要減少的張量。應該是數字類型。
  • axis 要減小的尺寸。如果None(默認),減少所有維度。必須在 [-rank(input_tensor), rank(input_tensor)) 範圍內。
  • keepdims 如果為真,則保留長度為 1 的縮減維度。
  • name 操作的名稱(可選)。
  • reduction_indices 軸的舊(不推薦)名稱。
  • keep_dims keepdims 的已棄用別名。

返回

  • 減少的張量。

警告:不推薦使用某些參數:(keep_dims)。它們將在未來的版本中被刪除。更新說明:keep_dims 已棄用,請改用 keepdims

沿 axis 中給定的尺寸減少 input_tensor 。除非 keepdims 為真,否則對於 axis 中的每個條目,張量的秩都會減少 1,這必須是唯一的。如果 keepdims 為真,則保留縮減後的維度,長度為 1。

如果axis 沒有條目,則減少所有維度,並返回具有單個元素的張量。

這個函數比 log(sum(exp(input))) 在數值上更穩定。它避免了由於取大輸入的 exp 導致的溢出和取小輸入的 log 導致的下溢。

例如:

x = tf.constant([[0., 0., 0.], [0., 0., 0.]])
tf.reduce_logsumexp(x)  # log(6)
tf.reduce_logsumexp(x, 0)  # [log(2), log(2), log(2)]
tf.reduce_logsumexp(x, 1)  # [log(3), log(3)]
tf.reduce_logsumexp(x, 1, keepdims=True)  # [[log(3)], [log(3)]]
tf.reduce_logsumexp(x, [0, 1])  # log(6)

相關用法


注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.compat.v1.reduce_logsumexp。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。