文件最后提交记录最后更新时间
2 个月前
4 个月前
1 个月前
4 个月前
4 个月前
1 个月前
1 个月前
README

AvgPoolV2

产品支持情况

产品 是否支持
Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
Atlas 200I/500 A2 推理产品 ×
Atlas 推理系列产品
Atlas 训练系列产品

功能说明

  • 接口功能:对输入Tensor进行窗口为kH∗kWkH * kW、步长为sH∗sWsH * sW的二维平均池化操作,其中kk为kernelSize,表示池化窗口的大小,ss为stride,表示池化操作的步长。

  • 计算公式: 输入input(N,C,H,WN,C,H,W)、输出out(N,C,Hout,WoutN,C,H_{out},W_{out})和池化步长(stridesstrides)、池化窗口大小(kH,kWkH,kW)的关系是

    Hout=⌊Hin+2∗paddings[0]−kHstrides[0]+1⌋H_{out}=\lfloor \frac{H_{in}+2*paddings[0]-kH}{strides[0]}+1 \rfloor

    Wout=⌊Win+2∗paddings[1]−kWstrides[1]+1⌋W_{out}=\lfloor \frac{W_{in}+2*paddings[1]-kW}{strides[1]}+1 \rfloor

    out(Ni,Ci,h,w)=1kH∗kW∑m=0kH−1∑n=0kW−1input(Ni,Ci,strides[0]∗h+m,strides[1]∗w+n)out(N_i,C_i,h,w)=\frac{1}{kH*kW}\sum_{m=0}^{kH-1}\sum_{n=0}^{kW-1}input(N_i,C_i,strides[0]*h+m,strides[1]*w+n)

参数说明

参数名 输入/输出/属性 描述 数据类型 数据格式
x 输入 输入tensor,公式中的input FLOAT、FLOAT16、BFLOAT16 ND
y 输出 输出tensor,公式中的output FLOAT、FLOAT16、BFLOAT16 ND
ksize 属性 表示池化窗口大小,公式中的`kernelSize`。 INT64 -
strides 属性 表示池化操作的步长,公式中的`stride`。 INT64 -
padding_mode 可选属性 指定padding算法,可选值为:"VALID", "SAME" and "CALCULATED" STRING -
pads 可选属性 表示在输入的D、H方向上pads补0的层数,公式中的`padding`。 INT64 -
data_format 可选属性 表示输入的数据格式,(如NCHW/NHWC),默认为NCHW STRING -
global_pooling 可选属性 是否使用global_pooling,默认为false BOOL -
ceil_mode 可选属性 推导的输出out的shape是否向上取整。 BOOL -
exclusive 可选属性 是否去除padding points,默认为true BOOL -
divisor_override 可选属性 取平均的除数。 INT -

约束说明

无。

调用说明

调用方式 样例代码 说明
图模式接口 test_geir_avg_pool_v2 通过IR AvgPool构图方式调用AvgPoolV2算子。
aclnn接口 test_aclnn_avgpool2d.cpp 通过aclnnAvgPool2d接口方式调用AvgPoolV2算子。