用法:
mxnet.ndarray.Convolution(data=None, weight=None, bias=None, kernel=_Null, stride=_Null, dilate=_Null, pad=_Null, num_filter=_Null, num_group=_Null, workspace=_Null, no_bias=_Null, cudnn_tune=_Null, cudnn_off=_Null, layout=_Null, out=None, name=None, **kwargs)
- data:(
NDArray
) - 将数据输入到 ConvolutionOp。 - weight:(
NDArray
) - 权重矩阵。 - bias:(
NDArray
) - 偏置参数。 - kernel:(
Shape
(
tuple
)
,
required
) - 卷积核大小:(w,), (h, w) 或 (d, h, w) - stride:(
Shape
(
tuple
)
,
optional
,
default=
[
]
) - 卷积步幅:(w,)、(h, w) 或 (d, h, w)。每个维度默认为 1。 - dilate:(
Shape
(
tuple
)
,
optional
,
default=
[
]
) - 卷积膨胀:(w,)、(h, w) 或 (d, h, w)。每个维度默认为 1。 - pad:(
Shape
(
tuple
)
,
optional
,
default=
[
]
) - 卷积的零填充:(w,)、(h, w) 或 (d, h, w)。默认为无填充。 - num_filter:(
int
(
non-negative
)
,
required
) - 卷积滤波器(通道)编号 - num_group:(
int
(
non-negative
)
,
optional
,
default=1
) - 组分区数。 - workspace:(
long
(
non-negative
)
,
optional
,
default=1024
) - 卷积中允许的最大临时工作空间 (MB)。此参数有两种用法。当不使用 CUDNN 时,它决定了卷积核的有效批大小。当使用 CUDNN 时,它控制用于调整最佳 CUDNN 内核的最大临时存储空间limited_workspace
使用策略。 - no_bias:(
boolean
,
optional
,
default=0
) - 是否禁用偏差参数。 - cudnn_tune:(
{None
,
'fastest'
,
'limited_workspace'
,
'off'}
,
optional
,
default='None'
) - 是否通过运行性能测试来选择卷积算法。 - cudnn_off:(
boolean
,
optional
,
default=0
) - 关闭此层的 cudnn。 - layout:(
{None
,
'NCDHW'
,
'NCHW'
,
'NCW'
,
'NDHWC'
,
'NHWC'}
,
optional
,
default='None'
) - 设置输入、输出和权重的布局。默认布局为空:NCW 表示 1d,NCHW 表示 2d,NCDHW 表示 3d。NHWC 和 NDHWC 仅在 GPU 上支持。 - out:(
NDArray
,
optional
) - 输出 NDArray 来保存结果。
- data:(
out:- 此函数的输出。
NDArray 或 NDArray 列表
参数:
返回:
返回类型:
在
(N+2)
-D 输入上计算N
-D 卷积。在二维卷积中,给定形状为
(batch_size, channel, height, width)
的输入数据,输出由下式计算其中 是二维互相关算子。
对于一般的二维卷积,形状是
- data:
(batch_size, channel, height, width)
- weight:
(num_filter, channel, kernel[0], kernel[1])
- bias:
(num_filter,)
- out:
(batch_size, num_filter, out_height, out_width)
.
定义:
f(x,k,p,s,d) = floor((x+2*p-d*(k-1)-1)/s)+1
那么我们有:
out_height=f(height, kernel[0], pad[0], stride[0], dilate[0]) out_width=f(width, kernel[1], pad[1], stride[1], dilate[1])
如果
no_bias
设置为 true,则忽略bias
项。默认数据
layout
为NCHW
,即(batch_size, channel, height, width)
。我们可以选择其他布局,例如NWC
。如果
num_group
大于 1,用g
表示,则将输入data
沿通道轴均匀拆分为g
部分,并沿第一维均匀拆分weight
。接下来计算i
-th 数据部分与i
-th 权重部分的卷积。通过连接所有g
结果获得输出。一维卷积没有
height
维度,但在空间中只有width
。- data:
(batch_size, channel, width)
- weight:
(num_filter, channel, kernel[0])
- bias:
(num_filter,)
- out:
(batch_size, num_filter, out_width)
.
除了
height
和width
之外,3-D 卷积还增加了一个额外的depth
维度。形状是- data:
(batch_size, channel, depth, height, width)
- weight:
(num_filter, channel, kernel[0], kernel[1], kernel[2])
- bias:
(num_filter,)
- out:
(batch_size, num_filter, out_depth, out_height, out_width)
.
weight
和bias
都是可学习的参数。还有其他选项可以调整性能。
- cudnn_tune:启用此选项会导致更长的启动时间,但可能会提供更快的速度。选项是
- off: 没有调
- limited_workspace:运行测试并选择不超过工作空间限制的最快算法。
- fastest:选择最快的算法并忽略工作空间限制。
- None(默认):行为由环境变量决定
MXNET_CUDNN_AUTOTUNE_DEFAULT
. 0 表示关闭,1 表示有限工作空间(默认),2 表示最快。
- workspace:大量会导致更多(GPU)内存使用,但可能会提高性能。
相关用法
- Python mxnet.ndarray.Concat用法及代码示例
- Python mxnet.ndarray.Cast用法及代码示例
- Python mxnet.ndarray.Custom用法及代码示例
- Python mxnet.ndarray.op.uniform用法及代码示例
- Python mxnet.ndarray.op.sample_negative_binomial用法及代码示例
- Python mxnet.ndarray.NDArray.ndim用法及代码示例
- Python mxnet.ndarray.op.khatri_rao用法及代码示例
- Python mxnet.ndarray.op.unravel_index用法及代码示例
- Python mxnet.ndarray.contrib.group_adagrad_update用法及代码示例
- Python mxnet.ndarray.op.slice_like用法及代码示例
- Python mxnet.ndarray.sparse.trunc用法及代码示例
- Python mxnet.ndarray.op.L2Normalization用法及代码示例
- Python mxnet.ndarray.op.softmax_cross_entropy用法及代码示例
- Python mxnet.ndarray.where用法及代码示例
- Python mxnet.ndarray.NDArray.reshape用法及代码示例
- Python mxnet.ndarray.op.round用法及代码示例
- Python mxnet.ndarray.SliceChannel用法及代码示例
- Python mxnet.ndarray.eye用法及代码示例
- Python mxnet.ndarray.sample_multinomial用法及代码示例
- Python mxnet.ndarray.op.diag用法及代码示例
- Python mxnet.ndarray.ones_like用法及代码示例
- Python mxnet.ndarray.linalg_gemm用法及代码示例
- Python mxnet.ndarray.stop_gradient用法及代码示例
- Python mxnet.ndarray.op.linalg_det用法及代码示例
- Python mxnet.ndarray.argmin用法及代码示例
注:本文由纯净天空筛选整理自apache.org大神的英文原创作品 mxnet.ndarray.Convolution。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。