stack and unstack

tf.unstack

作用:
简单来说就是进行降维,再链接为一个可迭代的对象
Unpacks the given dimension of a rank-R tensor into rank-(R-1) tensors.
R维的tensor转换为R-1维的tensor序列
其参数形式化的表示如下:
value : 进行操作的tensor
num : 在指定的维度上对指定数目的tensor进行操作,如不提供需要能够从value的第axis维度的shape推断出
文档中的说法是:The length of the dimension axis.
axis : 指定进行操作的维度

以维度为(A,B,C,D)的tensor为例,axis = 2。得到的结果为长度为C的序列,output[i] = input[:, :, i, :], 每一个元素的shape为(A,B,D)

对应的np.stack

作用:将一个n维向量序列转换成n+1维度的单独向量
输出:在输出的第axis维上的值指示的是原序列中的index

import numpy as np
a = np.array(np.reshape(range(200)), (10,4,5))

得到一个长度为10,每个元素维度(4, 5)的序列

a = np.stack(a, axis = 2)
print(a.shape)      // (4, 5, 10)

在第2个axis上对元素进行堆叠(stack)
注意体会堆叠的含义

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值