tf.concat
tf.concat用于将多个张量在某维度合并起来,类似于numpy.concatenate.第一个参数为待合并的多个张量列表,第二个参数需要指定在哪个维度做合并.待合并的张量shape需要完全相同.并且产生的张量阶数不会发生变化.
axis=0 第一维连接,axis=1 第二维连接
tf.stack
tf.stack(values, axis=0) 以指定axis将一个维度为R的张量转变为维度为R+1的张量,即会在新的张量阶上合并,张量的阶数会增加.
输入要求相同形状和数据类型的张量数组
原始a,bshape为(3,4)
axis=0 结果shape为(2, 3, 4)
axis=1 结果shape为(3, 2, 4)
axis=2 结果shape为(3, 4, 2)
tf.unstack
tf.unstack以指定axis将一个R维度张量转变为R-1维度张量
axis就是将指定的维度用所有这个张量里同纬度的数据替换
原始shape(3, 4, 3)
axis=0 结果shape为3个 (4,3)
axis=1 结果shape为4个 (3,3)
axis=2 结果shape为3个 (3,4)
网友评论