tf.squeeze和tf.expand_dims的用法

tf.expand_dims(input, axis=None, name=None, dim=None),在axis位置(此处不做方向理解)增加一个维度,squeeze是其反向操作。代码最说明问题:

import numpy as np
import tensorflow as tf
T=np.array([[2,2,3,3],[4,5,6,4]])
print("原始矩阵a:\n",T)
t1=tf.expand_dims(T,0,name="t1")
t2=tf.expand_dims(T,1,name="t2")
with tf.Session() as sess:
    print("T expand(axis=0)之后内容T1:\n",sess.run(t1))
    print("T expand(axis=1)之后内容T2:\n",sess.run(t2))
    print("T expand(axis=0)之后T1 shape:\n",sess.run(t1).shape)
    print("T expand(axis=1)之后T2 shape:\n",sess.run(t2).shape)
    print("下面显示反向操作squeeze的测试")
    print("T1 squeeze(axis=0)之后内容:",sess.run(tf.squeeze(t1,0)))
    print("T1 squeeze(axis=0)之后shape:",sess.run(tf.squeeze(t1,0)).shape)
    print("T2 squeeze(axis=1)之后内容:",sess.run(tf.squeeze(t2,1)))
    print("T2 squeeze(axis=1)之后shape:",sess.run(tf.squeeze(t2,1)).shape)

输出结果点击这里运行

猜你喜欢

转载自blog.csdn.net/qq_31150463/article/details/84136843