Pytorch nn.functional.unfold()的简单理解与用法

pytorch中的torch.nn.Unfold和torch.nn.Fold_松果体的博客-CSDN博客_nn.unfold 

import torch
from torch.nn import functional as F

x =torch.arange(36).view(1,2,2,9).float()
print('x',x)
x = F.unfold(x, (2, 2))
print('x1',x)
print(x.size())
x tensor([[[[ 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.]]]])
x1 tensor([[[ 0.,  1.,  2.,  3.,  4.,  5.,  6.,  7.],
         [ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.],
         [ 9., 10., 11., 12., 13., 14., 15., 16.],
         [10., 11., 12., 13., 14., 15., 16., 17.],
         [18., 19., 20., 21., 22., 23., 24., 25.],
         [19., 20., 21., 22., 23., 24., 25., 26.],
         [27., 28., 29., 30., 31., 32., 33., 34.],
         [28., 29., 30., 31., 32., 33., 34., 35.]]])
torch.Size([1, 8, 8])

滑动窗口是2*2

然后滑动输入的范围是2*2,比如滑动第一个是

[0.,  1.,
  9., 10.]

输出是拉平变成

[0.,  
1.,
9.,
10.]

依次就变成以上的输出形式

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值