AvgPool2d函数

AvgPool2d函数

说明

AvgPool2d函数 平均池化

示例

导入三方库

import torch
import torch.nn as nn
import numpy as np

设置测试数

a = torch.tensor([[[1., 2., 3.],[4., 5., 6.],[4., 5., 6.]],[[3., 4., 5.],[6., 5., 4.],[3., 2., 1.]]])
print(a.shape)
a

结果

torch.Size([2, 3, 3])
tensor([[[1., 2., 3.],
         [4., 5., 6.],
         [4., 5., 6.]],

        [[3., 4., 5.],
         [6., 5., 4.],
         [3., 2., 1.]]])
import torch.nn.functional as F
F.avg_pool2d(a,kernel_size=(1,2))

结果

tensor([[[1.5000],    =1.+2./2
         [4.5000],    = (4.+5.)/2
         [4.5000]],   = (4.+5.)/2

        [[3.5000],
         [5.5000],
         [2.5000]]])

计算过程:kernel_size=(1,2)是取1x2矩阵,矩阵之外的舍弃
在这里插入图片描述

F.avg_pool2d(a,kernel_size=2)

在这里插入图片描述
结果:
3.0=(1.+2.+4.+5.)/4
4.5= (3.+4.+6.+5.)/4
在这里插入图片描述

F.avg_pool2d(a,kernel_size=2,stride=1)

结果:
在这里插入图片描述
计算过程:
在这里插入图片描述

  • 7
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: adaptiveavgpool2davgpool2d都是PyTorch中的池化层,用于降低输入张量的空间维度。 其中,avgpool2d是普通的平均池化层,它将输入张量的每个通道按照指定的池化窗口大小进行平均池化,输出池化后的张量。 而adaptiveavgpool2d则是自适应平均池化层,它不需要指定池化窗口大小,而是根据输出张量的大小自动计算池化窗口大小,从而适应不同大小的输入张量。 ### 回答2: adaptiveavgpool2davgpool2d都是在深度学习中常用的池化操作。 avgpool2d是常规的平均池化操作,它将输入的特征图划分为固定大小的区块,然后计算每个区块的平均值作为输出。它的主要作用是减少特征图的尺寸,从而降低计算量和参数量,同时保留输入特征图的一些相对重要的特征。 adaptiveavgpool2d是自适应平均池化操作,它提供了更加灵活的池化方式。与avgpool2d不同的是,adaptiveavgpool2d可以根据输入的特征图的尺寸自动确定输出特征图的尺寸。这样就不需要固定的池化区块大小,可以适应输入特征图的任意大小。它的主要作用是在特征图尺寸不一致的情况下,将输入的特征图缩放为指定的输出尺寸,同时保留输入特征图的整体形状和结构。 总的来说,avgpool2d是常规的固定区块大小的平均池化操作,而adaptiveavgpool2d是根据输入特征图自适应确定区块大小的池化操作。两者的主要区别在于池化区块的确定方式不同,adaptiveavgpool2d更加灵活,能够适应不同尺寸的输入特征图。 ### 回答3: adaptiveavgpool2davgpool2d都是PyTorch中常用的池化操作函数。 adaptiveavgpool2d函数是自适应平均池化函数,可以根据输入的特征图的大小自动计算输出的特征图的大小。它通过设定输出的特征图的大小来实现自适应性,而不是像普通的池化函数一样通过设定池化窗口的大小。这意味着在不同大小的特征图上运行时,adaptiveavgpool2d的输出大小会自动适应。它将特征图分割成各个小区域并在每个小区域上求平均值,得到输出的特征图。 avgpool2d函数是普通的平均池化函数,通过设置池化窗口的大小来实现对特征图的下采样。它将特征图划分成不相交的窗口,并在每个窗口上计算平均值,然后将结果放入输出特征图的对应位置。avgpool2d将每个池化窗口内的特征值求平均后作为该窗口的输出值。 两个函数的不同之处在于自适应平均池化函数能够自动适应输入特征图的大小,而普通的平均池化函数需要手动指定池化窗口的大小。一般来说,如果需要池化后的特征图大小与输入特征图大小相同,可以使用adaptiveavgpool2d函数。如果需要手动控制池化窗口的大小(如指定输出特征图的大小或者更精确地控制下采样程度),则可以使用avgpool2d函数
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

龙庭花雨落

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值