aclnnConvolution
产品支持情况
功能说明
接口功能:实现卷积功能,支持 1D 卷积、2D 卷积、3D 卷积,同时支持转置卷积、空洞卷积、分组卷积。 对于入参
[object Object]时,表示使用转置卷积或者分数步长卷积。它可以看作是普通卷积的梯度或者逆向操作,即从卷积的输出形状恢复到输入形状,同时保持与卷积相容的连接模式。它的参数和普通卷积类似,包括输入通道数、输出通道数、卷积核大小、步长、填充、输出填充、分组、偏置、扩张等。计算公式:
我们假定输入(input)的 shape 是 ,(weight) 的 shape 是 ,输出(output)的 shape 是 ,其中 表示批次大小(batch size), 是通道数,、 和 分别是样本的深度、高度和宽度,、 和 分别是卷积核的深度、高度和宽度,那输出将被表示为:
其中, 表示卷积计算,根据卷积输入的维度,卷积的类型(空洞卷积、分组卷积)而定。 代表批次大小(batch size), 代表通道数,、 和 分别代表深度、高度和宽度,相应输出维度的计算公式如下:
- 对于入参
[object Object]时:
- 对于入参
[object Object]时:
- 对于入参
函数原型
每个算子分为,必须先调用 aclnnConvolutionGetWorkspaceSize 接口获取计算所需 workspace 大小以及包含了算子计算流程的执行器,再调用 aclnnConvolution 接口执行计算。
[object Object]
[object Object]
aclnnConvolutionGetWorkspaceSize
aclnnConvolution
约束说明
确定性计算
- aclnnConvolution默认确定性实现。
调用示例
[object Object]