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
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. Cell
  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. Gradient
  28. ---------
  29. .. cnmsplatformautosummary::
  30. :toctree: nn
  31. mindspore.nn.Jvp
  32. mindspore.nn.Vjp
  33. 非线性激活函数
  34. ----------------------
  35. .. cnmsplatformautosummary::
  36. :toctree: nn
  37. mindspore.nn.FastGelu
  38. mindspore.nn.HShrink
  39. mindspore.nn.HSigmoid
  40. mindspore.nn.HSwish
  41. mindspore.nn.LeakyReLU
  42. mindspore.nn.LogSigmoid
  43. mindspore.nn.LogSoftmax
  44. mindspore.nn.ReLU
  45. mindspore.nn.ELU
  46. mindspore.nn.GELU
  47. mindspore.nn.Sigmoid
  48. mindspore.nn.Softmax
  49. mindspore.nn.Tanh
  50. Utilities
  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. Optimizer Functions
  64. -------------------
  65. .. cnmsplatformautosummary::
  66. :toctree: nn
  67. mindspore.nn.Optimizer
  68. mindspore.nn.Adagrad
  69. mindspore.nn.Adam
  70. mindspore.nn.AdamOffload
  71. mindspore.nn.AdamWeightDecay
  72. mindspore.nn.FTRL
  73. mindspore.nn.LARS
  74. mindspore.nn.Lamb
  75. mindspore.nn.LazyAdam
  76. mindspore.nn.Momentum
  77. mindspore.nn.ProximalAdagrad
  78. mindspore.nn.RMSProp
  79. mindspore.nn.SGD
  80. mindspore.nn.thor
  81. Wrapper Functions
  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. Math Functions
  95. -----------------
  96. .. cnmsplatformautosummary::
  97. :toctree: nn
  98. mindspore.nn.Moments
  99. Metrics
  100. --------
  101. .. cnmsautosummary::
  102. :toctree: nn
  103. mindspore.nn.Accuracy
  104. mindspore.nn.F1
  105. mindspore.nn.Fbeta
  106. mindspore.nn.Loss
  107. mindspore.nn.MAE
  108. mindspore.nn.MSE
  109. mindspore.nn.Metric
  110. mindspore.nn.Precision
  111. mindspore.nn.Recall
  112. mindspore.nn.Top1CategoricalAccuracy
  113. mindspore.nn.Top5CategoricalAccuracy
  114. mindspore.nn.TopKCategoricalAccuracy
  115. mindspore.nn.get_metric_fn
  116. mindspore.nn.names
  117. mindspore.nn.rearrange_inputs
  118. Dynamic Learning Rate
  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