开发者
资源
[object Object][object Object][object Object]undefined
[object Object]
  • 接口功能:实现RoiPoolingWithArgMax的反向。遍历每个ROI的池化结果,将feature map坐标上的反向梯度贡献累加,即完成整张图上的反向计算。
  • 计算公式:Lxi=rj[i=i(r,j)]Lyrj\frac{\partial L}{\partial x_i} = \sum_{r}\sum_{j}[i = i^*(r,j)]\frac{\partial L}{\partial y_{rj}} 其中,[i=i(r,j)]={1,i(r,j)10,otherwise[i = i^*(r,j)] = \begin{cases} 1, & i^*(r,j) \geq 1 \\ 0, & otherwise \end{cases} 判决函数[object Object]表示i节点是否被候选区域r的第j个输出节点选为最大值输出
[object Object]

算子执行接口为,必须先调用“aclnnRoiPoolingGradWithArgMaxGetWorkspaceSize”接口获取入参并根据计算流程计算所需workspace大小,再调用“aclnnRoiPoolingGradWithArgMax”接口执行计算。

[object Object]
[object Object]
[object Object]
  • 参数说明

    [object Object]
  • 返回值

    返回aclnnStatus状态码,具体参见

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

    [object Object]
[object Object]
  • 参数说明​:

    [object Object]
  • 返回值​:

    返回aclnnStatus状态码,具体参见

[object Object]
  1. gradOutput、rois、argmax 、gradInputRef的数据类型在支持的范围之内。
  2. gradOutput、argmax与gradInputRef具有相同的数据类型
  3. gradOutput、argmax、gradInputRef的shape大小为4,rois的shape大小为2
  4. gradOutput、argmax、rois的shape[0]相等
  5. gradOutput、argmax的shape[1]相等
  6. gradOutput、argmax的shape[2]等于pooledH和shape[3]等于pooledW
  7. rois的值大于等于0
  8. pooledH、pooledW大于0。
  9. rois[:, 1] 小于 rois[:, 2] 且 rois[:, 3] 小于 rois[:, 4]
  10. rois.shape[0]、gradOutput.shape[0]小于等于1024
[object Object]

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

[object Object]