tf.diag_part学习

来源:互联网 发布:直通车 淘宝客 编辑:程序博客网 时间:2024/06/18 15:02
diag_part(    input,    name=None)

返回张量的对角线部分。

该操作返回与该diagonal部分的张量input。该diagonal部分计算如下:

假设input有尺寸[D1,…, Dk, D1,…, Dk],那么输出是等级的张量,k其尺寸为[D1,…, Dk]:

diagonal[i1,…, ik] = input[i1, …, ik, i1,…, ik]。
例如:

# 'input' is [[1, 0, 0, 0]              [0, 2, 0, 0]              [0, 0, 3, 0]              [0, 0, 0, 4]]tf.diag_part(input) ==> [1, 2, 3, 4]
input:A Tensor。必须是下列类型之一:float32float64int32int64complex64complex128。Rank k张量,其中k是2,4或6。name:操作的名称(可选)。
import tensorflow as tfdiagonal=[[1,0,0,0], [0,2,0,0], [0,0,3,0], [0,0,0,4]]with tf.Session() as sess:     print(sess.run(tf.diag_part(diagonal)))

实验结果:

[1 2 3 4]