TensorFlow函數(shù):tf.reduce_logsumexp

2018-12-11 13:51 更新
tf.reduce_logsumexp 函數(shù)
reduce_logsumexp(
    input_tensor,
    axis=None,
    keep_dims=False,
    name=None,
    reduction_indices=None
)

定義在:tensorflow/python/ops/math_ops.py.

請(qǐng)參閱指南:數(shù)學(xué)函數(shù)>減少

計(jì)算log(sum(exp(exp(張量的各維數(shù)的元素))).

按照給定的axis上的維度減少input_tensor.除非keep_dims是true,否則張量的秩在axis上的每一項(xiàng)都減少1.如果keep_dims為 true,則減少的尺寸將保留為1.

如果axis沒(méi)有條目,則縮小所有維度,并返回具有單個(gè)元素的張量.

這個(gè)函數(shù)在數(shù)值上比 log(sum(exp(input)))更穩(wěn)定.它避免了大量輸入的 exp 引起的溢出和小輸入日志帶來(lái)的下溢.

例如:

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, keep_dims=True)  # [[log(3)], [log(3)]]
tf.reduce_logsumexp(x, [0, 1])  # log(6)

參數(shù):

  • input_tensor:張量減少.應(yīng)該有數(shù)字類(lèi)型.
  • axis:要減小的維度.如果為None(默認(rèn)),則減少所有維度.必須在[-rank(input_tensor), rank(input_tensor))范圍內(nèi).
  • keep_dims:如果為true,則保留長(zhǎng)度為1的減少尺寸.
  • name:操作的名稱(可選).
  • reduction_indices:axis的棄用名稱.

返回:

減少的張量.

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)