我是靠谱客的博主 怕孤单舞蹈,最近开发中收集的这篇文章主要介绍torch.cat与torch.stack的区别torch.cat()的用法torch.stack()的用法:区别:,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

torch.cat()的用法

torch.cat用于矢量的拼接,例如:

# torch.cat用法:
import torch
A = torch.ones(2,3)
print(A)
B = torch.ones(2,3)
print(B)
C = torch.cat((A,B),0) # 按行拼接
print(C)
D = torch.cat((A,B),1) # 按列拼接
print(D)
------------输出----------------------
tensor([[1., 1., 1.],
        [1., 1., 1.]])
tensor([[1., 1., 1.],
        [1., 1., 1.]])
tensor([[1., 1., 1.],
        [1., 1., 1.],
        [1., 1., 1.],
        [1., 1., 1.]])
tensor([[1., 1., 1., 1., 1., 1.],
        [1., 1., 1., 1., 1., 1.]])

torch.stack()的用法:

torch.stack() 中dim的含义:它指定stack之后结果位于哪个维度。举例:

# torch.stack()用法:
A = torch.IntTensor([[1,2,3],[11,22,33]])
B = torch.IntTensor([[4,5,6],[44,55,66]])
C = torch.stack([A,B],dim=0)
D = torch.stack([A,B],dim=1)
E = torch.stack([A,B],dim=2)
print('nA:',A ,'nB:',B,'nC:',C,'nD:',D,'nE:',E)
-------------结果-------------------
A: tensor([[ 1,  2,  3],
        [11, 22, 33]], dtype=torch.int32) 
        # size:2*3
B: tensor([[ 4,  5,  6],
        [44, 55, 66]], dtype=torch.int32) 
        # size:2*3
C: tensor([[[ 1,  2,  3],
         [11, 22, 33]],
        [[ 4,  5,  6],
         [44, 55, 66]]], dtype=torch.int32) 
        # size: 2*2*3
D: tensor([[[ 1,  2,  3],
         [ 4,  5,  6]],
        [[11, 22, 33],
         [44, 55, 66]]], dtype=torch.int32) 
        # size: 2*2*3
E: tensor([[[ 1,  4],
         [ 2,  5],
         [ 3,  6]],
        [[11, 44],
         [22, 55],
         [33, 66]]], dtype=torch.int32)
        # size: 2*3*2

区别:

这两者的区别在于torch.cat沿着给定的维度拼接,而torch.stack会新增一维。

最后

以上就是怕孤单舞蹈为你收集整理的torch.cat与torch.stack的区别torch.cat()的用法torch.stack()的用法:区别:的全部内容,希望文章能够帮你解决torch.cat与torch.stack的区别torch.cat()的用法torch.stack()的用法:区别:所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(61)

评论列表共有 0 条评论

立即
投稿
返回
顶部