forked from mindspore-Ecosystem/mindspore
!38646 fix code formats in mindspore.nn for master part01
Merge pull request !38646 from lvmingfu/master
This commit is contained in:
commit
03b7c459b2
|
@ -11,10 +11,9 @@ mindspore.nn.Accuracy
|
|||
\text{accuracy} =\frac{\text{true_positive} + \text{true_negative}}
|
||||
{\text{true_positive} + \text{true_negative} + \text{false_positive} + \text{false_negative}}
|
||||
|
||||
**参数:**
|
||||
|
||||
- **eval_type** (str) - 评估的数据集的类型,支持'classification'和'multilabel'。'classification'为单标签分类场景,'multilabel'为多标签分类场景。
|
||||
默认值:'classification'。
|
||||
参数:
|
||||
- **eval_type** (str) - 评估的数据集的类型,支持'classification'和'multilabel'。'classification'为单标签分类场景,'multilabel'为多标签分类场景。
|
||||
默认值:'classification'。
|
||||
|
||||
.. py:method:: clear()
|
||||
|
||||
|
@ -24,29 +23,25 @@ mindspore.nn.Accuracy
|
|||
|
||||
计算正确率。
|
||||
|
||||
**返回:**
|
||||
返回:
|
||||
np.float64,计算的正确率结果。
|
||||
|
||||
np.float64,计算的正确率结果。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **RuntimeError** - 样本量为0。
|
||||
异常:
|
||||
- **RuntimeError** - 样本量为0。
|
||||
|
||||
.. py:method:: update(*inputs)
|
||||
|
||||
更新局部变量。计算预测值y_pred和标签y的匹配频率。
|
||||
对于'classification',如果预测的最大值的索引匹配真实的标签,预测正确;对于'multilabel',如果预测值与真实标签匹配,预测正确。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **inputs** - 预测值 `y_pred` 和真实标签 `y` , `y_pred` 和 `y` 支持Tensor、list或numpy.ndarray类型。
|
||||
|
||||
- **inputs** - 预测值 `y_pred` 和真实标签 `y` , `y_pred` 和 `y` 支持Tensor、list或numpy.ndarray类型。
|
||||
对于'classification'情况, `y_pred` 在大多数情况下由范围 :math:`[0, 1]` 中的浮点数组成,shape为 :math:`(N, C)` ,其中 :math:`N` 是样本数, :math:`C` 是类别数。
|
||||
`y` 由整数值组成,如果是one_hot编码格式,shape是 :math:`(N,C)` ;如果是类别索引,shape是 :math:`(N,)` 。
|
||||
|
||||
对于'classification'情况, `y_pred` 在大多数情况下由范围 :math:`[0, 1]` 中的浮点数组成,shape为 :math:`(N, C)` ,其中 :math:`N` 是样本数, :math:`C` 是类别数。
|
||||
`y` 由整数值组成,如果是one_hot编码格式,shape是 :math:`(N,C)` ;如果是类别索引,shape是 :math:`(N,)` 。
|
||||
对于'multilabel'情况, `y_pred` 和 `y` 只能是值为0或1的one-hot编码格式,其中值为1的索引表示正类别。 `y_pred` 和 `y` 的shape都是 :math:`(N,C)` 。
|
||||
|
||||
对于'multilabel'情况, `y_pred` 和 `y` 只能是值为0或1的one-hot编码格式,其中值为1的索引表示正类别。 `y_pred` 和 `y` 的shape都是 :math:`(N,C)` 。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - inputs的数量不等于2。
|
||||
- **ValueError** - 当前输入的 `y_pred` 和历史 `y_pred` 类别数不匹配。
|
||||
异常:
|
||||
- **ValueError** - inputs的数量不等于2。
|
||||
- **ValueError** - 当前输入的 `y_pred` 和历史 `y_pred` 类别数不匹配。
|
||||
|
|
|
@ -22,43 +22,39 @@ mindspore.nn.AdaMax
|
|||
|
||||
.. include:: mindspore.nn.optim_note_weight_decay.rst
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
- **learning_rate** (Union[float, Tensor, iterable, LearningRateSchedule]): 默认值:0.001。
|
||||
|
||||
- **learning_rate** (Union[float, Tensor, iterable, LearningRateSchedule]): 默认值:0.001。
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
- **beta1** (float) - 第一个动量矩阵的指数衰减率。参数范围(0.0,1.0)。默认值:0.9。
|
||||
- **beta2** (float) - 第二个动量矩阵的指数衰减率。参数范围(0.0,1.0)。默认值:0.999。
|
||||
- **eps** (float) - 加在分母上的值,以确保数值稳定。必须大于0。默认值:1e-8。
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
|
||||
- **beta1** (float) - 第一个动量矩阵的指数衰减率。参数范围(0.0,1.0)。默认值:0.9。
|
||||
- **beta2** (float) - 第二个动量矩阵的指数衰减率。参数范围(0.0,1.0)。默认值:0.999。
|
||||
- **eps** (float) - 加在分母上的值,以确保数值稳定。必须大于0。默认值:1e-8。
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
输入:
|
||||
- **gradients** (tuple[Tensor]) - `params` 的梯度,形状(shape)与 `params` 相同。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor[bool],值为True。
|
||||
|
||||
- **gradients** (tuple[Tensor]) - `params` 的梯度,形状(shape)与 `params` 相同。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor[bool],值为True。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、iterable或LearningRateSchedule。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或字典。
|
||||
- **TypeError** - `beta1` 、`beta2` 、 `eps` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **ValueError** - `loss_scale` 或 `eps` 小于或等于0。
|
||||
- **ValueError** - `beta1` 、`beta2` 不在(0.0,1.0)范围内。
|
||||
- **ValueError** - `weight_decay` 小于0。
|
||||
异常:
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、iterable或LearningRateSchedule。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或字典。
|
||||
- **TypeError** - `beta1` 、`beta2` 、 `eps` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **ValueError** - `loss_scale` 或 `eps` 小于或等于0。
|
||||
- **ValueError** - `beta1` 、`beta2` 不在(0.0,1.0)范围内。
|
||||
- **ValueError** - `weight_decay` 小于0。
|
||||
|
|
|
@ -21,17 +21,14 @@ mindspore.nn.AdaSumByDeltaWeightWrapCell
|
|||
本接口推荐应用于半自动并行或者全自动并行模式。针对数据并行模式,推荐使用mindspore.boost功能以使用AdaSum。
|
||||
使用本接口时,训练的卡的数量必须是2的幂,并且至少需要16张卡。目前,使用本接口时不支持优化器并行和流水线并行。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **optimizer** (nn.optimizer) - 必须是单输入的优化器。
|
||||
|
||||
- **optimizer** (nn.optimizer) - 必须是单输入的优化器。
|
||||
输入:
|
||||
- **grads** (tuple[Tensor]) - `params` 的梯度,形状(shape)与 `params` 相同,与所传优化器的输入一致。
|
||||
|
||||
**输入:**
|
||||
|
||||
- **grads** (tuple[Tensor]) - `params` 的梯度,形状(shape)与 `params` 相同,与所传优化器的输入一致。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **RuntimeError** - `parallel_mode` 使用了 `stand_alone` 模式, AdaSum仅支持在分布式场景下使用。
|
||||
- **RuntimeError** - 同时使用了优化器并行, 暂时不支持在优化器并行场景下使用AdaSum。
|
||||
- **RuntimeError** - 同时使用了流水线并行, 暂时不支持在流水线并行场景下使用AdaSum。
|
||||
- **RuntimeError** - `device_num` 不是2的幂,或者小于16。
|
||||
异常:
|
||||
- **RuntimeError** - `parallel_mode` 使用了 `stand_alone` 模式, AdaSum仅支持在分布式场景下使用。
|
||||
- **RuntimeError** - 同时使用了优化器并行, 暂时不支持在优化器并行场景下使用AdaSum。
|
||||
- **RuntimeError** - 同时使用了流水线并行, 暂时不支持在流水线并行场景下使用AdaSum。
|
||||
- **RuntimeError** - `device_num` 不是2的幂,或者小于16。
|
||||
|
|
|
@ -21,17 +21,14 @@ mindspore.nn.AdaSumByGradWrapCell
|
|||
本接口推荐应用于半自动并行或者全自动并行模式。针对数据并行模式,推荐使用mindspore.boost功能以使用AdaSum。
|
||||
使用本接口时,训练的卡的数量必须是2的幂,并且至少需要16张卡。目前,使用本接口时不支持优化器并行和流水线并行。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **optimizer** (nn.optimizer) - 必须是单输入的优化器。
|
||||
|
||||
- **optimizer** (nn.optimizer) - 必须是单输入的优化器。
|
||||
输入:
|
||||
- **grads** (tuple[Tensor]) - `params` 的梯度,形状(shape)与 `params` 相同,与所传优化器的输入一致。
|
||||
|
||||
**输入:**
|
||||
|
||||
- **grads** (tuple[Tensor]) - `params` 的梯度,形状(shape)与 `params` 相同,与所传优化器的输入一致。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **RuntimeError** - `parallel_mode` 使用了 `stand_alone` 模式, AdaSum仅支持在分布式场景下使用。
|
||||
- **RuntimeError** - 同时使用了优化器并行, 暂时不支持在优化器并行场景下使用AdaSum。
|
||||
- **RuntimeError** - 同时使用了流水线并行, 暂时不支持在流水线并行场景下使用AdaSum。
|
||||
- **RuntimeError** - `device_num` 不是2的幂,或者小于16。
|
||||
异常:
|
||||
- **RuntimeError** - `parallel_mode` 使用了 `stand_alone` 模式, AdaSum仅支持在分布式场景下使用。
|
||||
- **RuntimeError** - 同时使用了优化器并行, 暂时不支持在优化器并行场景下使用AdaSum。
|
||||
- **RuntimeError** - 同时使用了流水线并行, 暂时不支持在流水线并行场景下使用AdaSum。
|
||||
- **RuntimeError** - `device_num` 不是2的幂,或者小于16。
|
||||
|
|
|
@ -24,41 +24,37 @@ mindspore.nn.Adadelta
|
|||
.. note::
|
||||
.. include:: mindspore.nn.optim_note_weight_decay.rst
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]) - 默认值:1.0。
|
||||
|
||||
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]) - 默认值:1.0。
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
- **rho** (float) - 衰减率,应在 [0.0, 1.0] 范围内。默认值:0.9。
|
||||
- **epsilon** (float) - 分母添加项,非负数。默认值:1e-6。
|
||||
|
||||
- **rho** (float) - 衰减率,应在 [0.0, 1.0] 范围内。默认值:0.9。
|
||||
- **epsilon** (float) - 分母添加项,非负数。默认值:1e-6。
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
- **weight_decay** (Union[float, int]) - 权重衰减值,必须大于等于0.0。默认值:0.0。
|
||||
|
||||
- **weight_decay** (Union[float, int]) - 权重衰减值,必须大于等于0.0。默认值:0.0。
|
||||
输入:
|
||||
- **grads** (tuple[Tensor]) - 优化器中 `params` 的梯度,形状(shape)和数据类型与 `params` 相同。数据类型为float16或float32。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor[bool],值为True。
|
||||
|
||||
- **grads** (tuple[Tensor]) - 优化器中 `params` 的梯度,形状(shape)和数据类型与 `params` 相同。数据类型为float16或float32。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor[bool],值为True。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、Iterable或 `LearningRateSchedule` 。
|
||||
- **TypeError** - `parameters` 的元素是 `Parameter` 或字典。
|
||||
- **TypeError** - `rho` 、 `epsilon` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **ValueError** - `rho` 不在范围 [0.0, 1.0] 内。
|
||||
- **ValueError** - `loss_scale` 小于或等于0。
|
||||
- **ValueError** - `learning_rate` 、 `epsilon` 或 `weight_decay` 小于0。
|
||||
异常:
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、Iterable或 `LearningRateSchedule` 。
|
||||
- **TypeError** - `parameters` 的元素是 `Parameter` 或字典。
|
||||
- **TypeError** - `rho` 、 `epsilon` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **ValueError** - `rho` 不在范围 [0.0, 1.0] 内。
|
||||
- **ValueError** - `loss_scale` 小于或等于0。
|
||||
- **ValueError** - `learning_rate` 、 `epsilon` 或 `weight_decay` 小于0。
|
||||
|
|
|
@ -39,41 +39,37 @@ mindspore.nn.Adagrad
|
|||
.. note::
|
||||
.. include:: mindspore.nn.optim_note_weight_decay.rst
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
- **accum** (float) - 累加器 :math:`h` 的初始值,必须大于等于零。默认值:0.1。
|
||||
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]) - 默认值:0.001。
|
||||
|
||||
- **accum** (float) - 累加器 :math:`h` 的初始值,必须大于等于零。默认值:0.1。
|
||||
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]) - 默认值:0.001。
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
- **update_slots** (bool) - 如果为True,则更新累加器 :math:`h` 。默认值:True。
|
||||
|
||||
- **update_slots** (bool) - 如果为True,则更新累加器 :math:`h` 。默认值:True。
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
- **weight_decay** (Union[float, int]) - 要乘以权重的权重衰减值,必须大于等于0.0。默认值:0.0。
|
||||
|
||||
- **weight_decay** (Union[float, int]) - 要乘以权重的权重衰减值,必须大于等于0.0。默认值:0.0。
|
||||
输入:
|
||||
**grads** (tuple[Tensor]) - 优化器中 `params` 的梯度,形状(shape)与 `params` 相同。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor[bool],值为True。
|
||||
|
||||
**grads** (tuple[Tensor]) - 优化器中 `params` 的梯度,形状(shape)与 `params` 相同。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor[bool],值为True。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、Iterable或 `LearningRateSchedule` 。
|
||||
- **TypeError** - `parameters` 的元素是 `Parameter` 或字典。
|
||||
- **TypeError** - `accum` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `update_slots` 不是bool。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **ValueError** - `loss_scale` 小于或等于0。
|
||||
- **ValueError** - `accum` 或 `weight_decay` 小于0。
|
||||
异常:
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、Iterable或 `LearningRateSchedule` 。
|
||||
- **TypeError** - `parameters` 的元素是 `Parameter` 或字典。
|
||||
- **TypeError** - `accum` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `update_slots` 不是bool。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **ValueError** - `loss_scale` 小于或等于0。
|
||||
- **ValueError** - `accum` 或 `weight_decay` 小于0。
|
||||
|
|
|
@ -49,50 +49,46 @@ mindspore.nn.Adam
|
|||
|
||||
.. include:: mindspore.nn.optim_note_weight_decay.rst
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
- **learning_rate** (Union[float, Tensor, iterable, LearningRateSchedule]): 默认值:1e-3。
|
||||
|
||||
- **learning_rate** (Union[float, Tensor, iterable, LearningRateSchedule]): 默认值:1e-3。
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
- **beta1** (float) - 第一个动量矩阵的指数衰减率。参数范围(0.0,1.0)。默认值:0.9。
|
||||
- **beta2** (float) - 第二个动量矩阵的指数衰减率。参数范围(0.0,1.0)。默认值:0.999。
|
||||
- **eps** (float) - 加在分母上的值,以确保数值稳定。必须大于0。默认值:1e-8。
|
||||
- **use_locking** (bool) - 是否对参数更新加锁保护。如果为True,则 `w` 、`m` 和 `v` 的tensor更新将受到锁的保护。如果为False,则结果不可预测。默认值:False。
|
||||
- **use_nesterov** (bool) - 是否使用Nesterov Accelerated Gradient (NAG)算法更新梯度。如果为True,使用NAG更新梯度。如果为False,则在不使用NAG的情况下更新梯度。默认值:False。
|
||||
- **use_amsgrad** (bool) - 是否使用Amsgrad算法更新梯度。如果为True,使用Amsgrad更新梯度。如果为False,则在不使用Amsgrad的情况下更新梯度。默认值:False。
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
|
||||
- **beta1** (float) - 第一个动量矩阵的指数衰减率。参数范围(0.0,1.0)。默认值:0.9。
|
||||
- **beta2** (float) - 第二个动量矩阵的指数衰减率。参数范围(0.0,1.0)。默认值:0.999。
|
||||
- **eps** (float) - 加在分母上的值,以确保数值稳定。必须大于0。默认值:1e-8。
|
||||
- **use_locking** (bool) - 是否对参数更新加锁保护。如果为True,则 `w` 、`m` 和 `v` 的tensor更新将受到锁的保护。如果为False,则结果不可预测。默认值:False。
|
||||
- **use_nesterov** (bool) - 是否使用Nesterov Accelerated Gradient (NAG)算法更新梯度。如果为True,使用NAG更新梯度。如果为False,则在不使用NAG的情况下更新梯度。默认值:False。
|
||||
- **use_amsgrad** (bool) - 是否使用Amsgrad算法更新梯度。如果为True,使用Amsgrad更新梯度。如果为False,则在不使用Amsgrad的情况下更新梯度。默认值:False。
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
|
||||
**输入:**
|
||||
输入:
|
||||
- **gradients** (tuple[Tensor]) - `params` 的梯度,形状(shape)与 `params` 相同。
|
||||
|
||||
- **gradients** (tuple[Tensor]) - `params` 的梯度,形状(shape)与 `params` 相同。
|
||||
输出:
|
||||
Tensor[bool],值为True。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor[bool],值为True。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、iterable或LearningRateSchedule。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或字典。
|
||||
- **TypeError** - `beta1` 、 `beta2` 、 `eps` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **TypeError** - `use_locking` 、 `use_nesterov` 或 `use_amsgrad` 不是bool。
|
||||
- **ValueError** - `loss_scale` 或 `eps` 小于或等于0。
|
||||
- **ValueError** - `beta1` 、`beta2` 不在(0.0,1.0)范围内。
|
||||
- **ValueError** - `weight_decay` 小于0。
|
||||
异常:
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、iterable或LearningRateSchedule。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或字典。
|
||||
- **TypeError** - `beta1` 、 `beta2` 、 `eps` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **TypeError** - `use_locking` 、 `use_nesterov` 或 `use_amsgrad` 不是bool。
|
||||
- **ValueError** - `loss_scale` 或 `eps` 小于或等于0。
|
||||
- **ValueError** - `beta1` 、`beta2` 不在(0.0,1.0)范围内。
|
||||
- **ValueError** - `weight_decay` 小于0。
|
||||
|
||||
|
||||
.. include:: mindspore.nn.optim_target_unique_for_sparse.rst
|
||||
|
|
|
@ -24,45 +24,41 @@ mindspore.nn.AdamOffload
|
|||
|
||||
.. include:: mindspore.nn.optim_note_weight_decay.rst
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、和"order_params":
|
||||
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、和"order_params":
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]): 默认值:1e-3。
|
||||
|
||||
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]): 默认值:1e-3。
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
- **beta1** (float) - `moment1` 的指数衰减率。参数范围(0.0,1.0)。默认值:0.9。
|
||||
- **beta2** (float) - `moment2` 的指数衰减率。参数范围(0.0,1.0)。默认值:0.999。
|
||||
- **eps** (float) - 将添加到分母中,以提高数值稳定性。必须大于0。默认值:1e-8。
|
||||
- **use_locking** (bool) - 是否对参数更新加锁保护。如果为True,则 `w` 、`m` 和 `v` 的更新将受到锁保护。如果为False,则结果不可预测。默认值:False。
|
||||
- **use_nesterov** (bool) - 是否使用Nesterov Accelerated Gradient (NAG)算法更新梯度。如果为True,使用NAG更新梯度。如果为False,则在不使用NAG的情况下更新梯度。默认值:False。
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
|
||||
- **beta1** (float) - `moment1` 的指数衰减率。参数范围(0.0,1.0)。默认值:0.9。
|
||||
- **beta2** (float) - `moment2` 的指数衰减率。参数范围(0.0,1.0)。默认值:0.999。
|
||||
- **eps** (float) - 将添加到分母中,以提高数值稳定性。必须大于0。默认值:1e-8。
|
||||
- **use_locking** (bool) - 是否对参数更新加锁保护。如果为True,则 `w` 、`m` 和 `v` 的更新将受到锁保护。如果为False,则结果不可预测。默认值:False。
|
||||
- **use_nesterov** (bool) - 是否使用Nesterov Accelerated Gradient (NAG)算法更新梯度。如果为True,使用NAG更新梯度。如果为False,则在不使用NAG的情况下更新梯度。默认值:False。
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
|
||||
**输入:**
|
||||
输入:
|
||||
- **gradients** (tuple[Tensor]) - `params` 的梯度,shape与 `params` 相同。
|
||||
|
||||
- **gradients** (tuple[Tensor]) - `params` 的梯度,shape与 `params` 相同。
|
||||
输出:
|
||||
Tensor[bool],值为True。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor[bool],值为True。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、Iterable或LearningRateSchedule。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或字典。
|
||||
- **TypeError** - `beta1` 、 `beta2` 、 `eps` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **TypeError** - `use_locking` 或 `use_nesterov` 不是bool。
|
||||
- **ValueError** - `loss_scale` 或 `eps` 不大于0。
|
||||
- **ValueError** - `beta1` 、 `beta2` 不在(0.0,1.0)范围内。
|
||||
- **ValueError** - `weight_decay` 小于0。
|
||||
异常:
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、Iterable或LearningRateSchedule。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或字典。
|
||||
- **TypeError** - `beta1` 、 `beta2` 、 `eps` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **TypeError** - `use_locking` 或 `use_nesterov` 不是bool。
|
||||
- **ValueError** - `loss_scale` 或 `eps` 不大于0。
|
||||
- **ValueError** - `beta1` 、 `beta2` 不在(0.0,1.0)范围内。
|
||||
- **ValueError** - `weight_decay` 小于0。
|
||||
|
|
|
@ -43,45 +43,41 @@ mindspore.nn.AdamWeightDecay
|
|||
.. include:: mindspore.nn.optim_note_loss_scale.rst
|
||||
.. include:: mindspore.nn.optim_note_weight_decay.rst
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、和"order_params":
|
||||
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、和"order_params":
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]) - 默认值:1e-3。
|
||||
|
||||
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]) - 默认值:1e-3。
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
- **beta1** (float) - `moment1` 的指数衰减率。参数范围(0.0,1.0)。默认值:0.9。
|
||||
- **beta2** (float) - `moment2` 的指数衰减率。参数范围(0.0,1.0)。默认值:0.999。
|
||||
- **eps** (float) - 将添加到分母中,以提高数值稳定性。必须大于0。默认值:1e-6。
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
|
||||
- **beta1** (float) - `moment1` 的指数衰减率。参数范围(0.0,1.0)。默认值:0.9。
|
||||
- **beta2** (float) - `moment2` 的指数衰减率。参数范围(0.0,1.0)。默认值:0.999。
|
||||
- **eps** (float) - 将添加到分母中,以提高数值稳定性。必须大于0。默认值:1e-6。
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
输入:
|
||||
- **gradients** (tuple[Tensor]) - `params` 的梯度,shape与 `params` 相同。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
tuple[bool],所有元素都为True。
|
||||
|
||||
- **gradients** (tuple[Tensor]) - `params` 的梯度,shape与 `params` 相同。
|
||||
|
||||
**输出:**
|
||||
|
||||
tuple[bool],所有元素都为True。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、Iterable或LearningRateSchedule。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或字典。
|
||||
- **TypeError** - `beta1` 、 `beta2` 或 `eps` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **ValueError** - `eps` 小于等于0。
|
||||
- **ValueError** - `beta1` 、 `beta2` 不在(0.0,1.0)范围内。
|
||||
- **ValueError** - `weight_decay` 小于0。
|
||||
异常:
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、Iterable或LearningRateSchedule。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或字典。
|
||||
- **TypeError** - `beta1` 、 `beta2` 或 `eps` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **ValueError** - `eps` 小于等于0。
|
||||
- **ValueError** - `beta1` 、 `beta2` 不在(0.0,1.0)范围内。
|
||||
- **ValueError** - `weight_decay` 小于0。
|
||||
|
||||
.. include:: mindspore.nn.optim_target_unique_for_sparse.rst
|
|
@ -11,24 +11,20 @@ mindspore.nn.AdaptiveAvgPool1d
|
|||
.. note::
|
||||
:math:`L_{in}` 必须能被 `output_size` 整除。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **output_size** (int) - 目标输出大小 :math:`L_{out}`。
|
||||
|
||||
- **output_size** (int) - 目标输出大小 :math:`L_{out}`。
|
||||
输入:
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, L_{in})` 的Tensor,数据类型为float16或float32。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,其shape为 :math:`(N, C_{in}, L_{out})`,数据类型与 `x` 相同。
|
||||
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, L_{in})` 的Tensor,数据类型为float16或float32。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,其shape为 :math:`(N, C_{in}, L_{out})`,数据类型与 `x` 相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `output_size` 不是int。
|
||||
- **TypeError** - `x` 不是float16或float32。
|
||||
- **ValueError** - `output_size` 小于1。
|
||||
- **ValueError** - `x` 的shape长度不等于3。
|
||||
- **ValueError** - `x` 的最后一个维度小于 `output_size`。
|
||||
- **ValueError** - `x` 的最后一个维度不能被 `output_size` 整除。
|
||||
异常:
|
||||
- **TypeError** - `output_size` 不是int。
|
||||
- **TypeError** - `x` 不是float16或float32。
|
||||
- **ValueError** - `output_size` 小于1。
|
||||
- **ValueError** - `x` 的shape长度不等于3。
|
||||
- **ValueError** - `x` 的最后一个维度小于 `output_size`。
|
||||
- **ValueError** - `x` 的最后一个维度不能被 `output_size` 整除。
|
||||
|
||||
|
|
|
@ -19,21 +19,17 @@ mindspore.nn.AdaptiveAvgPool2d
|
|||
* (w_{end}- w_{start})}
|
||||
\end{align}
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **output_size** (Union[int, tuple]) - 输出特征图的尺寸为H * W。可以是int类型的H和W组成的tuple,也可以为一个int值,代表相同H和W,或None,如果是None,则意味着输出大小与输入相同。
|
||||
|
||||
- **output_size** (Union[int, tuple]) - 输出特征图的尺寸为H * W。可以是int类型的H和W组成的tuple,也可以为一个int值,代表相同H和W,或None,如果是None,则意味着输出大小与输入相同。
|
||||
输入:
|
||||
- **x** (Tensor) - AdaptiveAvgPool2d的输入,为三维或四维的Tensor,数据类型为float16、float32或者float64。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,输出shape为 :math:`(N, C_{out}, H_{out}, W_{out})`。
|
||||
|
||||
- **x** (Tensor) - AdaptiveAvgPool2d的输入,为三维或四维的Tensor,数据类型为float16、float32或者float64。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,输出shape为 :math:`(N, C_{out}, H_{out}, W_{out})`。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - 如果 `output_size` 是tuple,并且 `output_size` 的长度不是2。
|
||||
- **TypeError** - 如果 `x` 不是Tensor。
|
||||
- **TypeError** - 如果 `x` 的数据类型不是float16、float32或者float64。
|
||||
- **ValueError** - 如果 `x` 的维度小于或等于 `output_size` 的维度。
|
||||
异常:
|
||||
- **ValueError** - 如果 `output_size` 是tuple,并且 `output_size` 的长度不是2。
|
||||
- **TypeError** - 如果 `x` 不是Tensor。
|
||||
- **TypeError** - 如果 `x` 的数据类型不是float16、float32或者float64。
|
||||
- **ValueError** - 如果 `x` 的维度小于或等于 `output_size` 的维度。
|
||||
|
|
|
@ -11,23 +11,19 @@ mindspore.nn.AdaptiveMaxPool1d
|
|||
.. note::
|
||||
:math:`L_{in}` 必须能被 `output_size` 整除。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **output_size** (int) - 目标输出大小 :math:`L_{out}`。
|
||||
|
||||
- **output_size** (int) - 目标输出大小 :math:`L_{out}`。
|
||||
输入:
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, L_{in})` 的Tensor,数据类型为float16或float32。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,其shape为 :math:`(N, C_{in}, L_{out})`,数据类型与 `x` 相同。
|
||||
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, L_{in})` 的Tensor,数据类型为float16或float32。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,其shape为 :math:`(N, C_{in}, L_{out})`,数据类型与 `x` 相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `x` 不是float16或float32。
|
||||
- **TypeError** - `output_size` 不是int。
|
||||
- **ValueError** - `output_size` 小于1。
|
||||
- **ValueError** - `x` 的最后一个维度小于 `output_size`。
|
||||
- **ValueError** - `x` 的最后一个维度不能被 `output_size` 整除。
|
||||
- **ValueError** - `x` 的shape长度不等于3。
|
||||
异常:
|
||||
- **TypeError** - `x` 不是float16或float32。
|
||||
- **TypeError** - `output_size` 不是int。
|
||||
- **ValueError** - `output_size` 小于1。
|
||||
- **ValueError** - `x` 的最后一个维度小于 `output_size`。
|
||||
- **ValueError** - `x` 的最后一个维度不能被 `output_size` 整除。
|
||||
- **ValueError** - `x` 的shape长度不等于3。
|
||||
|
|
|
@ -22,26 +22,22 @@ mindspore.nn.AdaptiveMaxPool2d
|
|||
.. note::
|
||||
Ascend平台input_x输入仅支持float16类型。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **output_size** (Union[int, tuple]) - 输出特征图的尺寸为H * W。可以是int类型的H和W组成的tuple,也可以为一个int值,代表相同H和W,或None,如果是None,则意味着输出大小与输入相同。
|
||||
- **return_indices** (bool) - 如果为True,输出最大值的索引,默认值为False。
|
||||
|
||||
- **output_size** (Union[int, tuple]) - 输出特征图的尺寸为H * W。可以是int类型的H和W组成的tuple,也可以为一个int值,代表相同H和W,或None,如果是None,则意味着输出大小与输入相同。
|
||||
- **return_indices** (bool) - 如果为True,输出最大值的索引,默认值为False。
|
||||
输入:
|
||||
- **input_x** (Tensor) - AdaptiveMaxPool2d的输入,为三维或四维的Tensor,数据类型为float16、float32或者float64。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,数据类型与 `input_x` 相同。
|
||||
|
||||
- **input_x** (Tensor) - AdaptiveMaxPool2d的输入,为三维或四维的Tensor,数据类型为float16、float32或者float64。
|
||||
输出的shape为 `input_x_shape[:len(input_x_shape) - len(out_shape)] + out_shape` 。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,数据类型与 `input_x` 相同。
|
||||
|
||||
输出的shape为 `input_x_shape[:len(input_x_shape) - len(out_shape)] + out_shape` 。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `input_x` 不是Tensor。
|
||||
- **TypeError** - `input_x` 中的数据不是float16, float32, float64.
|
||||
- **TypeError** - `output_size` 不是int或者tuple。
|
||||
- **TypeError** - `return_indices` 不是bool。
|
||||
- **ValueError** - `output_size` 是tuple,但大小不是2。
|
||||
- **ValueError** - `input_x` 的维度不是CHW或者NCHW。
|
||||
异常:
|
||||
- **TypeError** - `input_x` 不是Tensor。
|
||||
- **TypeError** - `input_x` 中的数据不是float16, float32, float64.
|
||||
- **TypeError** - `output_size` 不是int或者tuple。
|
||||
- **TypeError** - `return_indices` 不是bool。
|
||||
- **ValueError** - `output_size` 是tuple,但大小不是2。
|
||||
- **ValueError** - `input_x` 的维度不是CHW或者NCHW。
|
||||
|
|
|
@ -7,23 +7,19 @@ mindspore.nn.AdaptiveMaxPool3d
|
|||
|
||||
对于任何输入尺寸,输出的大小为 :math:`(D, H, W)` ,其中输出特征的数量与输入特征的数量相同。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **output_size** (Union[int, tuple]) - 表示输出特征图的尺寸,输入可以是tuple :math:`(D, H, W)`,也可以是一个int值D来表示输出尺寸为 :math:`(D, D, D)` 。:math:`D` , :math:`H` 和 :math:`W` 可以是int型整数或者None,其中None表示输出大小与对应的输入的大小相同。
|
||||
- **return_indices** (bool) - 如果 `return_indices` 为True,将会输出最大值对应的索引,否则不输出索引。默认为False。
|
||||
|
||||
- **output_size** (Union[int, tuple]) - 表示输出特征图的尺寸,输入可以是tuple :math:`(D, H, W)`,也可以是一个int值D来表示输出尺寸为 :math:`(D, D, D)` 。:math:`D` , :math:`H` 和 :math:`W` 可以是int型整数或者None,其中None表示输出大小与对应的输入的大小相同。
|
||||
- **return_indices** (bool) - 如果 `return_indices` 为True,将会输出最大值对应的索引,否则不输出索引。默认为False。
|
||||
输入:
|
||||
- **x** (Tensor) - shape为 :math:`(C, D, H, W)` 或 :math:`(N,C, D, H, W)` 的Tensor,支持的数据类型包括int8、int16、int32、int64、uint8、uint16、uint32、uint64、float16、float32、float64。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
- **y** (Tensor) - Tensor,与输入 `x` 的数据类型和维度相同。
|
||||
- **argmax** (Tensor) - Tensor,最大值对应的索引,数据类型为int32,并与 `y` 的shape相同。仅当 `return_indices` 为True的时候才返回该值。
|
||||
|
||||
- **x** (Tensor) - shape为 :math:`(C, D, H, W)` 或 :math:`(N,C, D, H, W)` 的Tensor,支持的数据类型包括int8、int16、int32、int64、uint8、uint16、uint32、uint64、float16、float32、float64。
|
||||
|
||||
**输出:**
|
||||
|
||||
- **y** (Tensor) - Tensor,与输入 `x` 的数据类型和维度相同。
|
||||
- **argmax** (Tensor) - Tensor,最大值对应的索引,数据类型为int32,并与 `y` 的shape相同。仅当 `return_indices` 为True的时候才返回该值。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `x` 不是Tensor。
|
||||
- **ValueError** - `x` 的维度不是4D或者5D。
|
||||
- **TypeError** - `x` 的数据类型不是int8、int16、int32、int64、uint8、uint16、uint32、uint64、float16、float32、float64其中之一。
|
||||
- **ValueError** - `output_size` 不是一个int整数或者shape为(3,)的tuple。
|
||||
异常:
|
||||
- **TypeError** - `x` 不是Tensor。
|
||||
- **ValueError** - `x` 的维度不是4D或者5D。
|
||||
- **TypeError** - `x` 的数据类型不是int8、int16、int32、int64、uint8、uint16、uint32、uint64、float16、float32、float64其中之一。
|
||||
- **ValueError** - `output_size` 不是一个int整数或者shape为(3,)的tuple。
|
||||
|
|
|
@ -15,26 +15,22 @@ mindspore.nn.AvgPool1d
|
|||
.. note::
|
||||
pad_mode仅支持"same"和"valid"。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **kernel_size** (int) - 指定池化核尺寸大小,数据类型为整型。默认值:1。
|
||||
- **stride** (int) - 池化操作的移动步长,数据类型为整型。默认值:1。
|
||||
- **pad_mode** (str) - 指定池化的填充方式,可选值为"same"或"valid",不区分大小写。默认值:"valid"。
|
||||
|
||||
- **kernel_size** (int) - 指定池化核尺寸大小,数据类型为整型。默认值:1。
|
||||
- **stride** (int) - 池化操作的移动步长,数据类型为整型。默认值:1。
|
||||
- **pad_mode** (str) - 指定池化的填充方式,可选值为"same"或"valid",不区分大小写。默认值:"valid"。
|
||||
- **same** - 输出的shape与输入整数 `stride` 后的值相同。
|
||||
- **valid** - 在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。
|
||||
|
||||
- **same** - 输出的shape与输入整数 `stride` 后的值相同。
|
||||
- **valid** - 在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。
|
||||
输入:
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, L_{in})` 的Tensor。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
shape为 :math:`(N, C_{out}, L_{out})` 的Tensor。
|
||||
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, L_{in})` 的Tensor。
|
||||
|
||||
**输出:**
|
||||
|
||||
shape为 :math:`(N, C_{out}, L_{out})` 的Tensor。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `kernel_size` 或 `stride` 不是int。
|
||||
- **ValueError** - `pad_mode` 既不是"valid",也不是"same",不区分大小写。
|
||||
- **ValueError** - `kernel_size` 或 `stride` 小于1。
|
||||
- **ValueError** - `x` 的shape长度不等于3。
|
||||
异常:
|
||||
- **TypeError** - `kernel_size` 或 `stride` 不是int。
|
||||
- **ValueError** - `pad_mode` 既不是"valid",也不是"same",不区分大小写。
|
||||
- **ValueError** - `kernel_size` 或 `stride` 小于1。
|
||||
- **ValueError** - `x` 的shape长度不等于3。
|
||||
|
|
|
@ -14,29 +14,25 @@ mindspore.nn.AvgPool2d
|
|||
.. note::
|
||||
pad_mode仅支持"same"和"valid"。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **kernel_size** (Union[int, tuple[int]]) - 指定池化核尺寸大小。如果为整数,则代表池化核的高和宽。如果为tuple,其值必须包含两个整数值分别表示池化核的高和宽。默认值:1。
|
||||
- **stride** (Union[int, tuple[int]]) - 池化操作的移动步长,如果为整数,则代表池化核的高和宽方向的移动步长。如果为tuple,其值必须包含两个整数值分别表示池化核的高和宽的移动步长。默认值:1。
|
||||
- **pad_mode** (str) - 指定池化填充模式,可选值为"same"或"valid",不区分大小写。默认值:"valid"。
|
||||
|
||||
- **kernel_size** (Union[int, tuple[int]]) - 指定池化核尺寸大小。如果为整数,则代表池化核的高和宽。如果为tuple,其值必须包含两个整数值分别表示池化核的高和宽。默认值:1。
|
||||
- **stride** (Union[int, tuple[int]]) - 池化操作的移动步长,如果为整数,则代表池化核的高和宽方向的移动步长。如果为tuple,其值必须包含两个整数值分别表示池化核的高和宽的移动步长。默认值:1。
|
||||
- **pad_mode** (str) - 指定池化填充模式,可选值为"same"或"valid",不区分大小写。默认值:"valid"。
|
||||
- same: 输出的宽度与输入整数 `stride` 后的值相同。
|
||||
- valid: 在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。
|
||||
|
||||
- same: 输出的宽度与输入整数 `stride` 后的值相同。
|
||||
- valid: 在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。
|
||||
- **data_format** (str) - 输入数据格式可为'NHWC'或'NCHW'。默认值:'NCHW'。
|
||||
|
||||
- **data_format** (str) - 输入数据格式可为'NHWC'或'NCHW'。默认值:'NCHW'。
|
||||
输入:
|
||||
- **x** (Tensor) - 输入数据的shape为 :math:`(N,C_{in},H_{in},W_{in})` 的Tensor。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
输出数据的shape为 :math:`(N,C_{out},H_{out},W_{out})` 的Tensor。
|
||||
|
||||
- **x** (Tensor) - 输入数据的shape为 :math:`(N,C_{in},H_{in},W_{in})` 的Tensor。
|
||||
|
||||
**输出:**
|
||||
|
||||
输出数据的shape为 :math:`(N,C_{out},H_{out},W_{out})` 的Tensor。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `kernel_size` 或 `strides` 既不是整数也不是元组。
|
||||
- **ValueError** - `pad_mode` 既不是'valid',也不是'same',不区分大小写。
|
||||
- **ValueError** - `data_format` 既不是'NCHW',也不是'NHWC'。
|
||||
- **ValueError** - `kernel_size` 或 `stride` 小于1。
|
||||
- **ValueError** - `x` 的shape长度不等于4。
|
||||
异常:
|
||||
- **TypeError** - `kernel_size` 或 `strides` 既不是整数也不是元组。
|
||||
- **ValueError** - `pad_mode` 既不是'valid',也不是'same',不区分大小写。
|
||||
- **ValueError** - `data_format` 既不是'NCHW',也不是'NHWC'。
|
||||
- **ValueError** - `kernel_size` 或 `stride` 小于1。
|
||||
- **ValueError** - `x` 的shape长度不等于4。
|
||||
|
|
|
@ -25,23 +25,19 @@ mindspore.nn.BCELoss
|
|||
.. note::
|
||||
预测值一般是sigmoid函数的输出,因为是二分类,所以目标值应是0或者1。如果输入是0或1,则上述损失函数是无意义的。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **weight** (Tensor, 可选) - 指定每个批次二值交叉熵的权重。与输入数据的shape和数据类型相同。默认值:None。
|
||||
- **reduction** (str) - 指定输出结果的计算方式。可选值有:'mean','sum',或'none'。默认值:'none'。
|
||||
|
||||
- **weight** (Tensor, 可选) - 指定每个批次二值交叉熵的权重。与输入数据的shape和数据类型相同。默认值:None。
|
||||
- **reduction** (str) - 指定输出结果的计算方式。可选值有:'mean','sum',或'none'。默认值:'none'。
|
||||
输入:
|
||||
- **logits** (Tensor) - 输入预测值Tensor,shape :math:`(N,*)` ,其中 `*` 代表任意数量的附加维度。数据类型必须为float16或float32。
|
||||
- **labels** (Tensor) - 输入目标值Tensor,shape :math:`(N,*)` ,其中 `*` 代表任意数量的附加维度。与 `logits` 的shape和数据类型相同。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,数据类型与 `logits` 相同。如果 `reduction` 为'none',则shape与 `logits` 相同。否则,输出为Scalar的Tensor。
|
||||
|
||||
- **logits** (Tensor) - 输入预测值Tensor,shape :math:`(N,*)` ,其中 `*` 代表任意数量的附加维度。数据类型必须为float16或float32。
|
||||
- **labels** (Tensor) - 输入目标值Tensor,shape :math:`(N,*)` ,其中 `*` 代表任意数量的附加维度。与 `logits` 的shape和数据类型相同。
|
||||
异常:
|
||||
- **TypeError** - `logits` 的数据类型,`labels` 或 `weight` (如果给定)既不是float16,也不是float32。
|
||||
- **ValueError** - `reduction` 不为'none'、'mean'或'sum'。
|
||||
- **ValueError** - `logits` 的shape与 `labels` 或 `weight` (如果给定)不同。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,数据类型与 `logits` 相同。如果 `reduction` 为'none',则shape与 `logits` 相同。否则,输出为Scalar的Tensor。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `logits` 的数据类型,`labels` 或 `weight` (如果给定)既不是float16,也不是float32。
|
||||
- **ValueError** - `reduction` 不为'none'、'mean'或'sum'。
|
||||
- **ValueError** - `logits` 的shape与 `labels` 或 `weight` (如果给定)不同。
|
||||
|
||||
|
|
|
@ -22,29 +22,25 @@ mindspore.nn.BCEWithLogitsLoss
|
|||
\operatorname{sum}(L), & \text{if reduction} = \text{'sum'.}
|
||||
\end{cases}
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **reduction** (str) - 指定输出结果的计算方式。可选值有:'mean' , 'sum' ,和 'none' 。如果为 'none' ,则不执行reduction。默认值:'mean' 。
|
||||
- **weight** (Tensor, optional) - 指定每个批次二值交叉熵的权重。如果不是None,将进行广播,其shape与 `logits` 的shape保持一致,数据类型为float16或float32。默认值:None。
|
||||
- **pos_weight** (Tensor, optional) - 指定正样本的权重。是一个长度等于分类数的向量。如果不是None,将进行广播,其shape与 `logits` 的shape保持一致,数据类型必须为float16或float32。默认值:None。
|
||||
|
||||
- **reduction** (str) - 指定输出结果的计算方式。可选值有:'mean' , 'sum' ,和 'none' 。如果为 'none' ,则不执行reduction。默认值:'mean' 。
|
||||
- **weight** (Tensor, optional) - 指定每个批次二值交叉熵的权重。如果不是None,将进行广播,其shape与 `logits` 的shape保持一致,数据类型为float16或float32。默认值:None。
|
||||
- **pos_weight** (Tensor, optional) - 指定正样本的权重。是一个长度等于分类数的向量。如果不是None,将进行广播,其shape与 `logits` 的shape保持一致,数据类型必须为float16或float32。默认值:None。
|
||||
输入:
|
||||
- **logits** (Tensor) - 输入预测值Tensor,shape :math:`(N,*)` ,其中 `*` 代表任意数量的附加维度。数据类型必须为float16或float32。
|
||||
- **labels** (Tensor) - 输入目标值Tensor,shape :math:`(N,*)` ,其中 `*` 代表任意数量的附加维度。与 `logits` 的shape和数据类型相同。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor或Scalar,如果 `reduction` 为 'none',其shape需和 `logits` 相同。否则,将返回Scalar。
|
||||
|
||||
- **logits** (Tensor) - 输入预测值Tensor,shape :math:`(N,*)` ,其中 `*` 代表任意数量的附加维度。数据类型必须为float16或float32。
|
||||
- **labels** (Tensor) - 输入目标值Tensor,shape :math:`(N,*)` ,其中 `*` 代表任意数量的附加维度。与 `logits` 的shape和数据类型相同。
|
||||
异常:
|
||||
- **TypeError** - `logits` 或 `labels` 的不为Tensor。
|
||||
- **TypeError** - `logits` 或 `labels` 的数据类型既不是float16也不是float32。
|
||||
- **TypeError** - `weight` 或 `pos_weight` 是 Parameter。
|
||||
- **TypeError** - `weight` 或 `pos_weight` 的数据类型既不是float16也不是float32。
|
||||
- **TypeError** - `reduction` 的数据类型不是string。
|
||||
- **ValueError** - `weight` 或 `pos_weight` 不能广播到shape为 `logits` 的Tensor。
|
||||
- **ValueError** - `reduction` 不为 'none'、'mean' 或 'sum'。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor或Scalar,如果 `reduction` 为 'none',其shape需和 `logits` 相同。否则,将返回Scalar。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `logits` 或 `labels` 的不为Tensor。
|
||||
- **TypeError** - `logits` 或 `labels` 的数据类型既不是float16也不是float32。
|
||||
- **TypeError** - `weight` 或 `pos_weight` 是 Parameter。
|
||||
- **TypeError** - `weight` 或 `pos_weight` 的数据类型既不是float16也不是float32。
|
||||
- **TypeError** - `reduction` 的数据类型不是string。
|
||||
- **ValueError** - `weight` 或 `pos_weight` 不能广播到shape为 `logits` 的Tensor。
|
||||
- **ValueError** - `reduction` 不为 'none'、'mean' 或 'sum'。
|
||||
|
||||
|
||||
|
|
|
@ -15,29 +15,25 @@ mindspore.nn.BatchNorm1d
|
|||
.. note::
|
||||
BatchNorm的实现在图模式和PyNative模式下是不同的,因此不建议在网络初始化后更改其模式。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **num_features** (int) - 通道数量,输入Tensor shape :math:`(N, C)` 中的 `C` 。
|
||||
- **eps** (float) - :math:`\epsilon` 加在分母上的值,以确保数值稳定。默认值:1e-5。
|
||||
- **momentum** (float) - 动态均值和动态方差所使用的动量。默认值:0.9。
|
||||
- **affine** (bool) - bool类型。设置为True时,可学习到 :math:`\gamma` 和 :math:`\beta` 值。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - :math:`\gamma` 参数的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - :math:`\beta` 参数的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
- **moving_mean_init** (Union[Tensor, str, Initializer, numbers.Number]) - 动态平均值的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
- **moving_var_init** (Union[Tensor, str, Initializer, numbers.Number]) - 动态方差的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **use_batch_statistics** (bool) - 如果为True,则使用当前批次数据的平均值和方差值。如果为False,则使用指定的平均值和方差值。如果为None,训练时,将使用当前批次数据的均值和方差,并更新动态均值和方差,验证过程将直接使用动态均值和方差。默认值:None。
|
||||
|
||||
- **num_features** (int) - 通道数量,输入Tensor shape :math:`(N, C)` 中的 `C` 。
|
||||
- **eps** (float) - :math:`\epsilon` 加在分母上的值,以确保数值稳定。默认值:1e-5。
|
||||
- **momentum** (float) - 动态均值和动态方差所使用的动量。默认值:0.9。
|
||||
- **affine** (bool) - bool类型。设置为True时,可学习到 :math:`\gamma` 和 :math:`\beta` 值。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - :math:`\gamma` 参数的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - :math:`\beta` 参数的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
- **moving_mean_init** (Union[Tensor, str, Initializer, numbers.Number]) - 动态平均值的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
- **moving_var_init** (Union[Tensor, str, Initializer, numbers.Number]) - 动态方差的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **use_batch_statistics** (bool) - 如果为True,则使用当前批次数据的平均值和方差值。如果为False,则使用指定的平均值和方差值。如果为None,训练时,将使用当前批次数据的均值和方差,并更新动态均值和方差,验证过程将直接使用动态均值和方差。默认值:None。
|
||||
输入:
|
||||
- **x** (Tensor) - 输入shape为 :math:`(N, C_{in})` 的Tensor。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,归一化后的Tensor,shape为 :math:`(N, C_{out})` 。
|
||||
|
||||
- **x** (Tensor) - 输入shape为 :math:`(N, C_{in})` 的Tensor。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,归一化后的Tensor,shape为 :math:`(N, C_{out})` 。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `num_features` 不是整数。
|
||||
- **TypeError** - `eps` 不是浮点数。
|
||||
- **ValueError** - `num_features` 小于1。
|
||||
- **ValueError** - `momentum` 不在范围[0, 1]内。
|
||||
异常:
|
||||
- **TypeError** - `num_features` 不是整数。
|
||||
- **TypeError** - `eps` 不是浮点数。
|
||||
- **ValueError** - `num_features` 小于1。
|
||||
- **ValueError** - `momentum` 不在范围[0, 1]内。
|
||||
|
|
|
@ -21,34 +21,30 @@ mindspore.nn.BatchNorm2d
|
|||
|
||||
其中, :math:`moving\_mean` 是更新后的均值, :math:`moving\_var` 是更新后的方差, :math:`μ_β, σ^2_β` 是每一批的数据的观测值(均值和方差)。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **num_features** (int) - 通道数量,输入Tensor shape :math:`(N, C, H, W)` 中的 `C` 。
|
||||
- **eps** (float) - :math:`\epsilon` 加在分母上的值,以确保数值稳定。默认值:1e-5。
|
||||
- **momentum** (float) - 动态均值和动态方差所使用的动量。默认值:0.9。
|
||||
- **affine** (bool) - bool类型。设置为True时,可学习 :math:`\gamma` 和 :math:`\beta` 值。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - :math:`\gamma` 参数的初始化方法。str的值引用自函数 `mindspore.common.initializer`,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - :math:`\beta` 参数的初始化方法。str的值引用自函数 `mindspore.common.initializer`,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
- **moving_mean_init** (Union[Tensor, str, Initializer, numbers.Number]) - 动态平均值的初始化方法。str的值引用自函数 `mindspore.common.initializer`,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
- **moving_var_init** (Union[Tensor, str, Initializer, numbers.Number]) - 动态方差的初始化方法。str的值引用自函数 `mindspore.common.initializer`,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **use_batch_statistics** (bool)
|
||||
- 如果为True,则使用当前批处理数据的平均值和方差值,并跟踪运行平均值和运行方差。
|
||||
- 如果为False,则使用指定值的平均值和方差值,不跟踪统计值。
|
||||
- 如果为None,则根据训练和验证模式自动设置 `use_batch_statistics` 为True或False。在训练时, `use_batch_statistics会` 设置为True。在验证时, `use_batch_statistics` 会自动设置为False。默认值:None。
|
||||
- **data_format** (str) - 数据格式可为'NHWC'或'NCHW'。默认值:'NCHW'。
|
||||
|
||||
- **num_features** (int) - 通道数量,输入Tensor shape :math:`(N, C, H, W)` 中的 `C` 。
|
||||
- **eps** (float) - :math:`\epsilon` 加在分母上的值,以确保数值稳定。默认值:1e-5。
|
||||
- **momentum** (float) - 动态均值和动态方差所使用的动量。默认值:0.9。
|
||||
- **affine** (bool) - bool类型。设置为True时,可学习 :math:`\gamma` 和 :math:`\beta` 值。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - :math:`\gamma` 参数的初始化方法。str的值引用自函数 `mindspore.common.initializer`,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - :math:`\beta` 参数的初始化方法。str的值引用自函数 `mindspore.common.initializer`,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
- **moving_mean_init** (Union[Tensor, str, Initializer, numbers.Number]) - 动态平均值的初始化方法。str的值引用自函数 `mindspore.common.initializer`,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
- **moving_var_init** (Union[Tensor, str, Initializer, numbers.Number]) - 动态方差的初始化方法。str的值引用自函数 `mindspore.common.initializer`,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **use_batch_statistics** (bool)
|
||||
- 如果为True,则使用当前批处理数据的平均值和方差值,并跟踪运行平均值和运行方差。
|
||||
- 如果为False,则使用指定值的平均值和方差值,不跟踪统计值。
|
||||
- 如果为None,则根据训练和验证模式自动设置 `use_batch_statistics` 为True或False。在训练时, `use_batch_statistics会` 设置为True。在验证时, `use_batch_statistics` 会自动设置为False。默认值:None。
|
||||
- **data_format** (str) - 数据格式可为'NHWC'或'NCHW'。默认值:'NCHW'。
|
||||
输入:
|
||||
- **x** (Tensor) - 输入shape为 :math:`(N,C_{in},H_{in},W_{in})` 的Tensor。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,归一化后的Tensor,shape为 :math:`(N,C_{out},H_{out},W_{out})` 。
|
||||
|
||||
- **x** (Tensor) - 输入shape为 :math:`(N,C_{in},H_{in},W_{in})` 的Tensor。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,归一化后的Tensor,shape为 :math:`(N,C_{out},H_{out},W_{out})` 。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `num_features` 不是整数。
|
||||
- **TypeError** - `eps` 不是浮点数。
|
||||
- **ValueError** - `num_features` 小于1。
|
||||
- **ValueError** - `momentum` 不在范围[0, 1]内。
|
||||
- **ValueError** - `data_format` 既不是'NHWC'也不是'NCHW'。
|
||||
异常:
|
||||
- **TypeError** - `num_features` 不是整数。
|
||||
- **TypeError** - `eps` 不是浮点数。
|
||||
- **ValueError** - `num_features` 小于1。
|
||||
- **ValueError** - `momentum` 不在范围[0, 1]内。
|
||||
- **ValueError** - `data_format` 既不是'NHWC'也不是'NCHW'。
|
||||
|
|
|
@ -15,31 +15,27 @@ mindspore.nn.BatchNorm3d
|
|||
|
||||
需要注意的是,更新running_mean和running_var的公式为 :math:`\hat{x}_\text{new} = (1 - \text{momentum}) \times x_t + \text{momentum} \times \hat{x}` ,其中 :math:`\hat{x}` 是估计的统计量, :math:`x_t` 是新的观察值。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **num_features** (int) - 指定输入Tensor的通道数量。输入Tensor的size为(N, C, D, H, W)。
|
||||
- **eps** (float) - 加在分母上的值,以确保数值稳定。默认值:1e-5。
|
||||
- **momentum** (float) - 动态均值和动态方差所使用的动量。默认值:0.9。
|
||||
- **affine** (bool) - bool类型。设置为True时,可以学习gama和beta。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - gamma参数的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - beta参数的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
- **moving_mean_init** (Union[Tensor, str, Initializer, numbers.Number]) - 动态均值和动态方差所使用的动量。平均值的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
- **moving_var_init** (Union[Tensor, str, Initializer, numbers.Number]) - 动态均值和动态方差所使用的动量。方差的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **use_batch_statistics** (bool) - 如果为True,则使用当前批次数据的平均值和方差值。如果为False,则使用指定的平均值和方差值。如果为None,训练时,将使用当前批次数据的均值和方差,并更新动态均值和方差,验证过程将直接使用动态均值和方差。默认值:None。
|
||||
- **data_format** (str) - 数据格式的可选值为'NCDHW'。默认值:'NCDHW'。
|
||||
|
||||
- **num_features** (int) - 指定输入Tensor的通道数量。输入Tensor的size为(N, C, D, H, W)。
|
||||
- **eps** (float) - 加在分母上的值,以确保数值稳定。默认值:1e-5。
|
||||
- **momentum** (float) - 动态均值和动态方差所使用的动量。默认值:0.9。
|
||||
- **affine** (bool) - bool类型。设置为True时,可以学习gama和beta。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - gamma参数的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - beta参数的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
- **moving_mean_init** (Union[Tensor, str, Initializer, numbers.Number]) - 动态均值和动态方差所使用的动量。平均值的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
- **moving_var_init** (Union[Tensor, str, Initializer, numbers.Number]) - 动态均值和动态方差所使用的动量。方差的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **use_batch_statistics** (bool) - 如果为True,则使用当前批次数据的平均值和方差值。如果为False,则使用指定的平均值和方差值。如果为None,训练时,将使用当前批次数据的均值和方差,并更新动态均值和方差,验证过程将直接使用动态均值和方差。默认值:None。
|
||||
- **data_format** (str) - 数据格式的可选值为'NCDHW'。默认值:'NCDHW'。
|
||||
输入:
|
||||
- **x** (Tensor) - 输入shape为 :math:`(N, C_{in}, D_{in}, H_{in}, W_{in})` 的Tensor。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,归一化后的Tensor,shape为 :math:`(N, C_{out}, D_{out},H_{out}, W_{out})`。
|
||||
|
||||
- **x** (Tensor) - 输入shape为 :math:`(N, C_{in}, D_{in}, H_{in}, W_{in})` 的Tensor。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,归一化后的Tensor,shape为 :math:`(N, C_{out}, D_{out},H_{out}, W_{out})`。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `num_features` 不是整数。
|
||||
- **TypeError** - `eps` 不是浮点数。
|
||||
- **ValueError** - `num_features` 小于1。
|
||||
- **ValueError** - `momentum` 不在范围[0, 1]内。
|
||||
- **ValueError** - `data_format` 不是'NCDHW'。
|
||||
异常:
|
||||
- **TypeError** - `num_features` 不是整数。
|
||||
- **TypeError** - `eps` 不是浮点数。
|
||||
- **ValueError** - `num_features` 小于1。
|
||||
- **ValueError** - `momentum` 不在范围[0, 1]内。
|
||||
- **ValueError** - `data_format` 不是'NCDHW'。
|
||||
|
|
|
@ -12,40 +12,35 @@ mindspore.nn.BiDense
|
|||
|
||||
其中 :math:`x_{1}` 是第一个输入Tensor,:math:`x_{2}` 是第二个输入Tensor,:math:`A` 是一个权重矩阵,其数据类型与 :math:`x_{*}` 相同, :math:`b` 是一个偏置向量,其数据类型与 :math:`x_{*}` 相同(仅当has_bias为True时)。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **in1_channels** (int) - BiDense层第一个输入Tensor的空间维度。
|
||||
- **in2_channels** (int) - BiDense层第二个输入Tensor的空间维度。
|
||||
- **out_channels** (int) - BiDense层输出Tensor的空间维度。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。str的值引用自函数 `initializer`。默认值:None。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。str的值引用自函数 `initializer`。默认值:None。
|
||||
- **has_bias** (bool) - 是否使用偏置向量 :math:`\text{bias}` 。默认值:True。
|
||||
|
||||
- **in1_channels** (int) - BiDense层第一个输入Tensor的空间维度。
|
||||
- **in2_channels** (int) - BiDense层第二个输入Tensor的空间维度。
|
||||
- **out_channels** (int) - BiDense层输出Tensor的空间维度。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。str的值引用自函数 `initializer`。默认值:None。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。str的值引用自函数 `initializer`。默认值:None。
|
||||
- **has_bias** (bool) - 是否使用偏置向量 :math:`\text{bias}` 。默认值:True。
|
||||
形状:
|
||||
- **input1** - :math:`(*, H_{in1})`,其中 :math:`H_{in1}=\text{in1_channels}`,
|
||||
:math:`*` 为任意维度. input1除最后一维外的维度需与其他输入保持一致。
|
||||
- **input2** - :math:`(*, H_{in2})`,其中 :math:`H_{in2}=\text{in2_channels}`,
|
||||
:math:`*` 为任意维度. input2除最后一维外的维度需与其他输入保持一致。
|
||||
- **output** - :math:`(*, H_{out})`,其中 :math:`H_{out}=\text{out_channels}`,
|
||||
:math:`*` 为任意维度. output除最后一维外的维度需与所有输入保持一致。
|
||||
|
||||
**形状:**
|
||||
数据类型:
|
||||
- **input1** (Tensor) - 数据类型必须为float16或float32,且与input2一致。
|
||||
- **input2** (Tensor) - 数据类型必须为float16或float32,且与input1一致。
|
||||
- **output** (Tensor) - 数据类型与输入保持一致。
|
||||
|
||||
- **input1** - :math:`(*, H_{in1})`,其中 :math:`H_{in1}=\text{in1_channels}`,
|
||||
:math:`*` 为任意维度. input1除最后一维外的维度需与其他输入保持一致。
|
||||
- **input2** - :math:`(*, H_{in2})`,其中 :math:`H_{in2}=\text{in2_channels}`,
|
||||
:math:`*` 为任意维度. input2除最后一维外的维度需与其他输入保持一致。
|
||||
- **output** - :math:`(*, H_{out})`,其中 :math:`H_{out}=\text{out_channels}`,
|
||||
:math:`*` 为任意维度. output除最后一维外的维度需与所有输入保持一致。
|
||||
权重:
|
||||
- **weight** (Parameter) - 权重参数,shape为 :math:`(\text{out_channels}, \text{in1_channels}, \text{in2_channels})`。
|
||||
当 `weight_init` 设为 `None` 时,其初始化值服从 :math:`\mathcal{U}(-\sqrt{k}, \sqrt{k})`,其中 :math:`k = \frac{1}{\text{in1_channels}}`。
|
||||
- **bias** (Parameter) - 偏置参数,shape为 :math:`(\text{out_channels})`。
|
||||
当 `has_bias` 设为 `True` 且 `bias_init` 设为 `None` 时,其初始化值服从 :math:`\mathcal{U}(-\sqrt{k}, \sqrt{k})`,其中 :math:`k = \frac{1}{\text{in1_channels}}`。
|
||||
|
||||
**数据类型:**
|
||||
|
||||
- **input1** (Tensor) - 数据类型必须为float16或float32,且与input2一致。
|
||||
- **input2** (Tensor) - 数据类型必须为float16或float32,且与input1一致。
|
||||
- **output** (Tensor) - 数据类型与输入保持一致。
|
||||
|
||||
**权重:**
|
||||
|
||||
- **weight** (Parameter) - 权重参数,shape为 :math:`(\text{out_channels}, \text{in1_channels}, \text{in2_channels})`。
|
||||
当 `weight_init` 设为 `None` 时,其初始化值服从 :math:`\mathcal{U}(-\sqrt{k}, \sqrt{k})`,其中 :math:`k = \frac{1}{\text{in1_channels}}`。
|
||||
- **bias** (Parameter) - 偏置参数,shape为 :math:`(\text{out_channels})`。
|
||||
当 `has_bias` 设为 `True` 且 `bias_init` 设为 `None` 时,其初始化值服从 :math:`\mathcal{U}(-\sqrt{k}, \sqrt{k})`,其中 :math:`k = \frac{1}{\text{in1_channels}}`。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `in_channels` 或 `out_channels` 不是整数。
|
||||
- **TypeError** - `has_bias` 不是bool值。
|
||||
- **ValueError** - `weight_init` 的shape长度不等于3,`weight_init` 的shape[0]不等于 `out_channels`,或者 `weight_init` 的shape[1]不等于 `in1_channels`,或者 `weight_init` 的shape[2]不等于 `in2_channels`。
|
||||
- **ValueError** - `bias_init` 的shape长度不等于1或 `bias_init` 的shape[0]不等于 `out_channels`。
|
||||
异常:
|
||||
- **TypeError** - `in_channels` 或 `out_channels` 不是整数。
|
||||
- **TypeError** - `has_bias` 不是bool值。
|
||||
- **ValueError** - `weight_init` 的shape长度不等于3,`weight_init` 的shape[0]不等于 `out_channels`,或者 `weight_init` 的shape[1]不等于 `in1_channels`,或者 `weight_init` 的shape[2]不等于 `in2_channels`。
|
||||
- **ValueError** - `bias_init` 的shape长度不等于1或 `bias_init` 的shape[0]不等于 `out_channels`。
|
|
@ -5,14 +5,12 @@ mindspore.nn.BleuScore
|
|||
|
||||
计算具有一个或多个引用的机器翻译文本的BLEU分数。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **n_gram** (int) - 取值范围为1~4。默认值:4。
|
||||
- **smooth** (bool) - 是否采用平滑计算的方式。默认值:False。
|
||||
|
||||
- **n_gram** (int) - 取值范围为1~4。默认值:4。
|
||||
- **smooth** (bool) - 是否采用平滑计算的方式。默认值:False。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - `n_gram` 的取值范围不在1~4之间。
|
||||
异常:
|
||||
- **ValueError** - `n_gram` 的取值范围不在1~4之间。
|
||||
|
||||
.. py:method:: clear()
|
||||
|
||||
|
@ -22,23 +20,19 @@ mindspore.nn.BleuScore
|
|||
|
||||
计算BLEU分数。
|
||||
|
||||
**返回:**
|
||||
返回:
|
||||
numpy.ndarray,numpy类型的BLEU分数。
|
||||
|
||||
numpy.ndarray,numpy类型的BLEU分数。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **RuntimeError** - 调用该方法前没有先调用update方法。
|
||||
异常:
|
||||
- **RuntimeError** - 调用该方法前没有先调用update方法。
|
||||
|
||||
.. py:method:: update(*inputs)
|
||||
|
||||
使用输入的内容更新内部评估结果。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- ***inputs** (tuple) - 输入的元组,第一个输入是机器翻译语料库列表,第二个输入是引用语料库列表。
|
||||
|
||||
- ***inputs** (tuple) - 输入的元组,第一个输入是机器翻译语料库列表,第二个输入是引用语料库列表。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - 输入参数的数量不等于2。
|
||||
- **ValueError** - `candidate_corpus` 的长度与 `reference_corpus` 不同。
|
||||
异常:
|
||||
- **ValueError** - 输入参数的数量不等于2。
|
||||
- **ValueError** - `candidate_corpus` 的长度与 `reference_corpus` 不同。
|
|
@ -7,10 +7,9 @@
|
|||
|
||||
`mindspore.nn` 中神经网络层也是Cell的子类,如 :class:`mindspore.nn.Conv2d`、:class:`mindspore.nn.ReLU`、 :class:`mindspore.nn.BatchNorm` 等。Cell在GRAPH_MODE(静态图模式)下将编译为一张计算图,在PYNATIVE_MODE(动态图模式)下作为神经网络的基础模块。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **auto_prefix** (bool) - 是否自动为Cell及其子Cell生成NameSpace。`auto_prefix` 的设置影响网络参数的命名,如果设置为True,则自动给网络参数的名称添加前缀,否则不添加前缀。默认值:True。
|
||||
- **flags** (dict) - Cell的配置信息,目前用于绑定Cell和数据集。用户也通过该参数自定义Cell属性。默认值:None。
|
||||
参数:
|
||||
- **auto_prefix** (bool) - 是否自动为Cell及其子Cell生成NameSpace。`auto_prefix` 的设置影响网络参数的命名,如果设置为True,则自动给网络参数的名称添加前缀,否则不添加前缀。默认值:True。
|
||||
- **flags** (dict) - Cell的配置信息,目前用于绑定Cell和数据集。用户也通过该参数自定义Cell属性。默认值:None。
|
||||
|
||||
.. py:method:: add_flags(**flags)
|
||||
|
||||
|
@ -18,37 +17,32 @@
|
|||
|
||||
在实例化Cell类时,如果入参flags不为空,会调用此方法。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **flags** (dict) - Cell的配置信息,目前用于绑定Cell和数据集。用户也通过该参数自定义Cell属性。默认值:None。
|
||||
参数:
|
||||
- **flags** (dict) - Cell的配置信息,目前用于绑定Cell和数据集。用户也通过该参数自定义Cell属性。默认值:None。
|
||||
|
||||
.. py:method:: add_flags_recursive(**flags)
|
||||
|
||||
如果Cell含有多个子Cell,此方法会递归得给所有子Cell添加自定义属性。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **flags** (dict) - Cell的配置信息,目前用于绑定Cell和数据集。用户也通过该参数自定义Cell属性。默认值:None。
|
||||
参数:
|
||||
- **flags** (dict) - Cell的配置信息,目前用于绑定Cell和数据集。用户也通过该参数自定义Cell属性。默认值:None。
|
||||
|
||||
.. py:method:: auto_cast_inputs(inputs)
|
||||
|
||||
在混合精度下,自动对输入进行类型转换。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **inputs** (tuple) - construct方法的输入。
|
||||
|
||||
- **inputs** (tuple) - construct方法的输入。
|
||||
|
||||
**返回:**
|
||||
|
||||
Tuple类型,经过类型转换后的输入。
|
||||
返回:
|
||||
Tuple类型,经过类型转换后的输入。
|
||||
|
||||
.. py:method:: auto_parallel_compile_and_run()
|
||||
|
||||
是否在‘AUTO_PARALLEL’或‘SEMI_AUTO_PARALLEL’模式下执行编译流程。
|
||||
|
||||
**返回:**
|
||||
|
||||
bool,`_auto_parallel_compile_and_run` 的值。
|
||||
返回:
|
||||
bool,`_auto_parallel_compile_and_run` 的值。
|
||||
|
||||
.. py:method:: bprop_debug
|
||||
:property:
|
||||
|
@ -59,14 +53,12 @@
|
|||
|
||||
将输入转换为指定类型。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **inputs** (tuple[Tensor]) - 输入。
|
||||
- **dst_type** (mindspore.dtype) - 指定的数据类型。
|
||||
|
||||
- **inputs** (tuple[Tensor]) - 输入。
|
||||
- **dst_type** (mindspore.dtype) - 指定的数据类型。
|
||||
|
||||
**返回:**
|
||||
|
||||
tuple[Tensor]类型,转换类型后的结果。
|
||||
返回:
|
||||
tuple[Tensor]类型,转换类型后的结果。
|
||||
|
||||
.. py:method:: cast_param(param)
|
||||
|
||||
|
@ -74,34 +66,29 @@
|
|||
|
||||
该接口目前在自动混合精度场景下使用。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **param** (Parameter) - 需要被转换类型的输入参数。
|
||||
|
||||
- **param** (Parameter) - 需要被转换类型的输入参数。
|
||||
|
||||
**返回:**
|
||||
|
||||
Parameter类型,转换类型后的参数。
|
||||
返回:
|
||||
Parameter类型,转换类型后的参数。
|
||||
|
||||
.. py:method:: cells()
|
||||
|
||||
返回当前Cell的子Cell的迭代器。
|
||||
|
||||
**返回:**
|
||||
|
||||
Iteration类型,Cell的子Cell。
|
||||
返回:
|
||||
Iteration类型,Cell的子Cell。
|
||||
|
||||
.. py:method:: cells_and_names(cells=None, name_prefix='')
|
||||
|
||||
递归地获取当前Cell及输入 `cells` 的所有子Cell的迭代器,包括Cell的名称及其本身。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **cells** (str) - 需要进行迭代的Cell。默认值:None。
|
||||
- **name_prefix** (str) - 作用域。默认值:''。
|
||||
|
||||
- **cells** (str) - 需要进行迭代的Cell。默认值:None。
|
||||
- **name_prefix** (str) - 作用域。默认值:''。
|
||||
|
||||
**返回:**
|
||||
|
||||
Iteration类型,当前Cell及输入 `cells` 的所有子Cell和相对应的名称。
|
||||
返回:
|
||||
Iteration类型,当前Cell及输入 `cells` 的所有子Cell和相对应的名称。
|
||||
|
||||
.. py:method:: check_names()
|
||||
|
||||
|
@ -111,9 +98,8 @@
|
|||
|
||||
编译Cell为计算图,输入需与construct中定义的输入一致。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **inputs** (tuple) - Cell的输入。
|
||||
参数:
|
||||
- **inputs** (tuple) - Cell的输入。
|
||||
|
||||
.. py:method:: compile_and_run(*inputs)
|
||||
|
||||
|
@ -122,13 +108,11 @@
|
|||
.. note::
|
||||
不推荐使用该函数,建议直接调用Cell实例。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **inputs** (tuple) - Cell的输入。
|
||||
|
||||
- **inputs** (tuple) - Cell的输入。
|
||||
|
||||
**返回:**
|
||||
|
||||
Object类型,执行的结果。
|
||||
返回:
|
||||
Object类型,执行的结果。
|
||||
|
||||
.. py:method:: construct(*inputs, **kwargs)
|
||||
|
||||
|
@ -137,14 +121,12 @@
|
|||
.. note::
|
||||
当前不支持inputs同时输入tuple类型和非tuple类型。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **inputs** (tuple) - 可变参数列表,默认值:()。
|
||||
- **kwargs** (dict) - 可变的关键字参数的字典,默认值:{}。
|
||||
|
||||
- **inputs** (tuple) - 可变参数列表,默认值:()。
|
||||
- **kwargs** (dict) - 可变的关键字参数的字典,默认值:{}。
|
||||
|
||||
**返回:**
|
||||
|
||||
Tensor类型,返回计算结果。
|
||||
返回:
|
||||
Tensor类型,返回计算结果。
|
||||
|
||||
.. py:method:: exec_checkpoint_graph()
|
||||
|
||||
|
@ -165,9 +147,8 @@
|
|||
将一个大的连续内存块分为多个小一点的内存块有可能提升性能,对于这种情况,
|
||||
可以通过 `fusion_size` 参数来限制最大连续内存块的的大小。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **fusion_size** (int) - 最大连续内存块的大小(以字节为单位),0表示不限制大小。默认值:0。
|
||||
参数:
|
||||
- **fusion_size** (int) - 最大连续内存块的大小(以字节为单位),0表示不限制大小。默认值:0。
|
||||
|
||||
.. py:method:: generate_scope()
|
||||
|
||||
|
@ -185,9 +166,8 @@
|
|||
|
||||
返回编译计算图所设置的输入。
|
||||
|
||||
**返回:**
|
||||
|
||||
Tuple类型,编译计算图所设置的输入。
|
||||
返回:
|
||||
Tuple类型,编译计算图所设置的输入。
|
||||
|
||||
.. note::
|
||||
这是一个实验接口,可能会被更改或者删除。
|
||||
|
@ -196,21 +176,18 @@
|
|||
|
||||
返回Cell中parameter的迭代器。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **expand** (bool) - 如果为True,则递归地获取当前Cell和所有子Cell的parameter。否则,只生成当前Cell的子Cell的parameter。默认值:True。
|
||||
|
||||
- **expand** (bool) - 如果为True,则递归地获取当前Cell和所有子Cell的parameter。否则,只生成当前Cell的子Cell的parameter。默认值:True。
|
||||
|
||||
**返回:**
|
||||
|
||||
Iteration类型,Cell的parameter。
|
||||
返回:
|
||||
Iteration类型,Cell的parameter。
|
||||
|
||||
.. py:method:: get_scope()
|
||||
|
||||
返回Cell的作用域。
|
||||
|
||||
**返回:**
|
||||
|
||||
String类型,网络的作用域。
|
||||
返回:
|
||||
String类型,网络的作用域。
|
||||
|
||||
.. py:method:: infer_param_pipeline_stage()
|
||||
|
||||
|
@ -220,13 +197,11 @@
|
|||
- 如果某参数不属于任何已被设置 `pipeline_stage` 的Cell,此参数应使用 `add_pipeline_stage` 方法来添加它的 `pipeline_stage` 信息。
|
||||
- 如果某参数P被stageA和stageB两个不同stage的算子使用,那么参数P在使用 `infer_param_pipeline_stage` 之前,应使用 `P.add_pipeline_stage(stageA)` 和 `P.add_pipeline_stage(stageB)` 添加它的stage信息。
|
||||
|
||||
**返回:**
|
||||
返回:
|
||||
属于当前 `pipeline_stage` 的参数。
|
||||
|
||||
属于当前 `pipeline_stage` 的参数。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **RuntimeError** - 如果参数不属于任何stage。
|
||||
异常:
|
||||
- **RuntimeError** - 如果参数不属于任何stage。
|
||||
|
||||
.. py:method:: init_parameters_data(auto_parallel_mode=False)
|
||||
|
||||
|
@ -235,27 +210,23 @@
|
|||
.. note::
|
||||
在调用 `init_parameters_data` 后,`trainable_params()` 或其他相似的接口可能返回不同的参数对象,不要保存这些结果。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **auto_parallel_mode** (bool) - 是否在自动并行模式下执行。 默认值:False。
|
||||
|
||||
- **auto_parallel_mode** (bool) - 是否在自动并行模式下执行。 默认值:False。
|
||||
|
||||
**返回:**
|
||||
|
||||
Dict[Parameter, Parameter],返回一个原始参数和替换参数的字典。
|
||||
返回:
|
||||
Dict[Parameter, Parameter],返回一个原始参数和替换参数的字典。
|
||||
|
||||
.. py:method:: insert_child_to_cell(child_name, child_cell)
|
||||
|
||||
将一个给定名称的子Cell添加到当前Cell。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **child_name** (str) - 子Cell名称。
|
||||
- **child_cell** (Cell) - 要插入的子Cell。
|
||||
|
||||
- **child_name** (str) - 子Cell名称。
|
||||
- **child_cell** (Cell) - 要插入的子Cell。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **KeyError** - 如果子Cell的名称不正确或与其他子Cell名称重复。
|
||||
- **TypeError** - 如果子Cell的类型不正确。
|
||||
异常:
|
||||
- **KeyError** - 如果子Cell的名称不正确或与其他子Cell名称重复。
|
||||
- **TypeError** - 如果子Cell的类型不正确。
|
||||
|
||||
.. py:method:: insert_param_to_cell(param_name, param, check_name_contain_dot=True)
|
||||
|
||||
|
@ -263,16 +234,14 @@
|
|||
|
||||
将指定名称的参数添加到Cell中。目前在 `mindspore.nn.Cell.__setattr__` 中使用。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **param_name** (str) - 参数名称。
|
||||
- **param** (Parameter) - 要插入到Cell的参数。
|
||||
- **check_name_contain_dot** (bool) - 是否对 `param_name` 中的"."进行检查。默认值:True。
|
||||
|
||||
- **param_name** (str) - 参数名称。
|
||||
- **param** (Parameter) - 要插入到Cell的参数。
|
||||
- **check_name_contain_dot** (bool) - 是否对 `param_name` 中的"."进行检查。默认值:True。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **KeyError** - 如果参数名称为空或包含"."。
|
||||
- **TypeError** - 如果参数的类型不是Parameter。
|
||||
异常:
|
||||
- **KeyError** - 如果参数名称为空或包含"."。
|
||||
- **TypeError** - 如果参数的类型不是Parameter。
|
||||
|
||||
.. py:method:: load_parameter_slice(params)
|
||||
|
||||
|
@ -280,9 +249,8 @@
|
|||
|
||||
请参考 `mindspore.common._Executor.compile` 源代码中的用法。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **params** (dict) - 用于初始化数据图的参数字典。
|
||||
参数:
|
||||
- **params** (dict) - 用于初始化数据图的参数字典。
|
||||
|
||||
.. py:method:: name_cells()
|
||||
|
||||
|
@ -290,9 +258,8 @@
|
|||
|
||||
包括Cell名称和Cell本身。
|
||||
|
||||
**返回:**
|
||||
|
||||
Dict[String, Cell],Cell中的所有子Cell及其名称。
|
||||
返回:
|
||||
Dict[String, Cell],Cell中的所有子Cell及其名称。
|
||||
|
||||
.. py:method:: param_prefix
|
||||
:property:
|
||||
|
@ -310,38 +277,32 @@
|
|||
|
||||
包含参数名称和参数本身。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **name_prefix** (str) - 作用域。默认值: ''。
|
||||
- **expand** (bool) - 如果为True,则递归地获取当前Cell和所有子Cell的参数及名称;如果为False,只生成当前Cell的子Cell的参数及名称。默认值:True。
|
||||
|
||||
- **name_prefix** (str) - 作用域。默认值: ''。
|
||||
- **expand** (bool) - 如果为True,则递归地获取当前Cell和所有子Cell的参数及名称;如果为False,只生成当前Cell的子Cell的参数及名称。默认值:True。
|
||||
|
||||
**返回:**
|
||||
|
||||
迭代器,Cell的名称和Cell本身。
|
||||
返回:
|
||||
迭代器,Cell的名称和Cell本身。
|
||||
|
||||
.. py:method:: parameters_broadcast_dict(recurse=True)
|
||||
|
||||
获取这个Cell的参数广播字典。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **recurse** (bool) - 是否包含子Cell的参数。 默认值:True。
|
||||
|
||||
- **recurse** (bool) - 是否包含子Cell的参数。 默认值:True。
|
||||
|
||||
**返回:**
|
||||
|
||||
OrderedDict,返回参数广播字典。
|
||||
返回:
|
||||
OrderedDict,返回参数广播字典。
|
||||
|
||||
.. py:method:: parameters_dict(recurse=True)
|
||||
|
||||
获取此Cell的parameter字典。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **recurse** (bool) - 是否递归得包含所有子Cell的parameter。默认值:True。
|
||||
|
||||
- **recurse** (bool) - 是否递归得包含所有子Cell的parameter。默认值:True。
|
||||
|
||||
**返回:**
|
||||
|
||||
OrderedDict类型,返回参数字典。
|
||||
返回:
|
||||
OrderedDict类型,返回参数字典。
|
||||
|
||||
.. py:method:: recompute(**kwargs)
|
||||
|
||||
|
@ -355,10 +316,9 @@
|
|||
- 当应用了重计算且内存充足时,可以配置'mp_comm_recompute=False'来提升性能。
|
||||
- 当应用了重计算但内存不足时,可以配置'parallel_optimizer_comm_recompute=True'来节省内存。有相同融合group的Cell应该配置相同的parallel_optimizer_comm_recompute。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **mp_comm_recompute** (bool) - 表示在自动并行或半自动并行模式下,指定Cell内部由模型并行引入的通信操作是否重计算。默认值:True。
|
||||
- **parallel_optimizer_comm_recompute** (bool) - 表示在自动并行或半自动并行模式下,指定Cell内部由优化器并行引入的AllGather通信是否重计算。默认值:False。
|
||||
参数:
|
||||
- **mp_comm_recompute** (bool) - 表示在自动并行或半自动并行模式下,指定Cell内部由模型并行引入的通信操作是否重计算。默认值:True。
|
||||
- **parallel_optimizer_comm_recompute** (bool) - 表示在自动并行或半自动并行模式下,指定Cell内部由优化器并行引入的AllGather通信是否重计算。默认值:False。
|
||||
|
||||
.. py:method:: register_backward_hook(hook_fn)
|
||||
|
||||
|
@ -371,17 +331,14 @@
|
|||
- 为了避免脚本在切换到图模式时运行失败,不建议在Cell对象的 `construct` 函数中调用 `register_backward_hook(hook_fn)` 。
|
||||
- PyNative模式下,如果在Cell对象的 `construct` 函数中调用 `register_backward_hook(hook_fn)` ,那么Cell对象每次运行都将增加一个 `hook_fn` 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **hook_fn** (function) - 捕获Cell对象信息和反向输入,输出梯度的hook_fn函数。
|
||||
|
||||
- **hook_fn** (function) - 捕获Cell对象信息和反向输入,输出梯度的hook_fn函数。
|
||||
返回:
|
||||
`mindspore.common.hook_handle.HookHandle` 类型,与 `hook_fn` 函数对应的 `handle` 对象。可通过调用 `handle.remove()` 来删除添加的 `hook_fn` 函数。
|
||||
|
||||
**返回:**
|
||||
|
||||
`mindspore.common.hook_handle.HookHandle` 类型,与 `hook_fn` 函数对应的 `handle` 对象。可通过调用 `handle.remove()` 来删除添加的 `hook_fn` 函数。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - 如果 `hook_fn` 不是Python函数。
|
||||
异常:
|
||||
- **TypeError** - 如果 `hook_fn` 不是Python函数。
|
||||
|
||||
.. py:method:: register_forward_hook(hook_fn)
|
||||
|
||||
|
@ -394,17 +351,14 @@
|
|||
- 为了避免脚本在切换到图模式时运行失败,不建议在Cell对象的 `construct` 函数中调用 `register_forward_hook(hook_fn)` 。
|
||||
- PyNative模式下,如果在Cell对象的 `construct` 函数中调用 `register_forward_hook(hook_fn)` ,那么Cell对象每次运行都将增加一个 `hook_fn` 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **hook_fn** (function) - 捕获Cell对象信息和正向输入,输出数据的hook_fn函数。
|
||||
|
||||
- **hook_fn** (function) - 捕获Cell对象信息和正向输入,输出数据的hook_fn函数。
|
||||
返回:
|
||||
`mindspore.common.hook_handle.HookHandle` 类型,与 `hook_fn` 函数对应的 `handle` 对象。可通过调用 `handle.remove()` 来删除添加的 `hook_fn` 函数。
|
||||
|
||||
**返回:**
|
||||
|
||||
`mindspore.common.hook_handle.HookHandle` 类型,与 `hook_fn` 函数对应的 `handle` 对象。可通过调用 `handle.remove()` 来删除添加的 `hook_fn` 函数。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - 如果 `hook_fn` 不是Python函数。
|
||||
异常:
|
||||
- **TypeError** - 如果 `hook_fn` 不是Python函数。
|
||||
|
||||
.. py:method:: register_forward_pre_hook(hook_fn)
|
||||
|
||||
|
@ -417,17 +371,14 @@
|
|||
- 为了避免脚本在切换到图模式时运行失败,不建议在Cell对象的 `construct` 函数中调用 `register_forward_pre_hook(hook_fn)` 。
|
||||
- PyNative模式下,如果在Cell对象的 `construct` 函数中调用 `register_forward_pre_hook(hook_fn)` ,那么Cell对象每次运行都将增加一个 `hook_fn` 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **hook_fn** (function) - 捕获Cell对象信息和正向输入数据的hook_fn函数。
|
||||
|
||||
- **hook_fn** (function) - 捕获Cell对象信息和正向输入数据的hook_fn函数。
|
||||
返回:
|
||||
`mindspore.common.hook_handle.HookHandle` 类型,与 `hook_fn` 函数对应的 `handle` 对象。可通过调用 `handle.remove()` 来删除添加的 `hook_fn` 函数。
|
||||
|
||||
**返回:**
|
||||
|
||||
`mindspore.common.hook_handle.HookHandle` 类型,与 `hook_fn` 函数对应的 `handle` 对象。可通过调用 `handle.remove()` 来删除添加的 `hook_fn` 函数。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - 如果 `hook_fn` 不是Python函数。
|
||||
异常:
|
||||
- **TypeError** - 如果 `hook_fn` 不是Python函数。
|
||||
|
||||
.. py:method:: remove_redundant_parameters()
|
||||
|
||||
|
@ -442,14 +393,12 @@
|
|||
.. note::
|
||||
该函数已经弃用,将会在未来版本中删除,不推荐使用此函数。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **cast_inputs** (tuple) - Cell的输入。
|
||||
- **kwargs** (dict) - 关键字参数。
|
||||
|
||||
- **cast_inputs** (tuple) - Cell的输入。
|
||||
- **kwargs** (dict) - 关键字参数。
|
||||
|
||||
**返回:**
|
||||
|
||||
Cell的输出。
|
||||
返回:
|
||||
Cell的输出。
|
||||
|
||||
.. py:method:: set_auto_parallel()
|
||||
|
||||
|
@ -461,14 +410,13 @@
|
|||
|
||||
为Cell设置编译时所使用的JitConfig配置项。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **jit_config** (JitConfig) - Cell的Jit配置信息。目前支持下面两个配置项。
|
||||
- **jit_level** (str) - 用于设置优化图的'level'参数。 取值范围['O0'、'O1'、'O2']。默认值:'O1'。
|
||||
参数:
|
||||
- **jit_config** (JitConfig) - Cell的Jit配置信息。目前支持下面两个配置项。
|
||||
- **jit_level** (str) - 用于设置优化图的'level'参数。 取值范围['O0'、'O1'、'O2']。默认值:'O1'。
|
||||
- **O0** :基本优化。
|
||||
- **O1** :手动优化。
|
||||
- **O2** :手动优化和图算融合。
|
||||
- **task_sink** (bool) - 是否通过数据集方式传递数据。默认值:True。
|
||||
- **task_sink** (bool) - 是否通过数据集方式传递数据。默认值:True。
|
||||
|
||||
.. py:method:: set_boost(boost_type)
|
||||
|
||||
|
@ -479,25 +427,21 @@
|
|||
|
||||
.. note:: 部分加速算法可能影响网络精度,请谨慎选择。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **boost_type** (str) - 加速算法。
|
||||
|
||||
- **boost_type** (str) - 加速算法。
|
||||
返回:
|
||||
Cell类型,Cell本身。
|
||||
|
||||
**返回:**
|
||||
|
||||
Cell类型,Cell本身。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - 如果 `boost_type` 不在boost算法库内。
|
||||
异常:
|
||||
- **ValueError** - 如果 `boost_type` 不在boost算法库内。
|
||||
|
||||
.. py:method:: set_broadcast_flag(mode=True)
|
||||
|
||||
设置该Cell的参数广播模式。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **mode** (bool) - 指定当前模式是否进行参数广播。默认值:True。
|
||||
参数:
|
||||
- **mode** (bool) - 指定当前模式是否进行参数广播。默认值:True。
|
||||
|
||||
.. py:method:: set_comm_fusion(fusion_type, recurse=True)
|
||||
|
||||
|
@ -505,10 +449,9 @@
|
|||
|
||||
.. note:: 当函数被多次调用时,此属性值将被重写。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **fusion_type** (int) - Parameter的 `comm_fusion` 属性的设置值。
|
||||
- **recurse** (bool) - 是否递归地设置子Cell的可训练参数。默认值:True。
|
||||
参数:
|
||||
- **fusion_type** (int) - Parameter的 `comm_fusion` 属性的设置值。
|
||||
- **recurse** (bool) - 是否递归地设置子Cell的可训练参数。默认值:True。
|
||||
|
||||
.. py:method:: set_data_parallel()
|
||||
|
||||
|
@ -520,22 +463,19 @@
|
|||
|
||||
Cell的梯度设置。在PyNative模式下,该参数指定Cell是否需要梯度。如果为True,则在执行正向网络时,将生成需要计算梯度的反向网络。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **requires_grad** (bool) - 指定网络是否需要梯度,如果为True,PyNative模式下Cell将构建反向网络。默认值:True。
|
||||
|
||||
- **requires_grad** (bool) - 指定网络是否需要梯度,如果为True,PyNative模式下Cell将构建反向网络。默认值:True。
|
||||
|
||||
**返回:**
|
||||
|
||||
Cell类型,Cell本身。
|
||||
返回:
|
||||
Cell类型,Cell本身。
|
||||
|
||||
.. py:method:: set_inputs(*inputs)
|
||||
|
||||
设置编译计算图所需的输入,输入需与数据一致。若使用Model接口,请确保所有传入Model的网络和损失函数都配置了set_inputs。
|
||||
输入可以为动态或静态的Tensor。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **inputs** (tuple) - Cell的输入。
|
||||
参数:
|
||||
- **inputs** (tuple) - Cell的输入。
|
||||
|
||||
.. note::
|
||||
这是一个实验接口,可能会被更改或者删除。
|
||||
|
@ -544,19 +484,17 @@
|
|||
|
||||
通过并行策略对输入张量进行切分。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **inputs** (tuple) - construct方法的输入。
|
||||
参数:
|
||||
- **inputs** (tuple) - construct方法的输入。
|
||||
|
||||
.. py:method:: set_param_fl(push_to_server=False, pull_from_server=False, requires_aggr=True)
|
||||
|
||||
设置参数与服务器交互的方式。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **push_to_server** (bool) - 是否将参数推送到服务器。默认值:False。
|
||||
- **pull_from_server** (bool) - 是否从服务器提取参数。默认值:False。
|
||||
- **requires_aggr** (bool) - 是否在服务器中聚合参数。默认值:True。
|
||||
参数:
|
||||
- **push_to_server** (bool) - 是否将参数推送到服务器。默认值:False。
|
||||
- **pull_from_server** (bool) - 是否从服务器提取参数。默认值:False。
|
||||
- **requires_aggr** (bool) - 是否在服务器中聚合参数。默认值:True。
|
||||
|
||||
.. py:method:: set_param_ps(recurse=True, init_in_server=False)
|
||||
|
||||
|
@ -564,10 +502,9 @@
|
|||
|
||||
.. note:: 只在运行的任务处于参数服务器模式时有效。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **recurse** (bool) - 是否设置子网络的可训练参数。默认值:True。
|
||||
- **init_in_server** (bool) - 是否在服务器上初始化由参数服务器更新的可训练参数。默认值:False。
|
||||
参数:
|
||||
- **recurse** (bool) - 是否设置子网络的可训练参数。默认值:True。
|
||||
- **init_in_server** (bool) - 是否在服务器上初始化由参数服务器更新的可训练参数。默认值:False。
|
||||
|
||||
.. py:method:: set_train(mode=True)
|
||||
|
||||
|
@ -575,13 +512,11 @@
|
|||
|
||||
设置当前Cell和所有子Cell的训练模式。对于训练和预测具有不同结构的网络层(如 `BatchNorm`),将通过这个属性区分分支。如果设置为True,则执行训练分支,否则执行另一个分支。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **mode** (bool) - 指定模型是否为训练模式。默认值:True。
|
||||
|
||||
- **mode** (bool) - 指定模型是否为训练模式。默认值:True。
|
||||
|
||||
**返回:**
|
||||
|
||||
Cell类型,Cell本身。
|
||||
返回:
|
||||
Cell类型,Cell本身。
|
||||
|
||||
.. py:method:: shard(in_strategy, out_strategy, device="Ascend", level=0)
|
||||
|
||||
|
@ -591,16 +526,14 @@
|
|||
|
||||
.. note:: 需设置为PyNative模式,并且全自动并行(AUTO_PARALLEL),同时设置 `set_auto_parallel_context` 中的搜索模式(search mode)为"sharding_propagation"。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **in_strategy** (tuple) - 指定各输入的切分策略,输入元组的每个元素可以为元组或None,元组即具体指定输入每一维的切分策略,None则会默认以数据并行执行。
|
||||
- **out_strategy** (tuple) - 指定各输出的切分策略,用法同in_strategy。
|
||||
- **device** (string) - 指定执行设备,可以为["CPU", "GPU", "Ascend"]中任意一个,默认值:"Ascend"。目前尚未使能。
|
||||
- **level** (int) - 指定搜索切分策略的目标函数,即是最大化计算通信比、最小化内存消耗、最大化执行速度等。可以为[0, 1, 2]中任意一个,默认值:0。目前仅支持最大化计算通信比,其余模式尚未使能。
|
||||
|
||||
- **in_strategy** (tuple) - 指定各输入的切分策略,输入元组的每个元素可以为元组或None,元组即具体指定输入每一维的切分策略,None则会默认以数据并行执行。
|
||||
- **out_strategy** (tuple) - 指定各输出的切分策略,用法同in_strategy。
|
||||
- **device** (string) - 指定执行设备,可以为["CPU", "GPU", "Ascend"]中任意一个,默认值:"Ascend"。目前尚未使能。
|
||||
- **level** (int) - 指定搜索切分策略的目标函数,即是最大化计算通信比、最小化内存消耗、最大化执行速度等。可以为[0, 1, 2]中任意一个,默认值:0。目前仅支持最大化计算通信比,其余模式尚未使能。
|
||||
|
||||
**返回:**
|
||||
|
||||
Cell类型,Cell本身。
|
||||
返回:
|
||||
Cell类型,Cell本身。
|
||||
|
||||
.. py:method:: to_float(dst_type)
|
||||
|
||||
|
@ -610,17 +543,14 @@
|
|||
|
||||
.. note:: 多次调用将产生覆盖。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **dst_type** (mindspore.dtype) - Cell转换为 `dst_type` 类型运行。 `dst_type` 可以是 `mindspore.dtype.float16` 或者 `mindspore.dtype.float32` 。
|
||||
|
||||
- **dst_type** (mindspore.dtype) - Cell转换为 `dst_type` 类型运行。 `dst_type` 可以是 `mindspore.dtype.float16` 或者 `mindspore.dtype.float32` 。
|
||||
返回:
|
||||
Cell类型,Cell本身。
|
||||
|
||||
**返回:**
|
||||
|
||||
Cell类型,Cell本身。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - 如果 `dst_type` 不是 `mindspore.dtype.float32` ,也不是 `mindspore.dtype.float16`。
|
||||
异常:
|
||||
- **ValueError** - 如果 `dst_type` 不是 `mindspore.dtype.float32` ,也不是 `mindspore.dtype.float16`。
|
||||
|
||||
.. py:method:: trainable_params(recurse=True)
|
||||
|
||||
|
@ -628,13 +558,11 @@
|
|||
|
||||
返回一个可训练参数的列表。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **recurse** (bool) - 是否递归地包含当前Cell的所有子Cell的可训练参数。默认值:True。
|
||||
|
||||
- **recurse** (bool) - 是否递归地包含当前Cell的所有子Cell的可训练参数。默认值:True。
|
||||
|
||||
**返回:**
|
||||
|
||||
List类型,可训练参数列表。
|
||||
返回:
|
||||
List类型,可训练参数列表。
|
||||
|
||||
.. py:method:: untrainable_params(recurse=True)
|
||||
|
||||
|
@ -642,13 +570,11 @@
|
|||
|
||||
返回一个不可训练参数的列表。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **recurse** (bool) - 是否递归地包含当前Cell的所有子Cell的不可训练参数。默认值:True。
|
||||
|
||||
- **recurse** (bool) - 是否递归地包含当前Cell的所有子Cell的不可训练参数。默认值:True。
|
||||
|
||||
**返回:**
|
||||
|
||||
List类型,不可训练参数列表。
|
||||
返回:
|
||||
List类型,不可训练参数列表。
|
||||
|
||||
.. py:method:: update_cell_prefix()
|
||||
|
||||
|
@ -662,15 +588,13 @@
|
|||
|
||||
此方法将Cell类型设置为 `cell_type` 。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **cell_type** (str) - 被更新的类型,`cell_type` 可以是"quant"或"second-order"。
|
||||
参数:
|
||||
- **cell_type** (str) - 被更新的类型,`cell_type` 可以是"quant"或"second-order"。
|
||||
|
||||
.. py:method:: update_parameters_name(prefix='', recurse=True)
|
||||
|
||||
给网络参数名称添加 `prefix` 前缀字符串。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **prefix** (str) - 前缀字符串。默认值:''。
|
||||
- **recurse** (bool) - 是否递归地包含所有子Cell的参数。默认值:True。
|
||||
参数:
|
||||
- **prefix** (str) - 前缀字符串。默认值:''。
|
||||
- **recurse** (bool) - 是否递归地包含所有子Cell的参数。默认值:True。
|
||||
|
|
|
@ -7,35 +7,30 @@ mindspore.nn.CellList
|
|||
|
||||
CellList可以像普通Python列表一样使用,其包含的Cell均已初始化。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **args** (list,可选) - Cell列表。
|
||||
参数:
|
||||
- **args** (list,可选) - Cell列表。
|
||||
|
||||
.. py:method:: append(cell)
|
||||
|
||||
在列表末尾添加一个Cell。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **cell** (Cell) - 要添加的Cell。
|
||||
参数:
|
||||
- **cell** (Cell) - 要添加的Cell。
|
||||
|
||||
.. py:method:: extend(cells)
|
||||
|
||||
将cells中的Cell添加到列表末尾。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **cells** (list) - 要添加的Cell列表。
|
||||
|
||||
- **cells** (list) - 要添加的Cell列表。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - cells中的元素不是Cell。
|
||||
异常:
|
||||
- **TypeError** - cells中的元素不是Cell。
|
||||
|
||||
.. py:method:: insert(index, cell)
|
||||
|
||||
在列表中的给定索引之前插入给定的Cell。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **index** (int) - 给定的列表索引。
|
||||
- **cell** (Cell) - 要插入的Cell。
|
||||
参数:
|
||||
- **index** (int) - 给定的列表索引。
|
||||
- **cell** (Cell) - 要插入的Cell。
|
|
@ -5,19 +5,15 @@ mindspore.nn.CentralCrop
|
|||
|
||||
根据指定比例裁剪出图像的中心区域。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **central_fraction** (float) - 裁剪比例,必须是float,并且在范围(0.0, 1.0]内。
|
||||
|
||||
- **central_fraction** (float) - 裁剪比例,必须是float,并且在范围(0.0, 1.0]内。
|
||||
输入:
|
||||
- **image** (Tensor) - shape为 :math:`(C, H, W)` 的三维Tensor,或shape为 :math:`(N,C,H,W)` 的四维Tensor。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,基于输入的三维或四维的float Tensor。
|
||||
|
||||
- **image** (Tensor) - shape为 :math:`(C, H, W)` 的三维Tensor,或shape为 :math:`(N,C,H,W)` 的四维Tensor。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,基于输入的三维或四维的float Tensor。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `central_fraction` 不是float。
|
||||
- **ValueError** - `central_fraction` 不在范围(0.0, 1.0]内。
|
||||
异常:
|
||||
- **TypeError** - `central_fraction` 不是float。
|
||||
- **ValueError** - `central_fraction` 不在范围(0.0, 1.0]内。
|
|
@ -13,20 +13,16 @@ mindspore.nn.ClipByNorm
|
|||
|
||||
其中 :math:`L_2(X)` 是 :math:`X` 的 :math:`L_2` 范数。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **axis** (Union[None, int, tuple(int)]) - 指定在哪个维度上计算 :math:`L_2` 范数。如果为None,则计算所有维度。默认值:None。
|
||||
|
||||
- **axis** (Union[None, int, tuple(int)]) - 指定在哪个维度上计算 :math:`L_2` 范数。如果为None,则计算所有维度。默认值:None。
|
||||
输入:
|
||||
- **x** (Tensor) - 输入n维的Tensor,数据类型为float32或float16。
|
||||
- **clip_norm** (Tensor) - shape为 :math:`()` 或 :math:`(1)` 的Tensor。或者其shape可以广播到 `x` 的shape。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,裁剪后的Tensor与输入 `x` 的shape相同,数据类型为float32。
|
||||
|
||||
- **x** (Tensor) - 输入n维的Tensor,数据类型为float32或float16。
|
||||
- **clip_norm** (Tensor) - shape为 :math:`()` 或 :math:`(1)` 的Tensor。或者其shape可以广播到 `x` 的shape。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,裁剪后的Tensor与输入 `x` 的shape相同,数据类型为float32。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `axis` 不是None、int、或tuple。
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
异常:
|
||||
- **TypeError** - `axis` 不是None、int、或tuple。
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
|
@ -7,10 +7,9 @@ mindspore.nn.ConfusionMatrix
|
|||
|
||||
如果只想使用混淆矩阵,请使用该类。如果想计算"PPV"、"TPR"、"TNR"等,请使用'mindspore.nn.ConfusionMatrixMetric'类。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **num_classes** (int) - 数据集中的类别数量。
|
||||
- **normalize** (str) - 计算ConfsMatrix的参数支持四种归一化模式,默认值:'no_norm'。
|
||||
参数:
|
||||
- **num_classes** (int) - 数据集中的类别数量。
|
||||
- **normalize** (str) - 计算ConfsMatrix的参数支持四种归一化模式,默认值:'no_norm'。
|
||||
|
||||
- **"no_norm"** (None) - 不使用标准化。
|
||||
- **"target"** (str) - 基于目标值的标准化。
|
||||
|
@ -27,20 +26,17 @@ mindspore.nn.ConfusionMatrix
|
|||
|
||||
计算混淆矩阵。
|
||||
|
||||
**返回:**
|
||||
|
||||
numpy.ndarray,计算的结果。
|
||||
返回:
|
||||
numpy.ndarray,计算的结果。
|
||||
|
||||
.. py:method:: update(*inputs)
|
||||
|
||||
使用y_pred和y更新内部评估结果。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- ***inputs** (tuple) - 输入 `y_pred` 和 `y` 。 `y_pred` 和 `y` 是 `Tensor` 、列表或数组。
|
||||
`y_pred` 是预测值, `y` 是真实值, `y_pred` 的shape是 :math:`(N, C, ...)` 或 :math:`(N, ...)` , `y` 的shape是 :math:`(N, ...)` 。
|
||||
|
||||
- ***inputs** (tuple) - 输入 `y_pred` 和 `y` 。 `y_pred` 和 `y` 是 `Tensor` 、列表或数组。
|
||||
`y_pred` 是预测值, `y` 是真实值, `y_pred` 的shape是 :math:`(N, C, ...)` 或 :math:`(N, ...)` , `y` 的shape是 :math:`(N, ...)` 。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - 输入参数的数量不等于2。
|
||||
- **ValueError** - 如果预测值和标签的维度不一致。
|
||||
异常:
|
||||
- **ValueError** - 输入参数的数量不等于2。
|
||||
- **ValueError** - 如果预测值和标签的维度不一致。
|
||||
|
|
|
@ -11,16 +11,15 @@ mindspore.nn.ConfusionMatrixMetric
|
|||
如果要使用混淆矩阵计算,如"PPV"、"TPR"、"TNR",请使用此类。
|
||||
如果只想计算混淆矩阵,请使用'mindspore.nn.ConfusionMatrix'。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **skip_channel** (bool) - 是否跳过预测输出的第一个通道的度量计算。默认值:True。
|
||||
- **metric_name** (str) - 建议采用如下指标。当然,也可以为这些指标设置通用别名。
|
||||
取值范围:["sensitivity", "specificity", "precision", "negative predictive value", "miss rate", "fall out", "false discovery rate", "false omission rate", "prevalence threshold", "threat score", "accuracy", "balanced accuracy", "f1 score", "matthews correlation coefficient", "fowlkes mallows index", "informedness", "markedness"]。
|
||||
默认值:"sensitivity"。
|
||||
- **calculation_method** (bool) - 如果为True,则计算每个样本的度量值。如果为False,则累积所有样本的混淆矩阵。
|
||||
对于分类任务, `calculation_method` 应为False。默认值:False。
|
||||
- **decrease** (str) - 定义减少一批数据计算结果的模式。仅当 `calculation_method` 为True时,才生效。
|
||||
取值范围:["none", "mean", "sum", "mean_batch", "sum_batch", "mean_channel", "sum_channel"]。默认值:"mean"。
|
||||
参数:
|
||||
- **skip_channel** (bool) - 是否跳过预测输出的第一个通道的度量计算。默认值:True。
|
||||
- **metric_name** (str) - 建议采用如下指标。当然,也可以为这些指标设置通用别名。
|
||||
取值范围:["sensitivity", "specificity", "precision", "negative predictive value", "miss rate", "fall out", "false discovery rate", "false omission rate", "prevalence threshold", "threat score", "accuracy", "balanced accuracy", "f1 score", "matthews correlation coefficient", "fowlkes mallows index", "informedness", "markedness"]。
|
||||
默认值:"sensitivity"。
|
||||
- **calculation_method** (bool) - 如果为True,则计算每个样本的度量值。如果为False,则累积所有样本的混淆矩阵。
|
||||
对于分类任务, `calculation_method` 应为False。默认值:False。
|
||||
- **decrease** (str) - 定义减少一批数据计算结果的模式。仅当 `calculation_method` 为True时,才生效。
|
||||
取值范围:["none", "mean", "sum", "mean_batch", "sum_batch", "mean_channel", "sum_channel"]。默认值:"mean"。
|
||||
|
||||
.. py:method:: clear()
|
||||
|
||||
|
@ -30,23 +29,20 @@ mindspore.nn.ConfusionMatrixMetric
|
|||
|
||||
计算混淆矩阵度量。
|
||||
|
||||
**返回:**
|
||||
|
||||
numpy.ndarray,计算的结果。
|
||||
返回:
|
||||
numpy.ndarray,计算的结果。
|
||||
|
||||
.. py:method:: update(*inputs)
|
||||
|
||||
使用预测值和目标值更新状态。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **inputs** (tuple) - `y_pred` 和 `y` 。 `y_pred` 和 `y` 是 `Tensor` 、列表或数组。
|
||||
参数:
|
||||
- **inputs** (tuple) - `y_pred` 和 `y` 。 `y_pred` 和 `y` 是 `Tensor` 、列表或数组。
|
||||
|
||||
- **y_pred** (ndarray):待计算的输入数据。格式必须为one-hot,且第一个维度是batch。
|
||||
`y_pred` 的shape是 :math:`(N, C, ...)` 或 :math:`(N, ...)` 。
|
||||
至于分类任务, `y_pred` 的shape应为[BN],其中N大于1。对于分割任务,shape应为[BNHW]或[BNHWD]。
|
||||
- **y** (ndarray):计算度量值的真实值。格式必须为one-hot,且第一个维度是batch。`y` 的shape是 :math:`(N, C, ...)` 。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - 输入参数的数量不等于2。
|
||||
异常:
|
||||
- **ValueError** - 输入参数的数量不等于2。
|
||||
|
|
|
@ -5,18 +5,15 @@ mindspore.nn.ConstantPad1d
|
|||
|
||||
将给定的常量填充到多维输入数据的最后一维。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **padding** (Union[int, tuple]) - 指定填充的大小。如果 `padding` 的类型为int,则在输入最后一维的前后均填充 `padding` 大小,如果padding的类型为tuple,形如(padding_0, padding_1),那么输入 `x` 对应输出的最后一维的shape为 :math:`padding\_0 + x.shape[-1] + padding\_1` ,输出的其余维度与输入保持一致。
|
||||
- **value** (Union[int, float]) - 填充值。
|
||||
|
||||
- **padding** (Union[int, tuple]) - 指定填充的大小。如果 `padding` 的类型为int,则在输入最后一维的前后均填充 `padding` 大小,如果padding的类型为tuple,形如(padding_0, padding_1),那么输入 `x` 对应输出的最后一维的shape为 :math:`padding\_0 + x.shape[-1] + padding\_1` ,输出的其余维度与输入保持一致。
|
||||
- **value** (Union[int, float]) - 填充值。
|
||||
返回:
|
||||
Tensor,填充后的Tensor。
|
||||
|
||||
**返回:**
|
||||
|
||||
Tensor,填充后的Tensor。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `padding` 既不是tuple或者int。
|
||||
- **TypeError** - `value` 既不是int,也不是float。
|
||||
- **ValueError** - tuple类型的 `padding` 长度不等于2。
|
||||
- **ValueError** - 填充后输出的维度不是正数。
|
||||
异常:
|
||||
- **TypeError** - `padding` 既不是tuple或者int。
|
||||
- **TypeError** - `value` 既不是int,也不是float。
|
||||
- **ValueError** - tuple类型的 `padding` 长度不等于2。
|
||||
- **ValueError** - 填充后输出的维度不是正数。
|
||||
|
|
|
@ -5,18 +5,15 @@ mindspore.nn.ConstantPad2d
|
|||
|
||||
将给定的常量填充到多维输入数据的最后两维。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **padding** (Union[int, tuple]) - 对输入的最后两维进行填充的大小。如果padding的类型为int,则在输入最后两维的前后均填充 `padding` 大小,如果padding为长度为4的tuple,形如(padding_0, padding_1, padding_2, padding_3),那么输入 `x` 对应输出的最后一维的shape为 :math:`padding\_0 + x.shape[-1] + padding\_1` ,输入 `x` 对应输出的倒数第二维的shape为 :math:`padding\_2 + x.shape[-2] + padding\_3` ,输出的其余维度与输入保持一致。
|
||||
- **value** (Union[int, float]) - 填充值。
|
||||
|
||||
- **padding** (Union[int, tuple]) - 对输入的最后两维进行填充的大小。如果padding的类型为int,则在输入最后两维的前后均填充 `padding` 大小,如果padding为长度为4的tuple,形如(padding_0, padding_1, padding_2, padding_3),那么输入 `x` 对应输出的最后一维的shape为 :math:`padding\_0 + x.shape[-1] + padding\_1` ,输入 `x` 对应输出的倒数第二维的shape为 :math:`padding\_2 + x.shape[-2] + padding\_3` ,输出的其余维度与输入保持一致。
|
||||
- **value** (Union[int, float]) - 填充值。
|
||||
返回:
|
||||
Tensor,填充后的Tensor。
|
||||
|
||||
**返回:**
|
||||
|
||||
Tensor,填充后的Tensor。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `padding` 既不是tuple或者int。
|
||||
- **TypeError** - `value` 既不是int,也不是float。
|
||||
- **ValueError** - tuple类型的 `padding` 长度大于4或者长度不是2的倍数。
|
||||
- **ValueError** - 填充后输出的维度不是正数。
|
||||
异常:
|
||||
- **TypeError** - `padding` 既不是tuple或者int。
|
||||
- **TypeError** - `value` 既不是int,也不是float。
|
||||
- **ValueError** - tuple类型的 `padding` 长度大于4或者长度不是2的倍数。
|
||||
- **ValueError** - 填充后输出的维度不是正数。
|
||||
|
|
|
@ -5,18 +5,15 @@ mindspore.nn.ConstantPad3d
|
|||
|
||||
将给定的常量填充到多维输入数据的最后三维。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **padding** (Union[int, tuple]) - 对输入的最后三维进行填充的大小。如果padding的类型为int,则在输入最后三维的前后均填充 `padding` 大小,如果padding为长度为6的tuple,形如(padding_0, padding_1, padding_2, padding_3, padding_4, padding_5),那么输入 `x` 对应输出的最后一维的shape为 :math:`padding\_0 + x.shape[-1] + padding\_1` ,输入 `x` 对应输出的倒数第二维的shape为 :math:`padding\_2 + x.shape[-2] + padding\_3` ,输入 `x` 对应输出的倒数第三维的shape为 :math:`padding\_4 + x.shape[-3] + padding\_5` ,输出的其余维度与输入保持一致。
|
||||
- **value** (Union[int, float]) - 填充值。
|
||||
|
||||
- **padding** (Union[int, tuple]) - 对输入的最后三维进行填充的大小。如果padding的类型为int,则在输入最后三维的前后均填充 `padding` 大小,如果padding为长度为6的tuple,形如(padding_0, padding_1, padding_2, padding_3, padding_4, padding_5),那么输入 `x` 对应输出的最后一维的shape为 :math:`padding\_0 + x.shape[-1] + padding\_1` ,输入 `x` 对应输出的倒数第二维的shape为 :math:`padding\_2 + x.shape[-2] + padding\_3` ,输入 `x` 对应输出的倒数第三维的shape为 :math:`padding\_4 + x.shape[-3] + padding\_5` ,输出的其余维度与输入保持一致。
|
||||
- **value** (Union[int, float]) - 填充值。
|
||||
返回:
|
||||
Tensor,填充后的Tensor。
|
||||
|
||||
**返回:**
|
||||
|
||||
Tensor,填充后的Tensor。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `padding` 既不是tuple或者int。
|
||||
- **TypeError** - `value` 既不是int,也不是float。
|
||||
- **ValueError** - tuple类型的 `padding` 长度大于6或者长度不是2的倍数。
|
||||
- **ValueError** - 填充后输出的维度不是正数。
|
||||
异常:
|
||||
- **TypeError** - `padding` 既不是tuple或者int。
|
||||
- **TypeError** - `value` 既不是int,也不是float。
|
||||
- **ValueError** - tuple类型的 `padding` 长度大于6或者长度不是2的倍数。
|
||||
- **ValueError** - 填充后输出的维度不是正数。
|
||||
|
|
|
@ -17,51 +17,47 @@ mindspore.nn.Conv1d
|
|||
完整卷积核的shape为 :math:`(C_{out}, C_{in} / \text{group}, \text{kernel_size})` ,其中 `group` 是在空间维度上分割输入 `x` 的组数。
|
||||
详细介绍请参考论文 `Gradient Based Learning Applied to Document Recognition <http://vision.stanford.edu/cs598_spring07/papers/Lecun98.pdf>`_ 。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **in_channels** (int) - Conv1d层输入Tensor的空间维度。
|
||||
- **out_channels** (int) - Conv1d层输出Tensor的空间维度。
|
||||
- **kernel_size** (int) - 指定一维卷积核的宽度。
|
||||
- **stride** (int) - 一维卷积核的移动步长,默认值:1。
|
||||
- **pad_mode** (str) - 指定填充模式。可选值为 "same","valid","pad"。默认值:"same"。
|
||||
参数:
|
||||
- **in_channels** (int) - Conv1d层输入Tensor的空间维度。
|
||||
- **out_channels** (int) - Conv1d层输出Tensor的空间维度。
|
||||
- **kernel_size** (int) - 指定一维卷积核的宽度。
|
||||
- **stride** (int) - 一维卷积核的移动步长,默认值:1。
|
||||
- **pad_mode** (str) - 指定填充模式。可选值为 "same","valid","pad"。默认值:"same"。
|
||||
|
||||
- same:输出的宽度与输入整除 `stride` 后的值相同。若设置该模式,`padding` 的值必须为0。
|
||||
- valid:在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。如果设置此模式,则 `padding` 的值必须为0。
|
||||
- pad:对输入进行填充。在输入对两侧填充 `padding` 大小的0。如果设置此模式, `padding` 的值必须大于或等于0。
|
||||
- same:输出的宽度与输入整除 `stride` 后的值相同。若设置该模式,`padding` 的值必须为0。
|
||||
- valid:在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。如果设置此模式,则 `padding` 的值必须为0。
|
||||
- pad:对输入进行填充。在输入对两侧填充 `padding` 大小的0。如果设置此模式, `padding` 的值必须大于或等于0。
|
||||
|
||||
- **padding** (int) - 输入两侧填充的数量。值应该要大于等于0,默认值:0。
|
||||
- **dilation** (int) - 一维卷积核膨胀尺寸。若 :math:`k > 1` ,则kernel间隔 `k` 个元素进行采样。 `k` 取值范围为[1, L]。默认值:1。
|
||||
- **group** (int) - 将过滤器拆分为组, `in_channels` 和 `out_channels` 必须可被 `group` 整除。默认值:1。
|
||||
- **has_bias** (bool) - Conv1d层是否添加偏置参数。默认值:False。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。它可以是Tensor,str,Initializer或numbers.Number。当使用str时,可选"TruncatedNormal","Normal","Uniform","HeUniform"和"XavierUniform"分布以及常量"One"和"Zero"分布的值,可接受别名"xavier_uniform","he_uniform","ones"和"zeros"。上述字符串大小写均可。更多细节请参考Initializer的值。默认值:"normal"。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。可以使用的初始化方法与"weight_init"相同。更多细节请参考Initializer的值。默认值:"zeros"。
|
||||
- **padding** (int) - 输入两侧填充的数量。值应该要大于等于0,默认值:0。
|
||||
- **dilation** (int) - 一维卷积核膨胀尺寸。若 :math:`k > 1` ,则kernel间隔 `k` 个元素进行采样。 `k` 取值范围为[1, L]。默认值:1。
|
||||
- **group** (int) - 将过滤器拆分为组, `in_channels` 和 `out_channels` 必须可被 `group` 整除。默认值:1。
|
||||
- **has_bias** (bool) - Conv1d层是否添加偏置参数。默认值:False。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。它可以是Tensor,str,Initializer或numbers.Number。当使用str时,可选"TruncatedNormal","Normal","Uniform","HeUniform"和"XavierUniform"分布以及常量"One"和"Zero"分布的值,可接受别名"xavier_uniform","he_uniform","ones"和"zeros"。上述字符串大小写均可。更多细节请参考Initializer的值。默认值:"normal"。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。可以使用的初始化方法与"weight_init"相同。更多细节请参考Initializer的值。默认值:"zeros"。
|
||||
|
||||
**输入:**
|
||||
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, L_{in})` 的Tensor。
|
||||
输入:
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, L_{in})` 的Tensor。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,shape为 :math:`(N, C_{out}, L_{out})` 。
|
||||
输出:
|
||||
Tensor,shape为 :math:`(N, C_{out}, L_{out})` 。
|
||||
|
||||
pad_mode为"same"时:
|
||||
pad_mode为"same"时:
|
||||
|
||||
.. math::
|
||||
L_{out} = \left \lfloor{\frac{L_{in}}{\text{stride}} + 1} \right \rfloor
|
||||
.. math::
|
||||
L_{out} = \left \lfloor{\frac{L_{in}}{\text{stride}} + 1} \right \rfloor
|
||||
|
||||
pad_mode为"valid"时:
|
||||
pad_mode为"valid"时:
|
||||
|
||||
.. math::
|
||||
L_{out} = \left \lfloor{\frac{L_{in} - \text{dilation} \times (\text{kernel_size} - 1) }{\text{stride}} + 1} \right \rfloor
|
||||
.. math::
|
||||
L_{out} = \left \lfloor{\frac{L_{in} - \text{dilation} \times (\text{kernel_size} - 1) }{\text{stride}} + 1} \right \rfloor
|
||||
|
||||
pad_mode为"pad"时:
|
||||
pad_mode为"pad"时:
|
||||
|
||||
.. math::
|
||||
L_{out} = \left \lfloor{\frac{L_{in} + 2 \times padding - (\text{dilation} - 1) \times \text{kernel_size} - 1 }{\text{stride}} + 1} \right \rfloor
|
||||
.. math::
|
||||
L_{out} = \left \lfloor{\frac{L_{in} + 2 \times padding - (\text{dilation} - 1) \times \text{kernel_size} - 1 }{\text{stride}} + 1} \right \rfloor
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `in_channels` 、 `out_channels` 、 `kernel_size` 、 `stride` 、 `padding` 或 `dilation` 不是int。
|
||||
- **ValueError** - `in_channels` 、 `out_channels` 、 `kernel_size` 、 `stride` 或 `dilation` 小于1。
|
||||
- **ValueError** - `padding` 小于0。
|
||||
- **ValueError** - `pad_mode` 不是"same","valid"或"pad"。
|
||||
异常:
|
||||
- **TypeError** - `in_channels` 、 `out_channels` 、 `kernel_size` 、 `stride` 、 `padding` 或 `dilation` 不是int。
|
||||
- **ValueError** - `in_channels` 、 `out_channels` 、 `kernel_size` 、 `stride` 或 `dilation` 小于1。
|
||||
- **ValueError** - `padding` 小于0。
|
||||
- **ValueError** - `pad_mode` 不是"same","valid"或"pad"。
|
||||
|
|
|
@ -11,51 +11,47 @@ mindspore.nn.Conv1dTranspose
|
|||
当Conv1d和ConvTranspose1d使用相同的参数初始化时,且 `pad_mode` 设置为"pad",它们会在输入的两端填充 :math:`dilation * (kernel\_size - 1) - padding` 个零,这种情况下它们的输入和输出shape是互逆的。
|
||||
然而,当 `stride` 大于1时,Conv1d会将多个输入的shape映射到同一个输出shape。反卷积网络可以参考 `Deconvolutional Networks <https://www.matthewzeiler.com/mattzeiler/deconvolutionalnetworks.pdf>`_ 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **in_channels** (int) - Conv1dTranspose层输入Tensor的空间维度。
|
||||
- **out_channels** (int) - Conv1dTranspose层输出Tensor的空间维度。
|
||||
- **kernel_size** (int) - 指定一维卷积核的宽度。
|
||||
- **stride** (int) - 一维卷积核的移动步长,默认值:1。
|
||||
- **pad_mode** (str) - 指定填充模式。可选值为"same"、"valid"、"pad"。默认值:"same"。
|
||||
|
||||
- **in_channels** (int) - Conv1dTranspose层输入Tensor的空间维度。
|
||||
- **out_channels** (int) - Conv1dTranspose层输出Tensor的空间维度。
|
||||
- **kernel_size** (int) - 指定一维卷积核的宽度。
|
||||
- **stride** (int) - 一维卷积核的移动步长,默认值:1。
|
||||
- **pad_mode** (str) - 指定填充模式。可选值为"same"、"valid"、"pad"。默认值:"same"。
|
||||
- same:输出的宽度与输入整除 `stride` 后的值相同。若设置该模式, `padding` 的值必须为0。
|
||||
- valid:在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。如果设置此模式,则 `padding` 的值必须为0。
|
||||
- pad:对输入进行填充。在输入对两侧填充 `padding` 大小的0。如果设置此模式, `padding` 必须大于或等于0。
|
||||
|
||||
- same:输出的宽度与输入整除 `stride` 后的值相同。若设置该模式, `padding` 的值必须为0。
|
||||
- valid:在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。如果设置此模式,则 `padding` 的值必须为0。
|
||||
- pad:对输入进行填充。在输入对两侧填充 `padding` 大小的0。如果设置此模式, `padding` 必须大于或等于0。
|
||||
- **padding** (int) - 输入两侧填充的数量。默认值:0。
|
||||
- **dilation** (int) - 一维卷积核膨胀尺寸。若 :math:`k > 1` ,则kernel间隔 `k` 个元素进行采样。 `k` 取值范围为[1, L]。默认值:1。
|
||||
- **group** (int) - 将过滤器拆分为组, `in_channels` 和 `out_channels` 必须可被 `group` 整除。当 `group` 大于1时,暂不支持Ascend平台。默认值:1。
|
||||
- **has_bias** (bool) - Conv1dTranspose层是否添加偏置参数。默认值:False。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。它可以是Tensor,str,Initializer或numbers.Number。当使用str时,可选"TruncatedNormal","Normal","Uniform","HeUniform"和"XavierUniform"分布以及常量"One"和"Zero"分布的值,可接受别名"xavier_uniform","he_uniform","ones"和"zeros"。上述字符串大小写均可。更多细节请参考Initializer的值。默认值:"normal"。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。可以使用的初始化方法与"weight_init"相同。更多细节请参考Initializer的值。默认值:"zeros"。
|
||||
|
||||
- **padding** (int) - 输入两侧填充的数量。默认值:0。
|
||||
- **dilation** (int) - 一维卷积核膨胀尺寸。若 :math:`k > 1` ,则kernel间隔 `k` 个元素进行采样。 `k` 取值范围为[1, L]。默认值:1。
|
||||
- **group** (int) - 将过滤器拆分为组, `in_channels` 和 `out_channels` 必须可被 `group` 整除。当 `group` 大于1时,暂不支持Ascend平台。默认值:1。
|
||||
- **has_bias** (bool) - Conv1dTranspose层是否添加偏置参数。默认值:False。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。它可以是Tensor,str,Initializer或numbers.Number。当使用str时,可选"TruncatedNormal","Normal","Uniform","HeUniform"和"XavierUniform"分布以及常量"One"和"Zero"分布的值,可接受别名"xavier_uniform","he_uniform","ones"和"zeros"。上述字符串大小写均可。更多细节请参考Initializer的值。默认值:"normal"。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。可以使用的初始化方法与"weight_init"相同。更多细节请参考Initializer的值。默认值:"zeros"。
|
||||
输入:
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, L_{in})` 的Tensor。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,shape为 :math:`(N, C_{out}, L_{out})` 。
|
||||
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, L_{in})` 的Tensor。
|
||||
当 `pad_mode` 设置为"same"时:
|
||||
|
||||
**输出:**
|
||||
.. math::
|
||||
L_{out} = \frac{ L_{in} + \text{stride} - 1 }{ \text{stride} }
|
||||
|
||||
Tensor,shape为 :math:`(N, C_{out}, L_{out})` 。
|
||||
当 `pad_mode` 设置为"valid"时:
|
||||
|
||||
当 `pad_mode` 设置为"same"时:
|
||||
.. math::
|
||||
L_{out} = (L_{in} - 1) \times \text{stride} + \text{dilation} \times (\text{kernel_size} - 1) + 1
|
||||
|
||||
.. math::
|
||||
L_{out} = \frac{ L_{in} + \text{stride} - 1 }{ \text{stride} }
|
||||
当 `pad_mode` 设置为"pad"时:
|
||||
|
||||
当 `pad_mode` 设置为"valid"时:
|
||||
.. math::
|
||||
L_{out} = (L_{in} - 1) \times \text{stride} - 2 \times \text{padding} + \text{dilation} \times (\text{kernel_size} - 1) + 1
|
||||
|
||||
.. math::
|
||||
L_{out} = (L_{in} - 1) \times \text{stride} + \text{dilation} \times (\text{kernel_size} - 1) + 1
|
||||
|
||||
当 `pad_mode` 设置为"pad"时:
|
||||
|
||||
.. math::
|
||||
L_{out} = (L_{in} - 1) \times \text{stride} - 2 \times \text{padding} + \text{dilation} \times (\text{kernel_size} - 1) + 1
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `in_channels` 、 `out_channels` 、 `kernel_size` 、 `stride` 、 `padding` 或 `dilation` 不是int。
|
||||
- **ValueError** - `in_channels` 、 `out_channels` 、 `kernel_size` 、 `stride` 或 `dilation` 小于1。
|
||||
- **ValueError** - `padding` 小于0。
|
||||
- **ValueError** - `pad_mode` 不是"same","valid"或"pad"。
|
||||
异常:
|
||||
- **TypeError** - `in_channels` 、 `out_channels` 、 `kernel_size` 、 `stride` 、 `padding` 或 `dilation` 不是int。
|
||||
- **ValueError** - `in_channels` 、 `out_channels` 、 `kernel_size` 、 `stride` 或 `dilation` 小于1。
|
||||
- **ValueError** - `padding` 小于0。
|
||||
- **ValueError** - `pad_mode` 不是"same","valid"或"pad"。
|
||||
|
|
|
@ -16,69 +16,65 @@ mindspore.nn.Conv2d
|
|||
此时,输入Tensor对应的 `data_format` 为"NCHW",完整卷积核的shape为 :math:`(C_{out}, C_{in} / \text{group}, \text{kernel_size[0]}, \text{kernel_size[1]})` ,其中 `group` 是在空间维度上分割输入 `x` 的组数。如果输入Tensor对应的 `data_format` 为"NHWC",完整卷积核的shape则为 :math:`(C_{out}, \text{kernel_size[0]}, \text{kernel_size[1]}), C_{in} / \text{group}`。
|
||||
详细介绍请参考论文 `Gradient Based Learning Applied to Document Recognition <http://vision.stanford.edu/cs598_spring07/papers/Lecun98.pdf>`_ 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **in_channels** (`int`) - Conv2d层输入Tensor的空间维度。
|
||||
- **out_channels** (`dict`) - Conv2d层输出Tensor的空间维度。
|
||||
- **kernel_size** (`Union[int, tuple[int]]`) - 指定二维卷积核的高度和宽度。数据类型为整型或两个整型的tuple。一个整数表示卷积核的高度和宽度均为该值。两个整数的tuple分别表示卷积核的高度和宽度。
|
||||
- **stride** (`Union[int, tuple[int]]`) - 二维卷积核的移动步长。数据类型为整型或两个整型的tuple。一个整数表示在高度和宽度方向的移动步长均为该值。两个整数的tuple分别表示在高度和宽度方向的移动步长。默认值:1。
|
||||
- **pad_mode** (`str`) - 指定填充模式。可选值为"same"、"valid"、"pad"。默认值:"same"。
|
||||
|
||||
- **in_channels** (`int`) - Conv2d层输入Tensor的空间维度。
|
||||
- **out_channels** (`dict`) - Conv2d层输出Tensor的空间维度。
|
||||
- **kernel_size** (`Union[int, tuple[int]]`) - 指定二维卷积核的高度和宽度。数据类型为整型或两个整型的tuple。一个整数表示卷积核的高度和宽度均为该值。两个整数的tuple分别表示卷积核的高度和宽度。
|
||||
- **stride** (`Union[int, tuple[int]]`) - 二维卷积核的移动步长。数据类型为整型或两个整型的tuple。一个整数表示在高度和宽度方向的移动步长均为该值。两个整数的tuple分别表示在高度和宽度方向的移动步长。默认值:1。
|
||||
- **pad_mode** (`str`) - 指定填充模式。可选值为"same"、"valid"、"pad"。默认值:"same"。
|
||||
- **same**:输出的高度和宽度分别与输入整除 `stride` 后的值相同。若设置该模式,`padding` 的值必须为0。
|
||||
- **valid**:在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。如果设置此模式,则 `padding` 的值必须为0。
|
||||
- **pad**:对输入进行填充。在输入的高度和宽度方向上填充 `padding` 大小的0。如果设置此模式, `padding` 必须大于或等于0。
|
||||
|
||||
- **same**:输出的高度和宽度分别与输入整除 `stride` 后的值相同。若设置该模式,`padding` 的值必须为0。
|
||||
- **valid**:在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。如果设置此模式,则 `padding` 的值必须为0。
|
||||
- **pad**:对输入进行填充。在输入的高度和宽度方向上填充 `padding` 大小的0。如果设置此模式, `padding` 必须大于或等于0。
|
||||
- **padding** (`Union[int, tuple[int]]`) - 输入的高度和宽度方向上填充的数量。数据类型为int或包含4个整数的tuple。如果 `padding` 是一个整数,那么上、下、左、右的填充都等于 `padding` 。如果 `padding` 是一个有4个整数的tuple,那么上、下、左、右的填充分别等于 `padding[0]` 、 `padding[1]` 、 `padding[2]` 和 `padding[3]` 。值应该要大于等于0,默认值:0。
|
||||
- **dilation** (`Union[int, tuple[int]]`) - 二维卷积核膨胀尺寸。数据类型为整型或具有两个整型的tuple。若 :math:`k > 1` ,则kernel间隔 `k` 个元素进行采样。垂直和水平方向上的 `k` ,其取值范围分别为[1, H]和[1, W]。默认值:1。
|
||||
- **group** (`int`) - 将过滤器拆分为组, `in_channels` 和 `out_channels` 必须可被 `group` 整除。如果组数等于 `in_channels` 和 `out_channels` ,这个二维卷积层也被称为二维深度卷积层。默认值:1.
|
||||
- **has_bias** (`bool`) - Conv2d层是否添加偏置参数。默认值:False。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。它可以是Tensor,str,Initializer或numbers.Number。当使用str时,可选"TruncatedNormal","Normal","Uniform","HeUniform"和"XavierUniform"分布以及常量"One"和"Zero"分布的值,可接受别名"xavier_uniform","he_uniform","ones"和"zeros"。上述字符串大小写均可。更多细节请参考Initializer的值。默认值:"normal"。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。可以使用的初始化方法与"weight_init"相同。更多细节请参考Initializer的值。默认值:"zeros"。
|
||||
- **data_format** (`str`) - 数据格式的可选值有"NHWC","NCHW"。默认值:"NCHW"。
|
||||
|
||||
- **padding** (`Union[int, tuple[int]]`) - 输入的高度和宽度方向上填充的数量。数据类型为int或包含4个整数的tuple。如果 `padding` 是一个整数,那么上、下、左、右的填充都等于 `padding` 。如果 `padding` 是一个有4个整数的tuple,那么上、下、左、右的填充分别等于 `padding[0]` 、 `padding[1]` 、 `padding[2]` 和 `padding[3]` 。值应该要大于等于0,默认值:0。
|
||||
- **dilation** (`Union[int, tuple[int]]`) - 二维卷积核膨胀尺寸。数据类型为整型或具有两个整型的tuple。若 :math:`k > 1` ,则kernel间隔 `k` 个元素进行采样。垂直和水平方向上的 `k` ,其取值范围分别为[1, H]和[1, W]。默认值:1。
|
||||
- **group** (`int`) - 将过滤器拆分为组, `in_channels` 和 `out_channels` 必须可被 `group` 整除。如果组数等于 `in_channels` 和 `out_channels` ,这个二维卷积层也被称为二维深度卷积层。默认值:1.
|
||||
- **has_bias** (`bool`) - Conv2d层是否添加偏置参数。默认值:False。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。它可以是Tensor,str,Initializer或numbers.Number。当使用str时,可选"TruncatedNormal","Normal","Uniform","HeUniform"和"XavierUniform"分布以及常量"One"和"Zero"分布的值,可接受别名"xavier_uniform","he_uniform","ones"和"zeros"。上述字符串大小写均可。更多细节请参考Initializer的值。默认值:"normal"。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。可以使用的初始化方法与"weight_init"相同。更多细节请参考Initializer的值。默认值:"zeros"。
|
||||
- **data_format** (`str`) - 数据格式的可选值有"NHWC","NCHW"。默认值:"NCHW"。
|
||||
输入:
|
||||
- **x** (Tensor) - Shape为 :math:`(N, C_{in}, H_{in}, W_{in})` 或者 :math:`(N, H_{in}, W_{in}, C_{in})` 的Tensor。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,shape为 :math:`(N, C_{out}, H_{out}, W_{out})` 或者 :math:`(N, H_{out}, W_{out}, C_{out})` 。
|
||||
|
||||
- **x** (Tensor) - Shape为 :math:`(N, C_{in}, H_{in}, W_{in})` 或者 :math:`(N, H_{in}, W_{in}, C_{in})` 的Tensor。
|
||||
pad_mode为"same"时:
|
||||
|
||||
**输出:**
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in}}{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in}}{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
Tensor,shape为 :math:`(N, C_{out}, H_{out}, W_{out})` 或者 :math:`(N, H_{out}, W_{out}, C_{out})` 。
|
||||
pad_mode为"valid"时:
|
||||
|
||||
pad_mode为"same"时:
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} - \text{dilation[0]} \times (\text{kernel_size[0]} - 1) }
|
||||
{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} - \text{dilation[1]} \times (\text{kernel_size[1]} - 1) }
|
||||
{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in}}{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in}}{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
pad_mode为"pad"时:
|
||||
|
||||
pad_mode为"valid"时:
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} + padding[0] + padding[1] - (\text{dilation[0]} - 1) \times
|
||||
\text{kernel_size[0]} - 1 }{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} + padding[2] + padding[3] - (\text{dilation[1]} - 1) \times
|
||||
\text{kernel_size[1]} - 1 }{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} - \text{dilation[0]} \times (\text{kernel_size[0]} - 1) }
|
||||
{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} - \text{dilation[1]} \times (\text{kernel_size[1]} - 1) }
|
||||
{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
pad_mode为"pad"时:
|
||||
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} + padding[0] + padding[1] - (\text{dilation[0]} - 1) \times
|
||||
\text{kernel_size[0]} - 1 }{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} + padding[2] + padding[3] - (\text{dilation[1]} - 1) \times
|
||||
\text{kernel_size[1]} - 1 }{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - 如果 `in_channels` , `out_channels` 或者 `group` 不是整数。
|
||||
- **TypeError** - 如果 `kernel_size` , `stride`,`padding` 或者 `dilation` 既不是整数也不是tuple。
|
||||
- **ValueError** - 如果 `in_channels` , `out_channels`,`kernel_size` , `stride` 或者 `dilation` 小于1。
|
||||
- **ValueError** - 如果 `padding` 小于0。
|
||||
- **ValueError** - 如果 `pad_mode` 不是"same","valid"或"pad"。
|
||||
- **ValueError** - 如果 `padding` 是一个长度不等于4的tuple。
|
||||
- **ValueError** - 如果 `pad_mode` 不等于"pad"且 `padding` 不等于(0,0,0,0)。
|
||||
- **ValueError** - 如果 `data_format` 既不是"NCHW"也不是"NHWC"。
|
||||
异常:
|
||||
- **TypeError** - 如果 `in_channels` , `out_channels` 或者 `group` 不是整数。
|
||||
- **TypeError** - 如果 `kernel_size` , `stride`,`padding` 或者 `dilation` 既不是整数也不是tuple。
|
||||
- **ValueError** - 如果 `in_channels` , `out_channels`,`kernel_size` , `stride` 或者 `dilation` 小于1。
|
||||
- **ValueError** - 如果 `padding` 小于0。
|
||||
- **ValueError** - 如果 `pad_mode` 不是"same","valid"或"pad"。
|
||||
- **ValueError** - 如果 `padding` 是一个长度不等于4的tuple。
|
||||
- **ValueError** - 如果 `pad_mode` 不等于"pad"且 `padding` 不等于(0,0,0,0)。
|
||||
- **ValueError** - 如果 `data_format` 既不是"NCHW"也不是"NHWC"。
|
||||
|
|
|
@ -11,67 +11,63 @@ mindspore.nn.Conv2dTranspose
|
|||
当Conv2d和ConvTranspose2d使用相同的参数初始化时,且 `pad_mode` 设置为"pad",它们会在输入的高度和宽度方向上填充 :math:`dilation * (kernel\_size - 1) - padding` 个零,这种情况下它们的输入和输出shape是互逆的。
|
||||
然而,当 `stride` 大于1时,Conv2d会将多个输入的shape映射到同一个输出shape。反卷积网络可以参考 `Deconvolutional Networks <https://www.matthewzeiler.com/mattzeiler/deconvolutionalnetworks.pdf>`_ 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **in_channels** (`int`) - Conv2dTranspose层输入Tensor的空间维度。
|
||||
- **out_channels** (`dict`) - Conv2dTranspose层输出Tensor的空间维度。
|
||||
- **kernel_size** (`Union[int, tuple[int]]`) - 指定二维卷积核的高度和宽度。数据类型为整型或两个整型的tuple。一个整数表示卷积核的高度和宽度均为该值。两个整数的tuple分别表示卷积核的高度和宽度。
|
||||
- **stride** (`Union[int, tuple[int]]`) - 二维卷积核的移动步长。数据类型为整型或两个整型的tuple。一个整数表示在高度和宽度方向的移动步长均为该值。两个整数的tuple分别表示在高度和宽度方向的移动步长。默认值:1。
|
||||
- **pad_mode** (`str`) - 指定填充模式。可选值为"same"、"valid"、"pad"。默认值:"same"。
|
||||
|
||||
- **in_channels** (`int`) - Conv2dTranspose层输入Tensor的空间维度。
|
||||
- **out_channels** (`dict`) - Conv2dTranspose层输出Tensor的空间维度。
|
||||
- **kernel_size** (`Union[int, tuple[int]]`) - 指定二维卷积核的高度和宽度。数据类型为整型或两个整型的tuple。一个整数表示卷积核的高度和宽度均为该值。两个整数的tuple分别表示卷积核的高度和宽度。
|
||||
- **stride** (`Union[int, tuple[int]]`) - 二维卷积核的移动步长。数据类型为整型或两个整型的tuple。一个整数表示在高度和宽度方向的移动步长均为该值。两个整数的tuple分别表示在高度和宽度方向的移动步长。默认值:1。
|
||||
- **pad_mode** (`str`) - 指定填充模式。可选值为"same"、"valid"、"pad"。默认值:"same"。
|
||||
- **same**:输出的高度和宽度分别与输入整除 `stride` 后的值相同。若设置该模式,`padding` 的值必须为0。
|
||||
- **valid**:在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。如果设置此模式,则 `padding` 的值必须为0。
|
||||
- **pad**:对输入进行填充。在输入的高度和宽度方向上填充 `padding` 大小的0。如果设置此模式, `padding` 必须大于或等于0。
|
||||
|
||||
- **same**:输出的高度和宽度分别与输入整除 `stride` 后的值相同。若设置该模式,`padding` 的值必须为0。
|
||||
- **valid**:在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。如果设置此模式,则 `padding` 的值必须为0。
|
||||
- **pad**:对输入进行填充。在输入的高度和宽度方向上填充 `padding` 大小的0。如果设置此模式, `padding` 必须大于或等于0。
|
||||
- **padding** (`Union[int, tuple[int]]`) - 输入的高度和宽度方向上填充的数量。数据类型为整型或包含四个整数的tuple。如果 `padding` 是一个整数,那么上、下、左、右的填充都等于 `padding` 。如果 `padding` 是一个有四个整数的tuple,那么上、下、左、右的填充分别等于 `padding[0]` 、 `padding[1]` 、 `padding[2]` 和 `padding[3]` 。值应该要大于等于0,默认值:0。
|
||||
- **dilation** (`Union[int, tuple[int]]`) - 二维卷积核膨胀尺寸。数据类型为整型或具有两个整型的tuple。若 :math:`k > 1` ,则kernel间隔 `k` 个元素进行采样。高度和宽度方向上的 `k` ,其取值范围分别为[1, H]和[1, W]。默认值:1。
|
||||
- **group** (`int`) - 将过滤器拆分为组, `in_channels` 和 `out_channels` 必须可被 `group` 整除。如果组数等于 `in_channels` 和 `out_channels` ,这个二维卷积层也被称为二维深度卷积层。默认值:1.
|
||||
- **has_bias** (`bool`) - Conv2dTranspose层是否添加偏置参数。默认值:False。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。它可以是Tensor,str,Initializer或numbers.Number。当使用str时,可选"TruncatedNormal","Normal","Uniform","HeUniform"和"XavierUniform"分布以及常量"One"和"Zero"分布的值,可接受别名"xavier_uniform","he_uniform","ones"和"zeros"。上述字符串大小写均可。更多细节请参考Initializer的值。默认值:"normal"。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。可以使用的初始化方法与"weight_init"相同。更多细节请参考Initializer的值。默认值:"zeros"。
|
||||
|
||||
- **padding** (`Union[int, tuple[int]]`) - 输入的高度和宽度方向上填充的数量。数据类型为整型或包含四个整数的tuple。如果 `padding` 是一个整数,那么上、下、左、右的填充都等于 `padding` 。如果 `padding` 是一个有四个整数的tuple,那么上、下、左、右的填充分别等于 `padding[0]` 、 `padding[1]` 、 `padding[2]` 和 `padding[3]` 。值应该要大于等于0,默认值:0。
|
||||
- **dilation** (`Union[int, tuple[int]]`) - 二维卷积核膨胀尺寸。数据类型为整型或具有两个整型的tuple。若 :math:`k > 1` ,则kernel间隔 `k` 个元素进行采样。高度和宽度方向上的 `k` ,其取值范围分别为[1, H]和[1, W]。默认值:1。
|
||||
- **group** (`int`) - 将过滤器拆分为组, `in_channels` 和 `out_channels` 必须可被 `group` 整除。如果组数等于 `in_channels` 和 `out_channels` ,这个二维卷积层也被称为二维深度卷积层。默认值:1.
|
||||
- **has_bias** (`bool`) - Conv2dTranspose层是否添加偏置参数。默认值:False。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。它可以是Tensor,str,Initializer或numbers.Number。当使用str时,可选"TruncatedNormal","Normal","Uniform","HeUniform"和"XavierUniform"分布以及常量"One"和"Zero"分布的值,可接受别名"xavier_uniform","he_uniform","ones"和"zeros"。上述字符串大小写均可。更多细节请参考Initializer的值。默认值:"normal"。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。可以使用的初始化方法与"weight_init"相同。更多细节请参考Initializer的值。默认值:"zeros"。
|
||||
输入:
|
||||
- **x** (Tensor) - Shape 为 :math:`(N, C_{in}, H_{in}, W_{in})` 的Tensor。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,shape为 :math:`(N, C_{out}, H_{out}, W_{out})` 。
|
||||
|
||||
- **x** (Tensor) - Shape 为 :math:`(N, C_{in}, H_{in}, W_{in})` 的Tensor。
|
||||
pad_mode为"same"时:
|
||||
|
||||
**输出:**
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in}}{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in}}{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
Tensor,shape为 :math:`(N, C_{out}, H_{out}, W_{out})` 。
|
||||
pad_mode为"valid"时:
|
||||
|
||||
pad_mode为"same"时:
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} - \text{dilation[0]} \times (\text{kernel_size[0]} - 1) }
|
||||
{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} - \text{dilation[1]} \times (\text{kernel_size[1]} - 1) }
|
||||
{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in}}{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in}}{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
pad_mode为"pad"时:
|
||||
|
||||
pad_mode为"valid"时:
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} + padding[0] + padding[1] - (\text{dilation[0]} - 1) \times
|
||||
\text{kernel_size[0]} - 1 }{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} + padding[2] + padding[3] - (\text{dilation[1]} - 1) \times
|
||||
\text{kernel_size[1]} - 1 }{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} - \text{dilation[0]} \times (\text{kernel_size[0]} - 1) }
|
||||
{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} - \text{dilation[1]} \times (\text{kernel_size[1]} - 1) }
|
||||
{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
pad_mode为"pad"时:
|
||||
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} + padding[0] + padding[1] - (\text{dilation[0]} - 1) \times
|
||||
\text{kernel_size[0]} - 1 }{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} + padding[2] + padding[3] - (\text{dilation[1]} - 1) \times
|
||||
\text{kernel_size[1]} - 1 }{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - 如果 `in_channels` ,`out_channels` 或者 `group` 不是整数。
|
||||
- **TypeError** - 如果 `kernel_size` ,`stride` ,`padding` 或者 `dilation` 既不是整数也不是tuple。
|
||||
- **ValueError** - 如果 `in_channels` ,`out_channels` , `kernel_size` , `stride` 或者 `dilation` 小于1。
|
||||
- **ValueError** - 如果 `padding` 小于0。
|
||||
- **ValueError** - 如果 `pad_mode` 不是"same","valid"或"pad"。
|
||||
- **ValueError** - 如果 `padding` 是一个长度不等于4的tuple。
|
||||
- **ValueError** - 如果 `pad_mode` 不等于"pad"且 `padding` 不等于(0,0,0,0)。
|
||||
异常:
|
||||
- **TypeError** - 如果 `in_channels` ,`out_channels` 或者 `group` 不是整数。
|
||||
- **TypeError** - 如果 `kernel_size` ,`stride` ,`padding` 或者 `dilation` 既不是整数也不是tuple。
|
||||
- **ValueError** - 如果 `in_channels` ,`out_channels` , `kernel_size` , `stride` 或者 `dilation` 小于1。
|
||||
- **ValueError** - 如果 `padding` 小于0。
|
||||
- **ValueError** - 如果 `pad_mode` 不是"same","valid"或"pad"。
|
||||
- **ValueError** - 如果 `padding` 是一个长度不等于4的tuple。
|
||||
- **ValueError** - 如果 `pad_mode` 不等于"pad"且 `padding` 不等于(0,0,0,0)。
|
||||
|
|
|
@ -16,74 +16,70 @@ mindspore.nn.Conv3d
|
|||
完整卷积核的shape为 :math:`(C_{out}, C_{in} / \text{group}, \text{kernel_size[0]}, \text{kernel_size[1]}, \text{kernel_size[2]})` ,其中 `group` 是在空间维度上分割输入 `x` 的组数。
|
||||
详细介绍请参考论文 `Gradient Based Learning Applied to Document Recognition <http://vision.stanford.edu/cs598_spring07/papers/Lecun98.pdf>`_ 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **in_channels** (int) - Conv3d层输入Tensor的空间维度。
|
||||
- **out_channels** (int) - Conv3d层输出Tensor的空间维度。
|
||||
- **kernel_size** (Union[int, tuple[int]]) - 指定三维卷积核的深度、高度和宽度。数据类型为int或包含三个整数的tuple。一个整数表示卷积核的深度、高度和宽度均为该值该值。包含三个整数的tuple分别表示卷积核的深度、高度和宽度。
|
||||
- **stride** (Union[int, tuple[int]]) - 三维卷积核的移动步长。数据类型为整型或三个整型的tuple。一个整数表示在深度、高度和宽度方向的移动步长均为该值。三个整数的tuple分别表示在深度、高度和宽度方向的移动步长。默认值:1。
|
||||
- **pad_mode** (str) - 指定填充模式。可选值为"same"、"valid"、"pad"。默认值:"same"。
|
||||
|
||||
- **in_channels** (int) - Conv3d层输入Tensor的空间维度。
|
||||
- **out_channels** (int) - Conv3d层输出Tensor的空间维度。
|
||||
- **kernel_size** (Union[int, tuple[int]]) - 指定三维卷积核的深度、高度和宽度。数据类型为int或包含三个整数的tuple。一个整数表示卷积核的深度、高度和宽度均为该值该值。包含三个整数的tuple分别表示卷积核的深度、高度和宽度。
|
||||
- **stride** (Union[int, tuple[int]]) - 三维卷积核的移动步长。数据类型为整型或三个整型的tuple。一个整数表示在深度、高度和宽度方向的移动步长均为该值。三个整数的tuple分别表示在深度、高度和宽度方向的移动步长。默认值:1。
|
||||
- **pad_mode** (str) - 指定填充模式。可选值为"same"、"valid"、"pad"。默认值:"same"。
|
||||
- same:输出的深度、高度和宽度分别与输入整除 `stride` 后的值相同。若设置该模式,`padding` 的值必须为0。
|
||||
- valid:在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。如果设置此模式,则 `padding` 的值必须为0。
|
||||
- pad:对输入进行填充。 在输入的深度、高度和宽度方向上填充 `padding` 大小的0。如果设置此模式, `padding` 必须大于或等于0。
|
||||
|
||||
- same:输出的深度、高度和宽度分别与输入整除 `stride` 后的值相同。若设置该模式,`padding` 的值必须为0。
|
||||
- valid:在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。如果设置此模式,则 `padding` 的值必须为0。
|
||||
- pad:对输入进行填充。 在输入的深度、高度和宽度方向上填充 `padding` 大小的0。如果设置此模式, `padding` 必须大于或等于0。
|
||||
- **padding** (Union(int, tuple[int])) - 输入的深度、高度和宽度方向上填充的数量。数据类型为int或包含6个整数的tuple。如果 `padding` 是一个整数,则前部、后部、顶部,底部,左边和右边的填充都等于 `padding` 。如果 `padding` 是6个整数的tuple,则前部、尾部、顶部、底部、左边和右边的填充分别等于填充padding[0]、padding[1]、padding[2]、padding[3]、padding[4]和padding[5]。值应该要大于等于0,默认值:0。
|
||||
- **dilation** (Union[int, tuple[int]]) - 三维卷积核膨胀尺寸。数据类型为int或三个整数的tuple。若取值k > 1,则kernel对每k个元素进行采样。在深度、高度和宽度方向上的取值范围分别为[1, D]、[1, H]和[1, W]。默认值:1。
|
||||
- **group** (int) - 将过滤器拆分为组, `in_channels` 和 `out_channels` 必须可被 `group` 整除。默认值:1。当前仅支持1。
|
||||
- **has_bias** (bool) - Conv3d层是否添加偏置参数。默认值:False。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。它可以是Tensor,str,Initializer或numbers.Number。当使用str时,可选"TruncatedNormal","Normal","Uniform","HeUniform"和"XavierUniform"分布以及常量"One"和"Zero"分布的值,可接受别名"xavier_uniform","he_uniform","ones"和"zeros"。上述字符串大小写均可。更多细节请参考Initializer的值。默认值:"normal"。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。可以使用的初始化方法与"weight_init"相同。更多细节请参考Initializer的值。默认值:"zeros"。
|
||||
- **data_format** (str) - 数据格式的可选值。目前仅支持"NCDHW"。
|
||||
|
||||
- **padding** (Union(int, tuple[int])) - 输入的深度、高度和宽度方向上填充的数量。数据类型为int或包含6个整数的tuple。如果 `padding` 是一个整数,则前部、后部、顶部,底部,左边和右边的填充都等于 `padding` 。如果 `padding` 是6个整数的tuple,则前部、尾部、顶部、底部、左边和右边的填充分别等于填充padding[0]、padding[1]、padding[2]、padding[3]、padding[4]和padding[5]。值应该要大于等于0,默认值:0。
|
||||
- **dilation** (Union[int, tuple[int]]) - 三维卷积核膨胀尺寸。数据类型为int或三个整数的tuple。若取值k > 1,则kernel对每k个元素进行采样。在深度、高度和宽度方向上的取值范围分别为[1, D]、[1, H]和[1, W]。默认值:1。
|
||||
- **group** (int) - 将过滤器拆分为组, `in_channels` 和 `out_channels` 必须可被 `group` 整除。默认值:1。当前仅支持1。
|
||||
- **has_bias** (bool) - Conv3d层是否添加偏置参数。默认值:False。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。它可以是Tensor,str,Initializer或numbers.Number。当使用str时,可选"TruncatedNormal","Normal","Uniform","HeUniform"和"XavierUniform"分布以及常量"One"和"Zero"分布的值,可接受别名"xavier_uniform","he_uniform","ones"和"zeros"。上述字符串大小写均可。更多细节请参考Initializer的值。默认值:"normal"。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。可以使用的初始化方法与"weight_init"相同。更多细节请参考Initializer的值。默认值:"zeros"。
|
||||
- **data_format** (str) - 数据格式的可选值。目前仅支持"NCDHW"。
|
||||
输入:
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, D_{in}, H_{in}, W_{in})` 的Tensor。目前输入数据类型只支持float16和float32。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,shape为 :math:`(N, C_{out}, D_{out}, H_{out}, W_{out})` 。
|
||||
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, D_{in}, H_{in}, W_{in})` 的Tensor。目前输入数据类型只支持float16和float32。
|
||||
pad_mode为"same"时:
|
||||
|
||||
**输出:**
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
D_{out} = \left \lfloor{\frac{D_{in}}{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in}}{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in}}{\text{stride[2]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
Tensor,shape为 :math:`(N, C_{out}, D_{out}, H_{out}, W_{out})` 。
|
||||
pad_mode为"valid"时:
|
||||
|
||||
pad_mode为"same"时:
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
D_{out} = \left \lfloor{\frac{D_{in} - \text{dilation[0]} \times (\text{kernel_size[0]} - 1) }
|
||||
{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} - \text{dilation[1]} \times (\text{kernel_size[1]} - 1) }
|
||||
{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} - \text{dilation[2]} \times (\text{kernel_size[2]} - 1) }
|
||||
{\text{stride[2]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
D_{out} = \left \lfloor{\frac{D_{in}}{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in}}{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in}}{\text{stride[2]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
pad_mode为"pad"时:
|
||||
|
||||
pad_mode为"valid"时:
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
D_{out} = \left \lfloor{\frac{D_{in} + padding[0] + padding[1] - (\text{dilation[0]} - 1) \times
|
||||
\text{kernel_size[0]} - 1 }{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} + padding[2] + padding[3] - (\text{dilation[1]} - 1) \times
|
||||
\text{kernel_size[1]} - 1 }{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} + padding[4] + padding[5] - (\text{dilation[2]} - 1) \times
|
||||
\text{kernel_size[2]} - 1 }{\text{stride[2]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
D_{out} = \left \lfloor{\frac{D_{in} - \text{dilation[0]} \times (\text{kernel_size[0]} - 1) }
|
||||
{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} - \text{dilation[1]} \times (\text{kernel_size[1]} - 1) }
|
||||
{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} - \text{dilation[2]} \times (\text{kernel_size[2]} - 1) }
|
||||
{\text{stride[2]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
pad_mode为"pad"时:
|
||||
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
D_{out} = \left \lfloor{\frac{D_{in} + padding[0] + padding[1] - (\text{dilation[0]} - 1) \times
|
||||
\text{kernel_size[0]} - 1 }{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} + padding[2] + padding[3] - (\text{dilation[1]} - 1) \times
|
||||
\text{kernel_size[1]} - 1 }{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} + padding[4] + padding[5] - (\text{dilation[2]} - 1) \times
|
||||
\text{kernel_size[2]} - 1 }{\text{stride[2]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `in_channels` 、 `out_channels` 或 `group` 不是int。
|
||||
- **TypeError** - `kernel_size` 、 `stride` 、 `padding` 或 `dilation` 既不是int也不是tuple。
|
||||
- **ValueError** - `out_channels` 、 `kernel_size` 、 `stride` 或 `dilation` 小于1。
|
||||
- **ValueError** - `padding` 小于0。
|
||||
- **ValueError** - `pad_mode` 不是"same","valid"或"pad"。
|
||||
- **ValueError** - `padding` 是长度不等于6的tuple。
|
||||
- **ValueError** - `pad_mode` 不等于"pad"且 `padding` 不等于(0, 0, 0, 0, 0, 0)。
|
||||
- **ValueError** - `data_format` 不是"NCDHW"。
|
||||
异常:
|
||||
- **TypeError** - `in_channels` 、 `out_channels` 或 `group` 不是int。
|
||||
- **TypeError** - `kernel_size` 、 `stride` 、 `padding` 或 `dilation` 既不是int也不是tuple。
|
||||
- **ValueError** - `out_channels` 、 `kernel_size` 、 `stride` 或 `dilation` 小于1。
|
||||
- **ValueError** - `padding` 小于0。
|
||||
- **ValueError** - `pad_mode` 不是"same","valid"或"pad"。
|
||||
- **ValueError** - `padding` 是长度不等于6的tuple。
|
||||
- **ValueError** - `pad_mode` 不等于"pad"且 `padding` 不等于(0, 0, 0, 0, 0, 0)。
|
||||
- **ValueError** - `data_format` 不是"NCDHW"。
|
||||
|
|
|
@ -11,76 +11,72 @@ mindspore.nn.Conv3dTranspose
|
|||
当Conv3d和ConvTranspose3d使用相同的参数初始化时,且 `pad_mode` 设置为"pad",它们会在输入的深度、高度和宽度方向上填充 :math:`dilation * (kernel\_size - 1) - padding` 个零,这种情况下它们的输入和输出shape是互逆的。
|
||||
然而,当 `stride` 大于1时,Conv3d会将多个输入的shape映射到同一个输出shape。反卷积网络可以参考 `Deconvolutional Networks <https://www.matthewzeiler.com/mattzeiler/deconvolutionalnetworks.pdf>`_ 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **in_channels** (int) - Conv3dTranspose层输入Tensor的空间维度。
|
||||
- **out_channels** (int) - Conv3dTranspose层输出Tensor的空间维度。
|
||||
- **kernel_size** (Union[int, tuple[int]]) - 指定三维卷积核的深度、高度和宽度。数据类型为int或包含三个整数的tuple。一个整数表示卷积核的深度、高度和宽度均为该值该值。包含三个整数的tuple分别表示卷积核的深度、高度和宽度。
|
||||
- **stride** (Union[int, tuple[int]]) - 三维卷积核的移动步长。数据类型为整型或三个整型的tuple。一个整数表示在深度、高度和宽度方向的移动步长均为该值。三个整数的tuple分别表示在深度、高度和宽度方向的移动步长。默认值:1。
|
||||
- **pad_mode** (str) - 指定填充模式。可选值为"same"、"valid"、"pad"。默认值:"same"。
|
||||
|
||||
- **in_channels** (int) - Conv3dTranspose层输入Tensor的空间维度。
|
||||
- **out_channels** (int) - Conv3dTranspose层输出Tensor的空间维度。
|
||||
- **kernel_size** (Union[int, tuple[int]]) - 指定三维卷积核的深度、高度和宽度。数据类型为int或包含三个整数的tuple。一个整数表示卷积核的深度、高度和宽度均为该值该值。包含三个整数的tuple分别表示卷积核的深度、高度和宽度。
|
||||
- **stride** (Union[int, tuple[int]]) - 三维卷积核的移动步长。数据类型为整型或三个整型的tuple。一个整数表示在深度、高度和宽度方向的移动步长均为该值。三个整数的tuple分别表示在深度、高度和宽度方向的移动步长。默认值:1。
|
||||
- **pad_mode** (str) - 指定填充模式。可选值为"same"、"valid"、"pad"。默认值:"same"。
|
||||
- same:输出的深度、高度和宽度分别与输入整除 `stride` 后的值相同。若设置该模式,`padding` 的值必须为0。
|
||||
- valid:在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。如果设置此模式,则 `padding` 的值必须为0。
|
||||
- pad:对输入进行填充。 在输入的深度、高度和宽度方向上填充 `padding` 大小的0。如果设置此模式, `padding` 必须大于或等于0。
|
||||
|
||||
- same:输出的深度、高度和宽度分别与输入整除 `stride` 后的值相同。若设置该模式,`padding` 的值必须为0。
|
||||
- valid:在不填充的前提下返回有效计算所得的输出。不满足计算的多余像素会被丢弃。如果设置此模式,则 `padding` 的值必须为0。
|
||||
- pad:对输入进行填充。 在输入的深度、高度和宽度方向上填充 `padding` 大小的0。如果设置此模式, `padding` 必须大于或等于0。
|
||||
- **padding** (Union(int, tuple[int])) - 输入的深度、高度和宽度方向上填充的数量。数据类型为int或包含6个整数的tuple。如果 `padding` 是一个整数,则前部、后部、顶部,底部,左边和右边的填充都等于 `padding` 。如果 `padding` 是6个整数的tuple,则前部、尾部、顶部、底部、左边和右边的填充分别等于填充padding[0]、padding[1]、padding[2]、padding[3]、padding[4]和padding[5]。值应该要大于等于0,默认值:0。
|
||||
- **dilation** (Union[int, tuple[int]]) - 三维卷积核膨胀尺寸。数据类型为int或三个整数的tuple。若 :math:`k > 1` ,则kernel间隔 `k` 个元素进行采样。深度、高度和宽度方向上的 `k` ,其取值范围分别为[1, D]、[1, H]和[1, W]。默认值:1。
|
||||
- **group** (int) - 将过滤器拆分为组, `in_channels` 和 `out_channels` 必须可被 `group` 整除。当 `group` 大于1时,暂不支持Ascend平台。默认值:1。当前仅支持1。
|
||||
- **output_padding** (Union(int, tuple[int])) - 输出的深度、高度和宽度方向上填充的数量。数据类型为int或包含6个整数的tuple。如果 `output_padding` 是一个整数,则前部、后部、顶部,底部,左边和右边的填充都等于 `output_padding` 。如果 `output_padding` 是6个整数的tuple,则前部、尾部、顶部、底部、左边和右边的填充分别等于填充output_padding[0]、output_padding[1]、output_padding[2]、output_padding[3]、output_padding[4]output_padding[5]。值应该要大于等于0,默认值:0。
|
||||
- **has_bias** (bool) - Conv3dTranspose层是否添加偏置参数。默认值:False。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。它可以是Tensor,str,Initializer或numbers.Number。当使用str时,可选"TruncatedNormal","Normal","Uniform","HeUniform"和"XavierUniform"分布以及常量"One"和"Zero"分布的值,可接受别名"xavier_uniform","he_uniform","ones"和"zeros"。上述字符串大小写均可。更多细节请参考Initializer的值。默认值:"normal"。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。可以使用的初始化方法与"weight_init"相同。更多细节请参考Initializer的值。默认值:"zeros"。
|
||||
- **data_format** (str) - 数据格式的可选值。目前仅支持"NCDHW"。
|
||||
|
||||
- **padding** (Union(int, tuple[int])) - 输入的深度、高度和宽度方向上填充的数量。数据类型为int或包含6个整数的tuple。如果 `padding` 是一个整数,则前部、后部、顶部,底部,左边和右边的填充都等于 `padding` 。如果 `padding` 是6个整数的tuple,则前部、尾部、顶部、底部、左边和右边的填充分别等于填充padding[0]、padding[1]、padding[2]、padding[3]、padding[4]和padding[5]。值应该要大于等于0,默认值:0。
|
||||
- **dilation** (Union[int, tuple[int]]) - 三维卷积核膨胀尺寸。数据类型为int或三个整数的tuple。若 :math:`k > 1` ,则kernel间隔 `k` 个元素进行采样。深度、高度和宽度方向上的 `k` ,其取值范围分别为[1, D]、[1, H]和[1, W]。默认值:1。
|
||||
- **group** (int) - 将过滤器拆分为组, `in_channels` 和 `out_channels` 必须可被 `group` 整除。当 `group` 大于1时,暂不支持Ascend平台。默认值:1。当前仅支持1。
|
||||
- **output_padding** (Union(int, tuple[int])) - 输出的深度、高度和宽度方向上填充的数量。数据类型为int或包含6个整数的tuple。如果 `output_padding` 是一个整数,则前部、后部、顶部,底部,左边和右边的填充都等于 `output_padding` 。如果 `output_padding` 是6个整数的tuple,则前部、尾部、顶部、底部、左边和右边的填充分别等于填充output_padding[0]、output_padding[1]、output_padding[2]、output_padding[3]、output_padding[4]output_padding[5]。值应该要大于等于0,默认值:0。
|
||||
- **has_bias** (bool) - Conv3dTranspose层是否添加偏置参数。默认值:False。
|
||||
- **weight_init** (Union[Tensor, str, Initializer, numbers.Number]) - 权重参数的初始化方法。它可以是Tensor,str,Initializer或numbers.Number。当使用str时,可选"TruncatedNormal","Normal","Uniform","HeUniform"和"XavierUniform"分布以及常量"One"和"Zero"分布的值,可接受别名"xavier_uniform","he_uniform","ones"和"zeros"。上述字符串大小写均可。更多细节请参考Initializer的值。默认值:"normal"。
|
||||
- **bias_init** (Union[Tensor, str, Initializer, numbers.Number]) - 偏置参数的初始化方法。可以使用的初始化方法与"weight_init"相同。更多细节请参考Initializer的值。默认值:"zeros"。
|
||||
- **data_format** (str) - 数据格式的可选值。目前仅支持"NCDHW"。
|
||||
输入:
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, D_{in}, H_{in}, W_{in})` 的Tensor。目前输入数据类型只支持float16和float32。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,shape为 :math:`(N, C_{out}, D_{out}, H_{out}, W_{out})` 。
|
||||
|
||||
- **x** (Tensor) - shape为 :math:`(N, C_{in}, D_{in}, H_{in}, W_{in})` 的Tensor。目前输入数据类型只支持float16和float32。
|
||||
pad_mode为"same"时:
|
||||
|
||||
**输出:**
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
D_{out} = \left \lfloor{\frac{D_{in}}{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in}}{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in}}{\text{stride[2]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
Tensor,shape为 :math:`(N, C_{out}, D_{out}, H_{out}, W_{out})` 。
|
||||
pad_mode为"valid"时:
|
||||
|
||||
pad_mode为"same"时:
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
D_{out} = \left \lfloor{\frac{D_{in} - \text{dilation[0]} \times (\text{kernel_size[0]} - 1) }
|
||||
{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} - \text{dilation[1]} \times (\text{kernel_size[1]} - 1) }
|
||||
{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} - \text{dilation[2]} \times (\text{kernel_size[2]} - 1) }
|
||||
{\text{stride[2]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
D_{out} = \left \lfloor{\frac{D_{in}}{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in}}{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in}}{\text{stride[2]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
pad_mode为"pad"时:
|
||||
|
||||
pad_mode为"valid"时:
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
D_{out} = \left \lfloor{\frac{D_{in} + padding[0] + padding[1] - (\text{dilation[0]} - 1) \times
|
||||
\text{kernel_size[0]} - 1 }{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} + padding[2] + padding[3] - (\text{dilation[1]} - 1) \times
|
||||
\text{kernel_size[1]} - 1 }{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} + padding[4] + padding[5] - (\text{dilation[2]} - 1) \times
|
||||
\text{kernel_size[2]} - 1 }{\text{stride[2]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
D_{out} = \left \lfloor{\frac{D_{in} - \text{dilation[0]} \times (\text{kernel_size[0]} - 1) }
|
||||
{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} - \text{dilation[1]} \times (\text{kernel_size[1]} - 1) }
|
||||
{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} - \text{dilation[2]} \times (\text{kernel_size[2]} - 1) }
|
||||
{\text{stride[2]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
pad_mode为"pad"时:
|
||||
|
||||
.. math::
|
||||
\begin{array}{ll} \\
|
||||
D_{out} = \left \lfloor{\frac{D_{in} + padding[0] + padding[1] - (\text{dilation[0]} - 1) \times
|
||||
\text{kernel_size[0]} - 1 }{\text{stride[0]}} + 1} \right \rfloor \\
|
||||
H_{out} = \left \lfloor{\frac{H_{in} + padding[2] + padding[3] - (\text{dilation[1]} - 1) \times
|
||||
\text{kernel_size[1]} - 1 }{\text{stride[1]}} + 1} \right \rfloor \\
|
||||
W_{out} = \left \lfloor{\frac{W_{in} + padding[4] + padding[5] - (\text{dilation[2]} - 1) \times
|
||||
\text{kernel_size[2]} - 1 }{\text{stride[2]}} + 1} \right \rfloor \\
|
||||
\end{array}
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `in_channels` 、 `out_channels` 或 `group` 不是int。
|
||||
- **TypeError** - `kernel_size` 、 `stride` 、 `padding` 、 `dilation` 或 `output_padding` 既不是int也不是tuple。
|
||||
- **TypeError** - 输入数据类型不是float16或float32。
|
||||
- **ValueError** - `in_channels` 、 `out_channels` 、 `kernel_size` 、 `stride` 或 `dilation` 小于1。
|
||||
- **ValueError** - `padding` 小于0。
|
||||
- **ValueError** - `pad_mode` 不是"same","valid"或"pad"。
|
||||
- **ValueError** - `padding` 是长度不等于6的tuple。
|
||||
- **ValueError** - `pad_mode` 不等于"pad"且 `padding` 不等于(0, 0, 0, 0, 0, 0)。
|
||||
- **ValueError** - `data_format` 不是"NCDHW"。
|
||||
异常:
|
||||
- **TypeError** - `in_channels` 、 `out_channels` 或 `group` 不是int。
|
||||
- **TypeError** - `kernel_size` 、 `stride` 、 `padding` 、 `dilation` 或 `output_padding` 既不是int也不是tuple。
|
||||
- **TypeError** - 输入数据类型不是float16或float32。
|
||||
- **ValueError** - `in_channels` 、 `out_channels` 、 `kernel_size` 、 `stride` 或 `dilation` 小于1。
|
||||
- **ValueError** - `padding` 小于0。
|
||||
- **ValueError** - `pad_mode` 不是"same","valid"或"pad"。
|
||||
- **ValueError** - `padding` 是长度不等于6的tuple。
|
||||
- **ValueError** - `pad_mode` 不等于"pad"且 `padding` 不等于(0, 0, 0, 0, 0, 0)。
|
||||
- **ValueError** - `data_format` 不是"NCDHW"。
|
||||
|
|
|
@ -11,23 +11,19 @@ mindspore.nn.CosineDecayLR
|
|||
decayed\_learning\_rate = &min\_lr + 0.5 * (max\_lr - min\_lr) *\\
|
||||
&(1 + cos(\frac{current\_step}{decay\_steps}\pi))
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **min_lr** (float) - 学习率的最小值。
|
||||
- **max_lr** (float) - 学习率的最大值。
|
||||
- **decay_steps** (int) - 进行衰减的step数。
|
||||
|
||||
- **min_lr** (float) - 学习率的最小值。
|
||||
- **max_lr** (float) - 学习率的最大值。
|
||||
- **decay_steps** (int) - 进行衰减的step数。
|
||||
输入:
|
||||
- **global_step** (Tensor) - 当前step数,即current_step。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
标量Tensor。当前step的学习率值。
|
||||
|
||||
- **global_step** (Tensor) - 当前step数,即current_step。
|
||||
|
||||
**输出:**
|
||||
|
||||
标量Tensor。当前step的学习率值。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `min_lr` 或 `max_lr` 不是float。
|
||||
- **TypeError** - `decay_steps` 不是整数。
|
||||
- **ValueError** - `min_lr` 小于0或 `decay_steps` 小于1。
|
||||
- **ValueError** - `max_lr` 小于或等于0。
|
||||
异常:
|
||||
- **TypeError** - `min_lr` 或 `max_lr` 不是float。
|
||||
- **TypeError** - `decay_steps` 不是整数。
|
||||
- **ValueError** - `min_lr` 小于0或 `decay_steps` 小于1。
|
||||
- **ValueError** - `max_lr` 小于或等于0。
|
||||
|
|
|
@ -13,25 +13,21 @@ mindspore.nn.CosineEmbeddingLoss
|
|||
max(0, cos(x_1, x_2)-margin), & \text{if } y = -1\\
|
||||
\end{cases}
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **margin** (float) - 指定运算的调节因子,取值范围[-1.0, 1.0]。默认值:0.0。
|
||||
- **reduction** (str) - 指定输出结果的计算方式。可选值为"none"、"mean"或"sum",分别表示不指定计算方式、使用均值计算和使用求和计算。默认值:"mean"。
|
||||
|
||||
- **margin** (float) - 指定运算的调节因子,取值范围[-1.0, 1.0]。默认值:0.0。
|
||||
- **reduction** (str) - 指定输出结果的计算方式。可选值为"none"、"mean"或"sum",分别表示不指定计算方式、使用均值计算和使用求和计算。默认值:"mean"。
|
||||
输入:
|
||||
- **logits_x1** (Tensor) - 输入Tensor,shape :math:`(N,*)` ,其中 `*` 代表任意数量的附加维度。
|
||||
- **logits_x2** (Tensor) - 输入Tensor,shape :math:`(N,*)` 。shape和数据类型与 `logits_x1` 相同。
|
||||
- **labels** (Tensor) - 输入值为1或-1。假设 `logits_x1` 的shape是 :math:`(x_1, x_2, x_3, ..., x_R)` ,那么 `labels` 的shape必须是 :math:`(x_1, x_3, x_4, ..., x_R)` 。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor或Scalar,如果 `reduction` 为"none",其shape与 `labels` 相同。否则,将返回为Scalar。
|
||||
|
||||
- **logits_x1** (Tensor) - 输入Tensor,shape :math:`(N,*)` ,其中 `*` 代表任意数量的附加维度。
|
||||
- **logits_x2** (Tensor) - 输入Tensor,shape :math:`(N,*)` 。shape和数据类型与 `logits_x1` 相同。
|
||||
- **labels** (Tensor) - 输入值为1或-1。假设 `logits_x1` 的shape是 :math:`(x_1, x_2, x_3, ..., x_R)` ,那么 `labels` 的shape必须是 :math:`(x_1, x_3, x_4, ..., x_R)` 。
|
||||
异常:
|
||||
- **TypeError** - `margin` 不是float。
|
||||
- **ValueError** - `reduction` 不为"none"、"mean"或"sum"。
|
||||
- **ValueError** - `margin` 的值不在范围[-1.0, 1.0]内。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor或Scalar,如果 `reduction` 为"none",其shape与 `labels` 相同。否则,将返回为Scalar。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `margin` 不是float。
|
||||
- **ValueError** - `reduction` 不为"none"、"mean"或"sum"。
|
||||
- **ValueError** - `margin` 的值不在范围[-1.0, 1.0]内。
|
||||
|
||||
|
||||
|
|
|
@ -5,11 +5,10 @@ mindspore.nn.CosineSimilarity
|
|||
|
||||
计算余弦相似度。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **similarity** (str) - "dot"或"cosine"。"cosine"表示相似度计算逻辑, "dot"表示矩阵点乘矩阵计算逻辑。默认值:"cosine"。
|
||||
- **reduction** (str) - "none"、"sum"或"mean"。默认值:"none"。
|
||||
- **zero_diagonal** (bool) - 如果为True,则对角线将设置为零。默认值:True。
|
||||
参数:
|
||||
- **similarity** (str) - "dot"或"cosine"。"cosine"表示相似度计算逻辑, "dot"表示矩阵点乘矩阵计算逻辑。默认值:"cosine"。
|
||||
- **reduction** (str) - "none"、"sum"或"mean"。默认值:"none"。
|
||||
- **zero_diagonal** (bool) - 如果为True,则对角线将设置为零。默认值:True。
|
||||
|
||||
.. py:method:: clear()
|
||||
|
||||
|
@ -19,18 +18,15 @@ mindspore.nn.CosineSimilarity
|
|||
|
||||
计算Cosine Similarity矩阵。
|
||||
|
||||
**返回:**
|
||||
返回:
|
||||
numpy.ndarray,相似度矩阵。
|
||||
|
||||
numpy.ndarray,相似度矩阵。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **RuntimeError** - 如果没有先调用update方法。
|
||||
异常:
|
||||
- **RuntimeError** - 如果没有先调用update方法。
|
||||
|
||||
.. py:method:: update(*inputs)
|
||||
|
||||
使用y_pred和y更新内部评估结果。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **inputs** (Union[Tensor, list, numpy.ndarray]) - 输入的矩阵。
|
||||
参数:
|
||||
- **inputs** (Union[Tensor, list, numpy.ndarray]) - 输入的矩阵。
|
||||
|
|
|
@ -48,30 +48,26 @@ mindspore.nn.CrossEntropyLoss
|
|||
\text{if reduction} = \text{'sum'.}
|
||||
\end{cases}
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **weight** (Tensor): 指定各类别的权重。若值不为None,则shape为 (C,)。数据类型仅支持float32或float16。默认值: None。
|
||||
- **ignore_index** (int): 指定target中需要忽略的值(一般为填充值),使其不对梯度产生影响。默认值: -100。
|
||||
- **reduction** (str): 指定应用于输出结果的计算方式,比如'none'、'mean'、'sum'。默认值:'mean'。
|
||||
- **label_smoothing** (float): 标签平滑值,用于计算Loss时防止模型过拟合的正则化手段。取值范围为[0.0, 1.0]。 默认值: 0.0。
|
||||
|
||||
- **weight** (Tensor): 指定各类别的权重。若值不为None,则shape为 (C,)。数据类型仅支持float32或float16。默认值: None。
|
||||
- **ignore_index** (int): 指定target中需要忽略的值(一般为填充值),使其不对梯度产生影响。默认值: -100。
|
||||
- **reduction** (str): 指定应用于输出结果的计算方式,比如'none'、'mean'、'sum'。默认值:'mean'。
|
||||
- **label_smoothing** (float): 标签平滑值,用于计算Loss时防止模型过拟合的正则化手段。取值范围为[0.0, 1.0]。 默认值: 0.0。
|
||||
输入:
|
||||
- **logits** (Tensor) - 输入预测值,shape为 :math:`(N, C)` 或 :math:`(N, C, H, W)`
|
||||
(针对二维数据), 或 :math:`(N, C, d_1, d_2, ..., d_K)` (针对高维数据)。输入值需为对数概率。数据类型仅支持float32或float16。
|
||||
- **labels** (Tensor) - 输入目标值,shape为 :math:`(N)` 或 :math:`(N, d_1, d_2, ..., d_K)`
|
||||
(针对高维数据)。
|
||||
|
||||
**输入:**
|
||||
返回:
|
||||
Tensor,一个数据类型与logits相同的Tensor。
|
||||
|
||||
- **logits** (Tensor) - 输入预测值,shape为 :math:`(N, C)` 或 :math:`(N, C, H, W)`
|
||||
(针对二维数据), 或 :math:`(N, C, d_1, d_2, ..., d_K)` (针对高维数据)。输入值需为对数概率。数据类型仅支持float32或float16。
|
||||
- **labels** (Tensor) - 输入目标值,shape为 :math:`(N)` 或 :math:`(N, d_1, d_2, ..., d_K)`
|
||||
(针对高维数据)。
|
||||
|
||||
**返回:**
|
||||
|
||||
Tensor,一个数据类型与logits相同的Tensor。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `weight` 不是Tensor。
|
||||
- **TypeError** - `weight` 的dtype既不是float16,也不是float32。
|
||||
- **TypeError** - `ignore_index` 不是int。
|
||||
- **ValueError** - `reduction` 不为"mean"、"sum",或"none"。
|
||||
- **TypeError** - `label_smoothing` 不是float。
|
||||
- **TypeError** - `logits` 不是Tensor。
|
||||
- **TypeError** - `labels` 不是Tensor。
|
||||
异常:
|
||||
- **TypeError** - `weight` 不是Tensor。
|
||||
- **TypeError** - `weight` 的dtype既不是float16,也不是float32。
|
||||
- **TypeError** - `ignore_index` 不是int。
|
||||
- **ValueError** - `reduction` 不为"mean"、"sum",或"none"。
|
||||
- **TypeError** - `label_smoothing` 不是float。
|
||||
- **TypeError** - `logits` 不是Tensor。
|
||||
- **TypeError** - `labels` 不是Tensor。
|
||||
|
|
|
@ -10,9 +10,8 @@ mindspore.nn.Dice
|
|||
.. math::
|
||||
dice = \frac{2 * (pred \bigcap true)}{pred \bigcup true}
|
||||
|
||||
**参数:**
|
||||
|
||||
- **smooth** (float) - 在计算过程中添加到分母里,用于提高数值稳定性,取值需大于0。默认值:1e-5。
|
||||
参数:
|
||||
- **smooth** (float) - 在计算过程中添加到分母里,用于提高数值稳定性,取值需大于0。默认值:1e-5。
|
||||
|
||||
.. py:method:: clear()
|
||||
|
||||
|
@ -22,23 +21,19 @@ mindspore.nn.Dice
|
|||
|
||||
计算Dice系数。
|
||||
|
||||
**返回:**
|
||||
返回:
|
||||
Float,计算的结果。
|
||||
|
||||
Float,计算的结果。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **RuntimeError** - 样本数为0。
|
||||
异常:
|
||||
- **RuntimeError** - 样本数为0。
|
||||
|
||||
.. py:method:: update(*inputs)
|
||||
|
||||
更新内部评估结果 `y_pred` 和 `y` 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **inputs** (tuple) -输入 `y_pred` 和 `y` 。 `y_pred` 和 `y` 是tensor、列表或numpy.ndarray。 `y_pred` 是预测值, `y` 是真实值。 `y_pred` 和 `y` 的shape都是 `(N, ...)`。
|
||||
|
||||
- **inputs** (tuple) -输入 `y_pred` 和 `y` 。 `y_pred` 和 `y` 是tensor、列表或numpy.ndarray。 `y_pred` 是预测值, `y` 是真实值。 `y_pred` 和 `y` 的shape都是 `(N, ...)`。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - 输入参数的数量不等于2。
|
||||
- **ValueError** - 如果预测值和标签shape不一致。
|
||||
异常:
|
||||
- **ValueError** - 输入参数的数量不等于2。
|
||||
- **ValueError** - 如果预测值和标签shape不一致。
|
||||
|
|
|
@ -13,23 +13,18 @@ mindspore.nn.DiceLoss
|
|||
|
||||
:math:`pred` 表示 `logits` , :math:`true` 表示 `labels` 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **smooth** (float) - 将添加到分母中,以提高数值稳定性的参数。取值大于0。默认值:1e-5。
|
||||
|
||||
- **smooth** (float) - 将添加到分母中,以提高数值稳定性的参数。取值大于0。默认值:1e-5。
|
||||
输入:
|
||||
- **logits** (Tensor) - 输入预测值,任意维度的Tensor。数据类型必须为float16或float32。
|
||||
- **labels** (Tensor) - 输入目标值,任意维度的Tensor,一般与 `logits` 的shape相同。 数据类型必须为float16或float32。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,shape为每样本采样的Dice系数的Tensor。
|
||||
|
||||
- **logits** (Tensor) - 输入预测值,任意维度的Tensor。数据类型必须为float16或float32。
|
||||
- **labels** (Tensor) - 输入目标值,任意维度的Tensor,一般与 `logits` 的shape相同。 数据类型必须为float16或float32。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,shape为每样本采样的Dice系数的Tensor。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - `logits` 的维度与 `labels` 不同。
|
||||
- **TypeError** - `logits` 或 `labels` 的类型不是Tensor。
|
||||
异常:
|
||||
- **ValueError** - `logits` 的维度与 `labels` 不同。
|
||||
- **TypeError** - `logits` 或 `labels` 的类型不是Tensor。
|
||||
|
||||
|
||||
|
|
@ -7,14 +7,12 @@ mindspore.nn.DistributedGradReducer
|
|||
|
||||
用于数据并行模式中,对所有卡的梯度利用AllReduce进行聚合。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **parameters** (list) - 需要更新的参数。
|
||||
- **mean** (bool) - 当mean为True时,对AllReduce之后的梯度求均值。默认值:True。
|
||||
- **degree** (int) - 平均系数,通常等于设备编号。默认值:None。
|
||||
- **fusion_type** (int) - AllReduce算子的融合类型。默认值:1。
|
||||
- **group** (str) - AllReduce算子的通信域,若需要自定义通信域,需要调用create_group接口。默认值:GlobalComm.WORLD_COMM_GROUP。
|
||||
|
||||
- **parameters** (list) - 需要更新的参数。
|
||||
- **mean** (bool) - 当mean为True时,对AllReduce之后的梯度求均值。默认值:True。
|
||||
- **degree** (int) - 平均系数,通常等于设备编号。默认值:None。
|
||||
- **fusion_type** (int) - AllReduce算子的融合类型。默认值:1。
|
||||
- **group** (str) - AllReduce算子的通信域,若需要自定义通信域,需要调用create_group接口。默认值:GlobalComm.WORLD_COMM_GROUP。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - 如果degree不是int或小于0。
|
||||
异常:
|
||||
- **ValueError** - 如果degree不是int或小于0。
|
||||
|
|
|
@ -12,23 +12,19 @@ mindspore.nn.Dropout
|
|||
.. note::
|
||||
训练过程中每步对同一通道(或神经元)独立进行丢弃。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **keep_prob** (float) - 输入神经元保留率,数值范围在0到1之间。例如,rate=0.9,删除10%的神经元。默认值:0.5。
|
||||
- **dtype** (:class:`mindspore.dtype`) - `x` 的数据类型。默认值:mstype.float32。
|
||||
|
||||
- **keep_prob** (float) - 输入神经元保留率,数值范围在0到1之间。例如,rate=0.9,删除10%的神经元。默认值:0.5。
|
||||
- **dtype** (:class:`mindspore.dtype`) - `x` 的数据类型。默认值:mstype.float32。
|
||||
输入:
|
||||
- **x** (Tensor) - Dropout的输入,任意维度的Tensor。数据类型必须为float16或float32。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,输出为Tensor,其shape与 `x` shape相同。
|
||||
|
||||
- **x** (Tensor) - Dropout的输入,任意维度的Tensor。数据类型必须为float16或float32。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,输出为Tensor,其shape与 `x` shape相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `keep_prob` 不是浮点数。
|
||||
- **TypeError** - `x` 的dtype既不是float16也不是float32。
|
||||
- **ValueError** - `keep_prob` 不在范围(0, 1]内。
|
||||
- **ValueError** - `x` 的shape长度小于1。
|
||||
异常:
|
||||
- **TypeError** - `keep_prob` 不是浮点数。
|
||||
- **TypeError** - `x` 的dtype既不是float16也不是float32。
|
||||
- **ValueError** - `keep_prob` 不在范围(0, 1]内。
|
||||
- **ValueError** - `x` 的shape长度小于1。
|
||||
|
||||
|
|
|
@ -9,20 +9,17 @@ mindspore.nn.DynamicLossScaleUpdateCell
|
|||
|
||||
该类是 :class:`mindspore.DynamicLossScaleManager` 的 `get_update_cell` 方法的返回值。训练过程中,类 :class:`mindspore.nn.TrainOneStepWithLossScaleCell` 会调用该Cell来更新损失缩放系数。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **loss_scale_value** (float) - 初始的损失缩放系数。
|
||||
- **scale_factor** (int) - 增减系数。
|
||||
- **scale_window** (int) - 未溢出时,增大损失缩放系数的最大连续训练步数。
|
||||
|
||||
- **loss_scale_value** (float) - 初始的损失缩放系数。
|
||||
- **scale_factor** (int) - 增减系数。
|
||||
- **scale_window** (int) - 未溢出时,增大损失缩放系数的最大连续训练步数。
|
||||
输入:
|
||||
- **loss_scale** (Tensor) - 训练期间的损失缩放系数,是一个标量。
|
||||
- **overflow** (bool) - 是否发生溢出。
|
||||
|
||||
**输入:**
|
||||
|
||||
- **loss_scale** (Tensor) - 训练期间的损失缩放系数,是一个标量。
|
||||
- **overflow** (bool) - 是否发生溢出。
|
||||
|
||||
**输出:**
|
||||
|
||||
Bool,即输入 `overflow` 。
|
||||
输出:
|
||||
Bool,即输入 `overflow` 。
|
||||
|
||||
.. py:method:: get_loss_scale()
|
||||
|
||||
|
|
|
@ -18,20 +18,16 @@ mindspore.nn.ELU
|
|||
|
||||
ELU相关图参见 `ELU <https://en.wikipedia.org/wiki/Activation_function#/media/File:Activation_elu.svg>`_ 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **alpha** (`float`) - ELU的alpha值,数据类型为浮点数。默认值:1.0。
|
||||
|
||||
- **alpha** (`float`) - ELU的alpha值,数据类型为浮点数。默认值:1.0。
|
||||
输入:
|
||||
- **x** (Tensor) - 用于计算ELU的任意维度的Tensor,数据类型为float16或float32。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,数据类型和shape与 `x` 相同。
|
||||
|
||||
- **x** (Tensor) - 用于计算ELU的任意维度的Tensor,数据类型为float16或float32。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,数据类型和shape与 `x` 相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `alpha` 不是浮点数。
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
- **ValueError** - `alpha` 不等于1.0。
|
||||
异常:
|
||||
- **TypeError** - `alpha` 不是浮点数。
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
- **ValueError** - `alpha` 不等于1.0。
|
||||
|
|
|
@ -10,25 +10,21 @@ mindspore.nn.Embedding
|
|||
.. note::
|
||||
当 `use_one_hot` 等于True时,x的类型必须是mindpore.int32。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **vocab_size** (int) - 词典的大小。
|
||||
- **embedding_size** (int) - 每个嵌入向量的大小。
|
||||
- **use_one_hot** (bool) - 指定是否使用one-hot形式。默认值:False。
|
||||
- **embedding_table** (Union[Tensor, str, Initializer, numbers.Number]) - embedding_table的初始化方法。当指定为字符串,字符串取值请参见类 `mindspore.common.initializer` 。默认值:'normal'。
|
||||
- **dtype** (mindspore.dtype) - x的数据类型。默认值:mindspore.float32。
|
||||
- **padding_idx** (int, None) - 将 `padding_idx` 对应索引所输出的嵌入向量用零填充。默认值:None。该功能已停用。
|
||||
|
||||
- **vocab_size** (int) - 词典的大小。
|
||||
- **embedding_size** (int) - 每个嵌入向量的大小。
|
||||
- **use_one_hot** (bool) - 指定是否使用one-hot形式。默认值:False。
|
||||
- **embedding_table** (Union[Tensor, str, Initializer, numbers.Number]) - embedding_table的初始化方法。当指定为字符串,字符串取值请参见类 `mindspore.common.initializer` 。默认值:'normal'。
|
||||
- **dtype** (mindspore.dtype) - x的数据类型。默认值:mindspore.float32。
|
||||
- **padding_idx** (int, None) - 将 `padding_idx` 对应索引所输出的嵌入向量用零填充。默认值:None。该功能已停用。
|
||||
输入:
|
||||
- **x** (Tensor) - Tensor的shape为 :math:`(\text{batch_size}, \text{x_length})` ,其元素为整型值,并且元素数目必须小于等于vocab_size,否则相应的嵌入向量将为零。该数据类型可以是int32或int64。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor的shape :math:`(\text{batch_size}, \text{x_length}, \text{embedding_size})` 。
|
||||
|
||||
- **x** (Tensor) - Tensor的shape为 :math:`(\text{batch_size}, \text{x_length})` ,其元素为整型值,并且元素数目必须小于等于vocab_size,否则相应的嵌入向量将为零。该数据类型可以是int32或int64。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor的shape :math:`(\text{batch_size}, \text{x_length}, \text{embedding_size})` 。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - 如果 `vocab_size` 或者 `embedding_size` 不是整型值。
|
||||
- **TypeError** - 如果 `use_one_hot` 不是布尔值。
|
||||
- **ValueError** - 如果 `padding_idx` 是一个不在[0, `vocab_size` ]范围内的整数。
|
||||
异常:
|
||||
- **TypeError** - 如果 `vocab_size` 或者 `embedding_size` 不是整型值。
|
||||
- **TypeError** - 如果 `use_one_hot` 不是布尔值。
|
||||
- **ValueError** - 如果 `padding_idx` 是一个不在[0, `vocab_size` ]范围内的整数。
|
||||
|
|
|
@ -12,33 +12,29 @@ mindspore.nn.EmbeddingLookup
|
|||
当'target'设置为'DEVICE'时,此模块将使用ops.Gather(),在lookup表指定了'axis = 0'。
|
||||
在字段切片模式下,必须指定manual_shapes。此tuple包含vocab[i]元素, vocab[i]是第i部分的行号。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **vocab_size** (int) - 嵌入词典的大小。
|
||||
- **embedding_size** (int) - 每个嵌入向量的大小。
|
||||
- **param_init** (Union[Tensor, str, Initializer, numbers.Number]) - embedding_table的初始化方法。当指定为字符串,字符串取值请参见类 `Initializer` 。默认值:'normal'。
|
||||
- **target** (str) - 指定执行操作的'target'。取值范围为['DEVICE', 'CPU']。默认值:'CPU'。
|
||||
- **slice_mode** (str) - semi_auto_parallel或auto_parallel模式下的切片方式。该值必须通过 :class:`.nn.EmbeddingLookup` 获得。默认值:'nn.EmbeddingLookup.BATCH_SLICE'。
|
||||
- **manual_shapes** (tuple) - 字段切片模式下的伴随数组(accompaniment array),默认值:None。
|
||||
- **max_norm** (Union[float, None]) - 最大剪切值。数据类型必须为float16、float32或None。默认值:None。
|
||||
- **sparse** (bool) - 使用稀疏模式。当'target'设置为'CPU'时,'sparse'必须为True。默认值:True。
|
||||
- **vocab_cache_size** (int) - 嵌入字典的缓存大小。默认值:0。仅在训练模式和'DEVICE'目标中有效。相应优化器的力矩参数也将设置为缓存大小。此外需注意,它还会消耗'DEVICE'内存,因此建议合理设置参数值,避免内存不足。
|
||||
|
||||
- **vocab_size** (int) - 嵌入词典的大小。
|
||||
- **embedding_size** (int) - 每个嵌入向量的大小。
|
||||
- **param_init** (Union[Tensor, str, Initializer, numbers.Number]) - embedding_table的初始化方法。当指定为字符串,字符串取值请参见类 `Initializer` 。默认值:'normal'。
|
||||
- **target** (str) - 指定执行操作的'target'。取值范围为['DEVICE', 'CPU']。默认值:'CPU'。
|
||||
- **slice_mode** (str) - semi_auto_parallel或auto_parallel模式下的切片方式。该值必须通过 :class:`.nn.EmbeddingLookup` 获得。默认值:'nn.EmbeddingLookup.BATCH_SLICE'。
|
||||
- **manual_shapes** (tuple) - 字段切片模式下的伴随数组(accompaniment array),默认值:None。
|
||||
- **max_norm** (Union[float, None]) - 最大剪切值。数据类型必须为float16、float32或None。默认值:None。
|
||||
- **sparse** (bool) - 使用稀疏模式。当'target'设置为'CPU'时,'sparse'必须为True。默认值:True。
|
||||
- **vocab_cache_size** (int) - 嵌入字典的缓存大小。默认值:0。仅在训练模式和'DEVICE'目标中有效。相应优化器的力矩参数也将设置为缓存大小。此外需注意,它还会消耗'DEVICE'内存,因此建议合理设置参数值,避免内存不足。
|
||||
输入:
|
||||
- **input_indices** (Tensor) - shape为 :math:`(y_1, y_2, ..., y_S)` 的Tensor。指定原始Tensor元素的索引。当取值超出embedding_table的范围时,超出部分在输出中填充为0。不支持负值,如果为负值,则结果未定义。在semi auto parallel或auto parallel模式下运行时,Input_indices只能是此接口中的二维Tensor。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,shape为 :math:`(z_1, z_2, ..., z_N)` 的Tensor。
|
||||
|
||||
- **input_indices** (Tensor) - shape为 :math:`(y_1, y_2, ..., y_S)` 的Tensor。指定原始Tensor元素的索引。当取值超出embedding_table的范围时,超出部分在输出中填充为0。不支持负值,如果为负值,则结果未定义。在semi auto parallel或auto parallel模式下运行时,Input_indices只能是此接口中的二维Tensor。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,shape为 :math:`(z_1, z_2, ..., z_N)` 的Tensor。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `vocab_size` 、 `embedding_size` 或 `vocab_cache_size` 不是整数。
|
||||
- **TypeError** - `sparse` 不是bool或 `manual_shapes` 不是tuple。
|
||||
- **ValueError** - `vocab_size` 或 `embedding_size` 小于1。
|
||||
- **ValueError** - `vocab_cache_size` 小于0。
|
||||
- **ValueError** - `target` 既不是'CPU'也不是'DEVICE'。
|
||||
- **ValueError** - `slice_mode` 不是'batch_slice'、'field_slice'、'table_row_slice'或'table_column_slice'。
|
||||
- **ValueError** - `sparse` 为False且 `target` 为'CPU'。
|
||||
- **ValueError** - `slice_mode` 为'field_slice'且 `manual_shapes` 是None。
|
||||
异常:
|
||||
- **TypeError** - `vocab_size` 、 `embedding_size` 或 `vocab_cache_size` 不是整数。
|
||||
- **TypeError** - `sparse` 不是bool或 `manual_shapes` 不是tuple。
|
||||
- **ValueError** - `vocab_size` 或 `embedding_size` 小于1。
|
||||
- **ValueError** - `vocab_cache_size` 小于0。
|
||||
- **ValueError** - `target` 既不是'CPU'也不是'DEVICE'。
|
||||
- **ValueError** - `slice_mode` 不是'batch_slice'、'field_slice'、'table_row_slice'或'table_column_slice'。
|
||||
- **ValueError** - `sparse` 为False且 `target` 为'CPU'。
|
||||
- **ValueError** - `slice_mode` 为'field_slice'且 `manual_shapes` 是None。
|
||||
|
|
|
@ -20,24 +20,20 @@ mindspore.nn.ExponentialDecayLR
|
|||
.. math::
|
||||
p = floor(\frac{current\_step}{decay\_steps})
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **learning_rate** (float): 学习率的初始值。
|
||||
- **decay_rate** (float): 衰减率。
|
||||
- **decay_steps** (int): 进行衰减的step数。
|
||||
- **is_stair** (bool): 如果为True,则学习率每 `decay_steps` 步衰减一次。默认值:False。
|
||||
|
||||
- **learning_rate** (float): 学习率的初始值。
|
||||
- **decay_rate** (float): 衰减率。
|
||||
- **decay_steps** (int): 进行衰减的step数。
|
||||
- **is_stair** (bool): 如果为True,则学习率每 `decay_steps` 步衰减一次。默认值:False。
|
||||
输入:
|
||||
- **global_step** (Tensor) - 当前step数,即current_step。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
标量Tensor。当前step的学习率值。
|
||||
|
||||
- **global_step** (Tensor) - 当前step数,即current_step。
|
||||
|
||||
**输出:**
|
||||
|
||||
标量Tensor。当前step的学习率值。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `learning_rate` 或 `decay_rate` 不是float。
|
||||
- **TypeError** - `decay_steps` 不是int或 `is_stair` 不是bool。
|
||||
- **ValueError** - `decay_steps` 小于1。
|
||||
- **ValueError** - `learning_rate` 或 `decay_rate` 小于或等于0。
|
||||
异常:
|
||||
- **TypeError** - `learning_rate` 或 `decay_rate` 不是float。
|
||||
- **TypeError** - `decay_steps` 不是int或 `is_stair` 不是bool。
|
||||
- **ValueError** - `decay_steps` 小于1。
|
||||
- **ValueError** - `learning_rate` 或 `decay_rate` 小于或等于0。
|
||||
|
|
|
@ -30,50 +30,46 @@ mindspore.nn.FTRL
|
|||
|
||||
.. include:: mindspore.nn.optim_note_weight_decay.rst
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
- **lr** - 学习率当前不支持参数分组。
|
||||
|
||||
- **lr** - 学习率当前不支持参数分组。
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
- **initial_accum** (float) - 累加器 `m` 的初始值,必须大于等于零。默认值:0.1。
|
||||
- **learning_rate** (float) - 学习速率值必须为零或正数,当前不支持动态学习率。默认值:0.001。
|
||||
- **lr_power** (float) - 学习率的幂值,控制训练期间学习率的下降方式,必须小于或等于零。如果lr_power为零,则使用固定的学习率。默认值:-0.5。
|
||||
- **l1** (float):l1正则化强度,必须大于等于零。默认值:0.0。
|
||||
- **l2** (float):l2正则化强度,必须大于等于零。默认值:0.0。
|
||||
- **use_locking** (bool) - 如果为True,则更新操作使用锁保护。默认值:False。
|
||||
|
||||
- **initial_accum** (float) - 累加器 `m` 的初始值,必须大于等于零。默认值:0.1。
|
||||
- **learning_rate** (float) - 学习速率值必须为零或正数,当前不支持动态学习率。默认值:0.001。
|
||||
- **lr_power** (float) - 学习率的幂值,控制训练期间学习率的下降方式,必须小于或等于零。如果lr_power为零,则使用固定的学习率。默认值:-0.5。
|
||||
- **l1** (float):l1正则化强度,必须大于等于零。默认值:0.0。
|
||||
- **l2** (float):l2正则化强度,必须大于等于零。默认值:0.0。
|
||||
- **use_locking** (bool) - 如果为True,则更新操作使用锁保护。默认值:False。
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
|
||||
**输入:**
|
||||
输入:
|
||||
- **grads** (tuple[Tensor]) - 优化器中 `params` 的梯度,shape与优化器中的 `params` 相同。
|
||||
|
||||
- **grads** (tuple[Tensor]) - 优化器中 `params` 的梯度,shape与优化器中的 `params` 相同。
|
||||
输出:
|
||||
tuple[Parameter],更新的参数,shape与 `params` 相同。
|
||||
|
||||
**输出:**
|
||||
|
||||
tuple[Parameter],更新的参数,shape与 `params` 相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `initial_accum`、`learning_rate`、`lr_power`、`l1`、`l2` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或dict。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **TypeError** - `use_nesterov` 不是bool。
|
||||
- **ValueError** - `lr_power` 大于0。
|
||||
- **ValueError** - `loss_scale` 小于等于0。
|
||||
- **ValueError** - `initial_accum`、`l1` 或 `l2` 小于0。
|
||||
异常:
|
||||
- **TypeError** - `initial_accum`、`learning_rate`、`lr_power`、`l1`、`l2` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或dict。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **TypeError** - `use_nesterov` 不是bool。
|
||||
- **ValueError** - `lr_power` 大于0。
|
||||
- **ValueError** - `loss_scale` 小于等于0。
|
||||
- **ValueError** - `initial_accum`、`l1` 或 `l2` 小于0。
|
||||
|
||||
|
||||
.. include:: mindspore.nn.optim_target_unique_for_sparse.rst
|
|
@ -15,14 +15,11 @@ mindspore.nn.FastGelu
|
|||
|
||||
其中 :math:`x_i` 是输入的元素。
|
||||
|
||||
**输入:**
|
||||
输入:
|
||||
- **x** (Tensor) - 用于计算FastGelu的Tensor。数据类型为float16或float32。shape为 :math:`(N,*)` ,其中 :math:`*` 表示任意的附加维度数。
|
||||
|
||||
- **x** (Tensor) - 用于计算FastGelu的Tensor。数据类型为float16或float32。shape为 :math:`(N,*)` ,其中 :math:`*` 表示任意的附加维度数。
|
||||
输出:
|
||||
Tensor,具有与 `x` 相同的数据类型和shape。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,具有与 `x` 相同的数据类型和shape。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
异常:
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
|
|
|
@ -11,9 +11,8 @@ mindspore.nn.Fbeta
|
|||
F_\beta=\frac{(1+\beta^2) \cdot true\_positive}
|
||||
{(1+\beta^2) \cdot true\_positive +\beta^2 \cdot false\_negative + false\_positive}
|
||||
|
||||
**参数:**
|
||||
|
||||
- **beta** (Union[float, int]) - F-measure中的beta系数 。
|
||||
参数:
|
||||
- **beta** (Union[float, int]) - F-measure中的beta系数 。
|
||||
|
||||
.. py:method:: clear()
|
||||
|
||||
|
@ -23,25 +22,21 @@ mindspore.nn.Fbeta
|
|||
|
||||
计算fbeta结果。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **average** (bool) - 是否计算fbeta平均值。默认值:False。
|
||||
|
||||
- **average** (bool) - 是否计算fbeta平均值。默认值:False。
|
||||
|
||||
**返回:**
|
||||
|
||||
numpy.ndarray或numpy.float64,计算的Fbeta score结果。
|
||||
返回:
|
||||
numpy.ndarray或numpy.float64,计算的Fbeta score结果。
|
||||
|
||||
.. py:method:: update(*inputs)
|
||||
|
||||
使用预测值 `y_pred` 和真实标签 `y` 更新内部评估结果。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **inputs** - `y_pred` 和 `y` 。`y_pred` 和 `y` 支持Tensor、list或numpy.ndarray类型。
|
||||
通常情况下, `y_pred` 是0到1之间的浮点数列表,shape为 :math:`(N, C)` ,其中 :math:`N` 是样本数, :math:`C` 是类别数。
|
||||
`y` 是整数值,如果使用one-hot编码,则shape为 :math:`(N,C)` ;如果使用类别索引,shape是 :math:`(N,)` 。
|
||||
|
||||
- **inputs** - `y_pred` 和 `y` 。`y_pred` 和 `y` 支持Tensor、list或numpy.ndarray类型。
|
||||
通常情况下, `y_pred` 是0到1之间的浮点数列表,shape为 :math:`(N, C)` ,其中 :math:`N` 是样本数, :math:`C` 是类别数。
|
||||
`y` 是整数值,如果使用one-hot编码,则shape为 :math:`(N,C)` ;如果使用类别索引,shape是 :math:`(N,)` 。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - 当前输入的 `y_pred` 和历史 `y_pred` 类别数不匹配。
|
||||
- **ValueError** - 预测值和真实值包含的类别不同。
|
||||
异常:
|
||||
- **ValueError** - 当前输入的 `y_pred` 和历史 `y_pred` 类别数不匹配。
|
||||
- **ValueError** - 预测值和真实值包含的类别不同。
|
||||
|
|
|
@ -7,18 +7,15 @@ mindspore.nn.FixedLossScaleUpdateCell
|
|||
|
||||
该类是 :class:`mindspore.FixedLossScaleManager` 的 `get_update_cell` 方法的返回值。训练过程中,类 :class:`mindspore.nn.TrainOneStepWithLossScaleCell` 会调用该Cell。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **loss_scale_value** (float) - 初始损失缩放系数。
|
||||
|
||||
- **loss_scale_value** (float) - 初始损失缩放系数。
|
||||
输入:
|
||||
- **loss_scale** (Tensor) - 训练期间的损失缩放系数,是一个标量。在当前类中,该值被忽略。
|
||||
- **overflow** (bool) - 是否发生溢出。
|
||||
|
||||
**输入:**
|
||||
|
||||
- **loss_scale** (Tensor) - 训练期间的损失缩放系数,是一个标量。在当前类中,该值被忽略。
|
||||
- **overflow** (bool) - 是否发生溢出。
|
||||
|
||||
**输出:**
|
||||
|
||||
Bool,即输入 `overflow`。
|
||||
输出:
|
||||
Bool,即输入 `overflow`。
|
||||
|
||||
.. py:method:: get_loss_scale()
|
||||
|
||||
|
|
|
@ -5,14 +5,11 @@ mindspore.nn.Flatten
|
|||
|
||||
对输入Tensor的第0维之外的维度进行展平操作。
|
||||
|
||||
**输入:**
|
||||
输入:
|
||||
- **x** (Tensor) - 要展平的输入Tensor。数据类型为 `number <https://www.mindspore.cn/docs/zh-CN/master/api_python/mindspore/mindspore.dtype.html#mindspore.dtype>`_。shape为 :math:`(N, *)` ,其中 :math:`*` 表示任意的附加维度。
|
||||
|
||||
- **x** (Tensor) - 要展平的输入Tensor。数据类型为 `number <https://www.mindspore.cn/docs/zh-CN/master/api_python/mindspore/mindspore.dtype.html#mindspore.dtype>`_。shape为 :math:`(N, *)` ,其中 :math:`*` 表示任意的附加维度。
|
||||
输出:
|
||||
Tensor,shape为 :math:`(N, X)`,其中 :math:`X` 是输入 `x` 的shape除N之外的其余维度的乘积。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,shape为 :math:`(N, X)`,其中 :math:`X` 是输入 `x` 的shape除N之外的其余维度的乘积。
|
||||
|
||||
**异常:**
|
||||
|
||||
**TypeError** - `x` 不是Tensor。
|
||||
异常:
|
||||
**TypeError** - `x` 不是Tensor。
|
||||
|
|
|
@ -14,25 +14,21 @@ mindspore.nn.FocalLoss
|
|||
.. math::
|
||||
FL(p_t) = -(1-p_t)^\gamma log(p_t)
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **gamma** (float) - gamma用于调整Focal Loss的权重曲线的陡峭程度。默认值:2.0。
|
||||
- **weight** (Union[Tensor, None]) - Focal Loss的权重,维度为1。如果为None,则不使用权重。默认值:None。
|
||||
- **reduction** (str) - loss的计算方式。取值为"mean","sum",或"none"。默认值:"mean"。
|
||||
|
||||
- **gamma** (float) - gamma用于调整Focal Loss的权重曲线的陡峭程度。默认值:2.0。
|
||||
- **weight** (Union[Tensor, None]) - Focal Loss的权重,维度为1。如果为None,则不使用权重。默认值:None。
|
||||
- **reduction** (str) - loss的计算方式。取值为"mean","sum",或"none"。默认值:"mean"。
|
||||
输入:
|
||||
- **logits** (Tensor) - shape为 :math:`(N, C)` 、 :math:`(N, C, H)` 、或 :math:`(N, C, H, W)` 的Tensor,其中 :math:`C` 是分类的数量,值大于1。如果shape为 :math:`(N, C, H, W)` 或 :math:`(N, C, H)` ,则 :math:`H` 或 :math:`H` 和 :math:`W` 的乘积应与 `labels` 的相同。
|
||||
- **labels** (Tensor) - shape为 :math:`(N, C)` 、 :math:`(N, C, H)` 、或 :math:`(N, C, H, W)` 的Tensor, :math:`C` 的值为1,或者与 `logits` 的 :math:`C` 相同。如果 :math:`C` 不为1,则shape应与 `logits` 的shape相同,其中 :math:`C` 是分类的数量。如果shape为 :math:`(N, C, H, W)` 或 :math:`(N, C, H)` ,则 :math:`H` 或 :math:`H` 和 :math:`W` 的乘积应与 `logits` 相同。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor或Scalar,如果 `reduction` 为"none",其shape与 `logits` 相同。否则,将返回Scalar。
|
||||
|
||||
- **logits** (Tensor) - shape为 :math:`(N, C)` 、 :math:`(N, C, H)` 、或 :math:`(N, C, H, W)` 的Tensor,其中 :math:`C` 是分类的数量,值大于1。如果shape为 :math:`(N, C, H, W)` 或 :math:`(N, C, H)` ,则 :math:`H` 或 :math:`H` 和 :math:`W` 的乘积应与 `labels` 的相同。
|
||||
- **labels** (Tensor) - shape为 :math:`(N, C)` 、 :math:`(N, C, H)` 、或 :math:`(N, C, H, W)` 的Tensor, :math:`C` 的值为1,或者与 `logits` 的 :math:`C` 相同。如果 :math:`C` 不为1,则shape应与 `logits` 的shape相同,其中 :math:`C` 是分类的数量。如果shape为 :math:`(N, C, H, W)` 或 :math:`(N, C, H)` ,则 :math:`H` 或 :math:`H` 和 :math:`W` 的乘积应与 `logits` 相同。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor或Scalar,如果 `reduction` 为"none",其shape与 `logits` 相同。否则,将返回Scalar。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `gamma` 的数据类型不是float。
|
||||
- **TypeError** - `weight` 不是Tensor。
|
||||
- **ValueError** - `labels` 维度与 `logits` 不同。
|
||||
- **ValueError** - `labels` 通道不为1,且 `labels` 的shape与 `logits` 不同。
|
||||
- **ValueError** - `reduction` 不为"mean","sum",或"none"。
|
||||
异常:
|
||||
- **TypeError** - `gamma` 的数据类型不是float。
|
||||
- **TypeError** - `weight` 不是Tensor。
|
||||
- **ValueError** - `labels` 维度与 `logits` 不同。
|
||||
- **ValueError** - `labels` 通道不为1,且 `labels` 的shape与 `logits` 不同。
|
||||
- **ValueError** - `reduction` 不为"mean","sum",或"none"。
|
||||
|
|
|
@ -8,20 +8,17 @@ mindspore.nn.ForwardValueAndGrad
|
|||
包括正向网络和梯度函数。该类生成的Cell使用'\*inputs'输入来训练。
|
||||
通过梯度函数来创建反向图,用以计算梯度。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **network** (Cell) - 训练网络。
|
||||
- **weights** (ParameterTuple) - 训练网络中需要计算梯度的的参数。
|
||||
- **get_all** (bool) - 如果为True,则计算网络输入对应的梯度。默认值:False。
|
||||
- **get_by_list** (bool) - 如果为True,则计算参数变量对应的梯度。如果 `get_all` 和 `get_by_list` 都为False,则计算第一个输入对应的梯度。如果 `get_all` 和 `get_by_list` 都为True,则以((输入的梯度),(参数的梯度))的形式同时获取输入和参数变量的梯度。默认值:False。
|
||||
- **sens_param** (bool) - 是否将sens作为输入。如果 `sens_param` 为False,则sens默认为'ones_like(outputs)'。默认值:False。如果 `sens_param` 为True,则需要指定sens的值。
|
||||
|
||||
- **network** (Cell) - 训练网络。
|
||||
- **weights** (ParameterTuple) - 训练网络中需要计算梯度的的参数。
|
||||
- **get_all** (bool) - 如果为True,则计算网络输入对应的梯度。默认值:False。
|
||||
- **get_by_list** (bool) - 如果为True,则计算参数变量对应的梯度。如果 `get_all` 和 `get_by_list` 都为False,则计算第一个输入对应的梯度。如果 `get_all` 和 `get_by_list` 都为True,则以((输入的梯度),(参数的梯度))的形式同时获取输入和参数变量的梯度。默认值:False。
|
||||
- **sens_param** (bool) - 是否将sens作为输入。如果 `sens_param` 为False,则sens默认为'ones_like(outputs)'。默认值:False。如果 `sens_param` 为True,则需要指定sens的值。
|
||||
输入:
|
||||
- **(\*inputs)** (Tuple(Tensor...)) - shape为 :math:`(N, \ldots)` 的输入tuple。
|
||||
- **(sens)** - 反向传播梯度的缩放值。如果网络有单个输出,则sens是tensor。如果网络有多个输出,则sens是tuple(tensor)。
|
||||
|
||||
**输入:**
|
||||
|
||||
- **(\*inputs)** (Tuple(Tensor...)) - shape为 :math:`(N, \ldots)` 的输入tuple。
|
||||
- **(sens)** - 反向传播梯度的缩放值。如果网络有单个输出,则sens是tensor。如果网络有多个输出,则sens是tuple(tensor)。
|
||||
|
||||
**输出:**
|
||||
|
||||
- **forward value** - 网络运行的正向结果。
|
||||
- **gradients** (tuple(tensor)) - 网络反向传播的梯度。
|
||||
输出:
|
||||
- **forward value** - 网络运行的正向结果。
|
||||
- **gradients** (tuple(tensor)) - 网络反向传播的梯度。
|
||||
|
|
|
@ -17,22 +17,18 @@ mindspore.nn.GELU
|
|||
|
||||
GELU相关图参见 `GELU <https://en.wikipedia.org/wiki/Activation_function#/media/File:Activation_gelu.png>`_ 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **approximate** (bool) - 是否启用approximation,默认值:True。如果approximate的值为True,则高斯误差线性激活函数为:
|
||||
|
||||
- **approximate** (bool) - 是否启用approximation,默认值:True。如果approximate的值为True,则高斯误差线性激活函数为:
|
||||
|
||||
:math:`0.5 * x * (1 + tanh(sqrt(2 / pi) * (x + 0.044715 * x^3)))` ,
|
||||
:math:`0.5 * x * (1 + tanh(sqrt(2 / pi) * (x + 0.044715 * x^3)))` ,
|
||||
|
||||
否则为: :math:`x * P(X <= x) = 0.5 * x * (1 + erf(x / sqrt(2)))`, where P(X) ~ N(0, 1) 。
|
||||
否则为: :math:`x * P(X <= x) = 0.5 * x * (1 + erf(x / sqrt(2)))`, where P(X) ~ N(0, 1) 。
|
||||
|
||||
**输入:**
|
||||
输入:
|
||||
- **x** (Tensor) - 用于计算GELU的Tensor。数据类型为float16或float32。shape是 :math:`(N,*)` , :math:`*` 表示任意的附加维度数。
|
||||
|
||||
- **x** (Tensor) - 用于计算GELU的Tensor。数据类型为float16或float32。shape是 :math:`(N,*)` , :math:`*` 表示任意的附加维度数。
|
||||
输出:
|
||||
Tensor,具有与 `x` 相同的数据类型和shape。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,具有与 `x` 相同的数据类型和shape。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
异常:
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
|
|
|
@ -19,33 +19,29 @@ mindspore.nn.GRU
|
|||
|
||||
.. note:: 当GRU运行在Ascend上时,hidden size仅支持16的倍数。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **input_size** (int) - 输入的大小。
|
||||
- **hidden_size** (int) - 隐藏状态大小。
|
||||
- **num_layers** (int) - 网络层数。默认值:1。
|
||||
- **has_bias** (bool) - cell是否有偏置项 `b_{in}` 和 `b_{hn}` 。默认值:True。
|
||||
- **batch_first** (bool) - 指定输入 `x` 的第一个维度是否为batch_size。默认值:False。
|
||||
- **dropout** (float) - 指的是除第一层外每层输入时的Dropout概率。默认值:0.0。Dropout的范围为[0.0, 1.0)。
|
||||
- **bidirectional** (bool) - 是否为双向GRU。如果bidirectional=True,则num_directions=2,为双向GRU。否则为1,单向GRU。默认值:False。
|
||||
|
||||
- **input_size** (int) - 输入的大小。
|
||||
- **hidden_size** (int) - 隐藏状态大小。
|
||||
- **num_layers** (int) - 网络层数。默认值:1。
|
||||
- **has_bias** (bool) - cell是否有偏置项 `b_{in}` 和 `b_{hn}` 。默认值:True。
|
||||
- **batch_first** (bool) - 指定输入 `x` 的第一个维度是否为batch_size。默认值:False。
|
||||
- **dropout** (float) - 指的是除第一层外每层输入时的Dropout概率。默认值:0.0。Dropout的范围为[0.0, 1.0)。
|
||||
- **bidirectional** (bool) - 是否为双向GRU。如果bidirectional=True,则num_directions=2,为双向GRU。否则为1,单向GRU。默认值:False。
|
||||
输入:
|
||||
- **x** (Tensor) - 数据类型为mindspore.float32、shape为(seq_len, batch_size, `input_size`)或(batch_size, seq_len, `input_size`)的tensor。
|
||||
- **hx** (Tensor) - 数据类型为mindspore.float32、shape为(num_directions * `num_layers` , batch_size, `hidden_size` )的tensor。 `hx` 的数据类型必须与 `x` 相同。
|
||||
- **seq_length** (Tensor) - 输入batch中每个序列的长度。shape为 `(batch_size)` 的Tensor。默认值:None。此输入指示填充前的真实序列长度,避免填充元素被用于计算隐藏状态而影响最终输出。当 `x` 含填充元素时,建议使用此输入。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tuple,包含(`output`, `h_n`)的tuple。
|
||||
|
||||
- **x** (Tensor) - 数据类型为mindspore.float32、shape为(seq_len, batch_size, `input_size`)或(batch_size, seq_len, `input_size`)的tensor。
|
||||
- **hx** (Tensor) - 数据类型为mindspore.float32、shape为(num_directions * `num_layers` , batch_size, `hidden_size` )的tensor。 `hx` 的数据类型必须与 `x` 相同。
|
||||
- **seq_length** (Tensor) - 输入batch中每个序列的长度。shape为 `(batch_size)` 的Tensor。默认值:None。此输入指示填充前的真实序列长度,避免填充元素被用于计算隐藏状态而影响最终输出。当 `x` 含填充元素时,建议使用此输入。
|
||||
- **output** (Tensor) - shape为(seq_len, batch_size, num_directions * `hidden_size`)或(batch_size, seq_len, num_directions * `hidden_size`)的Tensor。
|
||||
- **hx_n** (Tensor) - shape为(num_directions * `num_layers`, batch_size, `hidden_size`)的Tensor。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tuple,包含(`output`, `h_n`)的tuple。
|
||||
|
||||
- **output** (Tensor) - shape为(seq_len, batch_size, num_directions * `hidden_size`)或(batch_size, seq_len, num_directions * `hidden_size`)的Tensor。
|
||||
- **hx_n** (Tensor) - shape为(num_directions * `num_layers`, batch_size, `hidden_size`)的Tensor。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `input_size` , `hidden_size` 或 `num_layers` 不是整数。
|
||||
- **TypeError** - `has_bias` , `batch_first` 或 `bibound` 不是bool。
|
||||
- **TypeError** - `dropout` 既不是浮点数也不是整数。
|
||||
- **ValueError** - `dropout` 不在[0.0, 1.0)范围内。
|
||||
异常:
|
||||
- **TypeError** - `input_size` , `hidden_size` 或 `num_layers` 不是整数。
|
||||
- **TypeError** - `has_bias` , `batch_first` 或 `bibound` 不是bool。
|
||||
- **TypeError** - `dropout` 既不是浮点数也不是整数。
|
||||
- **ValueError** - `dropout` 不在[0.0, 1.0)范围内。
|
||||
|
||||
|
|
|
@ -16,22 +16,18 @@ mindspore.nn.GRUCell
|
|||
|
||||
这里 :math:`\sigma` 是sigmoid激活函数, :math:`*` 是乘积。 :math:`W,b` 是公式中输出和输入之间的可学习权重。例如, :math:`W_{ir}, b_{ir}` 是用于将输入 :math:`x` 转换为 :math:`r` 的权重和偏置。详见论文 `Learning Phrase Representations using RNN Encoder–Decoder for Statistical Machine Translation <https://aclanthology.org/D14-1179.pdf>`_ 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **input_size** (int) - 输入的大小。
|
||||
- **hidden_size** (int) - 隐藏状态大小。
|
||||
- **has_bias** (bool) - cell是否有偏置项 `b_in` 和 `b_hn` 。默认值:True。
|
||||
|
||||
- **input_size** (int) - 输入的大小。
|
||||
- **hidden_size** (int) - 隐藏状态大小。
|
||||
- **has_bias** (bool) - cell是否有偏置项 `b_in` 和 `b_hn` 。默认值:True。
|
||||
输入:
|
||||
- **x** (Tensor) - shape为(batch_size, `input_size` )的Tensor。
|
||||
- **hx** (Tensor) - 数据类型为mindspore.float32、shape为(batch_size, `hidden_size` )的Tensor。 `hx` 的数据类型必须与 `x` 相同。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
- **hx'** (Tensor) - shape为(batch_size, `hidden_size`)的Tensor。
|
||||
|
||||
- **x** (Tensor) - shape为(batch_size, `input_size` )的Tensor。
|
||||
- **hx** (Tensor) - 数据类型为mindspore.float32、shape为(batch_size, `hidden_size` )的Tensor。 `hx` 的数据类型必须与 `x` 相同。
|
||||
|
||||
**输出:**
|
||||
|
||||
- **hx'** (Tensor) - shape为(batch_size, `hidden_size`)的Tensor。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `input_size` 、 `hidden_size` 不是int。
|
||||
- **TypeError** - `has_bias` 不是bool值。
|
||||
异常:
|
||||
- **TypeError** - `input_size` 、 `hidden_size` 不是int。
|
||||
- **TypeError** - `has_bias` 不是bool值。
|
||||
|
|
|
@ -5,12 +5,10 @@ mindspore.nn.GetNextSingleOp
|
|||
|
||||
用于获取下一条数据的Cell。更详细的信息请参考 `mindspore.ops.GetNext` 。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **dataset_types** (list[:class:`mindspore.dtype`]) - 数据集类型。
|
||||
- **dataset_shapes** (list[tuple[int]]) - 数据集的shape。
|
||||
- **queue_name** (str) - 待获取数据的队列名称。
|
||||
|
||||
- **dataset_types** (list[:class:`mindspore.dtype`]) - 数据集类型。
|
||||
- **dataset_shapes** (list[tuple[int]]) - 数据集的shape。
|
||||
- **queue_name** (str) - 待获取数据的队列名称。
|
||||
|
||||
**输出:**
|
||||
|
||||
tuple[Tensor],从数据集中获取的数据。
|
||||
输出:
|
||||
tuple[Tensor],从数据集中获取的数据。
|
||||
|
|
|
@ -7,14 +7,12 @@ mindspore.nn.GraphCell
|
|||
|
||||
此功能仍在开发中。目前 `GraphCell` 不支持修改图结构,在导出MindIR时只能使用shape和类型与输入相同的数据。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **graph** (object) - 从MindIR加载的编译图。
|
||||
- **params_init** (dict) - 需要在图中初始化的参数。key为参数名称,类型为字符串,value为 Tensor 或 Parameter。如果参数名在图中已经存在,则更新其值;如果不存在,则忽略。默认值:None。
|
||||
|
||||
- **graph** (object) - 从MindIR加载的编译图。
|
||||
- **params_init** (dict) - 需要在图中初始化的参数。key为参数名称,类型为字符串,value为 Tensor 或 Parameter。如果参数名在图中已经存在,则更新其值;如果不存在,则忽略。默认值:None。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - 如果图不是FuncGraph类型。
|
||||
- **TypeError** - 如果 `params_init` 不是字典。
|
||||
- **TypeError** - 如果 `params_init` 的key不是字符串。
|
||||
- **TypeError** - 如果 `params_init` 的value既不是 Tensor也不是Parameter。
|
||||
异常:
|
||||
- **TypeError** - 如果图不是FuncGraph类型。
|
||||
- **TypeError** - 如果 `params_init` 不是字典。
|
||||
- **TypeError** - 如果 `params_init` 的key不是字符串。
|
||||
- **TypeError** - 如果 `params_init` 的value既不是 Tensor也不是Parameter。
|
||||
|
|
|
@ -14,27 +14,23 @@ mindspore.nn.GroupNorm
|
|||
.. math::
|
||||
y = \frac{x - \mathrm{E}[x]}{\sqrt{\mathrm{Var}[x] + \epsilon}} * \gamma + \beta
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **num_groups** (int) - 沿通道维度待划分的组数。
|
||||
- **num_channels** (int) - 输入的通道数。
|
||||
- **eps** (float) - 添加到分母中的值,以确保数值稳定。默认值:1e-5。
|
||||
- **affine** (bool) - Bool类型,当设置为True时,给该层添加可学习的仿射变换参数,即gama与beta。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - gamma参数的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'、'xavier_uniform'、'he_uniform'等。默认值:'ones'。如果gamma_init是Tensor,则shape必须为 :math:`(num\_channels)` 。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - beta参数的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'、'xavier_uniform'、'he_uniform'等。默认值:'zeros'如果gamma_init是Tensor,则shape必须为 :math:`(num\_channels)` 。
|
||||
|
||||
- **num_groups** (int) - 沿通道维度待划分的组数。
|
||||
- **num_channels** (int) - 输入的通道数。
|
||||
- **eps** (float) - 添加到分母中的值,以确保数值稳定。默认值:1e-5。
|
||||
- **affine** (bool) - Bool类型,当设置为True时,给该层添加可学习的仿射变换参数,即gama与beta。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - gamma参数的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'、'xavier_uniform'、'he_uniform'等。默认值:'ones'。如果gamma_init是Tensor,则shape必须为 :math:`(num\_channels)` 。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - beta参数的初始化方法。str的值引用自函数 `mindspore.common.initializer` ,包括'zeros'、'ones'、'xavier_uniform'、'he_uniform'等。默认值:'zeros'如果gamma_init是Tensor,则shape必须为 :math:`(num\_channels)` 。
|
||||
输入:
|
||||
- **x** (Tensor) - shape为 :math:`(N, C, H, W)` 的特征输入。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,标准化和缩放的偏移Tensor,具有与 `x` 相同的shape和数据类型。
|
||||
|
||||
- **x** (Tensor) - shape为 :math:`(N, C, H, W)` 的特征输入。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,标准化和缩放的偏移Tensor,具有与 `x` 相同的shape和数据类型。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `num_groups` 或 `num_channels` 不是int。
|
||||
- **TypeError** - `eps` 不是float。
|
||||
- **TypeError** - `affine` 不是bool。
|
||||
- **ValueError** - `num_groups` 或 `num_channels` 小于1。
|
||||
- **ValueError** - `num_channels` 未被 `num_groups` 整除。
|
||||
异常:
|
||||
- **TypeError** - `num_groups` 或 `num_channels` 不是int。
|
||||
- **TypeError** - `eps` 不是float。
|
||||
- **TypeError** - `affine` 不是bool。
|
||||
- **ValueError** - `num_groups` 或 `num_channels` 小于1。
|
||||
- **ValueError** - `num_channels` 未被 `num_groups` 整除。
|
|
@ -13,19 +13,15 @@ mindspore.nn.HShrink
|
|||
0, & \text{ otherwise }
|
||||
\end{cases}
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **lambd** (float) - Hard Shrink公式定义的阈值 :math:`\lambda` 。默认值:0.5。
|
||||
|
||||
- **lambd** (float) - Hard Shrink公式定义的阈值 :math:`\lambda` 。默认值:0.5。
|
||||
输入:
|
||||
- **input_x** (Tensor) - Hard Shrink的输入,数据类型为float16或float32。
|
||||
|
||||
**输入:**
|
||||
|
||||
- **input_x** (Tensor) - Hard Shrink的输入,数据类型为float16或float32。
|
||||
输出:
|
||||
Tensor,shape和数据类型与输入相同。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,shape和数据类型与输入相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `lambd` 不是float。
|
||||
- **TypeError** - `input_x` 的dtype既不是float16也不是float32。
|
||||
异常:
|
||||
- **TypeError** - `lambd` 不是float。
|
||||
- **TypeError** - `input_x` 的dtype既不是float16也不是float32。
|
|
@ -12,14 +12,11 @@ mindspore.nn.HSigmoid
|
|||
|
||||
其中,:math:`x_i` 是输入Tensor的一个元素。
|
||||
|
||||
**输入:**
|
||||
输入:
|
||||
- **input_x** (Tensor) - Hard Sigmoid的输入,任意维度的Tensor。
|
||||
|
||||
- **input_x** (Tensor) - Hard Sigmoid的输入,任意维度的Tensor。
|
||||
|
||||
**输出:**
|
||||
输出:
|
||||
Tensor,数据类型和shape与 `input_x` 的相同。
|
||||
|
||||
Tensor,数据类型和shape与 `input_x` 的相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `input_x` 不是tensor。
|
||||
异常:
|
||||
- **TypeError** - `input_x` 不是tensor。
|
||||
|
|
|
@ -14,14 +14,11 @@ mindspore.nn.HSwish
|
|||
|
||||
其中, :math:`x_i` 是输入的元素。
|
||||
|
||||
**输入:**
|
||||
输入:
|
||||
- **x** (Tensor) - 用于计算Hard Swish的Tensor。数据类型必须是float16或float32。shape为 :math:`(N,*)` ,其中 :math:`*` 表示任意的附加维度数。
|
||||
|
||||
- **x** (Tensor) - 用于计算Hard Swish的Tensor。数据类型必须是float16或float32。shape为 :math:`(N,*)` ,其中 :math:`*` 表示任意的附加维度数。
|
||||
输出:
|
||||
Tensor,具有与 `x` 相同的数据类型和shape。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,具有与 `x` 相同的数据类型和shape。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
异常:
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
|
|
|
@ -16,23 +16,19 @@ mindspore.nn.Hardtanh
|
|||
|
||||
线性区域范围 :math:`[-1, 1]` 可以使用 `min_val` 和 `max_val` 进行调整。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **min_val** (Union[int, float]) - 线性区域范围的最小值。 默认值:-1.0。
|
||||
- **max_val** (Union[int, float]) - 线性区域范围的最大值。 默认值:1.0。
|
||||
|
||||
- **min_val** (Union[int, float]) - 线性区域范围的最小值。 默认值:-1.0。
|
||||
- **max_val** (Union[int, float]) - 线性区域范围的最大值。 默认值:1.0。
|
||||
输入:
|
||||
- **x** (Tensor) - 数据类型为float16或float32的Tensor。在CPU和Ascend平台上支持0-7维。在GPU平台上支持0-4维。
|
||||
|
||||
**输入:**
|
||||
|
||||
- **x** (Tensor) - 数据类型为float16或float32的Tensor。在CPU和Ascend平台上支持0-7维。在GPU平台上支持0-4维。
|
||||
输出:
|
||||
Tensor,数据类型和shape与 `x` 的相同。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,数据类型和shape与 `x` 的相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `x` 不是Tensor。
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
- **TypeError** - `min_val` 的数据类型既不是int也不是float。
|
||||
- **TypeError** - `max_val` 的数据类型既不是int也不是float。
|
||||
- **ValueError** - `max_val` 小于 `min_val` 。
|
||||
异常:
|
||||
- **TypeError** - `x` 不是Tensor。
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
- **TypeError** - `min_val` 的数据类型既不是int也不是float。
|
||||
- **TypeError** - `max_val` 的数据类型既不是int也不是float。
|
||||
- **ValueError** - `max_val` 小于 `min_val` 。
|
||||
|
|
|
@ -14,12 +14,11 @@ mindspore.nn.HausdorffDistance
|
|||
|
||||
其中h(A, B)表示,对A中的每个点a找到B集合里的最近点,这些最短距离的最大值为从A到B的单向Hausdorff距离,同理,h(B, A)为集合B到集合A中最近点的最大距离。Hausdoff距离是有方向性的,通常情况下h(A, B)不等于h(B, A)。H(A, B)为双向Hausdorff距离。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **distance_metric** (string) - 支持如下三种距离计算方法:"euclidean"、"chessboard" 或 "taxicab"。默认值:"euclidean"。
|
||||
- **percentile** (float) - 0到100之间的浮点数。指定最终返回的Hausdorff距离的百分位数。默认值:None。
|
||||
- **directed** (bool) - 如果为True,为单向Hausdorff距离,只计算h(y_pred, y)距离;如果为False,为双向Hausdorff距离,计算max(h(y_pred, y), h(y, y_pred))。默认值:False。
|
||||
- **crop** (bool) - 是否裁剪输入图像,仅保留目标区域。为了保证y_pred和y的shape匹配,使用(y_pred | y),即两图像的并集来确定bounding box。默认值:True。
|
||||
参数:
|
||||
- **distance_metric** (string) - 支持如下三种距离计算方法:"euclidean"、"chessboard" 或 "taxicab"。默认值:"euclidean"。
|
||||
- **percentile** (float) - 0到100之间的浮点数。指定最终返回的Hausdorff距离的百分位数。默认值:None。
|
||||
- **directed** (bool) - 如果为True,为单向Hausdorff距离,只计算h(y_pred, y)距离;如果为False,为双向Hausdorff距离,计算max(h(y_pred, y), h(y, y_pred))。默认值:False。
|
||||
- **crop** (bool) - 是否裁剪输入图像,仅保留目标区域。为了保证y_pred和y的shape匹配,使用(y_pred | y),即两图像的并集来确定bounding box。默认值:True。
|
||||
|
||||
.. py:method:: clear()
|
||||
|
||||
|
@ -29,25 +28,21 @@ mindspore.nn.HausdorffDistance
|
|||
|
||||
计算定向或非定向Hausdorff距离。
|
||||
|
||||
**返回:**
|
||||
返回:
|
||||
numpy.float64,计算得到的Hausdorff距离。
|
||||
|
||||
numpy.float64,计算得到的Hausdorff距离。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **RuntimeError** - 如果没有先调用update方法。
|
||||
异常:
|
||||
- **RuntimeError** - 如果没有先调用update方法。
|
||||
|
||||
.. py:method:: update(*inputs)
|
||||
|
||||
使用 `y_pred`、`y` 和 `label_idx` 更新内部评估结果。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **inputs** - `y_pred`、`y` 和 `label_idx`。`y_pred` 和 `y` 为Tensor, list或numpy.ndarray,`y_pred` 是预测的二值图像,`y` 是实际的二值图像。`label_idx` 的数据类型为int或float,表示像素点的类别值。
|
||||
|
||||
- **inputs** - `y_pred`、`y` 和 `label_idx`。`y_pred` 和 `y` 为Tensor, list或numpy.ndarray,`y_pred` 是预测的二值图像,`y` 是实际的二值图像。`label_idx` 的数据类型为int或float,表示像素点的类别值。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - 输入的数量不等于3。
|
||||
- **TypeError** - label_idx 的数据类型不是int或float。
|
||||
- **ValueError** - label_idx 的值不在y_pred或y中。
|
||||
- **ValueError** - y_pred 和 y 的shape不同。
|
||||
异常:
|
||||
- **ValueError** - 输入的数量不等于3。
|
||||
- **TypeError** - label_idx 的数据类型不是int或float。
|
||||
- **ValueError** - label_idx 的值不在y_pred或y中。
|
||||
- **ValueError** - y_pred 和 y 的shape不同。
|
||||
|
|
|
@ -27,25 +27,21 @@ mindspore.nn.HuberLoss
|
|||
\operatorname{sum}(L), & \text{if reduction} = \text{"sum".}
|
||||
\end{cases}
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **reduction** (str) - 应用于loss的reduction类型。取值为"mean","sum",或"none"。默认值:"mean"。如果 `reduction` 为"mean"或"sum",则输出一个标量Tensor;如果 `reduction` 为"none",则输出Tensor的shape为广播后的shape。
|
||||
- **delta** (Union[int, float]) - 两种损失之间变化的阈值。该值必须为正。默认值:1.0。
|
||||
|
||||
- **reduction** (str) - 应用于loss的reduction类型。取值为"mean","sum",或"none"。默认值:"mean"。如果 `reduction` 为"mean"或"sum",则输出一个标量Tensor;如果 `reduction` 为"none",则输出Tensor的shape为广播后的shape。
|
||||
- **delta** (Union[int, float]) - 两种损失之间变化的阈值。该值必须为正。默认值:1.0。
|
||||
输入:
|
||||
- **logits** (Tensor) - 输入预测值,任意维度的Tensor。其数据类型为float16或float32。
|
||||
- **labels** (Tensor) - 目标值,通常情况下与 `logits` 的shape和dtype相同。但是如果 `logits` 和 `labels` 的shape不同,需要保证他们之间可以互相广播。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor或Scalar,如果 `reduction` 为"none",返回与 `logits` 具有相同shape和dtype的Tensor。否则,将返回一个Scalar。
|
||||
|
||||
- **logits** (Tensor) - 输入预测值,任意维度的Tensor。其数据类型为float16或float32。
|
||||
- **labels** (Tensor) - 目标值,通常情况下与 `logits` 的shape和dtype相同。但是如果 `logits` 和 `labels` 的shape不同,需要保证他们之间可以互相广播。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor或Scalar,如果 `reduction` 为"none",返回与 `logits` 具有相同shape和dtype的Tensor。否则,将返回一个Scalar。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `logits` 或 `labels` 的数据类型既不是float16也不是float32。
|
||||
- **TypeError** - `logits` 和 `labels` 的数据类型不同。
|
||||
- **TypeError** - `delta` 不是float或int。
|
||||
- **ValueError** - `delta` 的值小于或等于0。
|
||||
- **ValueError** - `reduction` 不为"mean"、"sum"或"none"。
|
||||
- **ValueError** - `logits` 和 `labels` 有不同的shape,且不能互相广播。
|
||||
异常:
|
||||
- **TypeError** - `logits` 或 `labels` 的数据类型既不是float16也不是float32。
|
||||
- **TypeError** - `logits` 和 `labels` 的数据类型不同。
|
||||
- **TypeError** - `delta` 不是float或int。
|
||||
- **ValueError** - `delta` 的值小于或等于0。
|
||||
- **ValueError** - `reduction` 不为"mean"、"sum"或"none"。
|
||||
- **ValueError** - `logits` 和 `labels` 有不同的shape,且不能互相广播。
|
||||
|
|
|
@ -14,15 +14,12 @@ mindspore.nn.ImageGradients
|
|||
dx[i] = \begin{cases} image[:, i+1]-image[:, i], &if\ 0<=i<w-1 \cr
|
||||
0, &if\ i==w-1\end{cases}
|
||||
|
||||
**输入:**
|
||||
输入:
|
||||
- **images** (Tensor) - 输入图像数据,格式为'NCHW'。
|
||||
|
||||
- **images** (Tensor) - 输入图像数据,格式为'NCHW'。
|
||||
输出:
|
||||
- **dy** (Tensor) - 垂直方向的图像梯度,数据类型和shape与输入相同。
|
||||
- **dx** (Tensor) - 水平方向的图像梯度,数据类型和shape与输入相同。
|
||||
|
||||
**输出:**
|
||||
|
||||
- **dy** (Tensor) - 垂直方向的图像梯度,数据类型和shape与输入相同。
|
||||
- **dx** (Tensor) - 水平方向的图像梯度,数据类型和shape与输入相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - `images` 的shape长度不等于4。
|
||||
异常:
|
||||
- **ValueError** - `images` 的shape长度不等于4。
|
|
@ -21,30 +21,26 @@ mindspore.nn.InstanceNorm1d
|
|||
.. note::
|
||||
需要注意的是,更新滑动平均和滑动方差的公式为 :math:`\hat{x}_\text{new} = (1 - \text{momentum}) \times x_t + \text{momentum} \times \hat{x}` ,其中 :math:`\hat{x}` 是估计的统计量, :math:`x_t` 是新的观察值。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **num_features** (int) - 通道数量,输入Tensor shape :math:`(N, C, L)` 中的 `C` 。
|
||||
- **eps** (float) - 添加到分母中的值,以确保数值稳定。默认值:1e-5。
|
||||
- **momentum** (float) - 动态均值和动态方差所使用的动量。默认值:0.1。
|
||||
- **affine** (bool) - bool类型。设置为True时,可以学习gamma和beta参数。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - gamma参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - beta参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
|
||||
- **num_features** (int) - 通道数量,输入Tensor shape :math:`(N, C, L)` 中的 `C` 。
|
||||
- **eps** (float) - 添加到分母中的值,以确保数值稳定。默认值:1e-5。
|
||||
- **momentum** (float) - 动态均值和动态方差所使用的动量。默认值:0.1。
|
||||
- **affine** (bool) - bool类型。设置为True时,可以学习gamma和beta参数。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - gamma参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - beta参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
输入:
|
||||
- **x** (Tensor) - shape为 :math:`(N, C, L)` 的Tensor。数据类型为float16或float32。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,归一化,缩放,偏移后的Tensor,其shape为 :math:`(N, C, L)` 。类型和shape与 `x` 相同。
|
||||
|
||||
- **x** (Tensor) - shape为 :math:`(N, C, L)` 的Tensor。数据类型为float16或float32。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,归一化,缩放,偏移后的Tensor,其shape为 :math:`(N, C, L)` 。类型和shape与 `x` 相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `num_features` 不是整数。
|
||||
- **TypeError** - `eps` 的类型不是float。
|
||||
- **TypeError** - `momentum` 的类型不是float。
|
||||
- **TypeError** - `affine` 不是bool。
|
||||
- **TypeError** - `gamma_init` / `beta_init` 的类型不相同,或者初始化的元素类型不是float32。
|
||||
- **ValueError** - `num_features` 小于1。
|
||||
- **ValueError** - `momentum` 不在范围[0, 1]内。
|
||||
- **KeyError** - `gamma_init` / `beta_init` 中的任何一个是str,并且不存在继承自 `Initializer` 的同义类。
|
||||
异常:
|
||||
- **TypeError** - `num_features` 不是整数。
|
||||
- **TypeError** - `eps` 的类型不是float。
|
||||
- **TypeError** - `momentum` 的类型不是float。
|
||||
- **TypeError** - `affine` 不是bool。
|
||||
- **TypeError** - `gamma_init` / `beta_init` 的类型不相同,或者初始化的元素类型不是float32。
|
||||
- **ValueError** - `num_features` 小于1。
|
||||
- **ValueError** - `momentum` 不在范围[0, 1]内。
|
||||
- **KeyError** - `gamma_init` / `beta_init` 中的任何一个是str,并且不存在继承自 `Initializer` 的同义类。
|
||||
|
|
|
@ -21,30 +21,26 @@ mindspore.nn.InstanceNorm2d
|
|||
.. note::
|
||||
需要注意的是,更新滑动平均和滑动方差的公式为 :math:`\hat{x}_\text{new} = (1 - \text{momentum}) \times x_t + \text{momentum} \times \hat{x}` ,其中 :math:`\hat{x}` 是估计的统计量, :math:`x_t` 是新的观察值。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **num_features** (int) - 通道数量,输入Tensor shape :math:`(N,C,H,W)` 中的 `C` 。
|
||||
- **eps** (float) - 添加到分母中的值,以确保数值稳定。默认值:1e-5。
|
||||
- **momentum** (float) - 动态均值和动态方差所使用的动量。默认值:0.1。
|
||||
- **affine** (bool) - bool类型。设置为True时,可以学习gamma和beta参数。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - gamma参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - beta参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
|
||||
- **num_features** (int) - 通道数量,输入Tensor shape :math:`(N,C,H,W)` 中的 `C` 。
|
||||
- **eps** (float) - 添加到分母中的值,以确保数值稳定。默认值:1e-5。
|
||||
- **momentum** (float) - 动态均值和动态方差所使用的动量。默认值:0.1。
|
||||
- **affine** (bool) - bool类型。设置为True时,可以学习gamma和beta参数。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - gamma参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - beta参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
输入:
|
||||
- **x** (Tensor) - shape为 :math:`(N, C, H, W)` 的Tensor。数据类型为float16或float32。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,归一化,缩放,偏移后的Tensor,其shape为 :math:`(N, C, H, W)` 。类型和shape与 `x` 相同。
|
||||
|
||||
- **x** (Tensor) - shape为 :math:`(N, C, H, W)` 的Tensor。数据类型为float16或float32。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,归一化,缩放,偏移后的Tensor,其shape为 :math:`(N, C, H, W)` 。类型和shape与 `x` 相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `num_features` 不是整数。
|
||||
- **TypeError** - `eps` 的类型不是float。
|
||||
- **TypeError** - `momentum` 的类型不是float。
|
||||
- **TypeError** - `affine` 不是bool。
|
||||
- **TypeError** - `gamma_init` / `beta_init` 的类型不相同,或者初始化的元素类型不是float32。
|
||||
- **ValueError** - `num_features` 小于1。
|
||||
- **ValueError** - `momentum` 不在范围[0, 1]内。
|
||||
- **KeyError** - `gamma_init` / `beta_init` 中的任何一个是str,并且不存在继承自 `Initializer` 的同义类。
|
||||
异常:
|
||||
- **TypeError** - `num_features` 不是整数。
|
||||
- **TypeError** - `eps` 的类型不是float。
|
||||
- **TypeError** - `momentum` 的类型不是float。
|
||||
- **TypeError** - `affine` 不是bool。
|
||||
- **TypeError** - `gamma_init` / `beta_init` 的类型不相同,或者初始化的元素类型不是float32。
|
||||
- **ValueError** - `num_features` 小于1。
|
||||
- **ValueError** - `momentum` 不在范围[0, 1]内。
|
||||
- **KeyError** - `gamma_init` / `beta_init` 中的任何一个是str,并且不存在继承自 `Initializer` 的同义类。
|
||||
|
|
|
@ -21,30 +21,26 @@ mindspore.nn.InstanceNorm3d
|
|||
.. note::
|
||||
需要注意的是,更新滑动平均和滑动方差的公式为 :math:`\hat{x}_\text{new} = (1 - \text{momentum}) \times x_t + \text{momentum} \times \hat{x}` ,其中 :math:`\hat{x}` 是估计的统计量, :math:`x_t` 是新的观察值。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **num_features** (int) - 通道数量,输入Tensor shape :math:`(N, C, D, H, W)` 中的 `C` 。
|
||||
- **eps** (float) - 添加到分母中的值,以确保数值稳定。默认值:1e-5。
|
||||
- **momentum** (float) - 动态均值和动态方差所使用的动量。默认值:0.1。
|
||||
- **affine** (bool) - bool类型。设置为True时,可以学习gamma和beta参数。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - gamma参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - beta参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
|
||||
- **num_features** (int) - 通道数量,输入Tensor shape :math:`(N, C, D, H, W)` 中的 `C` 。
|
||||
- **eps** (float) - 添加到分母中的值,以确保数值稳定。默认值:1e-5。
|
||||
- **momentum** (float) - 动态均值和动态方差所使用的动量。默认值:0.1。
|
||||
- **affine** (bool) - bool类型。设置为True时,可以学习gamma和beta参数。默认值:True。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - gamma参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - beta参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'等。默认值:'zeros'。
|
||||
输入:
|
||||
- **x** (Tensor) - shape为 :math:`(N, C, D, H, W)` 的Tensor。数据类型为float16或float32。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,归一化,缩放,偏移后的Tensor,其shape为 :math:`(N, C, D, H, W)` 。类型和shape与 `x` 相同。
|
||||
|
||||
- **x** (Tensor) - shape为 :math:`(N, C, D, H, W)` 的Tensor。数据类型为float16或float32。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,归一化,缩放,偏移后的Tensor,其shape为 :math:`(N, C, D, H, W)` 。类型和shape与 `x` 相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `num_features` 不是整数。
|
||||
- **TypeError** - `eps` 的类型不是float。
|
||||
- **TypeError** - `momentum` 的类型不是float。
|
||||
- **TypeError** - `affine` 不是bool。
|
||||
- **TypeError** - `gamma_init` / `beta_init` 的类型不相同,或者初始化的元素类型不是float32。
|
||||
- **ValueError** - `num_features` 小于1。
|
||||
- **ValueError** - `momentum` 不在范围[0, 1]内。
|
||||
- **KeyError** - `gamma_init` / `beta_init` 中的任何一个是str,并且不存在继承自 `Initializer` 的同义类。
|
||||
异常:
|
||||
- **TypeError** - `num_features` 不是整数。
|
||||
- **TypeError** - `eps` 的类型不是float。
|
||||
- **TypeError** - `momentum` 的类型不是float。
|
||||
- **TypeError** - `affine` 不是bool。
|
||||
- **TypeError** - `gamma_init` / `beta_init` 的类型不相同,或者初始化的元素类型不是float32。
|
||||
- **ValueError** - `num_features` 小于1。
|
||||
- **ValueError** - `momentum` 不在范围[0, 1]内。
|
||||
- **KeyError** - `gamma_init` / `beta_init` 中的任何一个是str,并且不存在继承自 `Initializer` 的同义类。
|
||||
|
|
|
@ -20,24 +20,20 @@ mindspore.nn.InverseDecayLR
|
|||
.. math::
|
||||
p = floor(\frac{current\_step}{decay\_steps})
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **learning_rate** (float) - 学习率的初始值。
|
||||
- **decay_rate** (float) - 衰减率。
|
||||
- **decay_steps** (int) - 进行衰减的step数。
|
||||
- **is_stair** (bool) - 如果为True,则学习率每 `decay_steps` 次衰减一次。默认值:False。
|
||||
|
||||
- **learning_rate** (float) - 学习率的初始值。
|
||||
- **decay_rate** (float) - 衰减率。
|
||||
- **decay_steps** (int) - 进行衰减的step数。
|
||||
- **is_stair** (bool) - 如果为True,则学习率每 `decay_steps` 次衰减一次。默认值:False。
|
||||
输入:
|
||||
- **global_step** (Tensor) - 当前step数,即current_step。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
标量Tensor。当前step的学习率值。
|
||||
|
||||
- **global_step** (Tensor) - 当前step数,即current_step。
|
||||
|
||||
**输出:**
|
||||
|
||||
标量Tensor。当前step的学习率值。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `learning_rate` 或 `decay_rate` 不是float。
|
||||
- **TypeError** - `decay_steps` 不是int或 `is_stair` 不是bool。
|
||||
- **ValueError** - `decay_steps` 小于1。
|
||||
- **ValueError** - `learning_rate` 或 `decay_rate` 小于或等于0。
|
||||
异常:
|
||||
- **TypeError** - `learning_rate` 或 `decay_rate` 不是float。
|
||||
- **TypeError** - `decay_steps` 不是int或 `is_stair` 不是bool。
|
||||
- **ValueError** - `decay_steps` 小于1。
|
||||
- **ValueError** - `learning_rate` 或 `decay_rate` 小于或等于0。
|
||||
|
|
|
@ -5,18 +5,15 @@ mindspore.nn.Jvp
|
|||
|
||||
计算给定网络的雅可比向量积(Jacobian-vector product, JVP)。JVP对应 `前向模式自动微分 <https://www.mindspore.cn/docs/zh-CN/master/design/auto_gradient.html#前向自动微分>`_。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **fn** (Cell) - 基于Cell的网络,用于接收Tensor输入并返回Tensor或者Tensor元组。
|
||||
|
||||
- **fn** (Cell) - 基于Cell的网络,用于接收Tensor输入并返回Tensor或者Tensor元组。
|
||||
输入:
|
||||
- **inputs** (Tensor) - 输入网络的入参,单个或多个Tensor。
|
||||
- **v** (Tensor or Tuple of Tensor) - 与雅可比矩阵点乘的向量,Shape与网络的输入一致。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
2个Tensor或Tensor元组构成的元组。
|
||||
|
||||
- **inputs** (Tensor) - 输入网络的入参,单个或多个Tensor。
|
||||
- **v** (Tensor or Tuple of Tensor) - 与雅可比矩阵点乘的向量,Shape与网络的输入一致。
|
||||
|
||||
**输出:**
|
||||
|
||||
2个Tensor或Tensor元组构成的元组。
|
||||
|
||||
- **net_output** (Tensor or Tuple of Tensor) - 输入网络的正向计算结果。
|
||||
- **jvp** (Tensor or Tuple of Tensor) - 雅可比向量积的结果。
|
||||
- **net_output** (Tensor or Tuple of Tensor) - 输入网络的正向计算结果。
|
||||
- **jvp** (Tensor or Tuple of Tensor) - 雅可比向量积的结果。
|
||||
|
|
|
@ -19,20 +19,16 @@ mindspore.nn.L1Loss
|
|||
\operatorname{sum}(L), & \text{if reduction} = \text{'sum'.}
|
||||
\end{cases}
|
||||
|
||||
**参数:**
|
||||
|
||||
**reduction** (str) - 应用于loss的reduction类型。取值为"mean","sum",或"none"。默认值:"mean"。如果 `reduction` 为'mean'或'sum',则输出一个标量Tensor;如果 `reduction` 为'none',则输出Tensor的shape为广播后的shape。
|
||||
参数:
|
||||
- **reduction** (str) - 应用于loss的reduction类型。取值为"mean","sum",或"none"。默认值:"mean"。如果 `reduction` 为'mean'或'sum',则输出一个标量Tensor;如果 `reduction` 为'none',则输出Tensor的shape为广播后的shape。
|
||||
|
||||
**输入:**
|
||||
输入:
|
||||
- **logits** (Tensor) - 预测值,任意维度的Tensor。
|
||||
- **labels** (Tensor) - 目标值,通常情况下与 `logits` 的shape相同。但是如果 `logits` 和 `labels` 的shape不同,需要保证他们之间可以互相广播。
|
||||
|
||||
- **logits** (Tensor) - 预测值,任意维度的Tensor。
|
||||
- **labels** (Tensor) - 目标值,通常情况下与 `logits` 的shape相同。但是如果 `logits` 和 `labels` 的shape不同,需要保证他们之间可以互相广播。
|
||||
|
||||
**输出:**
|
||||
输出:
|
||||
Tensor,类型为float。
|
||||
|
||||
Tensor,类型为float。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **ValueError** - `reduction` 不为"mean"、"sum"或"none"。
|
||||
- **ValueError** - `logits` 和 `labels` 有不同的shape,且不能互相广播。
|
||||
异常:
|
||||
- **ValueError** - `reduction` 不为"mean"、"sum"或"none"。
|
||||
- **ValueError** - `logits` 和 `labels` 有不同的shape,且不能互相广播。
|
||||
|
|
|
@ -15,20 +15,16 @@ mindspore.nn.L1Regularizer
|
|||
.. note::
|
||||
正则化因子应为大于0。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **scale** (int, float) - L1正则化因子,其值大于0。
|
||||
|
||||
- **scale** (int, float) - L1正则化因子,其值大于0。
|
||||
输入:
|
||||
- **weights** (Tensor) - L1Regularizer的输入,任意维度的Tensor,数据类型为float16或float32。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,其shape为(),默认数据类型为mindspore.float32,如果权重的数据类型精度更高,则以权重的数据类型作为输出数据类型。
|
||||
|
||||
- **weights** (Tensor) - L1Regularizer的输入,任意维度的Tensor,数据类型为float16或float32。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,其shape为(),默认数据类型为mindspore.float32,如果权重的数据类型精度更高,则以权重的数据类型作为输出数据类型。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `scale` 既不是int也不是float。
|
||||
- **ValueError** - `scale` 不大于0。
|
||||
- **ValueError** - `scale` 是math.inf或math.nan。
|
||||
异常:
|
||||
- **TypeError** - `scale` 既不是int也不是float。
|
||||
- **ValueError** - `scale` 不大于0。
|
||||
- **ValueError** - `scale` 是math.inf或math.nan。
|
||||
|
|
|
@ -54,41 +54,37 @@ mindspore.nn.Lamb
|
|||
|
||||
.. include:: mindspore.nn.optim_note_loss_scale.rst
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **params** (Union[list[Parameter], list[dict]]): 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
|
||||
- **params** (Union[list[Parameter], list[dict]]): 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]):
|
||||
|
||||
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]):
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
- **beta1** (float):第一矩的指数衰减率。参数范围(0.0,1.0)。默认值:0.9。
|
||||
- **beta2** (float):第二矩的指数衰减率。参数范围(0.0,1.0)。默认值:0.999。
|
||||
- **eps** (float) - 将添加到分母中,以提高数值稳定性。必须大于0。默认值:1e-6。
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
|
||||
- **beta1** (float):第一矩的指数衰减率。参数范围(0.0,1.0)。默认值:0.9。
|
||||
- **beta2** (float):第二矩的指数衰减率。参数范围(0.0,1.0)。默认值:0.999。
|
||||
- **eps** (float) - 将添加到分母中,以提高数值稳定性。必须大于0。默认值:1e-6。
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
|
||||
**输入:**
|
||||
输入:
|
||||
- **gradients** (tuple[Tensor]) - `params` 的梯度,shape与 `params` 相同。
|
||||
|
||||
- **gradients** (tuple[Tensor]) - `params` 的梯度,shape与 `params` 相同。
|
||||
输出:
|
||||
tuple[bool],所有元素都为True。
|
||||
|
||||
**输出:**
|
||||
|
||||
tuple[bool],所有元素都为True。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、Iterable或LearningRateSchedule。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或dict。
|
||||
- **TypeError** - `beta1`、`beta2` 或 `eps` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **ValueError** - `eps` 小于等于0。
|
||||
- **ValueError** - `beta1`、`beta2` 不在(0.0,1.0)范围内。
|
||||
- **ValueError** - `weight_decay` 小于0。
|
||||
异常:
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、Iterable或LearningRateSchedule。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或dict。
|
||||
- **TypeError** - `beta1`、`beta2` 或 `eps` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **ValueError** - `eps` 小于等于0。
|
||||
- **ValueError** - `beta1`、`beta2` 不在(0.0,1.0)范围内。
|
||||
- **ValueError** - `weight_decay` 小于0。
|
||||
|
|
|
@ -13,25 +13,21 @@ mindspore.nn.LayerNorm
|
|||
.. math::
|
||||
y = \frac{x - \mathrm{E}[x]}{\sqrt{\mathrm{Var}[x] + \epsilon}} * \gamma + \beta
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **normalized_shape** (Union(tuple[int], list[int]) - 沿轴 `begin_norm_axis ... R - 1` 执行归一化。
|
||||
- **begin_norm_axis** (int) - 归一化开始计算的轴,取值范围是[-1, rank(x))。默认值:-1。
|
||||
- **begin_params_axis** (int) - 第一个参数(beta, gamma)的维度:scale和centering参数有 `begin_params_axis: rank(x)` 个维度,并与输入一起广播,取值范围是[-1, rank(input))。默认值:-1。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - :math:`\gamma` 参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'、'xavier_uniform'、'he_uniform'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - :math:`\beta` 参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'、'xavier_uniform'、'he_uniform'等。默认值:'zeros'。
|
||||
- **epsilon** (float) - :math:`\epsilon` 添加到分母中的值,以确保数值稳定。默认值:1e-7。
|
||||
|
||||
- **normalized_shape** (Union(tuple[int], list[int]) - 沿轴 `begin_norm_axis ... R - 1` 执行归一化。
|
||||
- **begin_norm_axis** (int) - 归一化开始计算的轴,取值范围是[-1, rank(x))。默认值:-1。
|
||||
- **begin_params_axis** (int) - 第一个参数(beta, gamma)的维度:scale和centering参数有 `begin_params_axis: rank(x)` 个维度,并与输入一起广播,取值范围是[-1, rank(input))。默认值:-1。
|
||||
- **gamma_init** (Union[Tensor, str, Initializer, numbers.Number]) - :math:`\gamma` 参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'、'xavier_uniform'、'he_uniform'等。默认值:'ones'。
|
||||
- **beta_init** (Union[Tensor, str, Initializer, numbers.Number]) - :math:`\beta` 参数的初始化方法。str的值引用自函数 `initializer` ,包括'zeros'、'ones'、'xavier_uniform'、'he_uniform'等。默认值:'zeros'。
|
||||
- **epsilon** (float) - :math:`\epsilon` 添加到分母中的值,以确保数值稳定。默认值:1e-7。
|
||||
输入:
|
||||
- **x** (Tensor) - `x` 的shape为 :math:`(x_1, x_2, ..., x_R)` , `input_shape[begin_norm_axis:]` 等于 `normalized_shape` 。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,归一化后的Tensor,shape和数据类型与 `x` 相同。
|
||||
|
||||
- **x** (Tensor) - `x` 的shape为 :math:`(x_1, x_2, ..., x_R)` , `input_shape[begin_norm_axis:]` 等于 `normalized_shape` 。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,归一化后的Tensor,shape和数据类型与 `x` 相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `normalized_shape` 既不是list也不是tuple。
|
||||
- **TypeError** - `begin_norm_axis` 或 `begin_params_axis` 不是int。
|
||||
- **TypeError** - `epsilon` 不是float。
|
||||
异常:
|
||||
- **TypeError** - `normalized_shape` 既不是list也不是tuple。
|
||||
- **TypeError** - `begin_norm_axis` 或 `begin_params_axis` 不是int。
|
||||
- **TypeError** - `epsilon` 不是float。
|
|
@ -27,48 +27,44 @@ mindspore.nn.LazyAdam
|
|||
|
||||
.. include:: mindspore.nn.optim_note_weight_decay.rst
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
|
||||
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params":
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_group_param.rst
|
||||
.. include:: mindspore.nn.optim_group_lr.rst
|
||||
.. include:: mindspore.nn.optim_group_dynamic_weight_decay.rst
|
||||
.. include:: mindspore.nn.optim_group_gc.rst
|
||||
.. include:: mindspore.nn.optim_group_order.rst
|
||||
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]) - 默认值:1e-3。
|
||||
|
||||
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]) - 默认值:1e-3。
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_lr.rst
|
||||
- **beta1** (float) - `moment1` 的指数衰减率。参数范围(0.0,1.0)。默认值:0.9。
|
||||
- **beta2** (float) - `moment2` 的指数衰减率。参数范围(0.0,1.0)。默认值:0.999。
|
||||
- **eps** (float) - 将添加到分母中,以提高数值稳定性。必须大于0。默认值:1e-8。
|
||||
- **use_locking** (bool) - 是否对参数更新加锁保护。如果为True,则 `w` 、`m` 和 `v` 的Tensor更新将受到锁的保护。如果为False,则结果不可预测。默认值:False。
|
||||
- **use_nesterov** (bool) - 是否使用Nesterov Accelerated Gradient (NAG)算法更新梯度。如果为True,使用NAG更新梯度。如果为False,则在不使用NAG的情况下更新梯度。默认值:False。
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
|
||||
- **beta1** (float) - `moment1` 的指数衰减率。参数范围(0.0,1.0)。默认值:0.9。
|
||||
- **beta2** (float) - `moment2` 的指数衰减率。参数范围(0.0,1.0)。默认值:0.999。
|
||||
- **eps** (float) - 将添加到分母中,以提高数值稳定性。必须大于0。默认值:1e-8。
|
||||
- **use_locking** (bool) - 是否对参数更新加锁保护。如果为True,则 `w` 、`m` 和 `v` 的Tensor更新将受到锁的保护。如果为False,则结果不可预测。默认值:False。
|
||||
- **use_nesterov** (bool) - 是否使用Nesterov Accelerated Gradient (NAG)算法更新梯度。如果为True,使用NAG更新梯度。如果为False,则在不使用NAG的情况下更新梯度。默认值:False。
|
||||
- **weight_decay** (Union[float, int, Cell]) - 权重衰减(L2 penalty)。默认值:0.0。
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_dynamic_wd.rst
|
||||
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
.. include:: mindspore.nn.optim_arg_loss_scale.rst
|
||||
|
||||
**输入:**
|
||||
输入:
|
||||
- **gradients** (tuple[Tensor]) - `params` 的梯度,shape与 `params` 相同。
|
||||
|
||||
- **gradients** (tuple[Tensor]) - `params` 的梯度,shape与 `params` 相同。
|
||||
输出:
|
||||
Tensor[bool],值为True。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor[bool],值为True。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、Iterable或LearningRateSchedule。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或字典。
|
||||
- **TypeError** - `beta1`、`beta2`、`eps` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **TypeError** - `use_locking` 或 `use_nesterov` 不是bool。
|
||||
- **ValueError** - `loss_scale` 或 `eps` 小于或等于0。
|
||||
- **ValueError** - `beta1`、`beta2` 不在(0.0,1.0)范围内。
|
||||
- **ValueError** - `weight_decay` 小于0。
|
||||
异常:
|
||||
- **TypeError** - `learning_rate` 不是int、float、Tensor、Iterable或LearningRateSchedule。
|
||||
- **TypeError** - `parameters` 的元素不是Parameter或字典。
|
||||
- **TypeError** - `beta1`、`beta2`、`eps` 或 `loss_scale` 不是float。
|
||||
- **TypeError** - `weight_decay` 不是float或int。
|
||||
- **TypeError** - `use_locking` 或 `use_nesterov` 不是bool。
|
||||
- **ValueError** - `loss_scale` 或 `eps` 小于或等于0。
|
||||
- **ValueError** - `beta1`、`beta2` 不在(0.0,1.0)范围内。
|
||||
- **ValueError** - `weight_decay` 小于0。
|
||||
|
||||
.. include:: mindspore.nn.optim_target_unique_for_sparse.rst
|
||||
|
|
|
@ -15,18 +15,14 @@ mindspore.nn.LeakyReLU
|
|||
|
||||
更多细节详见 `Rectifier Nonlinearities Improve Neural Network Acoustic Models <https://ai.stanford.edu/~amaas/papers/relu_hybrid_icml2013_final.pdf>`_。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **alpha** (`Union[int, float]`) - x<0时激活函数的斜率,默认值:0.2。
|
||||
|
||||
- **alpha** (`Union[int, float]`) - x<0时激活函数的斜率,默认值:0.2。
|
||||
输入:
|
||||
- **x** (Tensor) - 计算LeakyReLU的任意维度的Tensor。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,数据类型和shape与 `x` 相同。
|
||||
|
||||
- **x** (Tensor) - 计算LeakyReLU的任意维度的Tensor。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,数据类型和shape与 `x` 相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `alpha` 不是浮点数或整数。
|
||||
异常:
|
||||
- **TypeError** - `alpha` 不是浮点数或整数。
|
||||
|
|
|
@ -14,14 +14,11 @@ mindspore.nn.LogSigmoid
|
|||
|
||||
其中,:math:`x_i` 是输入Tensor的一个元素。
|
||||
|
||||
**输入:**
|
||||
输入:
|
||||
- **x** (Tensor) - Log Sigmoid的输入,数据类型为float16或float32。shape为 :math:`(N,*)` ,其中 :math:`*` 表示任意的附加维度。
|
||||
|
||||
- **x** (Tensor) - Log Sigmoid的输入,数据类型为float16或float32。shape为 :math:`(N,*)` ,其中 :math:`*` 表示任意的附加维度。
|
||||
输出:
|
||||
Tensor,数据类型和shape与 `x` 的相同。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,数据类型和shape与 `x` 的相同。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
异常:
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
|
|
|
@ -17,20 +17,16 @@ mindspore.nn.LogSoftmax
|
|||
|
||||
其中,:math:`x_i` 是输入Tensor的一个元素。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **axis** (int) - Log Softmax运算的axis,-1表示最后一个维度。默认值:-1。
|
||||
|
||||
- **axis** (int) - Log Softmax运算的axis,-1表示最后一个维度。默认值:-1。
|
||||
输入:
|
||||
- **x** (Tensor) - Log Softmax的输入,数据类型为float16或float32。
|
||||
|
||||
**输入:**
|
||||
输出:
|
||||
Tensor,数据类型和shape与 `x` 相同,输出值的范围在[-inf,0)。
|
||||
|
||||
- **x** (Tensor) - Log Softmax的输入,数据类型为float16或float32。
|
||||
|
||||
**输出:**
|
||||
|
||||
Tensor,数据类型和shape与 `x` 相同,输出值的范围在[-inf,0)。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `axis` 不是int。
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
- **ValueError** - `axis` 不在[-len(x), len(x))范围中。
|
||||
异常:
|
||||
- **TypeError** - `axis` 不是int。
|
||||
- **TypeError** - `x` 的数据类型既不是float16也不是float32。
|
||||
- **ValueError** - `axis` 不在[-len(x), len(x))范围中。
|
||||
|
|
|
@ -6,12 +6,10 @@ mindspore.nn.auc
|
|||
使用梯形法则计算曲线下面积AUC(Area Under the Curve,AUC)。这是一个一般函数,给定曲线上的点,
|
||||
用于计算ROC (Receiver Operating Curve, ROC) 曲线下的面积。
|
||||
|
||||
**参数:**
|
||||
|
||||
- **x** (Union[np.array, list]) - 从ROC曲线(False Positive Rate, FPR)来看,np.array具有假阳性率。如果是多类,则为np.array列表。Shape为 :math:`(N)` 。
|
||||
- **y** (Union[np.array, list]) - 从ROC曲线(True Positive Rate, TPR)来看,np.array具有假阳性率。如果是多类,则为np.array列表。Shape为 :math:`(N)` 。
|
||||
- **reorder** (bool) - 如果为False,那么 `x` 必须是单调上升或下降的,如果为True,那么 `x` 将会按照升序排序。默认值:False。
|
||||
参数:
|
||||
- **x** (Union[np.array, list]) - 从ROC曲线(False Positive Rate, FPR)来看,np.array具有假阳性率。如果是多类,则为np.array列表。Shape为 :math:`(N)` 。
|
||||
- **y** (Union[np.array, list]) - 从ROC曲线(True Positive Rate, TPR)来看,np.array具有假阳性率。如果是多类,则为np.array列表。Shape为 :math:`(N)` 。
|
||||
- **reorder** (bool) - 如果为False,那么 `x` 必须是单调上升或下降的,如果为True,那么 `x` 将会按照升序排序。默认值:False。
|
||||
|
||||
**返回:**
|
||||
|
||||
float,曲线下面积的值AUC。
|
||||
返回:
|
||||
float,曲线下面积的值AUC。
|
||||
|
|
|
@ -13,22 +13,19 @@ mindspore.nn.cosine_decay_lr
|
|||
|
||||
其中 :math:`current\_epoch=floor(\frac{i}{step\_per\_epoch})`。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **min_lr** (float) - 学习率的最小值。
|
||||
- **max_lr** (float) - 学习率的最大值。
|
||||
- **total_step** (int) - step总数。
|
||||
- **step_per_epoch** (int) - 每个epoch的step数。
|
||||
- **decay_epoch** (int) - 进行衰减的epoch数。
|
||||
|
||||
- **min_lr** (float) - 学习率的最小值。
|
||||
- **max_lr** (float) - 学习率的最大值。
|
||||
- **total_step** (int) - step总数。
|
||||
- **step_per_epoch** (int) - 每个epoch的step数。
|
||||
- **decay_epoch** (int) - 进行衰减的epoch数。
|
||||
返回:
|
||||
list[float]。列表大小为 `total_step`。
|
||||
|
||||
**返回:**
|
||||
|
||||
list[float]。列表大小为 `total_step`。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `min_lr` 或 `max_lr` 不是float。
|
||||
- **TypeError** - `total_step` 或 `step_per_epoch` 或 `decay_epoch` 不是int。
|
||||
- **ValueError** - `max_lr` 不大于0或 `min_lr` 小于0。
|
||||
- **ValueError** - `total_step` 或 `step_per_epoch` 或 `decay_epoch` 小于0。
|
||||
- **ValueError** - `max_lr` 大于或等于 `min_lr`。
|
||||
异常:
|
||||
- **TypeError** - `min_lr` 或 `max_lr` 不是float。
|
||||
- **TypeError** - `total_step` 或 `step_per_epoch` 或 `decay_epoch` 不是int。
|
||||
- **ValueError** - `max_lr` 不大于0或 `min_lr` 小于0。
|
||||
- **ValueError** - `total_step` 或 `step_per_epoch` 或 `decay_epoch` 小于0。
|
||||
- **ValueError** - `max_lr` 大于或等于 `min_lr`。
|
||||
|
|
|
@ -12,22 +12,19 @@ mindspore.nn.exponential_decay_lr
|
|||
|
||||
其中 :math:`current\_epoch=floor(\frac{i}{step\_per\_epoch})`。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **learning_rate** (float) - 学习率的初始值。
|
||||
- **decay_rate** (float) - 衰减率。
|
||||
- **total_step** (int) - step总数。
|
||||
- **step_per_epoch** (int) - 每个 epoch的step数。
|
||||
- **decay_epoch** (int) - 进行衰减的epoch数。
|
||||
- **is_stair** (bool) - 如果为True,则学习率每 `decay_epoch` 次衰减一次。默认值:False。
|
||||
|
||||
- **learning_rate** (float) - 学习率的初始值。
|
||||
- **decay_rate** (float) - 衰减率。
|
||||
- **total_step** (int) - step总数。
|
||||
- **step_per_epoch** (int) - 每个 epoch的step数。
|
||||
- **decay_epoch** (int) - 进行衰减的epoch数。
|
||||
- **is_stair** (bool) - 如果为True,则学习率每 `decay_epoch` 次衰减一次。默认值:False。
|
||||
返回:
|
||||
list[float]。列表的大小为 `total_step`。
|
||||
|
||||
**返回:**
|
||||
|
||||
list[float]。列表的大小为 `total_step`。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `total_step` 或 `step_per_epoch` 或 `decay_epoch` 不是int。
|
||||
- **TypeError** - `is_stair` 不是bool。
|
||||
- **TypeError** - `learning_rate` 或 `decay_rate` 不是float。
|
||||
- **ValueError** - `learning_rate` 或 `decay_rate` 小于等于0。
|
||||
异常:
|
||||
- **TypeError** - `total_step` 或 `step_per_epoch` 或 `decay_epoch` 不是int。
|
||||
- **TypeError** - `is_stair` 不是bool。
|
||||
- **TypeError** - `learning_rate` 或 `decay_rate` 不是float。
|
||||
- **ValueError** - `learning_rate` 或 `decay_rate` 小于等于0。
|
||||
|
|
|
@ -5,11 +5,9 @@ mindspore.nn.get_activation
|
|||
|
||||
获取激活函数。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **name** (str) - 激活函数名称。
|
||||
- **prim_name** (Union[str, None]) - 算子名称,默认:None。
|
||||
|
||||
- **name** (str) - 激活函数名称。
|
||||
- **prim_name** (Union[str, None]) - 算子名称,默认:None。
|
||||
|
||||
**返回:**
|
||||
|
||||
激活函数。
|
||||
返回:
|
||||
激活函数。
|
|
@ -5,12 +5,10 @@ mindspore.nn.get_metric_fn
|
|||
|
||||
根据输入的 `name` 获取metric的方法。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **name** (str) - metric的方法名,可以通过 :class:`mindspore.nn.names` 接口获取。
|
||||
- **args** - metric函数的参数。
|
||||
- **kwargs** - metric函数的关键字参数。
|
||||
|
||||
- **name** (str) - metric的方法名,可以通过 :class:`mindspore.nn.names` 接口获取。
|
||||
- **args** - metric函数的参数。
|
||||
- **kwargs** - metric函数的关键字参数。
|
||||
|
||||
**返回:**
|
||||
|
||||
metric对象,metric方法的类实例。
|
||||
返回:
|
||||
metric对象,metric方法的类实例。
|
||||
|
|
|
@ -12,22 +12,19 @@ mindspore.nn.inverse_decay_lr
|
|||
|
||||
其中,:math:`current\_epoch=floor(\frac{i}{step\_per\_epoch})`。
|
||||
|
||||
**参数:**
|
||||
参数:
|
||||
- **learning_rate** (float) - 学习率的初始值。
|
||||
- **decay_rate** (float) - 衰减率。
|
||||
- **total_step** (int) - step总数。
|
||||
- **step_per_epoch** (int) - 每个epoch的step数。
|
||||
- **decay_epoch** (int) - 进行衰减的epoch数。
|
||||
- **is_stair** (bool) - 如果为True,则学习率每 `decay_epoch` 次衰减一次。默认值:False。
|
||||
|
||||
- **learning_rate** (float) - 学习率的初始值。
|
||||
- **decay_rate** (float) - 衰减率。
|
||||
- **total_step** (int) - step总数。
|
||||
- **step_per_epoch** (int) - 每个epoch的step数。
|
||||
- **decay_epoch** (int) - 进行衰减的epoch数。
|
||||
- **is_stair** (bool) - 如果为True,则学习率每 `decay_epoch` 次衰减一次。默认值:False。
|
||||
返回:
|
||||
list[float]。列表大小为 `total_step` 。
|
||||
|
||||
**返回:**
|
||||
|
||||
list[float]。列表大小为 `total_step` 。
|
||||
|
||||
**异常:**
|
||||
|
||||
- **TypeError** - `total_step` 或 `step_per_epoch` 或 `decay_epoch` 不是int。
|
||||
- **TypeError** - `is_stair` 不是bool。
|
||||
- **TypeError** - `learning_rate` 或 `decay_rate` 不是float。
|
||||
- **ValueError** - `learning_rate` 或 `decay_rate` 小于等于0。
|
||||
异常:
|
||||
- **TypeError** - `total_step` 或 `step_per_epoch` 或 `decay_epoch` 不是int。
|
||||
- **TypeError** - `is_stair` 不是bool。
|
||||
- **TypeError** - `learning_rate` 或 `decay_rate` 不是float。
|
||||
- **ValueError** - `learning_rate` 或 `decay_rate` 小于等于0。
|
||||
|
|
Loading…
Reference in New Issue