昇腾社区首页
中文
注册
开发者
下载

aclnnMaxPool2dWithMask

产品支持情况

[object Object]undefined

功能说明

  • 接口功能: 对于输入信号的输入通道,提供2维最大池化(max pooling)操作,输出池化后的值out和索引indices(采用mask语义计算得出)。

  • 计算公式:

    • output tensor中每个元素的计算公式:

      out(Nj,Cj,h,w)=maxm[0,kH1],n[0,kW1]input(Ni,Cj,stride[0]×h+m,stride[1]×w+n)out(N_j, C_j, h, w) = \max\limits_{{m\in[0,k_{H}-1],n\in[0,k_{W}-1]}}input(N_i,C_j,stride[0]\times h + m, stride[1]\times w + n)
    • out tensor的shape推导公式:

      [N,C,Hout,Wout]=[N,C,Hin+2×padding[0]dilation[0]×(kernelSize[0]1)1stride[0]+1,Win+2×padding[1]dilation[1]×(kernelSize[1]1)1stride[1]+1][N, C, H_{out}, W_{out}]=[N,C,\lfloor{\frac{H_{in}+2 \times {padding[0] - dilation[0] \times(kernelSize[0] - 1) - 1}}{stride[0]}}\rfloor + 1,\lfloor{\frac{W_{in}+2 \times {padding[1] - dilation[1] \times(kernelSize[1] - 1) - 1}}{stride[1]}}\rfloor + 1]
    • indices tensor的shape推导公式:

      [N,C,Hindices,Windices]=[N,C,kh×kw,(Hout×Wout16+1)×2×16][N, C, H_{indices}, W_{indices}]=[N,C,k_h \times k_w, (\lceil{\frac{H_{out} \times W_{out}}{16}}\rceil+1) \times 2 \times 16]

函数原型

每个算子分为,必须先调用“aclnnMaxPool2dWithMaskGetWorkspaceSize”接口获取计算所需workspace大小以及包含了算子计算流程的执行器,再调用“aclnnMaxPool2dWithMask”接口执行计算。

[object Object]
[object Object]

aclnnMaxPool2dWithMaskGetWorkspaceSize

  • 参数说明:

    [object Object]
  • [object Object]Atlas 推理系列产品[object Object]:数据类型支持FLOAT。

  • [object Object]Atlas 训练系列产品[object Object]:不支持BFLOAT16数据类型。

  • 返回值:

    aclnnStatus: 返回状态码,具体参见

    第一段接口完成入参校验,出现以下场景时报错:

    [object Object]

aclnnMaxPool2dWithMask

  • 参数说明:

    [object Object]
  • 返回值:

    aclnnStatus:返回状态码,具体参见

约束说明

  • 确定性计算:

    • aclnnMaxPool2dWithMask默认确定性实现。
  • 输入数据暂不支持NaN、-Inf。

  • [object Object]Atlas 训练系列产品[object Object]:当输入数据是FLOAT类型时,会转换为FLOAT16类型进行计算,存在一定程度的精度损失。

  • [object Object]Atlas 推理系列产品[object Object]:当ceilMode=True时,暂不支持如下stride场景:

sh>=(Hin+padding_size)/(Hout1)s_h >= (H_{in} + padding\_size) / (H_{out} - 1)

sw>=(Win+padding_size)/(Wout1)s_w >= (W_{in} + padding\_size) / (W_{out} - 1)

调用示例

示例代码如下,仅供参考,具体编译和执行过程请参考

[object Object]