美文网首页
tf.concat和tf.stack的比较 2018-06-07

tf.concat和tf.stack的比较 2018-06-07

作者: 美联储 | 来源:发表于2018-06-07 22:44 被阅读0次
    with tf.Session() as sess:
        a = tf.constant([[1,2,3],[3,4,5]]) # shape (2,3)
        b = tf.constant([[7,8,9],[10,11,12]]) # shape (2,3)
    
        ab1 = tf.concat([a,b], axis=0)
        ab2 = tf.stack([a, b], axis=0)
        print('ab1的形状 : %s' % ab1.get_shape(),'\r\n',sess.run(ab1),'\r\n')
        print('ab2的形状 : %s:'% ab2.get_shape(),'\r\n',sess.run(ab2),'\r\n')
        print('观察ab1和ab2,tf.stack会增加维度\r\n')
    
    
        ab3 = tf.concat([a,b], axis=1)
        print('ab3的形状 : %s:'% ab3.get_shape(),'\r\n',sess.run(ab3),'\r\n')
    

    输出结果:
    ab1的形状 : (4, 3)
    [[ 1 2 3]
    [ 3 4 5]
    [ 7 8 9]
    [10 11 12]]

    ab2的形状 : (2, 2, 3):
    [[[ 1 2 3]
    [ 3 4 5]]

    [[ 7 8 9]
    [10 11 12]]]

    观察ab1和ab2,发现tf.stack会增加维度,即先把原先各自的矩阵先包一层皮(添加中括号[ ])再去tf.concat。

    ab3的形状 : (2, 6):
    [[ 1 2 3 7 8 9]
    [ 3 4 5 10 11 12]]

    相关文章

      网友评论

          本文标题:tf.concat和tf.stack的比较 2018-06-07

          本文链接:https://www.haomeiwen.com/subject/pcgnsftx.html