Pytroch 对矩阵形状的变化和拼接

主要用到view和cat两个函数,这里就简单地使用

1.torch.view()

主要是用来改变矩阵的形态,比如现在是一个[5,3]的矩阵,那我们就可以使用view函数将[5,3]的矩阵变成[3,5] , [1,15]或等等的形态

out = torch.tensor([[0.1],[0.2],[0.3]])
print(out.size())
out = out.view(-1, len(out))
print(out.size())
print(out) 



Print:
torch.Size([3, 1])
torch.Size([1, 3])
tensor([[0.1000, 0.2000, 0.3000]])       

view可以直接传入要变成的形态,几行几列,也可以只写行或者列,另一个用-1即可,会自动填充。

2.torch.cat()

用来拼接两个矩阵,比如行拼接或是列拼接。

x = torch.tensor([[1, 2], [3, 4], [5, 6]])
y = torch.tensor([[7, 8], [9, 10], [11, 12]])
horizontal_splicing_out = torch.cat((x, y), 1)  # 横向拼接
longitudinal_splicing_out = torch.cat((x, y), 0)  # 纵向拼接
print('horizontal_splicing_out', horizontal_splicing_out)
print('longitudinal_splicing_out', longitudinal_splicing_out)




Print:
horizontal_splicing_out tensor([[ 1,  2,  7,  8],
        [ 3,  4,  9, 10],
        [ 5,  6, 11, 12]])
longitudinal_splicing_out tensor([[ 1,  2],
        [ 3,  4],
        [ 5,  6],
        [ 7,  8],
        [ 9, 10],
        [11, 12]])

 如代码所示,第一个参数就是要拼接的两个矩阵,第二个参数,1就是横向拼接,0就是纵向拼接。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值