stack(inputs, dim=) :沿着一个新维度对输入张量序列进行连接。 序列中所有的张量都应该为相同形状。

np.stack()

import numpy as np
a=np.array([i for i in range(24)]).reshape(3,4,2)
b=np.array([i for i in range(24,48)]).reshape(3,4,2)
c=np.array([i for i in range(48,72)]).reshape(3,4,2)
print(a)
print(b)
print(c)
new_array1=np.stack([a,b,c],axis=0)
print("new_array1:",new_array1,"shape1:",new_array1.shape)
new_array2=np.stack([a,b,c],axis=1)
print("new_array2:",new_array2,"shape1:",new_array2.shape)
new_array3=np.stack([a,b,c],axis=2)
print("new_array3:",new_array2,"shape3:",new_array3.shape)
[[[ 0  1][ 2  3][ 4  5][ 6  7]][[ 8  9][10 11][12 13][14 15]][[16 17][18 19][20 21][22 23]]]
[[[24 25][26 27][28 29][30 31]][[32 33][34 35][36 37][38 39]][[40 41][42 43][44 45][46 47]]]
[[[48 49][50 51][52 53][54 55]][[56 57][58 59][60 61][62 63]][[64 65][66 67][68 69][70 71]]]
new_array1: [[[[ 0  1][ 2  3][ 4  5][ 6  7]][[ 8  9][10 11][12 13][14 15]][[16 17][18 19][20 21][22 23]]][[[24 25][26 27][28 29][30 31]][[32 33][34 35][36 37][38 39]][[40 41][42 43][44 45][46 47]]][[[48 49][50 51][52 53][54 55]][[56 57][58 59][60 61][62 63]][[64 65][66 67][68 69][70 71]]]] shape1: (3, 3, 4, 2)
new_array2: [[[[ 0  1][ 2  3][ 4  5][ 6  7]][[24 25][26 27][28 29][30 31]][[48 49][50 51][52 53][54 55]]][[[ 8  9][10 11][12 13][14 15]][[32 33][34 35][36 37][38 39]][[56 57][58 59][60 61][62 63]]][[[16 17][18 19][20 21][22 23]][[40 41][42 43][44 45][46 47]][[64 65][66 67][68 69][70 71]]]] shape1: (3, 3, 4, 2)
new_array3: [[[[ 0  1][ 2  3][ 4  5][ 6  7]][[24 25][26 27][28 29][30 31]][[48 49][50 51][52 53][54 55]]][[[ 8  9][10 11][12 13][14 15]][[32 33][34 35][36 37][38 39]][[56 57][58 59][60 61][62 63]]][[[16 17][18 19][20 21][22 23]][[40 41][42 43][44 45][46 47]][[64 65][66 67][68 69][70 71]]]] shape3: (3, 4, 3, 2)

np.stack()和torch.stack()是一样的

torch.stack(tensors: Union[Tuple[Tensor, …], List[Tensor]], dim: _int=0, *, out: Option)

import torch
d=torch.randint(0,24,(3,4,2))
e=torch.randint(24,48,(3,4,2))
f=torch.randint(48,72,(3,4,2))
print(d)
print(e)
print(f)
new_tensor4=torch.stack([d,e,f],dim=0)
print("new_tensor4:",new_tensor4,"new_tensor4.shape:",new_tensor4.shape)
new_tensor5=torch.stack([d,e,f],dim=1)
print("new_tensor5:",new_tensor5,"new_tensor5.shape:",new_tensor5.shape)
new_tensor6=torch.stack([d,e,f],dim=2)
print("new_tensor6:",new_tensor6,"new_tensor6.shape:",new_tensor6.shape)
new_tensor7=torch.stack([d,e,f],dim=3)
print("new_tensor7:",new_tensor7,"new_tensor7.shape:",new_tensor7.shape)
tensor([[[ 0, 23],[ 9, 13],[ 2, 17],[19, 22]],[[13, 23],[ 5, 15],[10,  8],[ 6, 12]],[[20,  3],[ 3, 13],[15,  3],[22, 22]]])
tensor([[[33, 37],[46, 38],[34, 42],[40, 32]],[[39, 30],[46, 26],[41, 33],[37, 28]],[[45, 31],[46, 37],[36, 27],[41, 45]]])
tensor([[[48, 56],[49, 67],[71, 53],[62, 71]],[[54, 52],[55, 48],[69, 63],[58, 63]],[[57, 56],[69, 71],[68, 62],[71, 56]]])
new_tensor4: tensor([[[[ 0, 23],[ 9, 13],[ 2, 17],[19, 22]],[[13, 23],[ 5, 15],[10,  8],[ 6, 12]],[[20,  3],[ 3, 13],[15,  3],[22, 22]]],[[[33, 37],[46, 38],[34, 42],[40, 32]],[[39, 30],[46, 26],[41, 33],[37, 28]],[[45, 31],[46, 37],[36, 27],[41, 45]]],[[[48, 56],[49, 67],[71, 53],[62, 71]],[[54, 52],[55, 48],[69, 63],[58, 63]],[[57, 56],[69, 71],[68, 62],[71, 56]]]]) new_tensor4.shape: torch.Size([3, 3, 4, 2])
new_tensor5: tensor([[[[ 0, 23],[ 9, 13],[ 2, 17],[19, 22]],[[33, 37],[46, 38],[34, 42],[40, 32]],[[48, 56],[49, 67],[71, 53],[62, 71]]],[[[13, 23],[ 5, 15],[10,  8],[ 6, 12]],[[39, 30],[46, 26],[41, 33],[37, 28]],[[54, 52],[55, 48],[69, 63],[58, 63]]],[[[20,  3],[ 3, 13],[15,  3],[22, 22]],[[45, 31],[46, 37],[36, 27],[41, 45]],[[57, 56],[69, 71],[68, 62],[71, 56]]]]) new_tensor5.shape: torch.Size([3, 3, 4, 2])
new_tensor6: tensor([[[[ 0, 23],[33, 37],[48, 56]],[[ 9, 13],[46, 38],[49, 67]],[[ 2, 17],[34, 42],[71, 53]],[[19, 22],[40, 32],[62, 71]]],[[[13, 23],[39, 30],[54, 52]],[[ 5, 15],[46, 26],[55, 48]],[[10,  8],[41, 33],[69, 63]],[[ 6, 12],[37, 28],[58, 63]]],[[[20,  3],[45, 31],[57, 56]],[[ 3, 13],[46, 37],[69, 71]],[[15,  3],[36, 27],[68, 62]],[[22, 22],[41, 45],[71, 56]]]]) new_tensor6.shape: torch.Size([3, 4, 3, 2])
new_tensor7: tensor([[[[ 0, 33, 48],[23, 37, 56]],[[ 9, 46, 49],[13, 38, 67]],[[ 2, 34, 71],[17, 42, 53]],[[19, 40, 62],[22, 32, 71]]],[[[13, 39, 54],[23, 30, 52]],[[ 5, 46, 55],[15, 26, 48]],[[10, 41, 69],[ 8, 33, 63]],[[ 6, 37, 58],[12, 28, 63]]],[[[20, 45, 57],[ 3, 31, 56]],[[ 3, 46, 69],[13, 37, 71]],[[15, 36, 68],[ 3, 27, 62]],[[22, 41, 71],[22, 45, 56]]]]) new_tensor7.shape: torch.Size([3, 4, 2, 3])

Python 基础torch.stack(tensors: Union[Tuple[Tensor, ...], List[Tensor]], dim: _int=0, *, out: Option)相关推荐

  1. 『Python基础-9』元祖 (tuple)

    『Python基础-9』元祖 (tuple) 目录: 元祖的基本概念 创建元祖 将列表转化为元组 查询元组 更新元组 删除元组 1. 元祖的基本概念 元祖可以理解为,不可变的列表 元祖使用小括号括起所 ...

  2. Python基础教程:list和tuple

    list 与 tuple 就类似于C语言中的数组,list 与 tuple 的区别就是list 可修改,而tuple不可修改: list用法示例: >>> s=[] >> ...

  3. Python基础笔记(二) List、tuple、循环语句

    一.List Python内置的一种数据类型是列表:list. list是一种有序的集合,可以随时添加和删除其中的元素.list是数学意义上的有序集合,也就是说,list中的元素是按照顺序排列的.构造 ...

  4. python基础复习(30)--string[start:end:step] start默认0 end默认列尾 step默认1

    #字符串操作 string[start:end:step] start默认0 end默认列尾 step默认1 s="abcdefghijk" print("s---&qu ...

  5. torch.cat 和 torch.stack

    torch.cat 和 torch.stack看起来相似但是性质还是不同的 使用python中的list列表收录tensor时,然后将list列表转化成tensor时,会报错.这个时候就要使用torc ...

  6. pytorch学习——torch.cat和torch.stack的区别

    合并tensors torch.cat 沿着特定维数连接一系列张量. torch.stack 沿新维度连接一系列张量. torch.cat 在给定维度中连接给定的 seq 个张量序列. 所有张量必须具 ...

  7. torch.stack作用分析

    torch.stack作用分析 语法 torch.stack(tensors, dim=0, *, out=None) --> Tensor 作用 Concatenates a sequence ...

  8. pytorch torch.stack

    概念 import torch a = torch.IntTensor([[1,2],[11,22]]) b = torch.IntTensor([[3,4],[33,44]])c = torch.s ...

  9. 刻意练习:Python基础 -- Task09. else 与 with 语句

    背景 我们准备利用17天时间,将 "Python基础的刻意练习" 分为如下任务: Task01:变量.运算符与数据类型(1day) Task02:条件与循环(1day) Task0 ...

最新文章

  1. C语言在建筑专业的应用,新工科背景下基于OBE的《C语言程序设计》课程建设
  2. httpd tomcat mysql_Linux系统环境下Tomcat8、httpd、mysql8开机自启动配置
  3. 【转】Azure DevOps —— Azure Board 之 长篇故事、特性、用户情景(故事)的用法应用场景
  4. win7系统5分钟自动注销的解决方法
  5. 春眠不觉晓,Kubernetes知多少
  6. Google 公开被利用了两年的 iOS 漏洞;微博新推社交产品“绿洲”;微软全新终端 v0.4 发布 | 极客头条...
  7. 100%在CSS中是什么意思?
  8. freemark 应用以及优势
  9. 为什么不算法?常用算法概要大纲!
  10. image target behaviour 和image target的关系_图片分析软件Image-Pro Plus的基础操作
  11. java使用itext合并pdf文件
  12. 《一个人的朝圣》读后感
  13. Vertica 常用命令
  14. 上海跃兔网络科技有限公司简介
  15. java 复制excel_Java 复制excel批注
  16. layui导出Excel表格自定义文件名称
  17. MACBOOK强制退出程序的方法
  18. 会声会影试用版到期了怎么办_会声会影2018试用版如何正确安装、卸载?
  19. 【养生警惕:八种食物坚决不能隔夜吃】
  20. Python创建txt文件并读取与写入

热门文章

  1. 计算机配置主板技术参数,怎么看电脑的配置?教你4个方法查看新电脑pc配置硬件参数...
  2. 辰工石油勘探绘图平台软件
  3. 智慧城市建设快速发展 难题颇多亟待解决
  4. Windows下命令行安装Pytorch(GPU)
  5. 北斗卫星同步时钟在分布式系统时钟同步的重要性
  6. windows黑窗口启动jar包常用命令
  7. vue-quill-editor富文本编辑器保存标签乱码
  8. 数学实验3:插值与拟合
  9. 嵌入式计算机图形学入门书籍,蹭课:嵌入式系统设计计算机图形学
  10. linux resin 内存溢出,Resin服务器内存修改