当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python mxnet.ndarray.op.Dropout用法及代码示例


用法:

mxnet.ndarray.op.Dropout(data=None, p=_Null, mode=_Null, axes=_Null, cudnn_off=_Null, out=None, name=None, **kwargs)

参数

  • data(NDArray) - 将应用 dropout 的输入数组。
  • p(float, optional, default=0.5) - 在训练期间丢失的输入的一部分。
  • mode({'always', 'training'},optional, default='training') - 是仅在训练期间打开 dropout 还是同时打开进行推理。
  • axes(Shape(tuple), optional, default=[]) - 变分 dropout 内核的轴。
  • cudnn_off(boolean or None, optional, default=0) - 是否关闭 dropout 运算符中的 cudnn。如果指定了轴,则忽略此选项。
  • out(NDArray, optional) - 输出 NDArray 来保存结果。

返回

out- 此函数的输出。

返回类型

NDArray 或 NDArray 列表

对输入数组应用 dropout 操作。

  • 在训练期间,输入的每个元素都以概率 p 设置为零。整个数组由 重新缩放,以保持输入的预期总和不变。
  • 在测试期间,如果模式为‘training’,则此运算符不会更改输入。如果模式为‘always’,将应用与训练期间相同的计算。

例子:

random.seed(998)
input_array = array([[3., 0.5,  -0.5,  2., 7.],
                    [2., -0.4,   7.,  3., 0.2]])
a = symbol.Variable('a')
dropout = symbol.Dropout(a, p = 0.2)
executor = dropout.simple_bind(a = input_array.shape)

## If training
executor.forward(is_train = True, a = input_array)
executor.outputs
[[ 3.75   0.625 -0.     2.5    8.75 ]
 [ 2.5   -0.5    8.75   3.75   0.   ]]

## If testing
executor.forward(is_train = False, a = input_array)
executor.outputs
[[ 3.     0.5   -0.5    2.     7.   ]
 [ 2.    -0.4    7.     3.     0.2  ]]

相关用法


注:本文由纯净天空筛选整理自apache.org大神的英文原创作品 mxnet.ndarray.op.Dropout。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。