mindspore.nn ============= 神经网络Cell。 用于构建神经网络中的预定义构建块或计算单元。 MindSpore中 `mindspore.nn` 接口与上一版本相比,新增、删除和支持平台的变化信息请参考 `API Updates `_。 基本构成单元 ------------ .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.Cell mindspore.nn.GraphCell mindspore.nn.LossBase mindspore.nn.Optimizer 容器 ----------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.CellList mindspore.nn.SequentialCell 封装层 ----------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.DistributedGradReducer mindspore.nn.DynamicLossScaleUpdateCell mindspore.nn.FixedLossScaleUpdateCell mindspore.nn.ForwardValueAndGrad mindspore.nn.GetNextSingleOp mindspore.nn.MicroBatchInterleaved mindspore.nn.ParameterUpdate mindspore.nn.PipelineCell mindspore.nn.TimeDistributed mindspore.nn.TrainOneStepCell mindspore.nn.TrainOneStepWithLossScaleCell mindspore.nn.WithEvalCell mindspore.nn.WithGradCell mindspore.nn.WithLossCell 卷积神经网络层 -------------------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.Conv1d mindspore.nn.Conv1dTranspose mindspore.nn.Conv2d mindspore.nn.Conv2dTranspose mindspore.nn.Conv3d mindspore.nn.Conv3dTranspose mindspore.nn.Unfold 循环神经网络层 ----------------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.RNN mindspore.nn.RNNCell mindspore.nn.GRU mindspore.nn.GRUCell mindspore.nn.LSTM mindspore.nn.LSTMCell 嵌入层 ----------------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.Embedding mindspore.nn.EmbeddingLookup mindspore.nn.MultiFieldEmbeddingLookup 非线性激活函数层 -------------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.CELU mindspore.nn.ELU mindspore.nn.FastGelu mindspore.nn.GELU mindspore.nn.HShrink mindspore.nn.HSigmoid mindspore.nn.HSwish mindspore.nn.LeakyReLU mindspore.nn.LogSigmoid mindspore.nn.LogSoftmax mindspore.nn.PReLU mindspore.nn.ReLU mindspore.nn.ReLU6 mindspore.nn.Sigmoid mindspore.nn.Softmax mindspore.nn.SoftShrink mindspore.nn.Tanh 线性层 ----------------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.Dense Dropout层 ----------------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.Dropout 归一化层 --------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.BatchNorm1d mindspore.nn.BatchNorm2d mindspore.nn.BatchNorm3d mindspore.nn.GlobalBatchNorm mindspore.nn.GroupNorm mindspore.nn.InstanceNorm2d mindspore.nn.LayerNorm mindspore.nn.SyncBatchNorm 池化层 -------------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.AvgPool1d mindspore.nn.AvgPool2d mindspore.nn.MaxPool1d mindspore.nn.MaxPool2d 填充层 -------------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.Pad 损失函数 -------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.BCELoss mindspore.nn.BCEWithLogitsLoss mindspore.nn.CosineEmbeddingLoss mindspore.nn.DiceLoss mindspore.nn.FocalLoss mindspore.nn.L1Loss mindspore.nn.MSELoss mindspore.nn.MultiClassDiceLoss mindspore.nn.RMSELoss mindspore.nn.SampledSoftmaxLoss mindspore.nn.SmoothL1Loss mindspore.nn.SoftMarginLoss mindspore.nn.SoftmaxCrossEntropyWithLogits 优化器 ------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.Adagrad mindspore.nn.Adam mindspore.nn.AdamOffload mindspore.nn.AdamWeightDecay mindspore.nn.AdaSumByDeltaWeightWrapCell mindspore.nn.AdaSumByGradWrapCell mindspore.nn.ASGD mindspore.nn.FTRL mindspore.nn.Lamb mindspore.nn.LARS mindspore.nn.LazyAdam mindspore.nn.Momentum mindspore.nn.ProximalAdagrad mindspore.nn.RMSProp mindspore.nn.Rprop mindspore.nn.SGD mindspore.nn.thor 评价指标 -------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.Accuracy mindspore.nn.auc mindspore.nn.BleuScore mindspore.nn.ConfusionMatrix mindspore.nn.ConfusionMatrixMetric mindspore.nn.CosineSimilarity mindspore.nn.Dice mindspore.nn.F1 mindspore.nn.Fbeta mindspore.nn.HausdorffDistance mindspore.nn.get_metric_fn mindspore.nn.Loss mindspore.nn.MAE mindspore.nn.MeanSurfaceDistance mindspore.nn.Metric mindspore.nn.MSE mindspore.nn.names mindspore.nn.OcclusionSensitivity mindspore.nn.Perplexity mindspore.nn.Precision mindspore.nn.Recall mindspore.nn.ROC mindspore.nn.RootMeanSquareDistance mindspore.nn.rearrange_inputs mindspore.nn.Top1CategoricalAccuracy mindspore.nn.Top5CategoricalAccuracy mindspore.nn.TopKCategoricalAccuracy 动态学习率 ----------- LearningRateSchedule类 ^^^^^^^^^^^^^^^^^^^^^^^ 本模块中的动态学习率都是LearningRateSchedule的子类,将LearningRateSchedule的实例传递给优化器。在训练过程中,优化器以当前step为输入调用该实例,得到当前的学习率。 .. code-block:: import mindspore.nn as nn min_lr = 0.01 max_lr = 0.1 decay_steps = 4 cosine_decay_lr = nn.CosineDecayLR(min_lr, max_lr, decay_steps) net = Net() optim = nn.Momentum(net.trainable_params(), learning_rate=cosine_decay_lr, momentum=0.9) .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.CosineDecayLR mindspore.nn.ExponentialDecayLR mindspore.nn.InverseDecayLR mindspore.nn.NaturalExpDecayLR mindspore.nn.PolynomialDecayLR mindspore.nn.WarmUpLR Dynamic LR函数 ^^^^^^^^^^^^^^ 本模块中的动态学习率都是function,调用function并将结果传递给优化器。在训练过程中,优化器将result[current step]作为当前学习率。 .. code-block:: import mindspore.nn as nn min_lr = 0.01 max_lr = 0.1 total_step = 6 step_per_epoch = 1 decay_epoch = 4 lr= nn.cosine_decay_lr(min_lr, max_lr, total_step, step_per_epoch, decay_epoch) net = Net() optim = nn.Momentum(net.trainable_params(), learning_rate=lr, momentum=0.9) .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.cosine_decay_lr mindspore.nn.exponential_decay_lr mindspore.nn.inverse_decay_lr mindspore.nn.natural_exp_decay_lr mindspore.nn.piecewise_constant_lr mindspore.nn.polynomial_decay_lr mindspore.nn.warmup_lr 稀疏层 ------------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.SparseTensorDenseMatmul mindspore.nn.SparseToDense 图像处理层 ----------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.CentralCrop mindspore.nn.ImageGradients mindspore.nn.MSSSIM mindspore.nn.PSNR mindspore.nn.ResizeBilinear mindspore.nn.SSIM 矩阵处理 ----------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.MatrixDiag mindspore.nn.MatrixDiagPart mindspore.nn.MatrixSetDiag 工具 ----- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.ClipByNorm mindspore.nn.Flatten mindspore.nn.get_activation mindspore.nn.L1Regularizer mindspore.nn.Norm mindspore.nn.OneHot mindspore.nn.Range mindspore.nn.Roll mindspore.nn.Tril mindspore.nn.Triu 数学运算 ---------- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.MatMul mindspore.nn.Moments mindspore.nn.ReduceLogSumExp 梯度 ----- .. mscnplatformautosummary:: :toctree: nn :nosignatures: :template: classtemplate.rst mindspore.nn.Jvp mindspore.nn.Vjp