modify api annotation

This commit is contained in:
xumengjuan1 2021-12-03 14:17:11 +08:00
parent 8985b2626d
commit 97d0779245
19 changed files with 129 additions and 113 deletions

View File

@ -1,61 +1,59 @@
Class mindspore.nn.ForwardValueAndGrad(network, weights=None, get_all=False, get_by_list=False, sens_param=False)
mindspore.nn.ForwardValueAndGrad
===================================
.. py:class:: mindspore.nn.ForwardValueAndGrad(network, weights=None, get_all=False, get_by_list=False, sens_param=False)
网络训练包类。
包括正向网络和梯度函数。该类生成的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)) - 网络反向传播的梯度。
支持平台:
``Ascend`` ``GPU`` ``CPU``
**支持平台:**
示例:
>>> class Net(nn.Cell):
... def __init__(self)
... super(Net, self).__init__()
... self.weight = Parameter(Tensor(np.ones([2, 2]).astype(np.float32)), name="weight")
... self.matmul = P.MatMul()
...
... def construct(self, x)
... out = self.matmul(x, self.weight)
... return out
...
>>> net = Net()
>>> criterion = nn.SoftmaxCrossEntropyWithLogits()
>>> net_with_criterion = nn.WithLossCell(net, criterion)
>>> weight = ParameterTuple(net.trainable_params())
>>> train_network = nn.ForwardValueAndGrad(net_with_criterion, weights=weight, get_all=True, get_by_list=True)
>>> inputs = Tensor(np.ones([1, 2]).astype(np.float32))
>>> labels = Tensor(np.zeros([1, 2]).astype(np.float32))
>>> result = train_network(inputs, labels)
>>> print(result)
(Tensor(shape=[1], dtype=Float32, value=[0.00000000e+00]), ((Tensor(shape=[1, 2], dtype=Float32, value=
[[1.00000000e+00, 1.00000000e+00]]), Tensor(shape=[1, 2], dtype=Float32, value=
[[0.00000000e+00, 0.00000000e+00]])), (Tensor(shape=[2, 2], dtype=Float32, value=
[[5.00000000e-01, 5.00000000e-01],
[5.00000000e-01, 5.00000000e-01]]),)))
``Ascend`` ``GPU`` ``CPU``
**样例:**
>>> class Net(nn.Cell):
... def __init__(self)
... super(Net, self).__init__()
... self.weight = Parameter(Tensor(np.ones([2, 2]).astype(np.float32)), name="weight")
... self.matmul = P.MatMul()
...
... def construct(self, x)
... out = self.matmul(x, self.weight)
... return out
...
>>> net = Net()
>>> criterion = nn.SoftmaxCrossEntropyWithLogits()
>>> net_with_criterion = nn.WithLossCell(net, criterion)
>>> weight = ParameterTuple(net.trainable_params())
>>> train_network = nn.ForwardValueAndGrad(net_with_criterion, weights=weight, get_all=True, get_by_list=True)
>>> inputs = Tensor(np.ones([1, 2]).astype(np.float32))
>>> labels = Tensor(np.zeros([1, 2]).astype(np.float32))
>>> result = train_network(inputs, labels)
>>> print(result)
(Tensor(shape=[1], dtype=Float32, value=[0.00000000e+00]), ((Tensor(shape=[1, 2], dtype=Float32, value=
[[1.00000000e+00, 1.00000000e+00]]), Tensor(shape=[1, 2], dtype=Float32, value=
[[0.00000000e+00, 0.00000000e+00]])), (Tensor(shape=[2, 2], dtype=Float32, value=
[[5.00000000e-01, 5.00000000e-01],
[5.00000000e-01, 5.00000000e-01]]),)))

View File

@ -1,3 +1,6 @@
mindspore.train.callback.SummaryCollector
==========================================
.. py:class:: mindspore.train.callback.SummaryCollector(summary_dir, collect_freq=10, collect_specified_data=None, keep_default_action=True, custom_lineage_data=None, collect_tensor_freq=None, max_file_size=None, export_options=None)
SummaryCollector可以收集一些常用信息。

View File

@ -1,3 +1,6 @@
mindspore.train.callback.Callback
===================================
.. py:class:: mindspore.train.callback.Callback
用于构建回调函数的基类。回调函数是一个上下文管理器,在运行模型时被调用。

View File

@ -1,3 +1,6 @@
mindspore.train.callback.CheckpointConfig
==========================================
.. py:class:: mindspore.train.callback.CheckpointConfig(save_checkpoint_steps=1, save_checkpoint_seconds=0, keep_checkpoint_max=5, keep_checkpoint_per_n_minutes=0, integrated_save=True, async_save=False, saved_network=None, append_info=None, enc_key=None, enc_mode='AES-GCM')
保存checkpoint时的配置策略。

View File

@ -1,3 +1,6 @@
mindspore.train.callback.LearningRateScheduler
===============================================
.. py:class:: mindspore.train.callback.LearningRateScheduler(learning_rate_function)
在训练期间更改学习率。

View File

@ -1,3 +1,6 @@
mindspore.train.callback.LossMonitor
=======================================
.. py:class:: mindspore.train.callback.LossMonitor(per_print_times=1)
监控训练的loss。

View File

@ -1,3 +1,6 @@
mindspore.train.callback.ModelCheckpoint
==========================================
.. py:class:: mindspore.train.callback.ModelCheckpoint(prefix='CKP', directory=None, config=None)
checkpoint的回调函数。

View File

@ -1,3 +1,6 @@
mindspore.train.callback.RunContext
====================================
.. py:class:: mindspore.train.callback.RunContext(original_args)
提供模型的相关信息。

View File

@ -1,3 +1,6 @@
mindspore.train.callback.TimeMonitor
=====================================
.. py:class:: mindspore.train.callback.TimeMonitor(data_size=None)
监控训练时间。

View File

@ -1,3 +1,6 @@
mindspore.train.summary.SummaryRecord
=======================================
.. py:class:: mindspore.train.summary.SummaryRecord(log_dir, file_prefix='events', file_suffix='_MS', network=None, max_file_size=None, raise_exception=False, export_options=None)
SummaryRecord用于记录summary数据和lineage数据。
@ -76,7 +79,6 @@
... with SummaryRecord(log_dir="./summary_dir", file_prefix="xx_", file_suffix="_yy") as summary_record:
... summary_record.add_value('scalar', 'loss', Tensor(0.1))
.. py:method:: close()
将所有事件持久化并关闭SummaryRecord。请使用with语句或try…finally语句进行自动关闭。
@ -90,7 +92,6 @@
... finally:
... summary_record.close()
.. py:method:: flush()
将事件文件持久化到磁盘。
@ -104,7 +105,6 @@
... with SummaryRecord(log_dir="./summary_dir", file_prefix="xx_", file_suffix="_yy") as summary_record:
... summary_record.flush()
.. py:method:: log_dir
:property:
@ -121,7 +121,6 @@
... with SummaryRecord(log_dir="./summary_dir", file_prefix="xx_", file_suffix="_yy") as summary_record:
... log_dir = summary_record.log_dir
.. py:method:: record(step, train_network=None, plugin_filter=None)
记录summary。
@ -150,7 +149,6 @@
...
True
.. py:method:: set_mode(mode)
设置训练阶段。不同的训练阶段会影响数据记录。

View File

@ -1,7 +1,7 @@
mindspore.build_searched_strategy
==================================
=======================================
.. py:method:: mindspore.build_searched_strategy(strategy_filename)
.. py:class:: mindspore.build_searched_strategy(strategy_filename)
构建网络中每个参数的策略,用于分布式推理。关于它的使用细节,请参考:`保存和加载模型HyBrid Parallel模式 <https://www.mindspore.cn/docs/programming_guide/zh-CN/master/save_load_model_hybrid_parallel.html>`_

View File

@ -7,8 +7,8 @@ mindspore.dtype_to_nptype
**参数:**
**type_** (mindspore.dtype) MindSpore中的dtype。
**type_** (mindspore.dtype) MindSpore中的dtype。
**返回:**
NumPy的数据类型。
NumPy的数据类型。

View File

@ -6,10 +6,9 @@ mindspore.set_seed
设置全局种子。
.. note::
全局种子可用于numpy.random,mindspore.common.Initializer,mindspore.ops.composite.random_ops以及mindspore.nn.probability.distribution。
如果没有设置全局种子这些包将会各自使用自己的种子numpy.random和mindspore.common.Initializer将会随机选择种子值mindspore.ops.composite.random_ops和mindspore.nn.probability.distribution将会使用零作为种子值。
numpy.random.seed()设置的种子仅能被numpy.random使用而这个API设置的种子也可被numpy.random使用因此推荐使用这个API设置所有的种子。
- 全局种子可用于numpy.random,mindspore.common.Initializer,mindspore.ops.composite.random_ops以及mindspore.nn.probability.distribution。
- 如果没有设置全局种子这些包将会各自使用自己的种子numpy.random和mindspore.common.Initializer将会随机选择种子值mindspore.ops.composite.random_ops和mindspore.nn.probability.distribution将会使用零作为种子值。
- numpy.random.seed()设置的种子仅能被numpy.random使用而这个API设置的种子也可被numpy.random使用因此推荐使用这个API设置所有的种子。
**参数:**
@ -20,33 +19,30 @@ mindspore.set_seed
- **ValueError** 种子值非法 (小于0)。
- **TypeError** 种子值非整型数。
**样例:**
.. code-block::
>>> import numpy as np
>>> import mindspore as ms
>>> import mindspore.ops as ops
>>> from mindspore import Tensor, set_seed, Parameter
>>> from mindspore.common.initializer import initializer
>>> import numpy as np
>>> import mindspore as ms
>>> import mindspore.ops as ops
>>> from mindspore import Tensor, set_seed, Parameter
>>> from mindspore.common.initializer import initializer
>>> # 注意1请确保代码在动态图模式下运行
>>> # 2由于复合级别的算子需要参数为张量类型如以下样例
>>> # 当使用ops.uniform这个算子minval和maxval用以下方法初始化:
>>> minval = Tensor(1.0, ms.float32)
>>> maxval = Tensor(2.0, ms.float32)
>>> # 注意1请确保代码在动态图模式下运行
>>> # 2由于复合级别的算子需要参数为张量类型如以下样例
>>> # 当使用ops.uniform这个算子minval和maxval用以下方法初始化:
>>> minval = Tensor(1.0, ms.float32)
>>> maxval = Tensor(2.0, ms.float32)
>>> # 1. 如果没有设置全局种子numpy.random以及initializer将会选择随机种子
>>> np_1 = np.random.normal(0, 1, [1]).astype(np.float32) # A1
>>> np_1 = np.random.normal(0, 1, [1]).astype(np.float32) # A2
>>> w1 = Parameter(initializer("uniform", [2, 2], ms.float32), name="w1") # W1
>>> w1 = Parameter(initializer("uniform", [2, 2], ms.float32), name="w1") # W2
>>> # 重新运行程序将得到不同的结果:
>>> np_1 = np.random.normal(0, 1, [1]).astype(np.float32) # A3
>>> np_1 = np.random.normal(0, 1, [1]).astype(np.float32) # A4
>>> w1 = Parameter(initializer("uniform", [2, 2], ms.float32), name="w1") # W3
>>> w1 = Parameter(initializer("uniform", [2, 2], ms.float32), name="w1") # W4
>>> # 1. 如果没有设置全局种子numpy.random以及initializer将会选择随机种子
>>> np_1 = np.random.normal(0, 1, [1]).astype(np.float32) # A1
>>> np_1 = np.random.normal(0, 1, [1]).astype(np.float32) # A2
>>> w1 = Parameter(initializer("uniform", [2, 2], ms.float32), name="w1") # W1
>>> w1 = Parameter(initializer("uniform", [2, 2], ms.float32), name="w1") # W2
>>> # 重新运行程序将得到不同的结果:
>>> np_1 = np.random.normal(0, 1, [1]).astype(np.float32) # A3
>>> np_1 = np.random.normal(0, 1, [1]).astype(np.float32) # A4
>>> w1 = Parameter(initializer("uniform", [2, 2], ms.float32), name="w1") # W3
>>> w1 = Parameter(initializer("uniform", [2, 2], ms.float32), name="w1") # W4
>>> # 2. 如果设置了全局种子numpy.random以及initializer将会使用这个种子
>>> set_seed(1234)

View File

@ -6,7 +6,7 @@ mindspore.nn.Adagrad
使用ApplyAdagrad算子实现Adagrad算法。
Adagrad用于在线学习和随机优化。
请参阅论文`Efficient Learning using Forward-Backward Splitting <https://proceedings.neurips.cc/paper/2009/file/621bf66ddb7c962aa0d22ac97d69b793-Paper.pdf>`_
请参阅论文 `Efficient Learning using Forward-Backward Splitting <https://proceedings.neurips.cc/paper/2009/file/621bf66ddb7c962aa0d22ac97d69b793-Paper.pdf>`_
公式如下:
.. math::
@ -15,8 +15,8 @@ mindspore.nn.Adagrad
w_{t+1} = w_{t} - lr*\frac{1}{\sqrt{h_{t+1}}}*g
\end{array}
:math:`h` 表示梯度平方的累积和,:math:`g` 表示 `grads`
:math:`lr` 代表 `learning_rate`:math:`w` 代表 `params`
:math:`h` 表示梯度平方的累积和, :math:`g` 表示 `grads`
:math:`lr` 代表 `learning_rate` :math:`w` 代表 `params`
.. note::
在参数未分组时,优化器配置的 `weight_decay` 应用于名称含有"beta"或"gamma"的网络参数,通过网络参数分组可调整权重衰减策略。分组时,每组网络参数均可配置 `weight_decay` ,若未配置,则该组网络参数使用优化器中配置的 `weight_decay`
@ -34,14 +34,14 @@ mindspore.nn.Adagrad
- **accum** (float) - 累加器 :math:`h` 的初始值必须大于等于零。默认值0.1。
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]) - 默认值0.001。
- **float** - 固定的学习率。必须大于等于零。
- **int** - 固定的学习率。必须大于等于零。整数类型会被转换为浮点数。
- **Tensor** - 可以是标量或一维向量。标量是固定的学习率。一维向量是动态的学习率第i步将取向量中第i个值作为学习率。
- **Iterable** - 动态的学习率。第i步将取迭代器第i个值作为学习率。
- **LearningRateSchedule** - 动态的学习率。在训练过程中优化器将使用步数step作为输入调用 `LearningRateSchedule` 实例来计算当前学习率。
- **float** - 固定的学习率。必须大于等于零。
- **int** - 固定的学习率。必须大于等于零。整数类型会被转换为浮点数。
- **Tensor** - 可以是标量或一维向量。标量是固定的学习率。一维向量是动态的学习率第i步将取向量中第i个值作为学习率。
- **Iterable** - 动态的学习率。第i步将取迭代器第i个值作为学习率。
- **LearningRateSchedule** - 动态的学习率。在训练过程中优化器将使用步数step作为输入调用 `LearningRateSchedule` 实例来计算当前学习率。
- **update_slots** (bool) - 如果为True则更新累加器 :math:`h` 。默认值True。
- **loss_scale** (float) - 梯度缩放系数必须大于0。如果`loss_scale`是整数,它将被转换为浮点数。通常使用默认值,仅当训练时使用了 `FixedLossScaleManager` ,且 `FixedLossScaleManager``drop_overflow_update` 属性配置为False时此值需要与 `FixedLossScaleManager` 中的 `loss_scale` 相同。有关更多详细信息,请参阅class`mindspore.FixedLossScaleManager` 。默认值1.0。
- **loss_scale** (float) - 梯度缩放系数必须大于0。如果 `loss_scale` 是整数,它将被转换为浮点数。通常使用默认值,仅当训练时使用了 `FixedLossScaleManager` ,且 `FixedLossScaleManager``drop_overflow_update` 属性配置为False时此值需要与 `FixedLossScaleManager` 中的 `loss_scale` 相同。有关更多详细信息,请参阅 :class:`mindspore.FixedLossScaleManager` 。默认值1.0。
- **weight_decay** (Union[float, int]) - 要乘以权重的权重衰减值必须大于等于0.0。默认值0.0。
**输入:**

View File

@ -5,7 +5,7 @@ mindspore.nn.Adam
通过Adaptive Moment Estimation (Adam)算法更新梯度。
请参阅论文`Adam: A Method for Stochastic Optimization <https://arxiv.org/abs/1412.6980>`_
请参阅论文 `Adam: A Method for Stochastic Optimization <https://arxiv.org/abs/1412.6980>`_
公式如下:
@ -17,7 +17,7 @@ mindspore.nn.Adam
w_{t+1} = w_{t} - l * \frac{m_{t+1}}{\sqrt{v_{t+1}} + \epsilon}
\end{array}
:math:`m` 代表第一个动量矩阵 `moment1` :math:`v` 代表第二个动量矩阵 `moment2` :math:`g` 代表 `gradients` :math:`l` 代表缩放因子,:math:`\beta_1,\beta_2` 代表 `beta1``beta2` :math:`t` 代表更新步骤,:math:`beta_1^t`:math:`beta_2^t` 代表 `beta1_power``beta2_power` :math:`\alpha` 代表 `learning_rate` :math:`w` 代表 `params` :math:`\epsilon` 代表 `eps`
:math:`m` 代表第一个动量矩阵 `moment1` :math:`v` 代表第二个动量矩阵 `moment2` :math:`g` 代表 `gradients` :math:`l` 代表缩放因子,:math:`\beta_1,\beta_2` 代表 `beta1``beta2` :math:`t` 代表更新步骤,:math:`beta_1^t` :math:`beta_2^t` 代表 `beta1_power``beta2_power` :math:`\alpha` 代表 `learning_rate` :math:`w` 代表 `params` :math:`\epsilon` 代表 `eps`
.. note::
如果前向网络使用了SparseGatherV2等算子优化器会执行稀疏运算通过设置 `target` 为CPU可在主机host上进行稀疏运算。
@ -25,7 +25,6 @@ mindspore.nn.Adam
在参数未分组时,优化器配置的 `weight_decay` 应用于名称含有"beta"或"gamma"的网络参数,通过网络参数分组可调整权重衰减策略。分组时,每组网络参数均可配置 `weight_decay` ,若未配置,则该组网络参数使用优化器中配置的 `weight_decay`
**参数:**
- **params** (Union[list[Parameter], list[dict]]) - 必须是 `Parameter` 组成的列表或字典组成的列表。当列表元素是字典时,字典的键可以是"params"、"lr"、"weight_decay"、"grad_centralization"和"order_params"
@ -36,7 +35,7 @@ mindspore.nn.Adam
- **grad_centralization** - 可选。如果键中存在"grad_centralization",则使用对应的值,该值必须为布尔类型。如果没有,则认为 `grad_centralization` 为False。该参数仅适用于卷积层。
- **order_params** - 可选。对应值是预期的参数更新顺序。当使用参数分组功能时,通常使用该配置项保持 `parameters` 的顺序以提升性能。如果键中存在"order_params",则会忽略该组配置中的其他键。"order_params"中的参数必须在某一组 `params` 参数中。
- **learning_rate (Union[float, Tensor, Iterable, LearningRateSchedule]): 默认值1e-3。
- **learning_rate** (Union[float, Tensor, Iterable, LearningRateSchedule]): 默认值1e-3。
- **float** - 固定的学习率。必须大于等于零。
- **int** - 固定的学习率。必须大于等于零。整数类型会被转换为浮点数。
@ -50,7 +49,7 @@ mindspore.nn.Adam
- **use_locking** (bool) - 是否对参数更新加锁保护。如果为True`w``m``v` 的tensor更新将受到锁的保护。如果为False则结果不可预测。默认值False。
- **use_nesterov** (bool) - 是否使用Nesterov Accelerated Gradient (NAG)算法更新梯度。如果为True使用NAG更新梯度。如果为False则在不使用NAG的情况下更新梯度。默认值False。
- **weight_decay** (float) - 权重衰减L2 penalty。必须大于等于0。默认值0.0。
- **loss_scale** (float) - 梯度缩放系数必须大于0。如果 `loss_scale` 是整数,它将被转换为浮点数。通常使用默认值,仅当训练时使用了 `FixedLossScaleManager` ,且 `FixedLossScaleManager``drop_overflow_update` 属性配置为False时此值需要与 `FixedLossScaleManager` 中的 `loss_scale` 相同。有关更多详细信息,请参阅class`mindspore.FixedLossScaleManager` 。默认值1.0。
- **loss_scale** (float) - 梯度缩放系数必须大于0。如果 `loss_scale` 是整数,它将被转换为浮点数。通常使用默认值,仅当训练时使用了 `FixedLossScaleManager` ,且 `FixedLossScaleManager``drop_overflow_update` 属性配置为False时此值需要与 `FixedLossScaleManager` 中的 `loss_scale` 相同。有关更多详细信息,请参阅 :class:`mindspore.FixedLossScaleManager` 。默认值1.0。
**输入:**

View File

@ -20,22 +20,22 @@ mindspore.nn.Momentum
.. math::
p_{t+1} = p_{t} - lr \ast v_{t+1}
其中,:math:`grad`:math:`lr`:math:`p`:math:`v`:math:`u` 分别表示梯度、学习率、参数、矩Moment和动量Momentum
其中,:math:`grad`:math:`lr`:math:`p`:math:`v` :math:`u` 分别表示梯度、学习率、参数、矩Moment和动量Momentum
.. note::
在参数未分组时,优化器配置的 `weight_decay` 应用于名称含有"beta"或"gamma"的网络参数,通过网络参数分组可调整权重衰减策略。分组时,每组网络参数均可配置 `weight_decay` ,若未配置,则该组网络参数使用优化器中配置的 `weight_decay`
**参数:**
- **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"
-** params** - 必填。当前组别的权重,该值必须是 `Parameter` 列表。
-** lr** - 可选。如果键中存在"lr",则使用对应的值作为学习率。如果没有,则使用优化器中配置的 `learning_rate` 作为学习率。
-** weight_decay** - 可选。如果键中存在"weight_decay”则使用对应的值作为权重衰减值。如果没有则使用优化器中配置的 `weight_decay` 作为权重衰减值。
-** grad_centralization** - 可选。如果键中存在"grad_centralization",则使用对应的值,该值必须为布尔类型。如果没有,则认为 `grad_centralization` 为False。该参数仅适用于卷积层。
-** order_params** - 可选。对应值是预期的参数更新顺序。当使用参数分组功能时,通常使用该配置项保持 `parameters` 的顺序以提升性能。如果键中存在"order_params",则会忽略该组配置中的其他键。"order_params"中的参数必须在某一组 `params` 参数中。
- ** params** - 必填。当前组别的权重,该值必须是 `Parameter` 列表。
- ** lr** - 可选。如果键中存在"lr",则使用对应的值作为学习率。如果没有,则使用优化器中配置的 `learning_rate` 作为学习率。
- ** weight_decay** - 可选。如果键中存在"weight_decay”则使用对应的值作为权重衰减值。如果没有则使用优化器中配置的 `weight_decay` 作为权重衰减值。
- ** grad_centralization** - 可选。如果键中存在"grad_centralization",则使用对应的值,该值必须为布尔类型。如果没有,则认为 `grad_centralization` 为False。该参数仅适用于卷积层。
- ** order_params** - 可选。对应值是预期的参数更新顺序。当使用参数分组功能时,通常使用该配置项保持 `parameters` 的顺序以提升性能。如果键中存在"order_params",则会忽略该组配置中的其他键。"order_params"中的参数必须在某一组 `params` 参数中。
- **learning_rate (Union[float, int, Tensor, Iterable, LearningRateSchedule]):
- **learning_rate** (Union[float, int, Tensor, Iterable, LearningRateSchedule]):
- **float** - 固定的学习率。必须大于等于零。
- **int** - 固定的学习率。必须大于等于零。整数类型会被转换为浮点数。
@ -45,7 +45,7 @@ mindspore.nn.Momentum
- **momentum** (float) - 浮点数类型的超参表示移动平均的动量。必须等于或大于0.0。
- **weight_decay** (int, float) - 权重衰减L2 penalty值。必须大于等于0.0。默认值0.0。
- **loss_scale** (float) - 梯度缩放系数必须大于0。如果 `loss_scale` 是整数,它将被转换为浮点数。通常使用默认值,仅当训练时使用了 `FixedLossScaleManager`,且 `FixedLossScaleManager``drop_overflow_update` 属性配置为False时此值需要与 `FixedLossScaleManager` 中的 `loss_scale` 相同。有关更多详细信息,请参阅class`mindspore.FixedLossScaleManager` 。默认值1.0。
- **loss_scale** (float) - 梯度缩放系数必须大于0。如果 `loss_scale` 是整数,它将被转换为浮点数。通常使用默认值,仅当训练时使用了 `FixedLossScaleManager`,且 `FixedLossScaleManager``drop_overflow_update` 属性配置为False时此值需要与 `FixedLossScaleManager` 中的 `loss_scale` 相同。有关更多详细信息,请参阅 :class:`mindspore.FixedLossScaleManager` 。默认值1.0。
- **use_nesterov** (bool) - 是否使用Nesterov Accelerated Gradient (NAG)算法更新梯度。默认值False。
**输入:**

View File

@ -12,7 +12,7 @@ mindspore.nn.Optimizer
**参数:**
- **learning_rate (Union[float, int, Tensor, Iterable, LearningRateSchedule]):
- **learning_rate** (Union[float, int, Tensor, Iterable, LearningRateSchedule]):
- **float** - 固定的学习率。必须大于等于零。
- **int** - 固定的学习率。必须大于等于零。整数类型会被转换为浮点数。
@ -29,7 +29,7 @@ mindspore.nn.Optimizer
- **order_params** - 可选。对应值是预期的参数更新顺序。当使用参数分组功能时,通常使用该配置项保持 `parameters` 的顺序以提升性能。如果键中存在"order_params",则会忽略该组配置中的其他键。"order_params"中的参数必须在某一组 `params` 参数中。
- **weight_decay** (Union[float, int]) - 权重衰减的整数或浮点值。必须等于或大于0。如果 `weight_decay` 是整数它将被转换为浮点数。默认值0.0。
- **loss_scale** (float) - 梯度缩放系数必须大于0。如果 `loss_scale` 是整数,它将被转换为浮点数。通常使用默认值,仅当训练时使用了 `FixedLossScaleManager`,且 `FixedLossScaleManager ``drop_overflow_update` 属性配置为False时此值需要与 `FixedLossScaleManager` 中的 `loss_scale` 相同。有关更多详细信息,请参阅class`mindspore.FixedLossScaleManager`。默认值1.0。
- **loss_scale** (float) - 梯度缩放系数必须大于0。如果 `loss_scale` 是整数,它将被转换为浮点数。通常使用默认值,仅当训练时使用了 `FixedLossScaleManager` ,且 `FixedLossScaleManager` `drop_overflow_update` 属性配置为False时此值需要与 `FixedLossScaleManager` 中的 `loss_scale` 相同。有关更多详细信息,请参阅 :class:`mindspore.FixedLossScaleManager`。默认值1.0。
**异常:**

View File

@ -60,7 +60,7 @@ mindspore.nn.probability.bijector.Invert
正变换:将输入值转换为另一个分布。
**参数:**
**参数:**
**y** (Tensor) - 输入。

View File

@ -31,10 +31,11 @@ mindspore.nn.probability.distribution.Distribution
.. py:method:: construct(name, *args, **kwargs)
重写Cell中的`construct`
重写Cell中的 `construct`
.. note::
支持的函数包括:'prob'、'log_prob'、'cdf', 'log_cdf'、'survival_function'、'log_survival'、'var'、'sd'、'mode'、'mean'、'entropy'、'kl_loss'、'cross_entropy'、'sample'、'get_dist_args'、'get_dist_type'。
支持的函数包括:'prob'、'log_prob'、'cdf', 'log_cdf'、'survival_function'、'log_survival'、'var'、
'sd'、'mode'、'mean'、'entropy'、'kl_loss'、'cross_entropy'、'sample'、'get_dist_args'、'get_dist_type'。
**参数:**