文件最后提交记录最后更新时间
20 天前
3 天前
4 天前
2 天前
3 天前
7 个月前
26 天前
README

Conv3DBackpropInputV2

产品支持情况

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

功能说明

  • 算子功能:计算三维卷积正向的输入张量xx对损失函数LL的梯度 ∂L∂x\frac{\partial L}{\partial x}

  • 计算公式:

    ∂L∂xn,cin,d,i,j=∑cout=1Cout∑r=1kD∑p=1kH∑q=1kW∂L∂yn,cout,d−r,i−p,j−q⋅wcout,cin,r,p,q \frac{\partial L}{\partial x_{n, c_{in}, d, i, j}} = \sum_{c_{out}=1}^{C_{out}} \sum_{r=1}^{k_D} \sum_{p=1}^{k_H} \sum_{q=1}^{k_W} \frac{\partial L}{\partial y_{n, c_{out}, d-r, i-p, j-q}}\cdot w_{c_{out}, c_{in}, r, p, q}

参数说明

参数名
输入/输出/属性
描述
数据类型
数据格式
input_size 输入
  • 一维张量,给出待求梯度特征图的5D形状。
  • 张量中整数的顺序由特征图格式决定,整数表示特征图各维度的长度。
INT32、INT64 -
filter 输入
  • 5D卷积核张量wcout,cin,r,p,qw_{c_{out}, c_{in}, r, p, q}
  • coutc_{out}相当于'filter'的N维度。
  • kHk_HkWk_WkDk_D相当于'filter'的H维度、W维度和D维度。
FLOAT16、BFLOAT16、FLOAT32 NCDHW、NDHWC、DHWCN
out_backprop 输入
  • 5D输出梯度张量,等同于公式中的∂L∂yn,cout,d−r,i−p,j−q\frac{\partial L}{\partial y_{n, c_{out}, d-r, i-p, j-q}}
  • 数据格式与'y'一致。
FLOAT16、FLOAT32、BFLOAT16 NDHWC、NCDHW
strides 必填属性
  • 一个包含5个整数的元组或列表,用于指定滑动窗口在特征图每个维度上的步长。
  • 轴顺序与特征图格式一致。
- -
pads 必填属性
  • 一个包含6个整数的元组或列表,用于指定特征图在各个方向上的填充量。
  • 仅沿深度(D)、高度(H)和宽度(W)维度进行填充。
  • 通过为各方向设置合适的填充值,可实现“SAME”和“VALID”两种填充模式。
- -
dilations 可选属性
  • 一个包含5个整数的元组或列表,表示特征图各维度的膨胀(空洞)因子。
  • 默认值为[1,1,1,1,1]。
  • 轴顺序与特征图格式一致。
- -
groups 可选属性
  • 整数,范围为[1,65535],默认1。
  • 表示从cinc_{in}coutc_{out}的分组连接数。
  • cinc_{in}coutc_{out}必须能被'groups'整除。
  • 不同'groups'与dtype的组合支持见下方表格说明。
INT -
data_format 可选属性
  • 字符串,取值必须为["NDHWC","NCDHW"]之一,默认"NDHWC"。对应关系为:batch(N)、depth(D)、height(H)、width(W)、channels(C)。
  • 指定'out_backprop'与'y'的数据排布格式。
STRING -
y 输出
  • 与'out_backprop'同格式的5D张量,即公式中的∂L∂xn,cin,d,i,j\frac{\partial L}{\partial x_{n, c_{in}, d, i, j}}
FLOAT16、BFLOAT16、FLOAT32 NDHWC、NCDHW
  • 特征图:正向卷积中的输入特征图'x'

  • Ascend 950PR/Ascend 950DT处理器:当'out_backprop'和'y'数据格式为NDHWC,暂不支持groups>1。

  • 不同groups取值与dtype的组合说明

    groups dtype out_backprop format filter format y format
    =1 HIFLOAT8/FLOAT8_E4M3FN NCDHW NCDHW NCDHW
    =1 HIFLOAT8/FLOAT8_E4M3FN NDHWC NCDHW NDHWC
    =1 FLOAT16/BFLOAT16/FLOAT32 NCDHW NCDHW NCDHW
    =1 FLOAT16/BFLOAT16/FLOAT32 NCDHW NDHWC NCDHW
    =1 FLOAT16/BFLOAT16/FLOAT32 NCDHW DHWCN NCDHW
    =1 FLOAT16/BFLOAT16/FLOAT32 NDHWC NDHWC NDHWC
    =1 FLOAT16/BFLOAT16/FLOAT32 NDHWC NCDHW NDHWC
    =1 FLOAT16/BFLOAT16/FLOAT32 NDHWC DHWCN NDHWC
    >1 HIFLOAT8/FLOAT8_E4M3FN NCDHW NCDHW NCDHW
    >1 FLOAT16/BFLOAT16/FLOAT32 NCDHW NCDHW NCDHW
    >1 FLOAT16/BFLOAT16/FLOAT32 NCDHW NDHWC NCDHW
    >1 FLOAT16/BFLOAT16/FLOAT32 NCDHW DHWCN NCDHW

约束说明

  • input_size
    • 可输入的轴序列如下:
      • [batch, in_depth, in_height, in_width, in_channels]
      • [batch, in_channels, in_depth, in_height, in_width]
  • out_backprop
    • N、C、D、H和W维度的取值范围必须在 [1,2147483647] 之间。
  • filter
    • N(out_channels)、C(in_channels)和D维度的取值范围必须在 [1,2147483647] 之间。
    • H、W维度的取值范围必须在 [1,511] 之间。
  • strides
    • N和C的维度必须为1。
    • Ascend 950PR/Ascend 950DT:D、H和W维度的取值范围必须在 [1,2147483647] 之间。
    • Atlas A2 训练系列产品/Atlas A2 推理系列产品、Atlas A3 训练系列产品/Atlas A3 推理系列产品:H和W的维度的取值范围必须在 [1,63] 之间,D维度的取值范围必须在 [1,255] 之间。
  • pads
    • 填充顺序为:[front, back, top, bottom, left, right]。
    • Ascend 950PR/Ascend 950DT:D、H和W维度的取值范围必须在 [0,2147483647] 之间。
    • Atlas A2 训练系列产品/Atlas A2 推理系列产品、Atlas A3 训练系列产品/Atlas A3 推理系列产品:D、H和W维度的取值范围必须在 [0,255] 之间。
  • dilations
    • N与C的维度必须为1。
    • Ascend 950PR/Ascend 950DT:D、H和W维度的取值范围必须在 [1,2147483647] 之间。
    • Atlas A2 训练系列产品/Atlas A2 推理系列产品、Atlas A3 训练系列产品/Atlas A3 推理系列产品:H、W和D维度的取值范围必须在 [1,255] 之间。
  • 由于硬件资源限制,算子在部分参数取值组合场景下会执行失败,请根据日志信息提示分析并排查问题。若无法解决,请单击 Link获取技术支持。

调用说明

调用方式 样例代码 说明
aclnn接口 test_aclnn_conv3d_backprop_input_v2 通过aclnnConvolutionBackward接口方式调用Conv3DBackpropInputV2算子