接口功能:实现Unfold算子的反向功能,计算相应的梯度。
Unfold算子根据入参self,计算出维度的所有大小为的切片。两个切片之间的步长由给出。如果是入参self的维度的大小,则返回的张量中维度的大小将为。返回的张量中附加了一个大小为的附加维度。
UnfoldGrad算子入参gradOut的shape为Unfold正向输出的shape,入参inputSizes为Unfold正向输入self的shape,UnfoldGrad算子出参gradIn的shape为Unfold正向入参self的shape。
示例:
[object Object]
每个算子分为,必须先调用“aclnnUnfoldGradGetWorkspaceSize”接口获取计算所需workspace大小以及包含了算子计算流程的执行器,再调用“aclnnUnfoldGrad”接口执行计算。
[object Object]
[object Object]
参数说明:
[object Object]
[object Object]返回值:
第一段接口完成入参校验,出现以下场景时报错: [object Object]
[object Object]
- 确定性计算:
- aclnnUnfoldGrad默认确定性实现。
- gradOut的shape满足约束:
- gradOut的第dim维等于(inputSizes[dim]-size)/step+1。
- gradOut的size等于inputSizes的size+1。
- dim、size、step的要求:
- size大于0且size小于等于inputSizes的第dim维。
- step大于0。
- dim等于len(inputSizes)-1或者dim等于len(inputSizes)-2轴。
- dim等于len(inputSizes)-1时,fp32数据类型,step、size大于49088。fp16数据类型,step、size大于32720。
- dim等于len(inputSizes)-2时,fp32数据类型,step、size大于88。fp16数据类型,step、size大于72。
[object Object]