You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

mindspore.nn.rst 4.7 kB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. mindspore.nn
  2. =============
  3. 神经网络Cell。
  4. 用于构建神经网络中的预定义构建块或计算单元。
  5. MindSpore中 `mindspore.nn` 接口与上一版本相比,新增、删除和支持平台的变化信息请参考 `API Updates <https://gitee.com/mindspore/docs/blob/master/resource/api_updates/ops_api_updates.md>`_。
  6. 基本构成单元
  7. ------------
  8. .. cnmsplatformautosummary::
  9. :toctree: nn
  10. mindspore.nn.Cell
  11. 容器
  12. -----------
  13. .. cnmsplatformautosummary::
  14. :toctree: nn
  15. mindspore.nn.CellList
  16. mindspore.nn.SequentialCell
  17. 卷积层
  18. --------------------
  19. .. cnmsplatformautosummary::
  20. :toctree: nn
  21. mindspore.nn.Conv1d
  22. mindspore.nn.Conv1dTranspose
  23. mindspore.nn.Conv2d
  24. mindspore.nn.Conv2dTranspose
  25. mindspore.nn.Conv3d
  26. mindspore.nn.Conv3dTranspose
  27. 梯度
  28. -----
  29. .. cnmsplatformautosummary::
  30. :toctree: nn
  31. mindspore.nn.Jvp
  32. mindspore.nn.Vjp
  33. 非线性激活函数
  34. --------------
  35. .. cnmsplatformautosummary::
  36. :toctree: nn
  37. mindspore.nn.ELU
  38. mindspore.nn.FastGelu
  39. mindspore.nn.GELU
  40. mindspore.nn.HShrink
  41. mindspore.nn.HSigmoid
  42. mindspore.nn.HSwish
  43. mindspore.nn.LeakyReLU
  44. mindspore.nn.LogSigmoid
  45. mindspore.nn.LogSoftmax
  46. mindspore.nn.ReLU
  47. mindspore.nn.Sigmoid
  48. mindspore.nn.Softmax
  49. mindspore.nn.Tanh
  50. 工具
  51. -----
  52. .. cnmsplatformautosummary::
  53. :toctree: nn
  54. mindspore.nn.Flatten
  55. mindspore.nn.Tril
  56. 损失函数
  57. --------
  58. .. cnmsplatformautosummary::
  59. :toctree: nn
  60. mindspore.nn.L1Loss
  61. mindspore.nn.MSELoss
  62. mindspore.nn.SmoothL1Loss
  63. 优化器
  64. -------
  65. .. cnmsplatformautosummary::
  66. :toctree: nn
  67. mindspore.nn.Adagrad
  68. mindspore.nn.Adam
  69. mindspore.nn.AdamOffload
  70. mindspore.nn.AdamWeightDecay
  71. mindspore.nn.FTRL
  72. mindspore.nn.Lamb
  73. mindspore.nn.LARS
  74. mindspore.nn.LazyAdam
  75. mindspore.nn.Momentum
  76. mindspore.nn.Optimizer
  77. mindspore.nn.ProximalAdagrad
  78. mindspore.nn.RMSProp
  79. mindspore.nn.SGD
  80. mindspore.nn.thor
  81. 封装函数
  82. ---------
  83. .. cnmsplatformautosummary::
  84. :toctree: nn
  85. mindspore.nn.DistributedGradReducer
  86. mindspore.nn.DynamicLossScaleUpdateCell
  87. mindspore.nn.FixedLossScaleUpdateCell
  88. mindspore.nn.ForwardValueAndGrad
  89. mindspore.nn.PipelineCell
  90. mindspore.nn.TrainOneStepCell
  91. mindspore.nn.TrainOneStepWithLossScaleCell
  92. mindspore.nn.WithEvalCell
  93. mindspore.nn.WithLossCell
  94. 数学函数
  95. --------
  96. .. cnmsplatformautosummary::
  97. :toctree: nn
  98. mindspore.nn.Moments
  99. 评估指标
  100. --------
  101. .. cnmsautosummary::
  102. :toctree: nn
  103. mindspore.nn.Accuracy
  104. mindspore.nn.F1
  105. mindspore.nn.Fbeta
  106. mindspore.nn.get_metric_fn
  107. mindspore.nn.Loss
  108. mindspore.nn.MAE
  109. mindspore.nn.Metric
  110. mindspore.nn.MSE
  111. mindspore.nn.names
  112. mindspore.nn.Precision
  113. mindspore.nn.Recall
  114. mindspore.nn.rearrange_inputs
  115. mindspore.nn.Top1CategoricalAccuracy
  116. mindspore.nn.Top5CategoricalAccuracy
  117. mindspore.nn.TopKCategoricalAccuracy
  118. 动态学习率
  119. -----------
  120. LearningRateSchedule类
  121. ^^^^^^^^^^^^^^^^^^^^^^^
  122. 本模块中的动态学习率都是LearningRateSchedule的子类,将LearningRateSchedule的实例传递给优化器。在训练过程中,优化器以当前step为输入调用该实例,得到当前的学习率。
  123. .. code-block::
  124. import mindspore.nn as nn
  125. min_lr = 0.01
  126. max_lr = 0.1
  127. decay_steps = 4
  128. cosine_decay_lr = nn.CosineDecayLR(min_lr, max_lr, decay_steps)
  129. net = Net()
  130. optim = nn.Momentum(net.trainable_params(), learning_rate=cosine_decay_lr, momentum=0.9)
  131. .. cnmsplatformautosummary::
  132. :toctree: nn
  133. mindspore.nn.CosineDecayLR
  134. mindspore.nn.ExponentialDecayLR
  135. mindspore.nn.InverseDecayLR
  136. mindspore.nn.NaturalExpDecayLR
  137. mindspore.nn.PolynomialDecayLR
  138. mindspore.nn.WarmUpLR
  139. Dynamic LR函数
  140. ^^^^^^^^^^^^^^
  141. 本模块中的动态学习率都是function,调用function并将结果传递给优化器。在训练过程中,优化器将result[current step]作为当前学习率。
  142. .. code-block::
  143. import mindspore.nn as nn
  144. min_lr = 0.01
  145. max_lr = 0.1
  146. total_step = 6
  147. step_per_epoch = 1
  148. decay_epoch = 4
  149. lr= nn.cosine_decay_lr(min_lr, max_lr, total_step, step_per_epoch, decay_epoch)
  150. net = Net()
  151. optim = nn.Momentum(net.trainable_params(), learning_rate=lr, momentum=0.9)
  152. .. cnmsautosummary::
  153. :toctree: nn
  154. mindspore.nn.cosine_decay_lr
  155. mindspore.nn.exponential_decay_lr
  156. mindspore.nn.inverse_decay_lr
  157. mindspore.nn.natural_exp_decay_lr
  158. mindspore.nn.piecewise_constant_lr
  159. mindspore.nn.polynomial_decay_lr
  160. mindspore.nn.warmup_lr