TensorFlow:tf.matrix_diag函數

2018-10-31 18:02 更新
tf.matrix_diag 函數
matrix_diag(
    diagonal,
    name=None
)

參考指南:數學函數>矩陣數學函數

返回具有給定批對角線值的批對角張量.

給定一個對角線(diagonal),這個操作將返回一個帶有對角線的張量,而其他所有的東西都加0.對角線的計算如下:

假設對角線具有 k 維度 [I, J, K, ..., N],則輸出是秩為 k+1 且維度為 [I,J,K,...,N,N] 的張量,其中:

output[i, j, k, ..., m, n] = 1{m=n} * diagonal[i, j, k, ..., n]

例如:

# 'diagonal' is [[1, 2, 3, 4], [5, 6, 7, 8]]

and diagonal.shape = (2, 4)

tf.matrix_diag(diagonal) ==> [[[1, 0, 0, 0]
                                     [0, 2, 0, 0]
                                     [0, 0, 3, 0]
                                     [0, 0, 0, 4]],
                                    [[5, 0, 0, 0]
                                     [0, 6, 0, 0]
                                     [0, 0, 7, 0]
                                     [0, 0, 0, 8]]]

which has shape (2, 4, 4)

參數:

  • diagonal:張量;秩為 k,并且 k >= 1.
  • name:操作的名稱(可選).

返回值:

該函數將返回張量,該張量與 diagonal 具有相同的類型;秩為 k+1,并且 output.shape = diagonal.shape + [diagonal.shape[-1]].

以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號