mindspore 1.10.0__cp39-cp39-win_amd64.whl → 2.0.0rc1__cp39-cp39-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of mindspore might be problematic. Click here for more details.

Files changed (966) hide show
  1. mindspore/.commit_id +1 -1
  2. mindspore/ConcurrencyCheck.dll +0 -0
  3. mindspore/CppBuildInsights.dll +0 -0
  4. mindspore/CppCoreCheck.dll +0 -0
  5. mindspore/EnumIndex.dll +0 -0
  6. mindspore/EspXEngine.dll +0 -0
  7. mindspore/HResultCheck.dll +0 -0
  8. mindspore/KernelTraceControl.dll +0 -0
  9. mindspore/LocalESPC.dll +0 -0
  10. mindspore/Microsoft.Diagnostics.Tracing.EventSource.dll +0 -0
  11. mindspore/Microsoft.VisualStudio.RemoteControl.dll +0 -0
  12. mindspore/Microsoft.VisualStudio.Telemetry.dll +0 -0
  13. mindspore/Microsoft.VisualStudio.Utilities.Internal.dll +0 -0
  14. mindspore/Newtonsoft.Json.dll +0 -0
  15. mindspore/System.Runtime.CompilerServices.Unsafe.dll +0 -0
  16. mindspore/VariantClear.dll +0 -0
  17. mindspore/__init__.py +9 -4
  18. mindspore/_c_dataengine.cp39-win_amd64.pyd +0 -0
  19. mindspore/_c_expression.cp39-win_amd64.pyd +0 -0
  20. mindspore/_c_mindrecord.cp39-win_amd64.pyd +0 -0
  21. mindspore/_check_jit_forbidden_api.py +102 -0
  22. mindspore/_checkparam.py +1066 -1001
  23. mindspore/_extends/builtin_operations.py +32 -4
  24. mindspore/_extends/graph_kernel/model/graph_split.py +66 -222
  25. mindspore/_extends/parallel_compile/akg_compiler/akg_process.py +12 -9
  26. mindspore/_extends/parallel_compile/akg_compiler/build_tbe_kernel.py +119 -26
  27. mindspore/_extends/parallel_compile/akg_compiler/tbe_topi.py +50 -50
  28. mindspore/_extends/parallel_compile/akg_compiler/util.py +9 -6
  29. mindspore/_extends/parallel_compile/tbe_compiler/tbe_adapter.py +4 -25
  30. mindspore/_extends/parallel_compile/tbe_compiler/tbe_helper.py +9 -4
  31. mindspore/_extends/parallel_compile/tbe_compiler/tbe_job_manager.py +1 -27
  32. mindspore/_extends/parse/__init__.py +5 -3
  33. mindspore/_extends/parse/namespace.py +17 -2
  34. mindspore/_extends/parse/parser.py +193 -34
  35. mindspore/_extends/parse/resources.py +7 -8
  36. mindspore/_extends/parse/standard_method.py +1780 -435
  37. mindspore/_extends/parse/trope.py +3 -1
  38. mindspore/amp.py +53 -58
  39. mindspore/atlprov.dll +0 -0
  40. mindspore/boost/adasum.py +3 -2
  41. mindspore/boost/boost.py +2 -2
  42. mindspore/boost/boost_cell_wrapper.py +46 -26
  43. mindspore/boost/dim_reduce.py +6 -5
  44. mindspore/boost/grad_accumulation.py +2 -1
  45. mindspore/boost/group_loss_scale_manager.py +1 -1
  46. mindspore/c1.dll +0 -0
  47. mindspore/c1xx.dll +0 -0
  48. mindspore/c2.dll +0 -0
  49. mindspore/cfgpersist.dll +0 -0
  50. mindspore/clang_rt.asan_dbg_dynamic-x86_64.dll +0 -0
  51. mindspore/clang_rt.asan_dynamic-x86_64.dll +0 -0
  52. mindspore/common/__init__.py +11 -10
  53. mindspore/common/_decorator.py +2 -0
  54. mindspore/common/_register_for_adapter.py +55 -0
  55. mindspore/common/_stub_tensor.py +201 -0
  56. mindspore/common/_utils.py +57 -0
  57. mindspore/common/api.py +582 -297
  58. mindspore/common/dtype.py +66 -18
  59. mindspore/common/dump.py +2 -2
  60. mindspore/common/initializer.py +38 -1
  61. mindspore/common/jit_config.py +25 -13
  62. mindspore/common/mutable.py +53 -24
  63. mindspore/common/parameter.py +60 -37
  64. mindspore/common/seed.py +8 -24
  65. mindspore/common/sparse_tensor.py +927 -0
  66. mindspore/common/tensor.py +1627 -3900
  67. mindspore/communication/__init__.py +10 -5
  68. mindspore/communication/_comm_helper.py +78 -214
  69. mindspore/communication/_hccl_management.py +2 -1
  70. mindspore/communication/management.py +136 -47
  71. mindspore/config/op_info.config +501 -1008
  72. mindspore/context.py +291 -56
  73. mindspore/d3dcompiler_47.dll +0 -0
  74. mindspore/dataset/__init__.py +12 -8
  75. mindspore/dataset/audio/__init__.py +9 -9
  76. mindspore/dataset/audio/transforms.py +1090 -228
  77. mindspore/dataset/audio/utils.py +87 -39
  78. mindspore/dataset/audio/validators.py +223 -1
  79. mindspore/dataset/callback/ds_callback.py +17 -15
  80. mindspore/dataset/core/config.py +246 -17
  81. mindspore/dataset/core/py_util_helpers.py +4 -3
  82. mindspore/dataset/core/validator_helpers.py +10 -10
  83. mindspore/{parallel/nn/layers.py → dataset/debug/__init__.py} +7 -8
  84. mindspore/dataset/debug/debug_hook.py +65 -0
  85. mindspore/dataset/debug/pre_defined_hook.py +67 -0
  86. mindspore/dataset/engine/__init__.py +7 -3
  87. mindspore/dataset/engine/cache_client.py +9 -9
  88. mindspore/dataset/engine/datasets.py +648 -477
  89. mindspore/dataset/engine/datasets_audio.py +165 -167
  90. mindspore/dataset/engine/datasets_standard_format.py +93 -67
  91. mindspore/dataset/engine/datasets_text.py +492 -342
  92. mindspore/dataset/engine/datasets_user_defined.py +85 -50
  93. mindspore/dataset/engine/datasets_vision.py +1224 -699
  94. mindspore/dataset/engine/graphdata.py +134 -69
  95. mindspore/dataset/engine/iterators.py +50 -9
  96. mindspore/dataset/engine/offload.py +52 -31
  97. mindspore/dataset/engine/samplers.py +27 -24
  98. mindspore/dataset/engine/serializer_deserializer.py +14 -15
  99. mindspore/dataset/engine/validators.py +213 -52
  100. mindspore/dataset/text/__init__.py +10 -8
  101. mindspore/dataset/text/transforms.py +152 -57
  102. mindspore/dataset/text/utils.py +98 -49
  103. mindspore/dataset/text/validators.py +25 -0
  104. mindspore/dataset/transforms/__init__.py +4 -2
  105. mindspore/dataset/transforms/c_transforms.py +11 -13
  106. mindspore/dataset/transforms/py_transforms.py +2 -2
  107. mindspore/dataset/transforms/py_transforms_util.py +10 -0
  108. mindspore/dataset/transforms/transforms.py +13 -15
  109. mindspore/dataset/transforms/validators.py +7 -7
  110. mindspore/dataset/utils/__init__.py +2 -1
  111. mindspore/dataset/utils/browse_dataset.py +13 -13
  112. mindspore/dataset/utils/line_reader.py +121 -0
  113. mindspore/dataset/vision/__init__.py +8 -7
  114. mindspore/dataset/vision/c_transforms.py +125 -126
  115. mindspore/dataset/vision/py_transforms.py +37 -37
  116. mindspore/dataset/vision/py_transforms_util.py +23 -20
  117. mindspore/dataset/vision/transforms.py +316 -315
  118. mindspore/dataset/vision/utils.py +313 -17
  119. mindspore/dataset/vision/validators.py +6 -6
  120. mindspore/default_config.py +0 -1
  121. mindspore/dpcmi.dll +0 -0
  122. mindspore/{compression → experimental}/__init__.py +6 -5
  123. mindspore/experimental/map_parameter.py +275 -0
  124. mindspore/include/OWNERS +0 -1
  125. mindspore/include/api/callback/callback.h +9 -13
  126. mindspore/include/api/callback/ckpt_saver.h +2 -2
  127. mindspore/include/api/callback/loss_monitor.h +2 -2
  128. mindspore/include/api/callback/lr_scheduler.h +5 -5
  129. mindspore/include/api/callback/time_monitor.h +2 -2
  130. mindspore/include/api/callback/train_accuracy.h +4 -6
  131. mindspore/include/api/cfg.h +19 -6
  132. mindspore/include/api/context.h +70 -9
  133. mindspore/include/api/delegate.h +8 -1
  134. mindspore/include/api/dual_abi_helper.h +8 -24
  135. mindspore/include/api/metrics/accuracy.h +2 -2
  136. mindspore/include/api/metrics/metrics.h +4 -3
  137. mindspore/include/api/model.h +9 -4
  138. mindspore/include/api/model_group.h +68 -0
  139. mindspore/include/api/model_parallel_runner.h +17 -17
  140. mindspore/include/api/net.h +12 -11
  141. mindspore/include/api/serialization.h +20 -4
  142. mindspore/include/api/status.h +7 -1
  143. mindspore/include/api/types.h +25 -21
  144. mindspore/include/api/visible.h +4 -0
  145. mindspore/include/c_api/model_c.h +5 -0
  146. mindspore/include/c_api/status_c.h +1 -1
  147. mindspore/include/dataset/config.h +1 -1
  148. mindspore/include/dataset/constants.h +14 -0
  149. mindspore/include/dataset/text.h +59 -0
  150. mindspore/include/dataset/vision.h +56 -117
  151. mindspore/include/dataset/vision_lite.h +102 -0
  152. mindspore/jpeg62.dll +0 -0
  153. mindspore/log.py +28 -28
  154. mindspore/mindrecord/common/exceptions.py +2 -4
  155. mindspore/mindrecord/filereader.py +19 -1
  156. mindspore/mindrecord/filewriter.py +250 -88
  157. mindspore/mindrecord/mindpage.py +13 -13
  158. mindspore/mindrecord/shardheader.py +15 -15
  159. mindspore/mindrecord/shardreader.py +9 -0
  160. mindspore/mindrecord/shardwriter.py +29 -29
  161. mindspore/mindrecord/tools/cifar100_to_mr.py +9 -9
  162. mindspore/mindrecord/tools/cifar10_to_mr.py +9 -9
  163. mindspore/mindrecord/tools/csv_to_mr.py +4 -4
  164. mindspore/mindrecord/tools/imagenet_to_mr.py +70 -65
  165. mindspore/mindrecord/tools/mnist_to_mr.py +41 -41
  166. mindspore/mindrecord/tools/tfrecord_to_mr.py +6 -6
  167. mindspore/{libmindspore_backend.dll → mindspore_backend.dll} +0 -0
  168. mindspore/mindspore_common.dll +0 -0
  169. mindspore/mindspore_core.dll +0 -0
  170. mindspore/mindspore_glog.dll +0 -0
  171. mindspore/mindspore_shared_lib.dll +0 -0
  172. mindspore/msobj140.dll +0 -0
  173. mindspore/mspdb140.dll +0 -0
  174. mindspore/mspdbcore.dll +0 -0
  175. mindspore/mspdbst.dll +0 -0
  176. mindspore/mspft140.dll +0 -0
  177. mindspore/msvcdis140.dll +0 -0
  178. mindspore/msvcp140_1.dll +0 -0
  179. mindspore/msvcp140_2.dll +0 -0
  180. mindspore/msvcp140_atomic_wait.dll +0 -0
  181. mindspore/msvcp140_codecvt_ids.dll +0 -0
  182. mindspore/nn/__init__.py +1 -5
  183. mindspore/nn/cell.py +297 -234
  184. mindspore/nn/dynamic_lr.py +1 -1
  185. mindspore/nn/grad/cell_grad.py +17 -42
  186. mindspore/nn/layer/__init__.py +7 -4
  187. mindspore/nn/layer/activation.py +131 -88
  188. mindspore/nn/layer/basic.py +313 -613
  189. mindspore/nn/layer/channel_shuffle.py +103 -0
  190. mindspore/nn/layer/combined.py +1 -1
  191. mindspore/nn/layer/container.py +52 -6
  192. mindspore/nn/layer/conv.py +112 -43
  193. mindspore/nn/layer/dense.py +10 -9
  194. mindspore/nn/layer/embedding.py +36 -34
  195. mindspore/nn/layer/image.py +123 -27
  196. mindspore/nn/layer/math.py +108 -107
  197. mindspore/nn/layer/normalization.py +212 -366
  198. mindspore/nn/layer/padding.py +370 -42
  199. mindspore/nn/layer/pooling.py +1443 -219
  200. mindspore/nn/layer/rnn_cells.py +11 -16
  201. mindspore/nn/layer/rnns.py +38 -39
  202. mindspore/nn/layer/thor_layer.py +24 -25
  203. mindspore/nn/layer/timedistributed.py +5 -5
  204. mindspore/nn/layer/transformer.py +701 -0
  205. mindspore/nn/learning_rate_schedule.py +8 -8
  206. mindspore/nn/loss/__init__.py +9 -6
  207. mindspore/nn/loss/loss.py +678 -142
  208. mindspore/nn/metrics.py +53 -0
  209. mindspore/nn/optim/_dist_optimizer_registry.py +2 -2
  210. mindspore/nn/optim/ada_grad.py +8 -8
  211. mindspore/nn/optim/adadelta.py +2 -3
  212. mindspore/nn/optim/adafactor.py +18 -14
  213. mindspore/nn/optim/adam.py +429 -87
  214. mindspore/nn/optim/adamax.py +5 -6
  215. mindspore/nn/optim/adasum.py +10 -8
  216. mindspore/nn/optim/asgd.py +7 -7
  217. mindspore/nn/optim/ftrl.py +81 -11
  218. mindspore/nn/optim/lamb.py +7 -8
  219. mindspore/nn/optim/lars.py +4 -4
  220. mindspore/nn/optim/lazyadam.py +82 -7
  221. mindspore/nn/optim/momentum.py +8 -7
  222. mindspore/nn/optim/optimizer.py +19 -10
  223. mindspore/nn/optim/proximal_ada_grad.py +6 -5
  224. mindspore/nn/optim/rmsprop.py +3 -3
  225. mindspore/nn/optim/rprop.py +20 -16
  226. mindspore/nn/optim/sgd.py +21 -15
  227. mindspore/nn/optim/thor.py +23 -21
  228. mindspore/nn/probability/__init__.py +0 -2
  229. mindspore/nn/probability/bijector/bijector.py +7 -6
  230. mindspore/nn/probability/bijector/invert.py +4 -2
  231. mindspore/nn/probability/bijector/softplus.py +2 -2
  232. mindspore/nn/probability/bnn_layers/dense_variational.py +1 -1
  233. mindspore/nn/probability/bnn_layers/layer_distribution.py +2 -2
  234. mindspore/nn/probability/distribution/__init__.py +6 -0
  235. mindspore/nn/probability/distribution/_utils/custom_ops.py +3 -2
  236. mindspore/nn/probability/distribution/_utils/utils.py +11 -17
  237. mindspore/nn/probability/distribution/bernoulli.py +6 -6
  238. mindspore/nn/probability/distribution/beta.py +1 -1
  239. mindspore/nn/probability/distribution/categorical.py +9 -9
  240. mindspore/nn/probability/distribution/cauchy.py +8 -8
  241. mindspore/nn/probability/distribution/distribution.py +12 -6
  242. mindspore/nn/probability/distribution/exponential.py +5 -5
  243. mindspore/nn/probability/distribution/gamma.py +3 -3
  244. mindspore/nn/probability/distribution/geometric.py +6 -5
  245. mindspore/nn/probability/distribution/gumbel.py +5 -5
  246. mindspore/nn/probability/distribution/half_normal.py +133 -0
  247. mindspore/nn/probability/distribution/laplace.py +128 -0
  248. mindspore/nn/probability/distribution/log_normal.py +0 -1
  249. mindspore/nn/probability/distribution/logistic.py +4 -5
  250. mindspore/nn/probability/distribution/normal.py +11 -15
  251. mindspore/nn/probability/distribution/poisson.py +6 -2
  252. mindspore/nn/probability/distribution/student_t.py +150 -0
  253. mindspore/nn/probability/distribution/transformed_distribution.py +4 -4
  254. mindspore/nn/probability/distribution/uniform.py +5 -5
  255. mindspore/nn/reinforcement/_tensors_queue.py +3 -3
  256. mindspore/nn/reinforcement/tensor_array.py +2 -2
  257. mindspore/nn/sparse/sparse.py +8 -1
  258. mindspore/nn/wrap/cell_wrapper.py +55 -27
  259. mindspore/nn/wrap/grad_reducer.py +20 -11
  260. mindspore/nn/wrap/loss_scale.py +47 -30
  261. mindspore/numpy/array_creations.py +33 -22
  262. mindspore/numpy/array_ops.py +46 -42
  263. mindspore/numpy/logic_ops.py +6 -27
  264. mindspore/numpy/math_ops.py +26 -19
  265. mindspore/numpy/utils.py +1 -8
  266. mindspore/numpy/utils_const.py +112 -62
  267. mindspore/opencv_core452.dll +0 -0
  268. mindspore/opencv_imgcodecs452.dll +0 -0
  269. mindspore/opencv_imgproc452.dll +0 -0
  270. mindspore/ops/__init__.py +6 -3
  271. mindspore/ops/_constants.py +0 -6
  272. mindspore/ops/_grad/__init__.py +2 -1
  273. mindspore/ops/_grad/grad_array_ops.py +209 -152
  274. mindspore/ops/_grad/grad_base.py +55 -17
  275. mindspore/ops/_grad/grad_clip_ops.py +11 -3
  276. mindspore/ops/_grad/grad_comm_ops.py +58 -47
  277. mindspore/ops/_grad/grad_implementations.py +21 -61
  278. mindspore/ops/_grad/grad_inner_ops.py +48 -6
  279. mindspore/ops/_grad/grad_math_ops.py +306 -161
  280. mindspore/ops/_grad/grad_nn_ops.py +192 -181
  281. mindspore/ops/_grad/grad_other_ops.py +1 -1
  282. mindspore/ops/_grad/grad_quant_ops.py +5 -5
  283. mindspore/ops/_grad/grad_sequence_ops.py +296 -0
  284. mindspore/ops/_grad/grad_sparse.py +15 -9
  285. mindspore/ops/_grad_experimental/__init__.py +1 -0
  286. mindspore/ops/_grad_experimental/grad_array_ops.py +441 -55
  287. mindspore/ops/_grad_experimental/grad_image_ops.py +25 -7
  288. mindspore/ops/_grad_experimental/grad_inner_ops.py +3 -44
  289. mindspore/ops/_grad_experimental/grad_linalg_ops.py +16 -21
  290. mindspore/ops/_grad_experimental/grad_math_ops.py +979 -49
  291. mindspore/ops/_grad_experimental/grad_nn_ops.py +78 -8
  292. mindspore/ops/_grad_experimental/grad_scalar_ops.py +112 -0
  293. mindspore/ops/_grad_experimental/grad_sparse_ops.py +197 -13
  294. mindspore/ops/_op_impl/__init__.py +3 -3
  295. mindspore/ops/_op_impl/_custom_op/__init__.py +0 -1
  296. mindspore/ops/_op_impl/_custom_op/_basic.py +0 -1
  297. mindspore/ops/_op_impl/_custom_op/batch_matmul_impl.py +1 -1
  298. mindspore/ops/_op_impl/_custom_op/batchnorm_fold.py +4 -2
  299. mindspore/ops/_op_impl/_custom_op/batchnorm_fold2.py +2 -2
  300. mindspore/ops/_op_impl/_custom_op/batchnorm_fold2_grad.py +2 -2
  301. mindspore/ops/_op_impl/_custom_op/batchnorm_fold2_grad_reduce.py +5 -5
  302. mindspore/ops/_op_impl/_custom_op/batchnorm_fold_grad.py +3 -3
  303. mindspore/ops/_op_impl/_custom_op/cholesky_trsm_impl.py +1 -1
  304. mindspore/ops/_op_impl/_custom_op/correction_mul.py +3 -3
  305. mindspore/ops/_op_impl/_custom_op/correction_mul_grad.py +2 -2
  306. mindspore/ops/_op_impl/_custom_op/dsd_back_impl.py +4 -8
  307. mindspore/ops/_op_impl/_custom_op/dsd_impl.py +1 -1
  308. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perchannel.py +2 -2
  309. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perchannel_grad.py +2 -2
  310. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perchannel_grad_reduce.py +2 -2
  311. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perlayer.py +2 -2
  312. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perlayer_grad.py +2 -2
  313. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perlayer_grad_reduce.py +2 -2
  314. mindspore/ops/_op_impl/_custom_op/fake_quant_perchannel.py +2 -2
  315. mindspore/ops/_op_impl/_custom_op/fake_quant_perchannel_grad.py +2 -2
  316. mindspore/ops/_op_impl/_custom_op/fake_quant_perlayer.py +2 -2
  317. mindspore/ops/_op_impl/_custom_op/fake_quant_perlayer_grad.py +2 -2
  318. mindspore/ops/_op_impl/_custom_op/fused_abs_max1_impl.py +1 -1
  319. mindspore/ops/_op_impl/_custom_op/img2col_impl.py +1 -1
  320. mindspore/ops/_op_impl/_custom_op/matmul_cube_dense_left_impl.py +2 -2
  321. mindspore/ops/_op_impl/_custom_op/matmul_cube_dense_right_impl.py +1 -1
  322. mindspore/ops/_op_impl/_custom_op/matmul_cube_fracz_left_cast_impl.py +1 -1
  323. mindspore/ops/_op_impl/_custom_op/matmul_cube_fracz_right_mul_impl.py +1 -1
  324. mindspore/ops/_op_impl/_custom_op/matmul_cube_impl.py +2 -2
  325. mindspore/ops/_op_impl/_custom_op/matmul_dds_grad_impl.py +0 -1
  326. mindspore/ops/_op_impl/_custom_op/matmul_dds_impl.py +0 -1
  327. mindspore/ops/_op_impl/_custom_op/matrix_combine_impl.py +1 -1
  328. mindspore/ops/_op_impl/_custom_op/minmax_update_perchannel.py +2 -2
  329. mindspore/ops/_op_impl/_custom_op/minmax_update_perlayer.py +2 -2
  330. mindspore/ops/_op_impl/_custom_op/transpose02314_impl.py +1 -1
  331. mindspore/ops/_op_impl/aicpu/__init__.py +238 -3
  332. mindspore/ops/_op_impl/aicpu/abs.py +36 -0
  333. mindspore/ops/_op_impl/aicpu/adaptive_avg_pool_2d.py +34 -0
  334. mindspore/ops/_op_impl/aicpu/adaptive_avg_pool_2d_grad.py +34 -0
  335. mindspore/ops/_op_impl/aicpu/adaptive_avg_pool_3d.py +39 -0
  336. mindspore/ops/_op_impl/aicpu/adaptive_avg_pool_3d_grad.py +39 -0
  337. mindspore/ops/_op_impl/aicpu/adaptive_max_pool_2d_grad.py +37 -0
  338. mindspore/ops/_op_impl/aicpu/adaptive_max_pool_3d.py +42 -0
  339. mindspore/ops/_op_impl/aicpu/adaptive_max_pool_3d_grad.py +152 -0
  340. mindspore/ops/_op_impl/aicpu/add.py +43 -0
  341. mindspore/ops/_op_impl/aicpu/addcdiv.py +0 -32
  342. mindspore/ops/_op_impl/aicpu/addcmul.py +0 -84
  343. mindspore/ops/_op_impl/aicpu/affine_grid_grad.py +35 -0
  344. mindspore/ops/_op_impl/aicpu/arg_max.py +75 -0
  345. mindspore/ops/_op_impl/aicpu/arg_min.py +75 -0
  346. mindspore/ops/_op_impl/aicpu/argmin_with_value.py +43 -0
  347. mindspore/ops/_op_impl/aicpu/batch_matmul.py +43 -0
  348. mindspore/ops/_op_impl/aicpu/batch_norm_grad_grad.py +49 -0
  349. mindspore/ops/_op_impl/aicpu/bernoulli.py +48 -0
  350. mindspore/ops/_op_impl/aicpu/bessel_i0.py +31 -0
  351. mindspore/ops/_op_impl/aicpu/bias_add.py +44 -0
  352. mindspore/ops/_op_impl/aicpu/bias_add_grad.py +43 -0
  353. mindspore/ops/_op_impl/aicpu/bincount.py +33 -0
  354. mindspore/{nn/probability/infer/variational/__init__.py → ops/_op_impl/aicpu/cauchy.py} +17 -10
  355. mindspore/ops/_op_impl/aicpu/channel_shuffle.py +40 -0
  356. mindspore/ops/_op_impl/aicpu/cholesky.py +1 -1
  357. mindspore/ops/_op_impl/{cpu/bias_add.py → aicpu/choleskygrad.py} +9 -7
  358. mindspore/ops/_op_impl/aicpu/combined_non_max_suppression.py +42 -0
  359. mindspore/ops/_op_impl/aicpu/concat_offset.py +42 -0
  360. mindspore/ops/_op_impl/aicpu/concat_offset_v1.py +31 -0
  361. mindspore/ops/_op_impl/aicpu/conj.py +11 -0
  362. mindspore/ops/_op_impl/aicpu/crop_and_resize_grad_image.py +38 -0
  363. mindspore/ops/_op_impl/aicpu/cumulative_logsumexp.py +36 -0
  364. mindspore/ops/_op_impl/aicpu/deformable_offsets.py +38 -0
  365. mindspore/ops/_op_impl/aicpu/deformable_offsets_grad.py +2 -2
  366. mindspore/ops/_op_impl/aicpu/dense_to_sparse_set_operation.py +48 -0
  367. mindspore/ops/_op_impl/aicpu/diag.py +36 -0
  368. mindspore/ops/_op_impl/aicpu/diag_part.py +36 -0
  369. mindspore/ops/_op_impl/aicpu/diagonal.py +35 -0
  370. mindspore/ops/_op_impl/{cpu/bias_add_grad.py → aicpu/digamma.py} +9 -7
  371. mindspore/ops/_op_impl/aicpu/eig.py +35 -0
  372. mindspore/ops/_op_impl/aicpu/fft_with_size.py +41 -0
  373. mindspore/ops/_op_impl/aicpu/flatten.py +1 -0
  374. mindspore/ops/_op_impl/aicpu/fmax.py +36 -0
  375. mindspore/ops/_op_impl/aicpu/fmin.py +37 -0
  376. mindspore/ops/_op_impl/aicpu/fractional_max_pool3d_with_fixed_ksize.py +1 -1
  377. mindspore/ops/_op_impl/aicpu/fse_decode.py +43 -0
  378. mindspore/ops/_op_impl/aicpu/glu.py +33 -0
  379. mindspore/ops/_op_impl/aicpu/glu_grad.py +34 -0
  380. mindspore/ops/_op_impl/aicpu/greater.py +41 -0
  381. mindspore/ops/_op_impl/aicpu/greater_equal.py +41 -0
  382. mindspore/ops/_op_impl/aicpu/index_put.py +50 -0
  383. mindspore/ops/_op_impl/{tbe/scatter_add_ds.py → aicpu/inplace_index_add.py} +17 -21
  384. mindspore/ops/_op_impl/aicpu/instance_norm_v2.py +41 -0
  385. mindspore/ops/_op_impl/aicpu/instance_norm_v2_grad.py +44 -0
  386. mindspore/ops/_op_impl/aicpu/layer_norm_grad_grad.py +47 -0
  387. mindspore/ops/_op_impl/aicpu/less.py +41 -0
  388. mindspore/ops/_op_impl/aicpu/less_equal.py +41 -0
  389. mindspore/ops/_op_impl/aicpu/lgamma.py +32 -0
  390. mindspore/ops/_op_impl/aicpu/log_normal_reverse.py +33 -0
  391. mindspore/ops/_op_impl/aicpu/logit.py +33 -0
  392. mindspore/ops/_op_impl/aicpu/logit_grad.py +34 -0
  393. mindspore/ops/_op_impl/aicpu/masked_fill.py +42 -0
  394. mindspore/ops/_op_impl/aicpu/masked_scatter.py +39 -0
  395. mindspore/ops/_op_impl/aicpu/matmul.py +39 -0
  396. mindspore/ops/_op_impl/aicpu/matrix_logarithm.py +31 -0
  397. mindspore/ops/_op_impl/aicpu/matrix_power.py +32 -0
  398. mindspore/ops/_op_impl/aicpu/matrix_solve_ls.py +36 -0
  399. mindspore/ops/_op_impl/aicpu/matrix_triangular_solve.py +36 -0
  400. mindspore/ops/_op_impl/aicpu/mirror_pad.py +2 -0
  401. mindspore/ops/_op_impl/aicpu/mirror_pad_grad.py +0 -4
  402. mindspore/ops/_op_impl/aicpu/mul.py +3 -1
  403. mindspore/ops/_op_impl/aicpu/multinomial.py +14 -6
  404. mindspore/ops/_op_impl/aicpu/multinomial_with_replacement.py +35 -0
  405. mindspore/ops/_op_impl/aicpu/nan_to_num.py +34 -0
  406. mindspore/ops/_op_impl/aicpu/nllloss.py +38 -0
  407. mindspore/ops/_op_impl/aicpu/nllloss_grad.py +39 -0
  408. mindspore/ops/_op_impl/aicpu/ones_like.py +0 -2
  409. mindspore/ops/_op_impl/aicpu/polar.py +32 -0
  410. mindspore/ops/_op_impl/aicpu/polygamma.py +34 -0
  411. mindspore/ops/_op_impl/aicpu/qr.py +36 -0
  412. mindspore/ops/_op_impl/aicpu/quant_dtype_cast.py +40 -0
  413. mindspore/ops/_op_impl/aicpu/quantile.py +35 -0
  414. mindspore/ops/_op_impl/aicpu/ragged_tensor_to_sparse.py +73 -0
  415. mindspore/ops/_op_impl/aicpu/ragged_tensor_to_tensor.py +74 -0
  416. mindspore/ops/_op_impl/aicpu/random_shuffle.py +3 -0
  417. mindspore/ops/_op_impl/aicpu/randperm_v2.py +41 -0
  418. mindspore/ops/_op_impl/aicpu/range.py +36 -0
  419. mindspore/ops/_op_impl/aicpu/reciprocal.py +34 -0
  420. mindspore/ops/_op_impl/aicpu/reciprocal_grad.py +35 -0
  421. mindspore/ops/_op_impl/aicpu/reduce_sum.py +57 -0
  422. mindspore/ops/_op_impl/aicpu/resize_bicubic.py +2 -8
  423. mindspore/ops/_op_impl/aicpu/resize_bicubic_grad.py +1 -1
  424. mindspore/ops/_op_impl/aicpu/resize_v2.py +68 -0
  425. mindspore/ops/_op_impl/aicpu/resize_v2_grad.py +68 -0
  426. mindspore/ops/_op_impl/aicpu/scatter_elements.py +4 -0
  427. mindspore/ops/_op_impl/aicpu/scatter_nd_update.py +2 -0
  428. mindspore/ops/_op_impl/aicpu/search_sorted.py +12 -6
  429. mindspore/ops/_op_impl/aicpu/self_adjoint_eig.py +34 -0
  430. mindspore/ops/_op_impl/aicpu/sequence_add.py +34 -0
  431. mindspore/ops/_op_impl/aicpu/sequence_add_offset.py +34 -0
  432. mindspore/ops/_op_impl/aicpu/sequence_addn.py +38 -0
  433. mindspore/ops/_op_impl/aicpu/slice_grad.py +76 -0
  434. mindspore/ops/_op_impl/aicpu/smooth_l1_loss.py +35 -0
  435. mindspore/ops/_op_impl/aicpu/smooth_l1_loss_grad.py +37 -0
  436. mindspore/ops/_op_impl/aicpu/sort.py +39 -0
  437. mindspore/ops/_op_impl/aicpu/sparse_apply_adagrad_da.py +0 -24
  438. mindspore/ops/_op_impl/aicpu/sparse_cross.py +42 -0
  439. mindspore/ops/_op_impl/aicpu/sparse_fill_empty_rows.py +63 -0
  440. mindspore/ops/_op_impl/aicpu/sparse_fill_empty_rows_grad.py +45 -0
  441. mindspore/ops/_op_impl/aicpu/sparse_matrix_mat_mul.py +56 -0
  442. mindspore/ops/_op_impl/{tbe/slice_ds.py → aicpu/sparse_segment_sum.py} +16 -24
  443. mindspore/ops/_op_impl/aicpu/sparse_segment_sum_with_num_segments.py +68 -0
  444. mindspore/ops/_op_impl/aicpu/sparse_slice.py +63 -0
  445. mindspore/ops/_op_impl/aicpu/sparse_slice_grad.py +61 -0
  446. mindspore/ops/_op_impl/aicpu/squared_difference.py +2 -0
  447. mindspore/ops/_op_impl/aicpu/strided_slice_v2.py +93 -0
  448. mindspore/ops/_op_impl/aicpu/strided_slice_v2_grad.py +66 -0
  449. mindspore/ops/_op_impl/aicpu/tensor_scatter_update.py +59 -0
  450. mindspore/ops/_op_impl/{tbe/gather_v2.py → aicpu/tile.py} +24 -24
  451. mindspore/ops/_op_impl/aicpu/tridiagonal_solve.py +35 -0
  452. mindspore/ops/_op_impl/aicpu/tril_indices.py +34 -0
  453. mindspore/ops/_op_impl/aicpu/triu_indices.py +34 -0
  454. mindspore/ops/_op_impl/aicpu/uniform.py +34 -0
  455. mindspore/ops/_op_impl/aicpu/uniform_candidate_sampler.py +1 -0
  456. mindspore/ops/_op_impl/aicpu/unique_consecutive.py +10 -2
  457. mindspore/ops/_op_impl/cpu/__init__.py +1 -2
  458. mindspore/ops/_op_impl/cpu/dynamic_shape.py +5 -1
  459. mindspore/ops/_op_impl/cpu/maximum_grad.py +2 -0
  460. mindspore/{compression/common/__init__.py → ops/_op_impl/cpu/pyexecute.py} +13 -8
  461. mindspore/ops/_op_impl/cpu/reduce_sum.py +8 -0
  462. mindspore/ops/_op_impl/cpu/sparse_slice.py +62 -0
  463. mindspore/ops/_op_impl/cpu/sparse_slice_grad.py +60 -0
  464. mindspore/ops/_op_impl/cpu/tensor_shape.py +5 -1
  465. mindspore/ops/_op_impl/tbe/__init__.py +27 -608
  466. mindspore/ops/_op_impl/tbe/addcdiv_ds.py +42 -0
  467. mindspore/ops/_op_impl/tbe/addcmul_ds.py +44 -0
  468. mindspore/ops/_op_impl/tbe/assign_add_ds.py +1 -0
  469. mindspore/ops/_op_impl/tbe/atomic_addr_clean.py +1 -1
  470. mindspore/ops/_op_impl/tbe/avg_pool_3d_grad.py +1 -1
  471. mindspore/ops/_op_impl/tbe/basic_lstm_cell_c_state_grad_v2.py +0 -1
  472. mindspore/ops/_op_impl/tbe/batch_to_space.py +1 -1
  473. mindspore/ops/_op_impl/tbe/batch_to_space_nd.py +1 -1
  474. mindspore/ops/_op_impl/tbe/batch_to_space_nd_v2.py +41 -0
  475. mindspore/ops/_op_impl/tbe/bce_with_logits_loss.py +1 -0
  476. mindspore/ops/_op_impl/tbe/bias_add_grad.py +2 -0
  477. mindspore/ops/_op_impl/tbe/bn_infer_grad.py +4 -2
  478. mindspore/ops/_op_impl/tbe/bn_infer_grad_ds.py +40 -0
  479. mindspore/ops/_op_impl/tbe/bn_training_update.py +0 -1
  480. mindspore/ops/_op_impl/tbe/bn_training_update_ds.py +0 -1
  481. mindspore/ops/_op_impl/tbe/broadcast_to_ds.py +6 -4
  482. mindspore/ops/_op_impl/tbe/cast.py +0 -2
  483. mindspore/ops/_op_impl/tbe/cast_ds.py +3 -3
  484. mindspore/ops/_op_impl/tbe/ctc_loss_v2.py +0 -2
  485. mindspore/ops/_op_impl/tbe/ctc_loss_v2_grad.py +0 -2
  486. mindspore/ops/_op_impl/tbe/data_format_dim_map_ds.py +1 -0
  487. mindspore/ops/_op_impl/tbe/deformable_offsets.py +1 -0
  488. mindspore/ops/_op_impl/tbe/depthwise_conv2d.py +1 -1
  489. mindspore/ops/_op_impl/tbe/dynamic_atomic_addr_clean.py +1 -1
  490. mindspore/ops/_op_impl/tbe/gather_nd.py +1 -0
  491. mindspore/ops/_op_impl/tbe/greater.py +2 -0
  492. mindspore/ops/_op_impl/tbe/{index_add.py → inplace_index_add.py} +3 -6
  493. mindspore/ops/_op_impl/tbe/layer_norm_beta_gamma_backprop_v2.py +0 -1
  494. mindspore/ops/_op_impl/tbe/npu_clear_float_status_v2.py +35 -0
  495. mindspore/ops/_op_impl/tbe/npu_get_float_status_v2.py +35 -0
  496. mindspore/ops/_op_impl/tbe/one_hot_ds.py +0 -6
  497. mindspore/ops/_op_impl/tbe/{greater_ds.py → reduce_all_ds.py} +13 -16
  498. mindspore/ops/_op_impl/tbe/reduce_any_ds.py +39 -0
  499. mindspore/ops/_op_impl/tbe/roi_align_ds.py +44 -0
  500. mindspore/ops/_op_impl/tbe/roi_align_grad_ds.py +44 -0
  501. mindspore/ops/_op_impl/tbe/scatter_add.py +2 -0
  502. mindspore/ops/_op_impl/tbe/scatter_nd_add.py +2 -2
  503. mindspore/ops/_op_impl/tbe/slice.py +26 -15
  504. mindspore/ops/_op_impl/tbe/space_to_batch.py +1 -1
  505. mindspore/ops/_op_impl/tbe/space_to_batch_nd.py +1 -1
  506. mindspore/ops/_op_impl/tbe/strided_slice_grad_d.py +1 -0
  507. mindspore/ops/_op_impl/tbe/trans_data_ds.py +15 -5
  508. mindspore/ops/_op_impl/tbe/unsorted_segment_sum.py +1 -1
  509. mindspore/ops/_op_impl/tbe/unsorted_segment_sum_ds.py +2 -0
  510. mindspore/ops/_primitive_cache.py +3 -2
  511. mindspore/ops/_register_for_op.py +11 -0
  512. mindspore/ops/_utils/__init__.py +1 -1
  513. mindspore/ops/_utils/utils.py +20 -41
  514. mindspore/ops/_vmap/__init__.py +2 -2
  515. mindspore/ops/_vmap/vmap_array_ops.py +170 -78
  516. mindspore/ops/_vmap/vmap_base.py +24 -10
  517. mindspore/ops/_vmap/vmap_convolution_ops.py +7 -10
  518. mindspore/ops/_vmap/vmap_grad_math_ops.py +4 -4
  519. mindspore/ops/_vmap/vmap_grad_nn_ops.py +41 -9
  520. mindspore/ops/_vmap/vmap_image_ops.py +52 -0
  521. mindspore/ops/_vmap/vmap_math_ops.py +77 -6
  522. mindspore/ops/_vmap/vmap_nn_ops.py +78 -29
  523. mindspore/ops/_vmap/vmap_other_ops.py +3 -1
  524. mindspore/ops/_vmap/vmap_random_ops.py +55 -3
  525. mindspore/ops/_vmap/vmap_sparse_ops.py +1 -0
  526. mindspore/ops/bprop_mindir/AdaptiveAvgPool2D_bprop.mindir +0 -0
  527. mindspore/ops/bprop_mindir/AdaptiveMaxPool2D_bprop.mindir +0 -0
  528. mindspore/ops/bprop_mindir/ApproximateEqual_bprop.mindir +18 -19
  529. mindspore/ops/bprop_mindir/Argmax_bprop.mindir +13 -12
  530. mindspore/ops/bprop_mindir/Argmin_bprop.mindir +14 -13
  531. mindspore/ops/bprop_mindir/AssignSub_bprop.mindir +17 -18
  532. mindspore/ops/bprop_mindir/Assign_bprop.mindir +16 -16
  533. mindspore/ops/bprop_mindir/AvgPool3D_bprop.mindir +150 -0
  534. mindspore/ops/bprop_mindir/AvgPool_bprop.mindir +66 -0
  535. mindspore/ops/bprop_mindir/BCEWithLogitsLoss_bprop.mindir +0 -0
  536. mindspore/ops/bprop_mindir/BNTrainingReduce_bprop.mindir +13 -12
  537. mindspore/ops/bprop_mindir/BatchNormGrad_bprop.mindir +0 -0
  538. mindspore/ops/bprop_mindir/BatchToSpaceND_bprop.mindir +28 -0
  539. mindspore/ops/bprop_mindir/BiasAddGrad_bprop.mindir +0 -0
  540. mindspore/ops/bprop_mindir/BinaryCrossEntropy_bprop.mindir +33 -0
  541. mindspore/ops/bprop_mindir/BroadcastTo_bprop.mindir +306 -0
  542. mindspore/ops/bprop_mindir/Broadcast_bprop.mindir +12 -8
  543. mindspore/ops/bprop_mindir/CTCLoss_bprop.mindir +0 -0
  544. mindspore/ops/bprop_mindir/Concat_bprop.mindir +0 -0
  545. mindspore/ops/bprop_mindir/Conv2DBackpropFilter_bprop.mindir +240 -0
  546. mindspore/ops/bprop_mindir/Conv2DBackpropInput_bprop.mindir +247 -0
  547. mindspore/ops/bprop_mindir/Conv2DTranspose_bprop.mindir +247 -0
  548. mindspore/ops/bprop_mindir/Conv3DTranspose_bprop.mindir +315 -0
  549. mindspore/ops/bprop_mindir/Conv3D_bprop.mindir +278 -0
  550. mindspore/ops/bprop_mindir/DType_bprop.mindir +12 -12
  551. mindspore/ops/bprop_mindir/DeformableOffsets_bprop.mindir +58 -0
  552. mindspore/ops/bprop_mindir/Depend_bprop.mindir +12 -13
  553. mindspore/ops/bprop_mindir/DepthToSpace_bprop.mindir +23 -0
  554. mindspore/ops/bprop_mindir/DepthwiseConv2dNative_bprop.mindir +138 -0
  555. mindspore/ops/bprop_mindir/DiagPart_bprop.mindir +15 -0
  556. mindspore/ops/bprop_mindir/Dropout2D_bprop.mindir +0 -0
  557. mindspore/ops/bprop_mindir/Dropout3D_bprop.mindir +0 -0
  558. mindspore/ops/bprop_mindir/DropoutDoMask_bprop.mindir +22 -24
  559. mindspore/ops/bprop_mindir/DropoutGenMask_bprop.mindir +16 -14
  560. mindspore/ops/bprop_mindir/DropoutGrad_bprop.mindir +27 -0
  561. mindspore/ops/bprop_mindir/Dropout_bprop.mindir +0 -0
  562. mindspore/ops/bprop_mindir/DynamicGRUV2_bprop.mindir +0 -0
  563. mindspore/ops/bprop_mindir/DynamicRNN_bprop.mindir +0 -0
  564. mindspore/ops/bprop_mindir/DynamicShape_bprop.mindir +12 -12
  565. mindspore/ops/bprop_mindir/Elu_bprop.mindir +16 -0
  566. mindspore/ops/bprop_mindir/EmbeddingLookup_bprop.mindir +0 -0
  567. mindspore/ops/bprop_mindir/Equal_bprop.mindir +18 -19
  568. mindspore/ops/bprop_mindir/ExpandDims_bprop.mindir +58 -0
  569. mindspore/ops/bprop_mindir/FastGeLU_bprop.mindir +16 -0
  570. mindspore/ops/bprop_mindir/Flatten_bprop.mindir +54 -0
  571. mindspore/ops/bprop_mindir/FloorDiv_bprop.mindir +18 -15
  572. mindspore/ops/bprop_mindir/GatherD_bprop.mindir +26 -0
  573. mindspore/ops/bprop_mindir/GatherNd_bprop.mindir +57 -0
  574. mindspore/ops/bprop_mindir/Gather_bprop.mindir +0 -0
  575. mindspore/ops/bprop_mindir/GreaterEqual_bprop.mindir +17 -18
  576. mindspore/ops/bprop_mindir/Greater_bprop.mindir +18 -19
  577. mindspore/ops/bprop_mindir/HSigmoid_bprop.mindir +16 -0
  578. mindspore/ops/bprop_mindir/HSwish_bprop.mindir +16 -0
  579. mindspore/ops/bprop_mindir/IOU_bprop.mindir +18 -19
  580. mindspore/ops/bprop_mindir/InstanceNorm_bprop.mindir +0 -0
  581. mindspore/ops/bprop_mindir/IsFinite_bprop.mindir +13 -12
  582. mindspore/ops/bprop_mindir/IsInf_bprop.mindir +13 -10
  583. mindspore/ops/bprop_mindir/IsNan_bprop.mindir +14 -11
  584. mindspore/ops/bprop_mindir/KLDivLoss_bprop.mindir +126 -0
  585. mindspore/ops/bprop_mindir/L2Loss_bprop.mindir +15 -0
  586. mindspore/ops/bprop_mindir/L2Normalize_bprop.mindir +30 -0
  587. mindspore/ops/bprop_mindir/LRN_bprop.mindir +43 -0
  588. mindspore/ops/bprop_mindir/LayerNormGrad_bprop.mindir +0 -0
  589. mindspore/ops/bprop_mindir/LessEqual_bprop.mindir +18 -19
  590. mindspore/ops/bprop_mindir/Less_bprop.mindir +17 -18
  591. mindspore/ops/bprop_mindir/LinSpace_bprop.mindir +22 -19
  592. mindspore/ops/bprop_mindir/Load_bprop.mindir +12 -13
  593. mindspore/ops/bprop_mindir/LogSoftmax_bprop.mindir +23 -0
  594. mindspore/ops/bprop_mindir/LogicalAnd_bprop.mindir +17 -18
  595. mindspore/ops/bprop_mindir/LogicalNot_bprop.mindir +14 -13
  596. mindspore/ops/bprop_mindir/MaskedSelect_bprop.mindir +21 -0
  597. mindspore/ops/bprop_mindir/MaxPool3DGradGrad_bprop.mindir +74 -0
  598. mindspore/ops/bprop_mindir/MaxPool3DGrad_bprop.mindir +74 -0
  599. mindspore/ops/bprop_mindir/MaxPool3D_bprop.mindir +75 -0
  600. mindspore/ops/bprop_mindir/MaxPoolGradGrad_bprop.mindir +65 -0
  601. mindspore/ops/bprop_mindir/MaxPoolWithArgmax_bprop.mindir +0 -0
  602. mindspore/ops/bprop_mindir/Maximum_bprop.mindir +0 -0
  603. mindspore/ops/bprop_mindir/Minimum_bprop.mindir +0 -0
  604. mindspore/ops/bprop_mindir/MirrorPad_bprop.mindir +27 -0
  605. mindspore/ops/bprop_mindir/Mish_bprop.mindir +35 -0
  606. mindspore/ops/bprop_mindir/MulNoNan_bprop.mindir +0 -0
  607. mindspore/ops/bprop_mindir/NLLLoss_bprop.mindir +0 -0
  608. mindspore/ops/bprop_mindir/NonZero_bprop.mindir +14 -0
  609. mindspore/ops/bprop_mindir/NotEqual_bprop.mindir +18 -19
  610. mindspore/ops/bprop_mindir/OneHot_bprop.mindir +25 -23
  611. mindspore/ops/bprop_mindir/OnesLike_bprop.mindir +13 -13
  612. mindspore/ops/bprop_mindir/PReLU_bprop.mindir +0 -0
  613. mindspore/ops/bprop_mindir/Pad_bprop.mindir +0 -0
  614. mindspore/ops/bprop_mindir/Padding_bprop.mindir +0 -0
  615. mindspore/ops/bprop_mindir/RNNTLoss_bprop.mindir +29 -0
  616. mindspore/ops/bprop_mindir/ROIAlign_bprop.mindir +82 -0
  617. mindspore/ops/bprop_mindir/Range_bprop.mindir +21 -19
  618. mindspore/ops/bprop_mindir/Rank_bprop.mindir +11 -11
  619. mindspore/ops/bprop_mindir/ReLU6_bprop.mindir +16 -0
  620. mindspore/ops/bprop_mindir/ReLUV2_bprop.mindir +0 -0
  621. mindspore/ops/bprop_mindir/ReduceAll_bprop.mindir +18 -17
  622. mindspore/ops/bprop_mindir/ReduceAny_bprop.mindir +18 -17
  623. mindspore/ops/bprop_mindir/ReluGrad_bprop.mindir +19 -23
  624. mindspore/ops/bprop_mindir/Reshape_bprop.mindir +60 -0
  625. mindspore/ops/bprop_mindir/ResizeBilinear_bprop.mindir +29 -0
  626. mindspore/ops/bprop_mindir/ResizeNearestNeighbor_bprop.mindir +89 -0
  627. mindspore/ops/bprop_mindir/ReverseSequence_bprop.mindir +52 -0
  628. mindspore/ops/bprop_mindir/ReverseV2_bprop.mindir +22 -0
  629. mindspore/ops/bprop_mindir/Round_bprop.mindir +14 -13
  630. mindspore/ops/bprop_mindir/ScatterMax_bprop.mindir +0 -0
  631. mindspore/ops/bprop_mindir/ScatterMin_bprop.mindir +0 -0
  632. mindspore/ops/bprop_mindir/ScatterNdUpdate_bprop.mindir +22 -0
  633. mindspore/ops/bprop_mindir/ScatterNd_bprop.mindir +24 -0
  634. mindspore/ops/bprop_mindir/ScatterNonAliasingAdd_bprop.mindir +22 -0
  635. mindspore/ops/bprop_mindir/ScatterUpdate_bprop.mindir +0 -0
  636. mindspore/ops/bprop_mindir/SeLU_bprop.mindir +21 -0
  637. mindspore/ops/bprop_mindir/Select_bprop.mindir +30 -34
  638. mindspore/ops/bprop_mindir/Shape_bprop.mindir +12 -12
  639. mindspore/ops/bprop_mindir/SigmoidCrossEntropyWithLogits_bprop.mindir +21 -0
  640. mindspore/ops/bprop_mindir/SigmoidGrad_bprop.mindir +0 -0
  641. mindspore/ops/bprop_mindir/Sigmoid_bprop.mindir +16 -0
  642. mindspore/ops/bprop_mindir/Sign_bprop.mindir +13 -12
  643. mindspore/ops/bprop_mindir/Slice_bprop.mindir +26 -0
  644. mindspore/ops/bprop_mindir/SmoothL1Loss_bprop.mindir +36 -0
  645. mindspore/ops/bprop_mindir/SoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
  646. mindspore/ops/bprop_mindir/Softplus_bprop.mindir +16 -0
  647. mindspore/ops/bprop_mindir/Softsign_bprop.mindir +33 -0
  648. mindspore/ops/bprop_mindir/Sort_bprop.mindir +0 -0
  649. mindspore/ops/bprop_mindir/SpaceToBatchND_bprop.mindir +28 -0
  650. mindspore/ops/bprop_mindir/SpaceToDepth_bprop.mindir +23 -0
  651. mindspore/ops/bprop_mindir/SparseGatherV2_bprop.mindir +0 -0
  652. mindspore/ops/bprop_mindir/SparseSoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
  653. mindspore/ops/bprop_mindir/Split_bprop.mindir +22 -0
  654. mindspore/ops/bprop_mindir/Squeeze_bprop.mindir +54 -0
  655. mindspore/ops/bprop_mindir/StridedSliceGrad_bprop.mindir +95 -0
  656. mindspore/ops/bprop_mindir/StridedSlice_bprop.mindir +98 -0
  657. mindspore/ops/bprop_mindir/Switch_bprop.mindir +28 -32
  658. mindspore/ops/bprop_mindir/TanhGrad_bprop.mindir +0 -0
  659. mindspore/ops/bprop_mindir/Tanh_bprop.mindir +66 -0
  660. mindspore/ops/bprop_mindir/TensorScatterAdd_bprop.mindir +22 -0
  661. mindspore/ops/bprop_mindir/TensorScatterUpdate_bprop.mindir +29 -0
  662. mindspore/ops/bprop_mindir/TensorShape_bprop.mindir +14 -0
  663. mindspore/ops/bprop_mindir/Tile_bprop.mindir +0 -0
  664. mindspore/ops/bprop_mindir/TopK_bprop.mindir +0 -0
  665. mindspore/ops/bprop_mindir/TransShape_bprop.mindir +23 -0
  666. mindspore/ops/bprop_mindir/TruncateDiv_bprop.mindir +18 -15
  667. mindspore/ops/bprop_mindir/TupleGetItem_bprop.mindir +11 -13
  668. mindspore/ops/bprop_mindir/Unique_bprop.mindir +16 -0
  669. mindspore/ops/bprop_mindir/Unstack_bprop.mindir +22 -0
  670. mindspore/ops/bprop_mindir/UpsampleNearest3D_bprop.mindir +32 -0
  671. mindspore/ops/bprop_mindir/UpsampleTrilinear3D_bprop.mindir +38 -0
  672. mindspore/ops/bprop_mindir/ZerosLike_bprop.mindir +13 -12
  673. mindspore/ops/bprop_mindir/__init__.py +1 -4
  674. mindspore/ops/bprop_mindir/generate_mindir.py +32 -20
  675. mindspore/ops/composite/__init__.py +12 -13
  676. mindspore/ops/composite/base.py +261 -254
  677. mindspore/ops/composite/env_ops.py +41 -0
  678. mindspore/ops/composite/math_ops.py +197 -156
  679. mindspore/ops/composite/multitype_ops/_compile_utils.py +428 -176
  680. mindspore/ops/composite/multitype_ops/_constexpr_utils.py +188 -87
  681. mindspore/ops/composite/multitype_ops/add_impl.py +23 -1
  682. mindspore/ops/composite/multitype_ops/div_impl.py +3 -3
  683. mindspore/ops/composite/multitype_ops/equal_impl.py +1 -0
  684. mindspore/ops/composite/multitype_ops/floordiv_impl.py +1 -1
  685. mindspore/ops/composite/multitype_ops/getitem_impl.py +52 -5
  686. mindspore/ops/composite/multitype_ops/greater_equal_impl.py +31 -0
  687. mindspore/ops/composite/multitype_ops/greater_impl.py +31 -0
  688. mindspore/ops/composite/multitype_ops/in_impl.py +15 -3
  689. mindspore/ops/composite/multitype_ops/less_equal_impl.py +33 -2
  690. mindspore/ops/composite/multitype_ops/less_impl.py +33 -0
  691. mindspore/ops/composite/multitype_ops/logical_and_impl.py +2 -2
  692. mindspore/ops/composite/multitype_ops/logical_or_impl.py +2 -1
  693. mindspore/ops/composite/multitype_ops/mod_impl.py +1 -1
  694. mindspore/ops/composite/multitype_ops/mul_impl.py +21 -7
  695. mindspore/ops/composite/multitype_ops/not_in_impl.py +15 -3
  696. mindspore/ops/composite/multitype_ops/ones_like_impl.py +2 -4
  697. mindspore/ops/composite/multitype_ops/pow_impl.py +1 -0
  698. mindspore/ops/composite/multitype_ops/setitem_impl.py +62 -70
  699. mindspore/ops/composite/multitype_ops/sub_impl.py +3 -3
  700. mindspore/ops/composite/multitype_ops/zeros_like_impl.py +41 -4
  701. mindspore/ops/function/__init__.py +323 -8
  702. mindspore/ops/function/array_func.py +3511 -780
  703. mindspore/ops/function/clip_func.py +329 -0
  704. mindspore/ops/function/debug_func.py +6 -6
  705. mindspore/ops/function/grad/__init__.py +5 -1
  706. mindspore/ops/function/grad/grad_func.py +736 -65
  707. mindspore/ops/function/image_func.py +270 -0
  708. mindspore/ops/function/linalg_func.py +268 -8
  709. mindspore/ops/function/math_func.py +8032 -3164
  710. mindspore/ops/function/nn_func.py +5619 -1855
  711. mindspore/ops/function/other_func.py +115 -0
  712. mindspore/ops/function/parameter_func.py +11 -10
  713. mindspore/ops/function/random_func.py +939 -77
  714. mindspore/ops/function/sparse_func.py +249 -84
  715. mindspore/ops/function/sparse_unary_func.py +2303 -0
  716. mindspore/ops/function/spectral_func.py +146 -0
  717. mindspore/ops/function/vmap_func.py +114 -0
  718. mindspore/ops/functional.py +182 -254
  719. mindspore/ops/op_info_register.py +79 -34
  720. mindspore/ops/operations/__init__.py +210 -118
  721. mindspore/ops/operations/_csr_ops.py +7 -7
  722. mindspore/ops/operations/_embedding_cache_ops.py +25 -15
  723. mindspore/ops/operations/_grad_ops.py +447 -322
  724. mindspore/ops/operations/_inner_ops.py +547 -176
  725. mindspore/ops/operations/_map_tensor_ops.py +112 -0
  726. mindspore/ops/operations/_ms_kernel.py +29 -27
  727. mindspore/ops/operations/_ocr_ops.py +11 -11
  728. mindspore/ops/operations/_opaque_predicate_registry.py +41 -0
  729. mindspore/ops/operations/_quant_ops.py +186 -101
  730. mindspore/ops/operations/_rl_inner_ops.py +122 -61
  731. mindspore/ops/operations/_scalar_ops.py +466 -0
  732. mindspore/ops/operations/_sequence_ops.py +1047 -0
  733. mindspore/ops/operations/_tensor_array.py +10 -11
  734. mindspore/ops/operations/_thor_ops.py +4 -4
  735. mindspore/ops/operations/array_ops.py +1428 -1226
  736. mindspore/ops/operations/comm_ops.py +180 -117
  737. mindspore/ops/operations/control_ops.py +4 -2
  738. mindspore/ops/operations/custom_ops.py +185 -98
  739. mindspore/ops/operations/debug_ops.py +92 -54
  740. mindspore/ops/operations/image_ops.py +406 -211
  741. mindspore/ops/operations/inner_ops.py +42 -53
  742. mindspore/ops/operations/linalg_ops.py +32 -29
  743. mindspore/ops/operations/math_ops.py +2076 -897
  744. mindspore/ops/operations/nn_ops.py +1282 -1252
  745. mindspore/ops/operations/other_ops.py +124 -278
  746. mindspore/ops/operations/random_ops.py +345 -178
  747. mindspore/ops/operations/rl_ops.py +8 -9
  748. mindspore/ops/operations/sparse_ops.py +502 -157
  749. mindspore/ops/operations/spectral_ops.py +107 -0
  750. mindspore/ops/primitive.py +192 -15
  751. mindspore/ops/vm_impl_registry.py +23 -2
  752. mindspore/parallel/__init__.py +6 -1
  753. mindspore/parallel/_auto_parallel_context.py +199 -92
  754. mindspore/parallel/_cell_wrapper.py +4 -2
  755. mindspore/parallel/_cost_model_context.py +3 -0
  756. mindspore/parallel/_dp_allreduce_fusion.py +2 -1
  757. mindspore/parallel/_offload_context.py +185 -0
  758. mindspore/parallel/_parallel_serialization.py +167 -28
  759. mindspore/parallel/_ps_context.py +9 -5
  760. mindspore/parallel/_recovery_context.py +1 -1
  761. mindspore/parallel/_tensor.py +9 -1
  762. mindspore/{nn/transformer → parallel/_transformer}/__init__.py +6 -6
  763. mindspore/{nn/transformer → parallel/_transformer}/layers.py +59 -37
  764. mindspore/{nn/transformer → parallel/_transformer}/loss.py +4 -7
  765. mindspore/{nn/transformer → parallel/_transformer}/moe.py +160 -35
  766. mindspore/{nn/transformer → parallel/_transformer}/op_parallel_config.py +3 -3
  767. mindspore/{nn/transformer → parallel/_transformer}/transformer.py +235 -196
  768. mindspore/parallel/_utils.py +47 -7
  769. mindspore/parallel/algo_parameter_config.py +5 -1
  770. mindspore/parallel/checkpoint_transform.py +329 -0
  771. mindspore/parallel/shard.py +229 -0
  772. mindspore/perf_msvcbuildinsights.dll +0 -0
  773. mindspore/pgodb140.dll +0 -0
  774. mindspore/pgort140.dll +0 -0
  775. mindspore/profiler/__init__.py +2 -1
  776. mindspore/profiler/common/util.py +4 -3
  777. mindspore/profiler/common/validator/validate_path.py +2 -2
  778. mindspore/profiler/envprofiling.py +249 -0
  779. mindspore/profiler/parser/aicpu_data_parser.py +38 -39
  780. mindspore/profiler/parser/ascend_timeline_generator.py +497 -0
  781. mindspore/profiler/parser/base_timeline_generator.py +471 -0
  782. mindspore/profiler/parser/cpu_gpu_timeline_generator.py +684 -0
  783. mindspore/profiler/parser/framework_parser.py +42 -16
  784. mindspore/profiler/parser/hccl_parser.py +158 -158
  785. mindspore/profiler/parser/hwts_log_parser.py +7 -6
  786. mindspore/profiler/parser/integrator.py +18 -1579
  787. mindspore/profiler/parser/minddata_analyzer.py +8 -8
  788. mindspore/profiler/parser/msadvisor_analyzer.py +14 -27
  789. mindspore/profiler/parser/msadvisor_parser.py +2 -4
  790. mindspore/profiler/parser/optime_parser.py +17 -18
  791. mindspore/profiler/parser/profiler_info.py +108 -0
  792. mindspore/profiler/parser/step_trace_parser.py +1 -1
  793. mindspore/profiler/profiling.py +396 -194
  794. mindspore/rewrite/__init__.py +6 -2
  795. mindspore/rewrite/api/node.py +51 -110
  796. mindspore/rewrite/api/node_type.py +10 -6
  797. mindspore/rewrite/api/pattern_engine.py +51 -7
  798. mindspore/rewrite/api/scoped_value.py +64 -53
  799. mindspore/rewrite/api/symbol_tree.py +108 -61
  800. mindspore/rewrite/api/tree_node_helper.py +2 -3
  801. mindspore/{compression/quant/__init__.py → rewrite/ast_creator_register.py} +20 -11
  802. mindspore/rewrite/ast_helpers/__init__.py +6 -3
  803. mindspore/rewrite/ast_helpers/ast_creator.py +115 -0
  804. mindspore/rewrite/ast_helpers/ast_finder.py +99 -1
  805. mindspore/rewrite/ast_helpers/ast_modifier.py +17 -4
  806. mindspore/rewrite/ast_helpers/ast_replacer.py +1 -1
  807. mindspore/rewrite/ast_transformers/__init__.py +0 -1
  808. mindspore/rewrite/ast_transformers/flatten_recursive_stmt.py +46 -5
  809. mindspore/rewrite/ast_transformers/remove_return_out_of_if.py +6 -3
  810. mindspore/rewrite/common/__init__.py +2 -0
  811. mindspore/rewrite/common/event.py +1 -1
  812. mindspore/rewrite/common/observable.py +1 -1
  813. mindspore/rewrite/common/observer.py +1 -1
  814. mindspore/rewrite/common/rewrite_elog.py +35 -0
  815. mindspore/rewrite/namer.py +2 -2
  816. mindspore/rewrite/namespace.py +14 -4
  817. mindspore/rewrite/node.py +161 -13
  818. mindspore/rewrite/parser.py +0 -1
  819. mindspore/rewrite/parser_register.py +0 -1
  820. mindspore/rewrite/parsers/arguments_parser.py +3 -2
  821. mindspore/rewrite/parsers/assign_parser.py +267 -67
  822. mindspore/rewrite/parsers/attribute_parser.py +56 -0
  823. mindspore/rewrite/parsers/class_def_parser.py +191 -108
  824. mindspore/rewrite/parsers/constant_parser.py +101 -0
  825. mindspore/rewrite/parsers/container_parser.py +88 -0
  826. mindspore/rewrite/parsers/for_parser.py +28 -15
  827. mindspore/rewrite/parsers/function_def_parser.py +21 -5
  828. mindspore/rewrite/parsers/if_parser.py +11 -28
  829. mindspore/rewrite/parsers/module_parser.py +9 -6
  830. mindspore/rewrite/parsers/return_parser.py +3 -2
  831. mindspore/rewrite/sparsify/__init__.py +0 -0
  832. mindspore/rewrite/sparsify/sparse_transformer.py +448 -0
  833. mindspore/rewrite/sparsify/sparsify.py +109 -0
  834. mindspore/rewrite/sparsify/utils.py +173 -0
  835. mindspore/rewrite/symbol_tree.py +322 -109
  836. mindspore/rewrite/symbol_tree_builder.py +45 -8
  837. mindspore/rewrite/symbol_tree_dumper.py +0 -1
  838. mindspore/rewrite/topological_manager.py +1 -2
  839. mindspore/run_check/_check_version.py +209 -112
  840. mindspore/run_check/run_check.py +2 -1
  841. mindspore/tbbmalloc.dll +0 -0
  842. mindspore/tinyxml2.dll +0 -0
  843. mindspore/train/__init__.py +6 -4
  844. mindspore/train/_utils.py +28 -5
  845. mindspore/train/amp.py +321 -50
  846. mindspore/train/callback/__init__.py +3 -1
  847. mindspore/train/callback/_backup_and_restore.py +120 -0
  848. mindspore/train/callback/_callback.py +8 -8
  849. mindspore/train/callback/_checkpoint.py +12 -9
  850. mindspore/train/callback/_early_stop.py +13 -7
  851. mindspore/train/callback/_history.py +8 -8
  852. mindspore/train/callback/_lambda_callback.py +6 -6
  853. mindspore/train/callback/_landscape.py +36 -38
  854. mindspore/train/callback/_loss_monitor.py +12 -6
  855. mindspore/train/callback/_lr_scheduler_callback.py +2 -4
  856. mindspore/train/callback/_on_request_exit.py +212 -0
  857. mindspore/train/callback/_reduce_lr_on_plateau.py +13 -7
  858. mindspore/train/callback/_summary_collector.py +27 -19
  859. mindspore/train/callback/_time_monitor.py +13 -7
  860. mindspore/train/checkpoint_pb2.py +68 -8
  861. mindspore/train/data_sink.py +122 -33
  862. mindspore/train/dataset_helper.py +28 -87
  863. mindspore/train/loss_scale_manager.py +4 -7
  864. mindspore/{nn → train}/metrics/__init__.py +20 -20
  865. mindspore/{nn → train}/metrics/accuracy.py +12 -10
  866. mindspore/{nn → train}/metrics/auc.py +4 -4
  867. mindspore/{nn → train}/metrics/bleu_score.py +4 -4
  868. mindspore/{nn → train}/metrics/confusion_matrix.py +10 -8
  869. mindspore/{nn → train}/metrics/cosine_similarity.py +4 -4
  870. mindspore/{nn → train}/metrics/dice.py +6 -5
  871. mindspore/{nn → train}/metrics/error.py +7 -5
  872. mindspore/{nn → train}/metrics/fbeta.py +9 -7
  873. mindspore/{nn → train}/metrics/hausdorff_distance.py +8 -6
  874. mindspore/{nn → train}/metrics/loss.py +4 -3
  875. mindspore/{nn → train}/metrics/mean_surface_distance.py +6 -5
  876. mindspore/{nn → train}/metrics/metric.py +6 -5
  877. mindspore/{nn → train}/metrics/occlusion_sensitivity.py +4 -3
  878. mindspore/{nn → train}/metrics/perplexity.py +5 -4
  879. mindspore/{nn → train}/metrics/precision.py +5 -4
  880. mindspore/{nn → train}/metrics/recall.py +5 -4
  881. mindspore/{nn → train}/metrics/roc.py +7 -6
  882. mindspore/{nn → train}/metrics/root_mean_square_surface_distance.py +6 -5
  883. mindspore/{nn → train}/metrics/topk.py +7 -5
  884. mindspore/train/mind_ir_pb2.py +339 -32
  885. mindspore/train/model.py +113 -84
  886. mindspore/train/serialization.py +547 -167
  887. mindspore/train/summary/_summary_adapter.py +1 -1
  888. mindspore/train/summary/summary_record.py +43 -12
  889. mindspore/train/train_thor/convert_utils.py +7 -1
  890. mindspore/train/train_thor/dataset_helper.py +3 -3
  891. mindspore/train/train_thor/model_thor.py +0 -4
  892. mindspore/turbojpeg.dll +0 -0
  893. mindspore/vcmeta.dll +0 -0
  894. mindspore/vcruntime140.dll +0 -0
  895. mindspore/vcruntime140_1.dll +0 -0
  896. mindspore/version.py +1 -1
  897. {mindspore-1.10.0.dist-info → mindspore-2.0.0rc1.dist-info}/METADATA +4 -3
  898. {mindspore-1.10.0.dist-info → mindspore-2.0.0rc1.dist-info}/RECORD +901 -660
  899. mindspore/compression/common/constant.py +0 -124
  900. mindspore/compression/export/__init__.py +0 -19
  901. mindspore/compression/export/quant_export.py +0 -514
  902. mindspore/compression/quant/qat.py +0 -636
  903. mindspore/compression/quant/quant_utils.py +0 -462
  904. mindspore/compression/quant/quantizer.py +0 -68
  905. mindspore/libatomic-1.dll +0 -0
  906. mindspore/libgcc_s_seh-1.dll +0 -0
  907. mindspore/libgfortran-4.dll +0 -0
  908. mindspore/libgomp-1.dll +0 -0
  909. mindspore/libjpeg-62.dll +0 -0
  910. mindspore/libmindspore.dll +0 -0
  911. mindspore/libmindspore_common.dll +0 -0
  912. mindspore/libmindspore_core.dll +0 -0
  913. mindspore/libmindspore_glog.dll +0 -0
  914. mindspore/libnnacl.dll +0 -0
  915. mindspore/libopencv_core452.dll +0 -0
  916. mindspore/libopencv_imgcodecs452.dll +0 -0
  917. mindspore/libopencv_imgproc452.dll +0 -0
  918. mindspore/libquadmath-0.dll +0 -0
  919. mindspore/libsqlite3.dll +0 -0
  920. mindspore/libssp-0.dll +0 -0
  921. mindspore/libstdc++-6.dll +0 -0
  922. mindspore/libtinyxml2.dll +0 -0
  923. mindspore/libturbojpeg.dll +0 -0
  924. mindspore/libwinpthread-1.dll +0 -0
  925. mindspore/nn/layer/quant.py +0 -1868
  926. mindspore/nn/layer/rnn_utils.py +0 -90
  927. mindspore/nn/probability/dpn/__init__.py +0 -22
  928. mindspore/nn/probability/dpn/vae/__init__.py +0 -25
  929. mindspore/nn/probability/dpn/vae/cvae.py +0 -138
  930. mindspore/nn/probability/dpn/vae/vae.py +0 -122
  931. mindspore/nn/probability/infer/__init__.py +0 -22
  932. mindspore/nn/probability/infer/variational/elbo.py +0 -70
  933. mindspore/nn/probability/infer/variational/svi.py +0 -84
  934. mindspore/nn/probability/toolbox/__init__.py +0 -22
  935. mindspore/nn/probability/toolbox/anomaly_detection.py +0 -99
  936. mindspore/nn/probability/toolbox/uncertainty_evaluation.py +0 -363
  937. mindspore/nn/probability/transforms/__init__.py +0 -22
  938. mindspore/nn/probability/transforms/transform_bnn.py +0 -262
  939. mindspore/nn/probability/zhusuan/__init__.py +0 -18
  940. mindspore/nn/probability/zhusuan/framework/__init__.py +0 -18
  941. mindspore/nn/probability/zhusuan/framework/bn.py +0 -95
  942. mindspore/nn/probability/zhusuan/variational/__init__.py +0 -18
  943. mindspore/nn/probability/zhusuan/variational/elbo.py +0 -46
  944. mindspore/ops/_op_impl/tbe/bias_add_grad_ds.py +0 -52
  945. mindspore/ops/_op_impl/tbe/scatter_nd_add_ds.py +0 -43
  946. mindspore/ops/bprop_mindir/AssignAdd_bprop.mindir +0 -20
  947. mindspore/ops/bprop_mindir/Identity_bprop.mindir +0 -9
  948. mindspore/ops/bprop_mindir/LogicalOr_bprop.mindir +0 -20
  949. mindspore/ops/bprop_mindir/ReLU_bprop.mindir +0 -16
  950. mindspore/ops/bprop_mindir/UpdateState_bprop.mindir +0 -17
  951. mindspore/ops/bprop_mindir/stop_gradient_bprop.mindir +0 -12
  952. mindspore/ops/composite/array_ops.py +0 -210
  953. mindspore/ops/composite/clip_ops.py +0 -238
  954. mindspore/ops/composite/random_ops.py +0 -426
  955. mindspore/ops/composite/vmap_ops.py +0 -38
  956. mindspore/ops/operations/sponge_ops.py +0 -3531
  957. mindspore/ops/operations/sponge_update_ops.py +0 -2546
  958. mindspore/parallel/nn/__init__.py +0 -42
  959. mindspore/parallel/nn/loss.py +0 -22
  960. mindspore/parallel/nn/moe.py +0 -21
  961. mindspore/parallel/nn/op_parallel_config.py +0 -22
  962. mindspore/parallel/nn/transformer.py +0 -31
  963. mindspore/run_check/_check_deps_version.py +0 -84
  964. {mindspore-1.10.0.dist-info → mindspore-2.0.0rc1.dist-info}/WHEEL +0 -0
  965. {mindspore-1.10.0.dist-info → mindspore-2.0.0rc1.dist-info}/entry_points.txt +0 -0
  966. {mindspore-1.10.0.dist-info → mindspore-2.0.0rc1.dist-info}/top_level.txt +0 -0
@@ -16,7 +16,7 @@
16
16
  from __future__ import absolute_import
17
17
 
18
18
  from mindspore.common._decorator import deprecated
19
- from mindspore._checkparam import Validator, Rel
19
+ from mindspore import _checkparam as Validator
20
20
  from mindspore.common import dtype as mstype
21
21
  from mindspore.ops.primitive import PrimitiveWithInfer, prim_attr_register, Primitive
22
22
  from mindspore.ops._utils import get_broadcast_shape
@@ -30,37 +30,37 @@ class NonDeterministicInts(Primitive):
30
30
  that a given type can represent.
31
31
 
32
32
  .. warning::
33
- The value of "shape" must be greater than zero. The output length must be less than 1000000.
33
+ The value of `shape` must be greater than zero.
34
+ The number of elements of output can not exceed 1000000.
34
35
 
35
36
  Args:
36
- dtype (mindspore.dtype): The type of output. Its value must be one of the following types: mindspore.int32
37
- and mindspore.int64. Default: mindspore.int64.
37
+ dtype (mindspore.dtype, optional): The date type of output. The supported values are: mstype.int32
38
+ and mstype.int64. Default: mstype.int64.
38
39
 
39
40
  Inputs:
40
- - **shape** (Tensor) - The shape of random tensor to be generated. Its type must be one of the following types:
41
- mindspore.int32 and mindspore.int64.
41
+ - **shape** (Tensor) - The shape of random tensor to be generated. The supported values are:
42
+ int32 and int64.
42
43
 
43
44
  Outputs:
44
- Tensor. Its shape is spcified by the input `shape`. Its type is spcified by `dtype`.
45
+ Tensor. Its shape is specified by the input `shape`. Its type is specified by `dtype`.
45
46
 
46
47
  Raises:
47
48
  TypeError: If `shape` is not a Tensor.
48
- TypeError: If `dtype` and input tensor type are not allowed.
49
+ TypeError: If `dtype` is not mstype.int32 or mstype.int64.
49
50
  ValueError: If `shape` has negative elements.
50
51
  ValueError: If `shape` has less than 2 elements.
51
52
  ValueError: If `shape` is not a 1-D tensor.
52
53
  ValueError: If the number of elements of output is more than 1000000.
53
54
 
54
55
  Supported Platforms:
55
- ``Ascend`` ``CPU``
56
+ ``Ascend`` ``GPU`` ``CPU``
56
57
 
57
58
  Examples:
58
- >>> shape = Tensor(np.array([2,2]), mstype.int32)
59
+ >>> shape = Tensor((3,4), mstype.int32)
59
60
  >>> ndints = ops.NonDeterministicInts(dtype=mstype.int32)
60
61
  >>> output = ndints(shape)
61
- >>> print(output)
62
- [[13031056 -141954883 ]
63
- [ 140364228 290834494 ]]
62
+ >>> print(output.shape)
63
+ (3, 4)
64
64
  """
65
65
 
66
66
  @prim_attr_register
@@ -69,38 +69,40 @@ class NonDeterministicInts(Primitive):
69
69
  self.dtype = dtype
70
70
  self.add_prim_attr("max_length", 1000000)
71
71
  self.init_prim_io_names(inputs=["shape"], outputs=["output"])
72
- valid_values = (mstype.int32, mstype.int64)
72
+ self.add_prim_attr("side_effect_hidden", True)
73
+ valid_values = (mstype.int32, mstype.int64, mstype.uint32, mstype.uint64)
73
74
  Validator.check_type_name("dtype", dtype, valid_values, self.name)
74
75
 
75
76
 
76
77
  class TruncatedNormal(Primitive):
77
78
  """
78
- Returns a tensor of the specified shape filled with truncated normal values.
79
+ Returns a Tensor of the specified shape filled with truncated normal values.
79
80
 
80
- The generated values follow a normal distribution.
81
+ The generated values conform to a Gaussian distribution.
81
82
 
82
- .. warning::
83
- The value of "shape" must be greater than zero. The output length must be less than 1000000.
83
+ Note:
84
+ - The value of `shape` must be greater than zero. The output length can not exceed 1000000.
85
+ - When `seed` or `seed2` is assigned a non-zero value, that value will be used as the seed.
86
+ Otherwise, a random seed will be used instead.
84
87
 
85
88
  Args:
86
- seed (int): An optional int. Defaults to 0. If either `seed` or `seed2` are set to be non-zero,
87
- the seed is set by the given seed. Otherwise, it is seeded by a random seed.
88
- seed2 (int): An optional int. Defaults to 0. A second seed to avoid seed collision.
89
- dtype (mindspore.dtype): Must be one of the following types: mindspore.float16, mindspore.float32 and
90
- mindspore.float64. Default: mindspore.float32.
89
+ seed (int, optional): Random number seed. Default: 0.
90
+ seed2 (int, optional): The second seed to avoid seed collision. Default: 0.
91
+ dtype (mindspore.dtype, optional): Specified output data type. Must be one of the following types:
92
+ mindspore.float16, mindspore.float32 and mindspore.float64. Default: mindspore.float32.
91
93
 
92
94
  Inputs:
93
95
  - **shape** (Tensor) - The shape of random tensor to be generated. Its type must be one of the following types:
94
96
  mindspore.int32 and mindspore.int64.
95
97
 
96
98
  Outputs:
97
- Tensor. Its shape is spcified by the input `shape`. Its type is spcified by `dtype`.
99
+ Tensor. Its shape is specified by the input `shape`. Its type is specified by `dtype`.
98
100
  Its values are in [-2,2].
99
101
 
100
102
  Raises:
101
103
  TypeError: If `shape` is not a Tensor.
102
- TypeError: If `dtype` and input tensor type are not allowed.
103
- TypeError: If `Seed` is not an integer.
104
+ TypeError: If data type of `dtype` and `shape` are not allowed.
105
+ TypeError: If `seed` is not an integer.
104
106
  ValueError: If `shape` elements are not positive.
105
107
  ValueError: If `shape` is not a 1-D tensor.
106
108
  ValueError: If the number of elements of output is more than 1000000.
@@ -124,6 +126,7 @@ class TruncatedNormal(Primitive):
124
126
  """Initialize TruncatedNormal"""
125
127
  self.dtype = dtype
126
128
  self.add_prim_attr("max_length", 1000000)
129
+ self.add_prim_attr("side_effect_hidden", True)
127
130
  self.init_prim_io_names(inputs=["shape"], outputs=["output"])
128
131
  Validator.check_value_type('seed', seed, [int], self.name)
129
132
  Validator.check_value_type('seed2', seed2, [int], self.name)
@@ -135,7 +138,17 @@ class StandardNormal(Primitive):
135
138
  r"""
136
139
  Generates random numbers according to the standard Normal (or Gaussian) random number distribution.
137
140
 
138
- Refer to :func:`mindspore.ops.standard_normal` for more detail.
141
+ Refer to :func:`mindspore.ops.standard_normal` for more details.
142
+
143
+ Args:
144
+ seed (int): Random seed, must be non-negative. Default: 0.
145
+ seed2 (int): Random seed2, must be non-negative. A second seed to avoid seed collision. Default: 0.
146
+
147
+ Inputs:
148
+ - **shape** (tuple) - The shape of random tensor to be generated. Only constant value is allowed.
149
+
150
+ Outputs:
151
+ Tensor. The shape is the same as the input `shape`. The dtype is float32.
139
152
 
140
153
  Supported Platforms:
141
154
  ``Ascend`` ``GPU`` ``CPU``
@@ -160,14 +173,13 @@ class StandardNormal(Primitive):
160
173
  Validator.check_non_negative_int(seed2, "seed2", self.name)
161
174
 
162
175
 
163
-
164
176
  class StandardLaplace(Primitive):
165
177
  r"""
166
178
  Generates random numbers according to the Laplace random number distribution (mean=0, lambda=1).
167
179
  It is defined as:
168
180
 
169
181
  .. math::
170
- \text{f}(x) = \frac{1}{2}\exp(-|x|),
182
+ \text{f}(x) = \frac{1}{2}\exp(-|x|)
171
183
 
172
184
  Args:
173
185
  seed (int): Random seed. Default: 0.
@@ -185,6 +197,7 @@ class StandardLaplace(Primitive):
185
197
  TypeError: If shape is neither a tuple nor a Tensor.
186
198
  ValueError: If seed or seed2 is not a non-negative int.
187
199
  ValueError: If shape is a tuple containing non-positive items.
200
+ ValueError: If shape is a Tensor, and the rank of the Tensor is not equal to 1.
188
201
 
189
202
  Supported Platforms:
190
203
  ``Ascend`` ``GPU`` ``CPU``
@@ -224,15 +237,15 @@ class RandomGamma(Primitive):
224
237
  operator-level random seed.
225
238
 
226
239
  Args:
227
- seed (int): The operator-level random seed, used to generate random numbers, must be non-negative. Default: 0.
228
- seed2 (int): The global random seed and it will combile with the operator-level random seed to determine the
229
- final generated random number, must be non-negative. Default: 0.
240
+ seed (int, optional): The operator-level random seed, used to generate random numbers,
241
+ must be non-negative. Default: 0.
242
+ seed2 (int, optional): The global random seed, which combines with the operator-level
243
+ random seed to determine the final generated random number, must be non-negative. Default: 0.
230
244
 
231
245
  Inputs:
232
- - **shape** (Tensor) - The shape of random tensor to be generated.
233
- Must be one of the following types: int32, int64. 1-D integer tensor.
234
- - **alpha** (Tensor) - α is the shape parameter of RandomGamma distribution.
235
- It must be greater than 0. Must be one of the following types: half, float32, float64.
246
+ - **shape** (Tensor) - The shape of random tensor to be generated. It must be constant value.
247
+ - **alpha** (Tensor) - α is the shape parameter of RandomGamma distribution, it mainly determines the
248
+ shape of the graph curve. It must be greater than 0 and have date type float32.
236
249
 
237
250
  Outputs:
238
251
  Tensor. The shape should be equal to the concat shape between the input `shape` and `alpha`.
@@ -266,6 +279,55 @@ class RandomGamma(Primitive):
266
279
  Validator.check_non_negative_int(seed2, "seed2", self.name)
267
280
 
268
281
 
282
+ class LogNormalReverse(Primitive):
283
+ r"""
284
+ Fills the elements of the input tensor with log normal values initialized by
285
+ given mean and std:
286
+
287
+ .. math::
288
+ \text{f}(x;1.0,2.0)=\frac{1}{x\delta \sqrt[]{2\pi} }e^{-\frac{(\ln x-\mu )^2}{2\delta ^2} }
289
+
290
+ where \mu, \delta is mean and standard deviation of lognormal distribution respectively.
291
+
292
+ Args:
293
+ mean (float, optional): the mean of normal distribution. With float data type.
294
+ Default: 1.0.
295
+ std (float, optional): the std of normal distribution. With float data type.
296
+ Default: 2.0.
297
+
298
+ Inputs:
299
+ - **input** (Tensor) - The tensor to be generated with log-normal distribution.
300
+ Must be one of the following types: float16, float32, float64.
301
+
302
+ Outputs:
303
+ Tensor. A Tensor with the same type and shape of input.
304
+
305
+ Raises:
306
+ TypeError: If `input` is not Tensor.
307
+ ValueError: If `input` is NULL.
308
+
309
+ Supported Platforms:
310
+ ``Ascend`` ``GPU`` ``CPU``
311
+
312
+ Examples:
313
+ >>> x = Tensor(np.random.randn(3,4),mstype.float64)
314
+ >>> mean = 2.0
315
+ >>> std = 1.0
316
+ >>> lognormalreverse = ops.LogNormalReverse(mean, std)
317
+ >>> output = lognormalreverse(x)
318
+ >>> result = output.shape
319
+ >>> print(result)
320
+ (3, 4)
321
+ """
322
+
323
+ @prim_attr_register
324
+ def __init__(self, mean=1.0, std=2.0):
325
+ """Initialize LogNormalReverse"""
326
+ self.add_prim_attr("side_effect_hidden", True)
327
+ Validator.check_value_type("mean", mean, [float], self.name)
328
+ Validator.check_value_type("std", std, [float], self.name)
329
+
330
+
269
331
  class Gamma(PrimitiveWithInfer):
270
332
  r"""
271
333
  Produces random positive floating-point values x, distributed according to probability density function:
@@ -324,7 +386,8 @@ class Gamma(PrimitiveWithInfer):
324
386
  @prim_attr_register
325
387
  def __init__(self, seed=0, seed2=0):
326
388
  """Initialize RandomGamma"""
327
- self.init_prim_io_names(inputs=['shape', 'alpha', 'beta'], outputs=['output'])
389
+ self.init_prim_io_names(
390
+ inputs=['shape', 'alpha', 'beta'], outputs=['output'])
328
391
  self.add_prim_attr("side_effect_hidden", True)
329
392
  Validator.check_non_negative_int(seed, "seed", self.name)
330
393
  Validator.check_non_negative_int(seed2, "seed2", self.name)
@@ -350,54 +413,59 @@ class Gamma(PrimitiveWithInfer):
350
413
 
351
414
 
352
415
  class ParameterizedTruncatedNormal(Primitive):
353
- """
416
+ r"""
354
417
  Returns a tensor of the specified shape filled with truncated normal values.
355
-
356
- When 'shape' is (batch_size, *), the shape of 'mean', 'stdevs', 'min', 'max' should be () or (batch_size, ).
418
+ When `shape` is :math:`(batch\_size, *)`, the shape of `mean`, `stdevs`,
419
+ `min` and `max` should be :math:`()` or :math:`(batch\_size, )`.
357
420
 
358
421
  Note:
359
- The number in tensor minval must be strictly less than maxval at any position after broadcasting.
422
+ - The value in tensor `min` must be strictly less than `max` at any position after broadcasting.
423
+ - When `seed` or `seed2` is assigned a non-zero value, that value will be used as the seed.
424
+ Otherwise, a random seed will be used instead.
360
425
 
361
426
  Args:
362
- seed (int): An optional int. Defaults to 0. If either `seed` or `seed2` are set to be non-zero,
363
- the seed is set by the given seed. Otherwise, it is seeded by a random seed.
364
- seed2 (int): An optional int. Defaults to 0. A second seed to avoid seed collision.
427
+ seed (int, optional): Random number seed. Default: 0.
428
+ seed2 (int, optional): The second seed to avoid seed collision. Default: 0.
365
429
 
366
430
  Inputs:
367
- - **shape** (Tensor) - The shape of random tensor to be generated. Its type must be one of the following types:
368
- int32 and int64.
369
- - **mean** (Tensor) - A Tensor. The parameter defines the mean of truncated normal distribution.
431
+ - **shape** (Tensor) - The shape of random tensor to be generated.
432
+ It has shape :math:`(batch\_size, *)` where :math:`*` is an additional
433
+ dimension with a length of no less than 1.
434
+ Its type must be one of the following types: int32 and int64.
435
+ - **mean** (Tensor) - The parameter defines the mean of truncated normal distribution.
436
+ It has shape :math:`()` or :math:`(batch\_size, )`.
370
437
  Its type must be one of the following types:float16, float32, float64.
371
- - **stdevs** (Tensor) - A Tensor. The parameter defines the standard deviation for truncation of
372
- the normal distribution. It must be greater than 0 and have the same type as means.
373
- - **min** (Tensor) - The distribution parameter, a. The parameter defines the minimum of
374
- truncated normal distribution. It must have the same type as means.
375
- - **max** (Tensor) - The distribution parameter, b. The parameter defines the maximum of
376
- truncated normal distribution. It must have the same type as means.
438
+ - **stdevs** (Tensor) - The parameter defines the standard deviation for truncation of
439
+ the normal distribution.
440
+ It must be greater than 0 and have the same shape and type as means.
441
+ - **min** (Tensor) - The parameter defines the minimum of
442
+ truncated normal distribution. It must have the same shape and type as means.
443
+ - **max** (Tensor) - The parameter defines the maximum of
444
+ truncated normal distribution. It must have the same shape and type as means.
377
445
 
378
446
  Outputs:
379
- Tensor. Its shape is spcified by the input `shape` and it must have the same type as means.
447
+ Tensor. Its shape is specified by the input `shape` and it must have the same type as means.
380
448
 
381
449
  Raises:
382
- TypeError: If `shape`, `mean`, `stdevs`, `min`, `max` and input tensor type are not allowed.
450
+ TypeError: If data type of `shape`, `mean`, `stdevs`, `min` and `max` are not allowed.
383
451
  TypeError: If `mean`, `stdevs`, `min`, `max` don't have the same type.
384
- TypeError: If `mean` or `stdevs` or `minval` or `maxval` is not a Tensor.
385
- ValueError: When 'shape' is (batch_size, *), if the shape of 'mean', 'stdevs', 'min', 'max'
386
- is not () or (batch_size, ).
452
+ TypeError: If any of `shape`, `mean`, `stdevs`, `min` and `max` is not Tensor.
453
+ ValueError: When `shape` is :math:`(batch\_size, *)`, if the shape of `mean`, `stdevs`, `min` or `max`
454
+ is not :math:`()` or :math:`(batch\_size, )`.
387
455
  ValueError: If `shape` elements are not positive.
388
456
  ValueError: If `stdevs` elements are not positive.
389
457
  ValueError: If `shape` has less than 2 elements.
390
458
  ValueError: If `shape` is not a 1-D tensor.
391
459
 
392
460
  Supported Platforms:
393
- ``Ascend`` ``CPU``
461
+ ``Ascend`` ``GPU`` ``CPU``
394
462
 
395
463
  Examples:
396
464
  >>> shape = Tensor(np.array([2, 3]), mstype.int32)
397
- >>> mean = Tensor(np.array([0], mstype.float32))
398
- >>> stdevs = Tensor(np.array([1], mstype.float32))
399
- >>> min = Tensor(np.array([-100], mstype.float32))
400
- >>> max = Tensor(np.array([100], mstype.float32))
465
+ >>> mean = Tensor(np.array([0]), mstype.float32)
466
+ >>> stdevs = Tensor(np.array([1]), mstype.float32)
467
+ >>> min = Tensor(np.array([-100]), mstype.float32)
468
+ >>> max = Tensor(np.array([100]), mstype.float32)
401
469
  >>> seed = 1
402
470
  >>> seed2 = 2
403
471
  >>> parameterized_truncated_normal = ops.ParameterizedTruncatedNormal(seed=seed, seed2=seed2)
@@ -410,17 +478,19 @@ class ParameterizedTruncatedNormal(Primitive):
410
478
  @prim_attr_register
411
479
  def __init__(self, seed=0, seed2=0):
412
480
  """Initialize ParameterizedTruncatedNormal"""
413
- self.init_prim_io_names(inputs=['shape', 'mean', 'stdevs', 'min', 'max'], outputs=['y'])
481
+ self.init_prim_io_names(
482
+ inputs=['shape', 'mean', 'stdevs', 'min', 'max'], outputs=['y'])
483
+ self.add_prim_attr("side_effect_hidden", True)
414
484
  Validator.check_value_type('seed', seed, [int], self.name)
415
485
  Validator.check_value_type('seed2', seed2, [int], self.name)
416
486
 
417
487
 
418
488
  class Poisson(PrimitiveWithInfer):
419
489
  r"""
420
- Produces random non-negative integer values i, distributed according to discrete probability function:
490
+ Produces random non-negative integer values i. Distributed according to discrete probability function:
421
491
 
422
492
  .. math::
423
- \text{P}(i|μ) = \frac{\exp(-μ)μ^{i}}{i!},
493
+ \text{P}(i|μ) = \frac{\exp(-μ)μ^{i}}{i!}
424
494
 
425
495
  Args:
426
496
  seed (int): Random seed, must be non-negative. Default: 0.
@@ -469,8 +539,10 @@ class Poisson(PrimitiveWithInfer):
469
539
  Validator.check_value_type("shape", shape_v, [tuple], self.name)
470
540
  for i, shape_i in enumerate(shape_v):
471
541
  Validator.check_positive_int(shape_i, f'shape[{i}]', self.name)
472
- Validator.check_tensor_dtype_valid("mean", mean["dtype"], [mstype.float32], self.name)
473
- broadcast_shape = get_broadcast_shape(mean['shape'], shape_v, self.name, arg_name1="mean", arg_name2="shape")
542
+ Validator.check_tensor_dtype_valid(
543
+ "mean", mean["dtype"], [mstype.float32], self.name)
544
+ broadcast_shape = get_broadcast_shape(
545
+ mean['shape'], shape_v, self.name, arg_name1="mean", arg_name2="shape")
474
546
  out = {
475
547
  'shape': broadcast_shape,
476
548
  'dtype': mstype.int32,
@@ -480,25 +552,26 @@ class Poisson(PrimitiveWithInfer):
480
552
 
481
553
  class RandomPoisson(Primitive):
482
554
  r"""
483
- Produces random non-negative values i, distributed according to discrete probability function:
555
+ Produces random non-negative values i, distributed according to discrete probability function:
484
556
 
485
557
  .. math::
486
- \text{P}(i|μ) = \frac{\exp(-μ)μ^{i}}{i!},
558
+ \text{P}(i|μ) = \frac{\exp(-μ)μ^{i}}{i!}
487
559
 
488
560
  Args:
489
- seed (int): An optional int. Defaults to 0. If either `seed` or `seed2` are set to be non-zero,
490
- the seed is set by the given seed. Otherwise, it is seeded by a random seed.
491
- seed2 (int): An optional int. Defaults to 0. A second seed to avoid seed collision.
492
- dtype (mindspore.dtype): The type of output. Default: mindspore.int64.
561
+ seed (int, optional): Random number seed. If either `seed` or `seed2` are set to be non-zero,
562
+ the seed is set by the given seed. Otherwise, it is seeded by a random seed. Default: 0.
563
+ seed2 (int, optional): A second seed to avoid seed collision. Default: 0.
564
+
565
+ dtype (mindspore.dtype, optional): The type of output. Default: mstype.int64.
493
566
 
494
567
  Inputs:
495
568
  - **shape** (Tensor) - The shape of random tensor to be generated, 1-D Tensor, whose dtype must be in
496
- [int32, int64]
569
+ [int32, int64].
497
570
  - **rate** (Tensor) - μ parameter the distribution was constructed with. The parameter defines mean number
498
- of occurrences of the event. Its type must be in [float16, float32, float64, int32, int64]
571
+ of occurrences of the event. Its type must be in [float16, float32, float64, int32, int64].
499
572
 
500
573
  Outputs:
501
- Tensor. Its shape is (*shape, *rate.shape). Its type is spcified by `dtype`.
574
+ Tensor. Its shape is :math:`(*shape, *rate.shape)`. Its type is specified by `dtype`.
502
575
 
503
576
  Raises:
504
577
  TypeError: If `shape` is not a Tensor or its dtype is not int32 or int64.
@@ -507,7 +580,7 @@ class RandomPoisson(Primitive):
507
580
  ValueError: If `shape` elements are negative.
508
581
 
509
582
  Supported Platforms:
510
- ``Ascend````GPU````CPU``
583
+ ``GPU`` ``CPU``
511
584
 
512
585
  Examples:
513
586
  >>> shape = Tensor(np.array([2, 3]), mstype.int32)
@@ -526,7 +599,9 @@ class RandomPoisson(Primitive):
526
599
  self.init_prim_io_names(inputs=['shape', 'rate'], outputs=['output'])
527
600
  Validator.check_value_type('seed', seed, [int], self.name)
528
601
  Validator.check_value_type('seed2', seed2, [int], self.name)
529
- valid_values = (mstype.int64, mstype.int32, mstype.float16, mstype.float32, mstype.float64)
602
+ self.add_prim_attr("side_effect_hidden", True)
603
+ valid_values = (mstype.int64, mstype.int32,
604
+ mstype.float16, mstype.float32, mstype.float64)
530
605
  Validator.check_type_name("dtype", dtype, valid_values, self.name)
531
606
 
532
607
 
@@ -542,17 +617,18 @@ class UniformInt(Primitive):
542
617
  the :math:`b` indicates the max distribution parameter.
543
618
 
544
619
  Note:
545
- The number in tensor minval must be strictly less than maxval at any position after broadcasting.
620
+ - The number in tensor minval must be strictly less than maxval at any position after broadcasting.
621
+ - If neither `seed` nor `seed2` is assigned a non-zero value, a randomly generated seed is used instead.
546
622
 
547
623
  Args:
548
624
  seed (int): Random seed, must be non-negative. Default: 0.
549
625
  seed2 (int): Random seed2, must be non-negative. A second seed to avoid seed collision. Default: 0.
550
626
 
551
627
  Inputs:
552
- - **shape** (tuple) - The shape of random tensor to be generated. Only constant value is allowed.
553
- - **minval** (Tensor) - The distribution parameter, a.
628
+ - **shape** (Union[tuple, Tensor]) - The shape of random tensor to be generated. Only constant value is allowed.
629
+ - **minval** (Tensor) - The distribution parameter, :math:`a`.
554
630
  It defines the minimum possibly generated value, with int32 data type. Only one number is supported.
555
- - **maxval** (Tensor) - The distribution parameter, b.
631
+ - **maxval** (Tensor) - The distribution parameter, :math:`b`.
556
632
  It defines the maximum possibly generated value, with int32 data type. Only one number is supported.
557
633
 
558
634
  Outputs:
@@ -560,7 +636,7 @@ class UniformInt(Primitive):
560
636
 
561
637
  Raises:
562
638
  TypeError: If neither `seed` nor `seed2` is an int.
563
- TypeError: If `shape` is not a tuple.
639
+ TypeError: If `shape` is neither a tuple nor a Tensor.
564
640
  TypeError: If neither `minval` nor `maxval` is a Tensor.
565
641
  ValueError: If `shape` is not a constant value.
566
642
 
@@ -581,7 +657,8 @@ class UniformInt(Primitive):
581
657
  @prim_attr_register
582
658
  def __init__(self, seed=0, seed2=0):
583
659
  """Initialize UniformInt"""
584
- self.init_prim_io_names(inputs=['shape', 'minval', 'maxval'], outputs=['output'])
660
+ self.init_prim_io_names(
661
+ inputs=['shape', 'minval', 'maxval'], outputs=['output'])
585
662
  self.add_prim_attr("side_effect_hidden", True)
586
663
  Validator.check_non_negative_int(seed, "seed", self.name)
587
664
  Validator.check_non_negative_int(seed2, "seed2", self.name)
@@ -597,7 +674,7 @@ class UniformReal(Primitive):
597
674
  final generated random number, must be non-negative. Default: 0.
598
675
 
599
676
  .. note::
600
- - Global random seed and operator-level random seed are not set: Use the default value as the random seed.
677
+ - Global random seed and operator-level random seed are not set: Use a randomly generated seed.
601
678
  - Global random seed is set, but operator-level random seed is not set: A global random seed will splice
602
679
  with a randomly generated seed.
603
680
  - Global random seed is not set, operator-level random seed is set: The default global random seed is used,
@@ -606,14 +683,14 @@ class UniformReal(Primitive):
606
683
  operator-level random seed.
607
684
 
608
685
  Inputs:
609
- - **shape** (tuple) - The shape of tensor to be generated. Only constant value is allowed.
686
+ - **shape** (Union[tuple, Tensor]) - The shape of tensor to be generated. Only constant value is allowed.
610
687
 
611
688
  Outputs:
612
689
  Tensor. The shape that the input 'shape' denotes. The dtype is float32.
613
690
 
614
691
  Raises:
615
692
  TypeError: If `seed` or `seed2` is not an int.
616
- TypeError: If `shape` is not a tuple.
693
+ TypeError: If `shape` is neither a tuple nor a Tensor.
617
694
  ValueError: If `shape` is not a constant value.
618
695
 
619
696
  Supported Platforms:
@@ -629,7 +706,7 @@ class UniformReal(Primitive):
629
706
  """
630
707
  @prim_attr_register
631
708
  def __init__(self, seed=0, seed2=0):
632
- """Initialize StandardNormal"""
709
+ """Initialize UniformReal"""
633
710
  self.init_prim_io_names(inputs=['shape'], outputs=['output'])
634
711
  self.add_prim_attr("side_effect_hidden", True)
635
712
  Validator.check_non_negative_int(seed, "seed", self.name)
@@ -640,15 +717,13 @@ class RandomChoiceWithMask(Primitive):
640
717
  """
641
718
  Generates a random sample as index tensor with a mask tensor from a given tensor.
642
719
 
643
- The input must be a tensor of rank not less than 1. If its rank is greater than or equal to 2,
644
- the first dimension specifies the number of samples.
645
- The index tensor and the mask tensor have the fixed shapes. The index tensor denotes the index of the nonzero
646
- sample, while the mask tensor denotes which elements in the index tensor are valid.
720
+ Refer to :func:`mindspore.ops.choice_with_mask` for more details.
647
721
 
648
722
  Args:
649
- count (int): Number of items expected to get and the number must be greater than 0. Default: 256.
650
- seed (int): Random seed. Default: 0.
651
- seed2 (int): Random seed2. Default: 0.
723
+ count (int, optional): Number of items expected to get and the number must be greater than 0. Default: 256.
724
+ seed (int, optional): Seed is used as entropy source for Random number engines generating
725
+ pseudo-random numbers. Default: 0.
726
+ seed2 (int, optional): Second seed to avoid collision. Default: 0.
652
727
 
653
728
  Inputs:
654
729
  - **input_x** (Tensor[bool]) - The input tensor.
@@ -660,11 +735,6 @@ class RandomChoiceWithMask(Primitive):
660
735
  - **index** (Tensor) - The output shape is 2-D.
661
736
  - **mask** (Tensor) - The output shape is 1-D.
662
737
 
663
- Raises:
664
- TypeError: If `count` is not an int.
665
- TypeError: If neither `seed` nor `seed2` is an int.
666
- TypeError: If `input_x` is not a Tensor.
667
-
668
738
  Supported Platforms:
669
739
  ``Ascend`` ``GPU`` ``CPU``
670
740
 
@@ -691,7 +761,7 @@ class RandomChoiceWithMask(Primitive):
691
761
 
692
762
 
693
763
  class RandomCategorical(PrimitiveWithInfer):
694
- """
764
+ r"""
695
765
  Generates random samples from a given categorical distribution tensor.
696
766
 
697
767
  Args:
@@ -699,12 +769,12 @@ class RandomCategorical(PrimitiveWithInfer):
699
769
  mindspore.int32 and mindspore.int64. Default: mindspore.int64.
700
770
 
701
771
  Inputs:
702
- - **logits** (Tensor) - The input tensor. 2-D Tensor with shape [batch_size, num_classes].
772
+ - **logits** (Tensor) - The input tensor. 2-D Tensor with shape :math:`(batch\_size, num\_classes)`.
703
773
  - **num_sample** (int) - Number of sample to be drawn. Only constant values is allowed.
704
774
  - **seed** (int) - Random seed. Default: 0. Only constant values is allowed.
705
775
 
706
776
  Outputs:
707
- - **output** (Tensor) - The output Tensor with shape [batch_size, num_samples].
777
+ - **output** (Tensor) - The output Tensor with shape :math:`(batch_size, num_samples)`.
708
778
 
709
779
  Raises:
710
780
  TypeError: If `dtype` is not one of the following: mindspore.int16, mindspore.int32, mindspore.int64.
@@ -759,8 +829,7 @@ class Multinomial(Primitive):
759
829
 
760
830
  Inputs:
761
831
  - **x** (Tensor) - the input tensor containing the cumsum of probabilities, must be 1 or 2
762
- dimensions. Must be one of the following types: float16, float32, float64. CPU and GPU
763
- supports x 1 or 2 dimensions and Ascend only supports 2 dimensions.
832
+ dimensions.
764
833
  - **num_samples** (int) - number of samples to draw, must be a nonnegative number.
765
834
 
766
835
  Outputs:
@@ -768,9 +837,9 @@ class Multinomial(Primitive):
768
837
 
769
838
  Raises:
770
839
  TypeError: If neither `seed` nor `seed2` is an int.
771
- TypeError: If `x` is not a Tensor whose dtype is float16, float32, float64.
772
840
  TypeError: If dtype of `num_samples` is not int.
773
- TypeError: If dtype is not int32 or int64.
841
+ TypeError: If `dtype` is not int32 or int64.
842
+ ValueError: If `seed` or `seed2` is less than 0.
774
843
 
775
844
  Supported Platforms:
776
845
  ``Ascend`` ``GPU`` ``CPU``
@@ -779,7 +848,7 @@ class Multinomial(Primitive):
779
848
  >>> x = Tensor([[0., 9., 4., 0.]], mstype.float32)
780
849
  >>> multinomial = ops.Multinomial(seed=10)
781
850
  >>> output = multinomial(x, 2)
782
- >>> print(output) # run in CPU
851
+ >>> print(output)
783
852
  [[1 1]]
784
853
  """
785
854
 
@@ -788,20 +857,72 @@ class Multinomial(Primitive):
788
857
  """Initialize Multinomial."""
789
858
  Validator.check_non_negative_int(seed, "seed", self.name)
790
859
  Validator.check_non_negative_int(seed2, "seed2", self.name)
791
- self.init_prim_io_names(inputs=['x', 'num_samples'], outputs=['output'])
860
+ self.init_prim_io_names(
861
+ inputs=['x', 'num_samples'], outputs=['output'])
792
862
  Validator.check_value_type("dtype", dtype, [mstype.Type], self.name)
793
863
  valid_values = (mstype.int64, mstype.int32)
794
864
  Validator.check_type_name("dtype", dtype, valid_values, self.name)
795
865
  self.add_prim_attr("side_effect_hidden", True)
796
866
 
797
867
 
798
- class UniformCandidateSampler(PrimitiveWithInfer):
868
+ class MultinomialWithReplacement(Primitive):
869
+ r"""
870
+ Returns a tensor where each row contains `numsamples` indices sampled from the multinomial distribution
871
+ with replacement. It diffs from `Multinomial` in that it allows the same outcome to be chosen multiple times.
872
+
873
+ .. warning::
874
+ This is an experimental API that is subject to change or deletion.
875
+
876
+ Refer to :func:`mindspore.ops.multinomial_with_replacement` for more details.
877
+
878
+ Note:
879
+ The rows of input do not need to sum to one (in which case we use the values as weights),
880
+ but must be non-negative, finite and have a non-zero sum.
881
+
882
+ Args:
883
+ numsamples (int): number of samples to draw, must be a nonnegative number.
884
+ replacement (bool, optional): Whether to draw with replacement or not. Default: False.
885
+
886
+ Inputs:
887
+ - **x** (Tensor) - the input tensor containing the cumsum of probabilities, must be 1 or 2
888
+ dimensions.
889
+ - **seed** (Tensor) - If `seed` is set to -1, and `offset` is set to 0, the random number
890
+ generator is seeded by a random seed. Otherwise, it is seeded by the given seed.
891
+ Supported dtype: int64.
892
+ - **offset** (Tensor) - Offset used to avoid seed collision. Supported dtype: int64.
893
+
894
+ Outputs:
895
+ Tensor with the same rows as `x`, each row has `numsamples` sampled indices.
896
+
897
+ Supported Platforms:
898
+ ``CPU``
899
+
900
+ Examples:
901
+ >>> x = Tensor([[0., 9., 4., 0.]], mstype.float32)
902
+ >>> seed = Tensor(2, mstype.int64)
903
+ >>> offset = Tensor(5, mstype.int64)
904
+ >>> multinomialwithreplacement = ops.MultinomialWithReplacement(numsamples=2,replacement=True)
905
+ >>> output = multinomialwithreplacement(x, seed, offset)
906
+ >>> print(output)
907
+ [[1 1]]
908
+ """
909
+
910
+ @prim_attr_register
911
+ def __init__(self, numsamples, replacement=False):
912
+ """Initialize MultinomialWithReplacement."""
913
+ Validator.check_non_negative_int(numsamples, "numsamples", self.name)
914
+ Validator.check_value_type("replacement", replacement, [bool], self.name)
915
+ self.init_prim_io_names(inputs=['x', 'seed', 'offset'], outputs=['y'])
916
+ self.add_prim_attr("side_effect_hidden", True)
917
+
918
+
919
+ class UniformCandidateSampler(Primitive):
799
920
  r"""
800
921
  Uniform candidate sampler.
801
922
 
802
923
  This function samples a set of classes(sampled_candidates) from [0, range_max-1] based on uniform distribution.
803
924
 
804
- Refer to :func:`mindspore.ops.uniform_candidate_sampler` for more detail.
925
+ Refer to :func:`mindspore.ops.uniform_candidate_sampler` for more details.
805
926
 
806
927
  Supported Platforms:
807
928
  ``Ascend`` ``GPU`` ``CPU``
@@ -821,66 +942,39 @@ class UniformCandidateSampler(PrimitiveWithInfer):
821
942
  def __init__(self, num_true, num_sampled, unique, range_max, seed=0, remove_accidental_hits=False):
822
943
  """Initialize UniformCandidateSampler"""
823
944
  Validator.check_value_type("num_true", num_true, [int], self.name)
824
- Validator.check_value_type("num_sampled", num_sampled, [int], self.name)
945
+ Validator.check_value_type(
946
+ "num_sampled", num_sampled, [int], self.name)
825
947
  Validator.check_value_type("unique", unique, [bool], self.name)
826
948
  Validator.check_value_type("range_max", range_max, [int], self.name)
827
949
  Validator.check_value_type("seed", seed, [int], self.name)
828
- Validator.check_value_type("remove_accidental_hits", remove_accidental_hits, [bool], self.name)
829
- Validator.check("value of num_true", num_true, '', 0, Rel.GT, self.name)
830
- Validator.check("value of num_sampled", num_sampled, '', 0, Rel.GT, self.name)
831
- Validator.check("value of range_max", range_max, '', 0, Rel.GT, self.name)
950
+ Validator.check_value_type(
951
+ "remove_accidental_hits", remove_accidental_hits, [bool], self.name)
952
+ Validator.check("value of num_true", num_true,
953
+ '', 0, Validator.GT, self.name)
954
+ Validator.check("value of num_sampled", num_sampled,
955
+ '', 0, Validator.GT, self.name)
956
+ Validator.check("value of range_max", range_max,
957
+ '', 0, Validator.GT, self.name)
832
958
  self.num_true = num_true
833
959
  if unique:
834
- Validator.check('value of num_sampled', num_sampled, "value of range_max", range_max, Rel.LE, self.name)
835
- Validator.check("value of seed", seed, '', 0, Rel.GE, self.name)
960
+ Validator.check('value of num_sampled', num_sampled,
961
+ "value of range_max", range_max, Validator.LE, self.name)
962
+ Validator.check("value of seed", seed, '', 0, Validator.GE, self.name)
836
963
  self.num_sampled = num_sampled
964
+ self.add_prim_attr("side_effect_hidden", True)
837
965
 
838
- def infer_dtype(self, true_classes_type):
839
- Validator.check_subclass("true_classes_type", true_classes_type, mstype.tensor, self.name)
840
- Validator.check_tensor_dtype_valid("true_classes_type", true_classes_type,
841
- (mstype.int32, mstype.int64), self.name)
842
- return true_classes_type, mstype.float32, mstype.float32
843
-
844
- def infer_shape(self, true_classes_shape):
845
- Validator.check("true_class.shape[1]", true_classes_shape[1], "num_true", self.num_true, Rel.EQ, self.name)
846
- return [self.num_sampled], true_classes_shape, [self.num_sampled]
847
966
 
848
967
 
849
- class LogUniformCandidateSampler(PrimitiveWithInfer):
968
+ class LogUniformCandidateSampler(Primitive):
850
969
  r"""
851
970
  Generates random labels with a log-uniform distribution for sampled_candidates.
852
971
 
853
972
  Randomly samples a tensor of sampled classes from the range of integers [0, range_max).
854
973
 
855
- Args:
856
- num_true (int): The number of target classes per training example. Default: 1.
857
- num_sampled (int): The number of classes to randomly sample. Default: 5.
858
- unique (bool): Determines whether sample with rejection. If `unique` is True,
859
- all sampled classes in a batch are unique. Default: True.
860
- range_max (int): The number of possible classes. When `unique` is True,
861
- `range_max` must be greater than or equal to `num_sampled`. Default: 5.
862
- seed (int): Random seed, must be non-negative. Default: 0.
863
-
864
- Inputs:
865
- - **true_classes** (Tensor) - The target classes. With data type of int64 and
866
- shape :math:`(batch\_size, num\_true)` .
867
-
868
- Outputs:
869
- Tuple of 3 Tensors.
870
-
871
- - **sampled_candidates** (Tensor) - A Tensor with shape :math:`(num\_sampled,)`
872
- and the same type as `true_classes`.
873
- - **true_expected_count** (Tensor) - A Tensor with the same shape as `true_classes and` type float32.
874
- - **sampled_expected_count** (Tensor) - A Tensor with the same shape as `sampled_candidates` and type float32.
875
-
876
- Raises:
877
- TypeError: If neither `num_true` nor `num_sampled` is an int.
878
- TypeError: If `unique` is not a bool.
879
- TypeError: If neither `range_max` nor `seed` is an int.
880
- TypeError: If `true_classes` is not a Tensor.
974
+ Refer to :func:`mindspore.ops.log_uniform_candidate_sampler` for more details.
881
975
 
882
976
  Supported Platforms:
883
- ``Ascend``
977
+ ``Ascend`` ``CPU``
884
978
 
885
979
  Examples:
886
980
  >>> sampler = ops.LogUniformCandidateSampler(2, 5, True, 5)
@@ -900,30 +994,23 @@ class LogUniformCandidateSampler(PrimitiveWithInfer):
900
994
  self.init_prim_io_names(inputs=['true_classes'],
901
995
  outputs=['sampled_candidates', 'true_expected_count', 'sampled_expected_count'])
902
996
  Validator.check_value_type("num_true", num_true, [int], self.name)
903
- Validator.check_value_type("num_sampled", num_sampled, [int], self.name)
997
+ Validator.check_value_type(
998
+ "num_sampled", num_sampled, [int], self.name)
904
999
  Validator.check_value_type("unique", unique, [bool], self.name)
905
1000
  Validator.check_value_type("range_max", range_max, [int], self.name)
906
1001
  Validator.check_value_type("seed", seed, [int], self.name)
907
- self.num_true = Validator.check_number("num_true", num_true, 1, Rel.GE, self.name)
908
- self.num_sampled = Validator.check_number("num_sampled", num_sampled, 1, Rel.GE, self.name)
909
- Validator.check_number("range_max", range_max, 1, Rel.GE, self.name)
1002
+ self.num_true = Validator.check_number(
1003
+ "num_true", num_true, 1, Validator.GE, self.name)
1004
+ self.num_sampled = Validator.check_number(
1005
+ "num_sampled", num_sampled, 1, Validator.GE, self.name)
1006
+ Validator.check_number("range_max", range_max, 1, Validator.GE, self.name)
910
1007
  if unique:
911
- Validator.check("range_max", range_max, "num_sampled", num_sampled, Rel.GE, self.name)
1008
+ Validator.check("range_max", range_max, "num_sampled",
1009
+ num_sampled, Validator.GE, self.name)
912
1010
  self.range_max = range_max
913
1011
  self.unique = unique
914
- self.seed = Validator.check_number("seed", seed, 0, Rel.GE, self.name)
915
-
916
- def infer_shape(self, true_classes_shape):
917
- Validator.check_int(len(true_classes_shape), 2, Rel.EQ, "dim of true_classes", self.name)
918
- Validator.check("true_classes_shape[1]", true_classes_shape[1], "num_true", self.num_true, Rel.EQ, self.name)
919
- return (self.num_sampled,), true_classes_shape, (self.num_sampled,)
920
-
921
- def infer_dtype(self, true_classes_type):
922
- Validator.check_subclass("true_classes_type", true_classes_type, mstype.tensor, self.name)
923
- valid_types = (mstype.int64,)
924
- Validator.check_tensor_dtype_valid("true_classes_type", true_classes_type, valid_types, self.name)
925
- expected_type = mstype.float32
926
- return true_classes_type, expected_type, expected_type
1012
+ self.seed = Validator.check_number("seed", seed, 0, Validator.GE, self.name)
1013
+ self.add_prim_attr("side_effect_hidden", True)
927
1014
 
928
1015
 
929
1016
  class RandomShuffle(Primitive):
@@ -931,9 +1018,11 @@ class RandomShuffle(Primitive):
931
1018
  Randomly shuffles a Tensor along its first dimension.
932
1019
 
933
1020
  Args:
934
- seed (int): The operator-level random seed, used to generate random numbers, must be non-negative. Default: 0.
935
- seed2 (int): The global random seed and it will combile with the operator-level random seed to determine the
936
- final generated random number, must be non-negative. Default: 0.
1021
+ seed (int, optional): Random seed. If `seed` or `seed2` is set to non-zero, the random number generator
1022
+ will be seeded by the given seed. Otherwise, it will be seeded randomly.
1023
+ The `seed` must be non-negative. Default: 0.
1024
+ seed2 (int, optional): A second seed to avoid seed collision. If `seed` is 0, the `seed2` will be used as
1025
+ the seed of the random generator. It must be non-negative. Default: 0.
937
1026
 
938
1027
  Inputs:
939
1028
  - **x** (Tensor) - The Tensor need be shuffled.
@@ -945,7 +1034,7 @@ class RandomShuffle(Primitive):
945
1034
  TypeError: If data type of `seed` or `seed2` is not int.
946
1035
 
947
1036
  Supported Platforms:
948
- ``CPU``
1037
+ ``Ascend`` ``GPU`` ``CPU``
949
1038
 
950
1039
  Examples:
951
1040
  >>> x = Tensor(np.array([1, 2, 3, 4]), mstype.float32)
@@ -959,5 +1048,83 @@ class RandomShuffle(Primitive):
959
1048
  def __init__(self, seed=0, seed2=0):
960
1049
  """Initialize RandomShuffle"""
961
1050
  self.init_prim_io_names(inputs=['input_x'], outputs=['output'])
1051
+ self.add_prim_attr("side_effect_hidden", True)
962
1052
  Validator.check_non_negative_int(seed, "seed", self.name)
963
1053
  Validator.check_non_negative_int(seed2, "seed2", self.name)
1054
+
1055
+
1056
+ class Uniform(Primitive):
1057
+ r"""
1058
+ Generates random numbers according to the Uniform random number distribution.
1059
+
1060
+ Args:
1061
+ minval(float):must be non-negative. Default: 0.0.
1062
+ maxval(float):must be non-negative. Default: 1.0.
1063
+
1064
+ Inputs:
1065
+ - **x** (Tensor) - The x of random tensor to be generated.
1066
+ Only constant value is allowed, and the date type is float16, float32, float64.
1067
+
1068
+ Raises:
1069
+ TypeError: If `minval` or `maxval` is not a float.
1070
+ TypeError: If `x`is not a Tensor.
1071
+ ValueError: If `minval` is larger than `maxval`.
1072
+
1073
+ Outputs:
1074
+ - **output** (Tensor) - With the same type and shape as the 'x'.
1075
+
1076
+ Supported Platforms:
1077
+ ``GPU`` ``CPU``
1078
+
1079
+ Examples:
1080
+ >>> x = Tensor(np.random.randn(3,4), mstype.float64)
1081
+ >>> uniform = Uniform(minval=1.0, maxval=2.0)
1082
+ >>> y = uniform(x)
1083
+ >>> print(y.shape)
1084
+ (3, 4)
1085
+ """
1086
+
1087
+ @prim_attr_register
1088
+ def __init__(self, minval=0., maxval=1., seed=0, offset=0):
1089
+ """Initialize Uniform"""
1090
+ self.init_prim_io_names(inputs=['x'], outputs=['y'])
1091
+ self.add_prim_attr("from", minval)
1092
+ self.add_prim_attr("to", maxval)
1093
+ Validator.check_value_type('seed', seed, [int], self.name)
1094
+ Validator.check_value_type('offset', offset, [int], self.name)
1095
+ Validator.check('minval', minval, 'maxval', maxval, Validator.LE, self.name)
1096
+ Validator.check_non_negative_float(minval, "minval", self.name)
1097
+ Validator.check_non_negative_float(maxval, "maxval", self.name)
1098
+ self.add_prim_attr("side_effect_hidden", True)
1099
+
1100
+
1101
+ class RandpermV2(Primitive):
1102
+ r"""
1103
+ Generates random permutation of integers from 0 to n-1 without repeating.
1104
+
1105
+ Refer to :func:`mindspore.ops.randperm` for more detail.
1106
+
1107
+ Supported Platforms:
1108
+ ``CPU``
1109
+
1110
+ Examples:
1111
+ >>> n = Tensor([4], mstype.int64)
1112
+ >>> seed = 0
1113
+ >>> offset = 0
1114
+ >>> randperm = ops.RandpermV2(layout=0, dtype=mstype.int64)
1115
+ >>> output = randperm(n, seed, offset)
1116
+ >>> print(output)
1117
+ [1 0 2 3]
1118
+ """
1119
+
1120
+ @prim_attr_register
1121
+ def __init__(self, layout=0, dtype=mstype.int64):
1122
+ """Initialize RandpermV2"""
1123
+ self.dtype = dtype
1124
+ self.layout = layout
1125
+ Validator.check_value_type('layout', layout, [int], self.name)
1126
+ Validator.check_non_negative_int(layout, 'layout', self.name)
1127
+ valid_values = (mstype.int32, mstype.int64, mstype.int16, mstype.int8, mstype.uint8, mstype.float64
1128
+ , mstype.float32, mstype.float16)
1129
+ Validator.check_type_name("dtype", dtype, valid_values, self.name)
1130
+ self.add_prim_attr("side_effect_hidden", True)