PyTorch中AdaptiveAvgPool函数总结
【摘要】 1维情况:
import torchimport torch.nn as nn # out_sizem = nn.AdaptiveAvgPool1d(5)input = torch.randn(1, 64, 3)output = m(input) print(output.size()) #torch.Size([1, 64, 5])
不管你输入是多少,平均池化到5维。 ...
1维情况:
-
import torch
-
import torch.nn as nn
-
-
# out_size
-
m = nn.AdaptiveAvgPool1d(5)
-
input = torch.randn(1, 64, 3)
-
output = m(input)
-
-
print(output.size())
-
-
#torch.Size([1, 64, 5])
不管你输入是多少,平均池化到5维。
2维(2d情况)
-
import torch
-
import torch.nn as nn
-
-
# out_size
-
m = nn.AdaptiveAvgPool2d((1,2))
-
input = torch.randn(1, 64, 8,3)
-
output = m(input)
-
-
print(output.size())
-
-
#torch.Size([1, 64, 1, 2])
不管你输入宽高是多少,平均池化到(1,2)
AdaptiveAvgPool2d(二元自适应均值汇聚层)里面涉及到了这几个概念:
- 二元(2d)
- 汇聚层(Pool)
- 均值(Avg)
- 自适应(Adaptive)
stride = floor ( (input_size / (output_size−1) )
kernel_size = input_size − (output_size−1) * stride
[开发技巧]·AdaptivePooling与Max/AvgPooling相互转换
作者:晓伟
链接:h
文章来源: blog.csdn.net,作者:网奇,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/jacke121/article/details/118303367
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)