mindspore 2.0.0a0__cp37-cp37m-win_amd64.whl → 2.0.0rc1__cp37-cp37m-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 (655) hide show
  1. mindspore/.commit_id +1 -1
  2. mindspore/__init__.py +4 -2
  3. mindspore/_c_dataengine.cp37-win_amd64.pyd +0 -0
  4. mindspore/_c_expression.cp37-win_amd64.pyd +0 -0
  5. mindspore/_c_mindrecord.cp37-win_amd64.pyd +0 -0
  6. mindspore/_check_jit_forbidden_api.py +102 -0
  7. mindspore/_checkparam.py +1066 -1001
  8. mindspore/_extends/parallel_compile/akg_compiler/akg_process.py +4 -3
  9. mindspore/_extends/parallel_compile/akg_compiler/tbe_topi.py +50 -48
  10. mindspore/_extends/parallel_compile/akg_compiler/util.py +9 -4
  11. mindspore/_extends/parallel_compile/tbe_compiler/tbe_adapter.py +4 -4
  12. mindspore/_extends/parallel_compile/tbe_compiler/tbe_helper.py +9 -4
  13. mindspore/_extends/parse/__init__.py +5 -3
  14. mindspore/_extends/parse/namespace.py +16 -1
  15. mindspore/_extends/parse/parser.py +107 -22
  16. mindspore/_extends/parse/resources.py +0 -7
  17. mindspore/_extends/parse/standard_method.py +885 -413
  18. mindspore/amp.py +52 -57
  19. mindspore/boost/boost.py +2 -2
  20. mindspore/boost/boost_cell_wrapper.py +38 -20
  21. mindspore/boost/dim_reduce.py +3 -3
  22. mindspore/boost/group_loss_scale_manager.py +1 -1
  23. mindspore/common/__init__.py +4 -6
  24. mindspore/common/_decorator.py +2 -0
  25. mindspore/common/_register_for_adapter.py +55 -0
  26. mindspore/common/_stub_tensor.py +201 -0
  27. mindspore/common/_utils.py +41 -7
  28. mindspore/common/api.py +215 -141
  29. mindspore/common/dtype.py +8 -1
  30. mindspore/common/dump.py +2 -2
  31. mindspore/common/initializer.py +4 -2
  32. mindspore/common/jit_config.py +17 -13
  33. mindspore/common/mutable.py +33 -13
  34. mindspore/common/parameter.py +23 -21
  35. mindspore/common/seed.py +8 -24
  36. mindspore/common/sparse_tensor.py +62 -41
  37. mindspore/common/tensor.py +852 -1154
  38. mindspore/communication/__init__.py +2 -2
  39. mindspore/communication/_comm_helper.py +11 -4
  40. mindspore/communication/management.py +22 -21
  41. mindspore/config/op_info.config +501 -1008
  42. mindspore/context.py +201 -23
  43. mindspore/dataset/__init__.py +6 -6
  44. mindspore/dataset/audio/__init__.py +7 -7
  45. mindspore/dataset/audio/transforms.py +670 -30
  46. mindspore/dataset/audio/utils.py +47 -4
  47. mindspore/dataset/audio/validators.py +223 -1
  48. mindspore/dataset/callback/ds_callback.py +2 -2
  49. mindspore/dataset/core/config.py +210 -14
  50. mindspore/dataset/core/validator_helpers.py +2 -2
  51. mindspore/{parallel/nn/layers.py → dataset/debug/__init__.py} +7 -8
  52. mindspore/dataset/debug/debug_hook.py +65 -0
  53. mindspore/dataset/debug/pre_defined_hook.py +67 -0
  54. mindspore/dataset/engine/__init__.py +7 -3
  55. mindspore/dataset/engine/cache_client.py +1 -1
  56. mindspore/dataset/engine/datasets.py +322 -66
  57. mindspore/dataset/engine/datasets_audio.py +80 -76
  58. mindspore/dataset/engine/datasets_standard_format.py +51 -38
  59. mindspore/dataset/engine/datasets_text.py +232 -118
  60. mindspore/dataset/engine/datasets_user_defined.py +41 -17
  61. mindspore/dataset/engine/datasets_vision.py +746 -225
  62. mindspore/dataset/engine/graphdata.py +75 -10
  63. mindspore/dataset/engine/iterators.py +45 -5
  64. mindspore/dataset/engine/offload.py +48 -28
  65. mindspore/dataset/engine/validators.py +117 -8
  66. mindspore/dataset/text/__init__.py +6 -5
  67. mindspore/dataset/text/transforms.py +86 -3
  68. mindspore/dataset/text/utils.py +6 -4
  69. mindspore/dataset/text/validators.py +25 -0
  70. mindspore/dataset/transforms/__init__.py +3 -2
  71. mindspore/dataset/transforms/c_transforms.py +1 -1
  72. mindspore/dataset/transforms/transforms.py +2 -2
  73. mindspore/dataset/utils/__init__.py +2 -1
  74. mindspore/dataset/utils/line_reader.py +121 -0
  75. mindspore/dataset/vision/__init__.py +2 -3
  76. mindspore/dataset/vision/c_transforms.py +9 -9
  77. mindspore/dataset/vision/py_transforms.py +5 -5
  78. mindspore/dataset/vision/py_transforms_util.py +2 -0
  79. mindspore/dataset/vision/transforms.py +160 -161
  80. mindspore/dataset/vision/utils.py +3 -3
  81. mindspore/experimental/map_parameter.py +38 -26
  82. mindspore/include/OWNERS +0 -1
  83. mindspore/include/api/callback/callback.h +9 -13
  84. mindspore/include/api/callback/ckpt_saver.h +2 -2
  85. mindspore/include/api/callback/loss_monitor.h +2 -2
  86. mindspore/include/api/callback/lr_scheduler.h +5 -5
  87. mindspore/include/api/callback/time_monitor.h +2 -2
  88. mindspore/include/api/callback/train_accuracy.h +4 -6
  89. mindspore/include/api/cfg.h +19 -6
  90. mindspore/include/api/context.h +44 -9
  91. mindspore/include/api/delegate.h +1 -1
  92. mindspore/include/api/metrics/accuracy.h +2 -2
  93. mindspore/include/api/metrics/metrics.h +4 -3
  94. mindspore/include/api/model.h +9 -4
  95. mindspore/include/api/model_parallel_runner.h +2 -2
  96. mindspore/include/api/net.h +12 -11
  97. mindspore/include/api/serialization.h +19 -3
  98. mindspore/include/api/types.h +3 -3
  99. mindspore/include/dataset/constants.h +7 -0
  100. mindspore/include/dataset/text.h +59 -0
  101. mindspore/jpeg62.dll +0 -0
  102. mindspore/log.py +1 -1
  103. mindspore/mindrecord/filereader.py +18 -0
  104. mindspore/mindrecord/filewriter.py +197 -34
  105. mindspore/mindrecord/shardreader.py +9 -0
  106. mindspore/mindrecord/shardwriter.py +1 -1
  107. mindspore/mindrecord/tools/cifar100_to_mr.py +3 -3
  108. mindspore/mindrecord/tools/cifar10_to_mr.py +3 -3
  109. mindspore/mindrecord/tools/csv_to_mr.py +3 -3
  110. mindspore/mindrecord/tools/imagenet_to_mr.py +16 -11
  111. mindspore/mindrecord/tools/mnist_to_mr.py +2 -2
  112. mindspore/mindrecord/tools/tfrecord_to_mr.py +6 -6
  113. mindspore/mindspore_backend.dll +0 -0
  114. mindspore/mindspore_common.dll +0 -0
  115. mindspore/mindspore_core.dll +0 -0
  116. mindspore/mindspore_glog.dll +0 -0
  117. mindspore/mindspore_shared_lib.dll +0 -0
  118. mindspore/nn/__init__.py +0 -4
  119. mindspore/nn/cell.py +204 -132
  120. mindspore/nn/dynamic_lr.py +1 -1
  121. mindspore/nn/grad/cell_grad.py +7 -6
  122. mindspore/nn/layer/__init__.py +5 -4
  123. mindspore/nn/layer/activation.py +40 -89
  124. mindspore/nn/layer/basic.py +255 -624
  125. mindspore/nn/layer/channel_shuffle.py +7 -6
  126. mindspore/nn/layer/combined.py +1 -1
  127. mindspore/nn/layer/container.py +41 -4
  128. mindspore/nn/layer/conv.py +64 -28
  129. mindspore/nn/layer/dense.py +9 -8
  130. mindspore/nn/layer/embedding.py +27 -25
  131. mindspore/nn/layer/image.py +53 -46
  132. mindspore/nn/layer/math.py +97 -105
  133. mindspore/nn/layer/normalization.py +117 -86
  134. mindspore/nn/layer/padding.py +185 -95
  135. mindspore/nn/layer/pooling.py +817 -414
  136. mindspore/nn/layer/rnn_cells.py +10 -15
  137. mindspore/nn/layer/rnns.py +37 -38
  138. mindspore/nn/layer/thor_layer.py +11 -12
  139. mindspore/nn/layer/timedistributed.py +5 -5
  140. mindspore/nn/layer/transformer.py +701 -0
  141. mindspore/nn/learning_rate_schedule.py +8 -8
  142. mindspore/nn/loss/__init__.py +5 -4
  143. mindspore/nn/loss/loss.py +334 -199
  144. mindspore/nn/optim/ada_grad.py +6 -6
  145. mindspore/nn/optim/adadelta.py +2 -3
  146. mindspore/nn/optim/adafactor.py +4 -5
  147. mindspore/nn/optim/adam.py +126 -62
  148. mindspore/nn/optim/adamax.py +3 -4
  149. mindspore/nn/optim/adasum.py +6 -6
  150. mindspore/nn/optim/asgd.py +2 -2
  151. mindspore/nn/optim/ftrl.py +67 -38
  152. mindspore/nn/optim/lamb.py +4 -5
  153. mindspore/nn/optim/lars.py +2 -2
  154. mindspore/nn/optim/lazyadam.py +43 -4
  155. mindspore/nn/optim/momentum.py +6 -5
  156. mindspore/nn/optim/optimizer.py +3 -1
  157. mindspore/nn/optim/proximal_ada_grad.py +2 -2
  158. mindspore/nn/optim/rmsprop.py +1 -1
  159. mindspore/nn/optim/rprop.py +8 -9
  160. mindspore/nn/optim/sgd.py +19 -13
  161. mindspore/nn/optim/thor.py +10 -15
  162. mindspore/nn/probability/__init__.py +0 -2
  163. mindspore/nn/probability/bijector/bijector.py +4 -4
  164. mindspore/nn/probability/bijector/invert.py +1 -1
  165. mindspore/nn/probability/bijector/softplus.py +2 -2
  166. mindspore/nn/probability/bnn_layers/dense_variational.py +1 -1
  167. mindspore/nn/probability/bnn_layers/layer_distribution.py +2 -2
  168. mindspore/nn/probability/distribution/_utils/utils.py +9 -15
  169. mindspore/nn/probability/distribution/bernoulli.py +3 -3
  170. mindspore/nn/probability/distribution/beta.py +1 -1
  171. mindspore/nn/probability/distribution/categorical.py +5 -7
  172. mindspore/nn/probability/distribution/cauchy.py +3 -3
  173. mindspore/nn/probability/distribution/distribution.py +2 -2
  174. mindspore/nn/probability/distribution/exponential.py +2 -2
  175. mindspore/nn/probability/distribution/gamma.py +3 -3
  176. mindspore/nn/probability/distribution/geometric.py +1 -1
  177. mindspore/nn/probability/distribution/gumbel.py +3 -3
  178. mindspore/nn/probability/distribution/half_normal.py +15 -11
  179. mindspore/nn/probability/distribution/laplace.py +16 -13
  180. mindspore/nn/probability/distribution/logistic.py +2 -2
  181. mindspore/nn/probability/distribution/normal.py +1 -1
  182. mindspore/nn/probability/distribution/poisson.py +1 -1
  183. mindspore/nn/probability/distribution/student_t.py +20 -15
  184. mindspore/nn/probability/distribution/transformed_distribution.py +4 -4
  185. mindspore/nn/probability/distribution/uniform.py +2 -2
  186. mindspore/nn/reinforcement/_tensors_queue.py +3 -3
  187. mindspore/nn/reinforcement/tensor_array.py +2 -2
  188. mindspore/nn/sparse/sparse.py +2 -2
  189. mindspore/nn/wrap/cell_wrapper.py +27 -10
  190. mindspore/nn/wrap/grad_reducer.py +2 -2
  191. mindspore/nn/wrap/loss_scale.py +40 -24
  192. mindspore/numpy/array_creations.py +33 -22
  193. mindspore/numpy/array_ops.py +35 -30
  194. mindspore/numpy/logic_ops.py +6 -27
  195. mindspore/numpy/math_ops.py +22 -19
  196. mindspore/numpy/utils.py +1 -1
  197. mindspore/numpy/utils_const.py +108 -58
  198. mindspore/opencv_core452.dll +0 -0
  199. mindspore/opencv_imgcodecs452.dll +0 -0
  200. mindspore/opencv_imgproc452.dll +0 -0
  201. mindspore/ops/_constants.py +0 -6
  202. mindspore/ops/_grad/__init__.py +2 -1
  203. mindspore/ops/_grad/grad_array_ops.py +86 -117
  204. mindspore/ops/_grad/grad_base.py +23 -1
  205. mindspore/ops/_grad/grad_clip_ops.py +2 -3
  206. mindspore/ops/_grad/grad_comm_ops.py +34 -24
  207. mindspore/ops/_grad/grad_implementations.py +9 -45
  208. mindspore/ops/_grad/grad_inner_ops.py +47 -4
  209. mindspore/ops/_grad/grad_math_ops.py +142 -117
  210. mindspore/ops/_grad/grad_nn_ops.py +71 -165
  211. mindspore/ops/_grad/grad_sequence_ops.py +296 -0
  212. mindspore/ops/_grad/grad_sparse.py +7 -6
  213. mindspore/ops/_grad_experimental/__init__.py +1 -0
  214. mindspore/ops/_grad_experimental/grad_array_ops.py +150 -15
  215. mindspore/ops/_grad_experimental/grad_image_ops.py +16 -7
  216. mindspore/ops/_grad_experimental/grad_inner_ops.py +1 -22
  217. mindspore/ops/_grad_experimental/grad_linalg_ops.py +4 -11
  218. mindspore/ops/_grad_experimental/grad_math_ops.py +210 -89
  219. mindspore/ops/_grad_experimental/grad_nn_ops.py +26 -22
  220. mindspore/ops/_grad_experimental/grad_scalar_ops.py +112 -0
  221. mindspore/ops/_grad_experimental/grad_sparse_ops.py +49 -8
  222. mindspore/ops/_op_impl/_custom_op/batch_matmul_impl.py +1 -1
  223. mindspore/ops/_op_impl/_custom_op/batchnorm_fold.py +2 -2
  224. mindspore/ops/_op_impl/_custom_op/batchnorm_fold2.py +2 -2
  225. mindspore/ops/_op_impl/_custom_op/batchnorm_fold2_grad.py +2 -2
  226. mindspore/ops/_op_impl/_custom_op/batchnorm_fold2_grad_reduce.py +4 -4
  227. mindspore/ops/_op_impl/_custom_op/batchnorm_fold_grad.py +3 -3
  228. mindspore/ops/_op_impl/_custom_op/cholesky_trsm_impl.py +1 -1
  229. mindspore/ops/_op_impl/_custom_op/correction_mul.py +2 -2
  230. mindspore/ops/_op_impl/_custom_op/correction_mul_grad.py +2 -2
  231. mindspore/ops/_op_impl/_custom_op/dsd_back_impl.py +1 -5
  232. mindspore/ops/_op_impl/_custom_op/dsd_impl.py +1 -1
  233. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perchannel.py +2 -2
  234. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perchannel_grad.py +2 -2
  235. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perchannel_grad_reduce.py +2 -2
  236. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perlayer.py +2 -2
  237. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perlayer_grad.py +2 -2
  238. mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perlayer_grad_reduce.py +2 -2
  239. mindspore/ops/_op_impl/_custom_op/fake_quant_perchannel.py +2 -2
  240. mindspore/ops/_op_impl/_custom_op/fake_quant_perchannel_grad.py +2 -2
  241. mindspore/ops/_op_impl/_custom_op/fake_quant_perlayer.py +2 -2
  242. mindspore/ops/_op_impl/_custom_op/fake_quant_perlayer_grad.py +2 -2
  243. mindspore/ops/_op_impl/_custom_op/fused_abs_max1_impl.py +1 -1
  244. mindspore/ops/_op_impl/_custom_op/img2col_impl.py +1 -1
  245. mindspore/ops/_op_impl/_custom_op/matmul_cube_dense_left_impl.py +2 -2
  246. mindspore/ops/_op_impl/_custom_op/matmul_cube_dense_right_impl.py +1 -1
  247. mindspore/ops/_op_impl/_custom_op/matmul_cube_fracz_left_cast_impl.py +1 -1
  248. mindspore/ops/_op_impl/_custom_op/matmul_cube_fracz_right_mul_impl.py +1 -1
  249. mindspore/ops/_op_impl/_custom_op/matmul_cube_impl.py +2 -2
  250. mindspore/ops/_op_impl/_custom_op/matmul_dds_impl.py +0 -4
  251. mindspore/ops/_op_impl/_custom_op/matrix_combine_impl.py +1 -1
  252. mindspore/ops/_op_impl/_custom_op/minmax_update_perchannel.py +2 -2
  253. mindspore/ops/_op_impl/_custom_op/minmax_update_perlayer.py +2 -2
  254. mindspore/ops/_op_impl/_custom_op/transpose02314_impl.py +1 -1
  255. mindspore/ops/_op_impl/aicpu/__init__.py +236 -4
  256. mindspore/ops/_op_impl/aicpu/abs.py +36 -0
  257. mindspore/ops/_op_impl/aicpu/{adaptive_avg_pool_2d_v1.py → adaptive_avg_pool_2d.py} +6 -5
  258. mindspore/ops/_op_impl/aicpu/adaptive_avg_pool_2d_grad.py +34 -0
  259. mindspore/ops/_op_impl/aicpu/add.py +43 -0
  260. mindspore/ops/_op_impl/aicpu/addcdiv.py +0 -32
  261. mindspore/ops/_op_impl/aicpu/addcmul.py +0 -84
  262. mindspore/ops/_op_impl/aicpu/affine_grid_grad.py +35 -0
  263. mindspore/ops/_op_impl/aicpu/batch_matmul.py +43 -43
  264. mindspore/ops/_op_impl/aicpu/bernoulli.py +48 -0
  265. mindspore/{compression/common/__init__.py → ops/_op_impl/aicpu/bessel_i0.py} +15 -8
  266. mindspore/ops/_op_impl/aicpu/channel_shuffle.py +40 -0
  267. mindspore/ops/_op_impl/aicpu/conj.py +11 -0
  268. mindspore/ops/_op_impl/aicpu/cumulative_logsumexp.py +0 -3
  269. mindspore/ops/_op_impl/aicpu/deformable_offsets.py +38 -0
  270. mindspore/ops/_op_impl/aicpu/deformable_offsets_grad.py +43 -0
  271. mindspore/ops/_op_impl/aicpu/{adaptive_avg_pool_2d_grad_v1.py → digamma.py} +7 -9
  272. mindspore/ops/_op_impl/aicpu/flatten.py +1 -0
  273. mindspore/ops/_op_impl/aicpu/fmax.py +36 -0
  274. mindspore/ops/_op_impl/aicpu/fmin.py +37 -0
  275. mindspore/ops/_op_impl/aicpu/fractional_max_pool3d_with_fixed_ksize.py +1 -1
  276. mindspore/ops/_op_impl/aicpu/fse_decode.py +43 -0
  277. mindspore/ops/_op_impl/aicpu/greater.py +41 -0
  278. mindspore/ops/_op_impl/aicpu/greater_equal.py +41 -0
  279. mindspore/ops/_op_impl/aicpu/index_put.py +50 -0
  280. mindspore/ops/_op_impl/aicpu/less.py +41 -0
  281. mindspore/{nn/probability/infer/variational/__init__.py → ops/_op_impl/aicpu/lgamma.py} +16 -10
  282. mindspore/ops/_op_impl/aicpu/mirror_pad.py +0 -4
  283. mindspore/ops/_op_impl/aicpu/mirror_pad_grad.py +0 -4
  284. mindspore/ops/_op_impl/aicpu/mul.py +3 -1
  285. mindspore/ops/_op_impl/aicpu/multinomial.py +14 -6
  286. mindspore/ops/_op_impl/aicpu/nllloss.py +38 -0
  287. mindspore/ops/_op_impl/aicpu/nllloss_grad.py +39 -0
  288. mindspore/ops/_op_impl/aicpu/ones_like.py +0 -2
  289. mindspore/ops/_op_impl/aicpu/polar.py +32 -0
  290. mindspore/ops/_op_impl/aicpu/polygamma.py +34 -0
  291. mindspore/ops/_op_impl/aicpu/quant_dtype_cast.py +40 -0
  292. mindspore/ops/_op_impl/aicpu/quantile.py +35 -0
  293. mindspore/ops/_op_impl/aicpu/ragged_tensor_to_sparse.py +73 -0
  294. mindspore/ops/_op_impl/aicpu/randperm_v2.py +41 -0
  295. mindspore/ops/_op_impl/aicpu/resize_bicubic.py +2 -8
  296. mindspore/ops/_op_impl/aicpu/resize_bicubic_grad.py +1 -1
  297. mindspore/ops/_op_impl/aicpu/resize_v2.py +68 -0
  298. mindspore/ops/_op_impl/aicpu/resize_v2_grad.py +68 -0
  299. mindspore/ops/_op_impl/aicpu/scatter_elements.py +4 -0
  300. mindspore/ops/_op_impl/aicpu/scatter_nd_update.py +2 -0
  301. mindspore/ops/_op_impl/aicpu/sequence_add.py +34 -0
  302. mindspore/ops/_op_impl/aicpu/sequence_add_offset.py +34 -0
  303. mindspore/ops/_op_impl/aicpu/sequence_addn.py +38 -0
  304. mindspore/ops/_op_impl/aicpu/smooth_l1_loss.py +35 -0
  305. mindspore/ops/_op_impl/aicpu/smooth_l1_loss_grad.py +37 -0
  306. mindspore/ops/_op_impl/aicpu/sparse_apply_adagrad_da.py +0 -24
  307. mindspore/ops/_op_impl/aicpu/sparse_cross.py +42 -0
  308. mindspore/ops/_op_impl/aicpu/sparse_slice.py +4 -0
  309. mindspore/ops/_op_impl/aicpu/sparse_slice_grad.py +6 -0
  310. mindspore/ops/_op_impl/aicpu/tensor_scatter_update.py +59 -0
  311. mindspore/ops/_op_impl/aicpu/trans_data.py +1 -0
  312. mindspore/ops/_op_impl/aicpu/tril_indices.py +34 -0
  313. mindspore/ops/_op_impl/aicpu/uniform.py +34 -0
  314. mindspore/ops/_op_impl/aicpu/uniform_candidate_sampler.py +1 -0
  315. mindspore/ops/_op_impl/aicpu/unique_consecutive.py +10 -2
  316. mindspore/ops/_op_impl/cpu/dynamic_shape.py +5 -1
  317. mindspore/ops/_op_impl/cpu/sparse_slice.py +4 -0
  318. mindspore/ops/_op_impl/cpu/sparse_slice_grad.py +6 -0
  319. mindspore/ops/_op_impl/cpu/tensor_shape.py +5 -1
  320. mindspore/ops/_op_impl/tbe/__init__.py +27 -611
  321. mindspore/ops/_op_impl/tbe/assign_add_ds.py +1 -0
  322. mindspore/ops/_op_impl/tbe/atomic_addr_clean.py +1 -1
  323. mindspore/ops/_op_impl/tbe/avg_pool_3d_grad.py +1 -1
  324. mindspore/ops/_op_impl/tbe/batch_matmul_ds.py +1 -0
  325. mindspore/ops/_op_impl/tbe/batch_to_space.py +1 -1
  326. mindspore/ops/_op_impl/tbe/batch_to_space_nd.py +1 -1
  327. mindspore/ops/_op_impl/tbe/bn_infer_grad.py +4 -2
  328. mindspore/ops/_op_impl/tbe/bn_training_update.py +0 -1
  329. mindspore/ops/_op_impl/tbe/bn_training_update_ds.py +0 -1
  330. mindspore/ops/_op_impl/tbe/broadcast_to_ds.py +6 -4
  331. mindspore/ops/_op_impl/tbe/cast.py +0 -2
  332. mindspore/ops/_op_impl/tbe/cast_ds.py +3 -3
  333. mindspore/ops/_op_impl/tbe/data_format_dim_map_ds.py +1 -0
  334. mindspore/ops/_op_impl/tbe/depthwise_conv2d.py +2 -2
  335. mindspore/ops/_op_impl/tbe/dynamic_atomic_addr_clean.py +1 -1
  336. mindspore/ops/_op_impl/tbe/gather_nd.py +1 -0
  337. mindspore/ops/_op_impl/tbe/{index_add.py → inplace_index_add.py} +3 -6
  338. mindspore/ops/_op_impl/tbe/matmul_ds.py +2 -0
  339. mindspore/ops/_op_impl/tbe/npu_clear_float_status_v2.py +35 -0
  340. mindspore/ops/_op_impl/tbe/npu_get_float_status_v2.py +35 -0
  341. mindspore/ops/_op_impl/tbe/scatter_mul.py +2 -0
  342. mindspore/ops/_op_impl/tbe/scatter_nd_add.py +0 -2
  343. mindspore/ops/_op_impl/tbe/space_to_batch.py +1 -1
  344. mindspore/ops/_op_impl/tbe/space_to_batch_nd.py +1 -1
  345. mindspore/ops/_op_impl/tbe/trans_data_ds.py +15 -5
  346. mindspore/ops/_register_for_op.py +1 -0
  347. mindspore/ops/_utils/__init__.py +1 -2
  348. mindspore/ops/_utils/utils.py +19 -40
  349. mindspore/ops/_vmap/vmap_array_ops.py +116 -38
  350. mindspore/ops/_vmap/vmap_base.py +16 -9
  351. mindspore/ops/_vmap/vmap_convolution_ops.py +7 -10
  352. mindspore/ops/_vmap/vmap_grad_math_ops.py +4 -4
  353. mindspore/ops/_vmap/vmap_grad_nn_ops.py +7 -5
  354. mindspore/ops/_vmap/vmap_image_ops.py +12 -5
  355. mindspore/ops/_vmap/vmap_math_ops.py +46 -5
  356. mindspore/ops/_vmap/vmap_nn_ops.py +15 -21
  357. mindspore/ops/_vmap/vmap_random_ops.py +1 -1
  358. mindspore/ops/bprop_mindir/AdaptiveAvgPool2D_bprop.mindir +0 -0
  359. mindspore/ops/bprop_mindir/AdaptiveMaxPool2D_bprop.mindir +0 -0
  360. mindspore/ops/bprop_mindir/AvgPool3D_bprop.mindir +150 -0
  361. mindspore/ops/bprop_mindir/AvgPool_bprop.mindir +66 -0
  362. mindspore/ops/bprop_mindir/BCEWithLogitsLoss_bprop.mindir +0 -0
  363. mindspore/ops/bprop_mindir/BatchNormGrad_bprop.mindir +0 -0
  364. mindspore/ops/bprop_mindir/BiasAddGrad_bprop.mindir +0 -0
  365. mindspore/ops/bprop_mindir/BinaryCrossEntropy_bprop.mindir +33 -0
  366. mindspore/ops/bprop_mindir/BroadcastTo_bprop.mindir +220 -106
  367. mindspore/ops/bprop_mindir/CTCLoss_bprop.mindir +0 -0
  368. mindspore/ops/bprop_mindir/Conv2DBackpropFilter_bprop.mindir +240 -0
  369. mindspore/ops/bprop_mindir/Conv2DBackpropInput_bprop.mindir +247 -0
  370. mindspore/ops/bprop_mindir/Conv2DTranspose_bprop.mindir +247 -0
  371. mindspore/ops/bprop_mindir/Conv3DTranspose_bprop.mindir +315 -0
  372. mindspore/ops/bprop_mindir/Conv3D_bprop.mindir +278 -0
  373. mindspore/ops/bprop_mindir/DeformableOffsets_bprop.mindir +58 -0
  374. mindspore/ops/bprop_mindir/DepthwiseConv2dNative_bprop.mindir +138 -0
  375. mindspore/ops/bprop_mindir/Dropout2D_bprop.mindir +0 -0
  376. mindspore/ops/bprop_mindir/Dropout3D_bprop.mindir +0 -0
  377. mindspore/ops/bprop_mindir/DropoutDoMask_bprop.mindir +22 -23
  378. mindspore/ops/bprop_mindir/DropoutGenMask_bprop.mindir +16 -17
  379. mindspore/ops/bprop_mindir/DropoutGrad_bprop.mindir +27 -0
  380. mindspore/ops/bprop_mindir/Dropout_bprop.mindir +0 -0
  381. mindspore/ops/bprop_mindir/DynamicGRUV2_bprop.mindir +0 -0
  382. mindspore/ops/bprop_mindir/DynamicRNN_bprop.mindir +0 -0
  383. mindspore/ops/bprop_mindir/Elu_bprop.mindir +16 -0
  384. mindspore/ops/bprop_mindir/EmbeddingLookup_bprop.mindir +0 -0
  385. mindspore/ops/bprop_mindir/ExpandDims_bprop.mindir +39 -41
  386. mindspore/ops/bprop_mindir/FastGeLU_bprop.mindir +16 -0
  387. mindspore/ops/bprop_mindir/Flatten_bprop.mindir +41 -43
  388. mindspore/ops/bprop_mindir/GatherNd_bprop.mindir +51 -57
  389. mindspore/ops/bprop_mindir/Gather_bprop.mindir +0 -0
  390. mindspore/ops/bprop_mindir/HSigmoid_bprop.mindir +16 -0
  391. mindspore/ops/bprop_mindir/HSwish_bprop.mindir +16 -0
  392. mindspore/ops/bprop_mindir/InstanceNorm_bprop.mindir +0 -0
  393. mindspore/ops/bprop_mindir/KLDivLoss_bprop.mindir +126 -0
  394. mindspore/ops/bprop_mindir/L2Loss_bprop.mindir +15 -0
  395. mindspore/ops/bprop_mindir/L2Normalize_bprop.mindir +30 -0
  396. mindspore/ops/bprop_mindir/LRN_bprop.mindir +43 -0
  397. mindspore/ops/bprop_mindir/LayerNormGrad_bprop.mindir +0 -0
  398. mindspore/ops/bprop_mindir/LogSoftmax_bprop.mindir +23 -0
  399. mindspore/ops/bprop_mindir/MaxPool3DGradGrad_bprop.mindir +74 -0
  400. mindspore/ops/bprop_mindir/MaxPool3DGrad_bprop.mindir +74 -0
  401. mindspore/ops/bprop_mindir/MaxPool3D_bprop.mindir +75 -0
  402. mindspore/ops/bprop_mindir/MaxPoolGradGrad_bprop.mindir +65 -0
  403. mindspore/ops/bprop_mindir/MaxPoolWithArgmax_bprop.mindir +0 -0
  404. mindspore/ops/bprop_mindir/MirrorPad_bprop.mindir +27 -0
  405. mindspore/ops/bprop_mindir/Mish_bprop.mindir +35 -0
  406. mindspore/ops/bprop_mindir/MulNoNan_bprop.mindir +0 -0
  407. mindspore/ops/bprop_mindir/NLLLoss_bprop.mindir +0 -0
  408. mindspore/ops/bprop_mindir/OneHot_bprop.mindir +24 -25
  409. mindspore/ops/bprop_mindir/PReLU_bprop.mindir +0 -0
  410. mindspore/ops/bprop_mindir/Pad_bprop.mindir +0 -0
  411. mindspore/ops/bprop_mindir/Padding_bprop.mindir +0 -0
  412. mindspore/ops/bprop_mindir/RNNTLoss_bprop.mindir +29 -0
  413. mindspore/ops/bprop_mindir/ROIAlign_bprop.mindir +82 -0
  414. mindspore/ops/bprop_mindir/ReLU6_bprop.mindir +16 -0
  415. mindspore/ops/bprop_mindir/ReLUV2_bprop.mindir +0 -0
  416. mindspore/ops/bprop_mindir/ReluGrad_bprop.mindir +18 -19
  417. mindspore/ops/bprop_mindir/Reshape_bprop.mindir +53 -53
  418. mindspore/ops/bprop_mindir/ResizeBilinear_bprop.mindir +29 -0
  419. mindspore/ops/bprop_mindir/ResizeNearestNeighbor_bprop.mindir +77 -85
  420. mindspore/ops/bprop_mindir/SeLU_bprop.mindir +21 -0
  421. mindspore/ops/bprop_mindir/SigmoidCrossEntropyWithLogits_bprop.mindir +21 -0
  422. mindspore/ops/bprop_mindir/SigmoidGrad_bprop.mindir +0 -0
  423. mindspore/ops/bprop_mindir/Sigmoid_bprop.mindir +16 -0
  424. mindspore/ops/bprop_mindir/SmoothL1Loss_bprop.mindir +36 -0
  425. mindspore/ops/bprop_mindir/SoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
  426. mindspore/ops/bprop_mindir/Softplus_bprop.mindir +16 -0
  427. mindspore/ops/bprop_mindir/Softsign_bprop.mindir +33 -0
  428. mindspore/ops/bprop_mindir/SparseSoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
  429. mindspore/ops/bprop_mindir/Squeeze_bprop.mindir +37 -39
  430. mindspore/ops/bprop_mindir/StridedSlice_bprop.mindir +70 -72
  431. mindspore/ops/bprop_mindir/TanhGrad_bprop.mindir +0 -0
  432. mindspore/ops/bprop_mindir/Tanh_bprop.mindir +66 -0
  433. mindspore/ops/bprop_mindir/Tile_bprop.mindir +0 -0
  434. mindspore/ops/bprop_mindir/TopK_bprop.mindir +0 -0
  435. mindspore/ops/bprop_mindir/TupleGetItem_bprop.mindir +17 -17
  436. mindspore/ops/bprop_mindir/UpsampleNearest3D_bprop.mindir +32 -0
  437. mindspore/ops/bprop_mindir/UpsampleTrilinear3D_bprop.mindir +38 -0
  438. mindspore/ops/bprop_mindir/generate_mindir.py +2 -0
  439. mindspore/ops/composite/__init__.py +7 -8
  440. mindspore/ops/composite/base.py +101 -47
  441. mindspore/ops/composite/math_ops.py +188 -158
  442. mindspore/ops/composite/multitype_ops/_compile_utils.py +415 -170
  443. mindspore/ops/composite/multitype_ops/_constexpr_utils.py +142 -87
  444. mindspore/ops/composite/multitype_ops/add_impl.py +6 -1
  445. mindspore/ops/composite/multitype_ops/div_impl.py +2 -3
  446. mindspore/ops/composite/multitype_ops/getitem_impl.py +31 -3
  447. mindspore/ops/composite/multitype_ops/greater_equal_impl.py +31 -0
  448. mindspore/ops/composite/multitype_ops/greater_impl.py +31 -0
  449. mindspore/ops/composite/multitype_ops/in_impl.py +9 -0
  450. mindspore/ops/composite/multitype_ops/less_equal_impl.py +31 -0
  451. mindspore/ops/composite/multitype_ops/less_impl.py +31 -0
  452. mindspore/ops/composite/multitype_ops/mul_impl.py +21 -5
  453. mindspore/ops/composite/multitype_ops/not_in_impl.py +9 -0
  454. mindspore/ops/composite/multitype_ops/ones_like_impl.py +2 -4
  455. mindspore/ops/composite/multitype_ops/setitem_impl.py +21 -3
  456. mindspore/ops/composite/multitype_ops/sub_impl.py +1 -1
  457. mindspore/ops/composite/multitype_ops/zeros_like_impl.py +35 -4
  458. mindspore/ops/function/__init__.py +152 -8
  459. mindspore/ops/function/array_func.py +2555 -674
  460. mindspore/ops/function/clip_func.py +209 -13
  461. mindspore/ops/function/debug_func.py +2 -2
  462. mindspore/ops/function/grad/__init__.py +2 -1
  463. mindspore/ops/function/grad/grad_func.py +147 -62
  464. mindspore/ops/function/image_func.py +54 -38
  465. mindspore/ops/function/linalg_func.py +167 -16
  466. mindspore/ops/function/math_func.py +4849 -1492
  467. mindspore/ops/function/nn_func.py +2573 -988
  468. mindspore/ops/function/other_func.py +115 -0
  469. mindspore/ops/function/parameter_func.py +3 -3
  470. mindspore/ops/function/random_func.py +790 -73
  471. mindspore/ops/function/sparse_func.py +98 -78
  472. mindspore/ops/function/sparse_unary_func.py +54 -53
  473. mindspore/ops/function/spectral_func.py +27 -24
  474. mindspore/ops/function/vmap_func.py +22 -2
  475. mindspore/ops/functional.py +97 -37
  476. mindspore/ops/op_info_register.py +70 -28
  477. mindspore/ops/operations/__init__.py +47 -14
  478. mindspore/ops/operations/_csr_ops.py +7 -7
  479. mindspore/ops/operations/_embedding_cache_ops.py +5 -5
  480. mindspore/ops/operations/_grad_ops.py +276 -187
  481. mindspore/ops/operations/_inner_ops.py +319 -113
  482. mindspore/ops/operations/_ms_kernel.py +10 -8
  483. mindspore/ops/operations/_ocr_ops.py +9 -9
  484. mindspore/ops/operations/_opaque_predicate_registry.py +4 -0
  485. mindspore/ops/operations/_quant_ops.py +137 -102
  486. mindspore/ops/operations/_rl_inner_ops.py +121 -60
  487. mindspore/ops/operations/_scalar_ops.py +466 -0
  488. mindspore/ops/operations/_sequence_ops.py +1004 -2
  489. mindspore/ops/operations/_tensor_array.py +10 -11
  490. mindspore/ops/operations/_thor_ops.py +1 -1
  491. mindspore/ops/operations/array_ops.py +801 -466
  492. mindspore/ops/operations/comm_ops.py +51 -49
  493. mindspore/ops/operations/control_ops.py +2 -2
  494. mindspore/ops/operations/custom_ops.py +123 -44
  495. mindspore/ops/operations/debug_ops.py +24 -24
  496. mindspore/ops/operations/image_ops.py +240 -153
  497. mindspore/ops/operations/inner_ops.py +34 -50
  498. mindspore/ops/operations/linalg_ops.py +31 -9
  499. mindspore/ops/operations/math_ops.py +988 -757
  500. mindspore/ops/operations/nn_ops.py +965 -819
  501. mindspore/ops/operations/other_ops.py +51 -40
  502. mindspore/ops/operations/random_ops.py +204 -122
  503. mindspore/ops/operations/rl_ops.py +8 -9
  504. mindspore/ops/operations/sparse_ops.py +254 -93
  505. mindspore/ops/operations/spectral_ops.py +35 -3
  506. mindspore/ops/primitive.py +111 -9
  507. mindspore/parallel/_auto_parallel_context.py +189 -83
  508. mindspore/parallel/_offload_context.py +185 -0
  509. mindspore/parallel/_parallel_serialization.py +99 -7
  510. mindspore/parallel/_ps_context.py +9 -5
  511. mindspore/parallel/_recovery_context.py +1 -1
  512. mindspore/parallel/_tensor.py +7 -1
  513. mindspore/{nn/transformer → parallel/_transformer}/__init__.py +6 -6
  514. mindspore/{nn/transformer → parallel/_transformer}/layers.py +6 -37
  515. mindspore/{nn/transformer → parallel/_transformer}/loss.py +4 -7
  516. mindspore/{nn/transformer → parallel/_transformer}/moe.py +20 -16
  517. mindspore/{nn/transformer → parallel/_transformer}/op_parallel_config.py +3 -3
  518. mindspore/{nn/transformer → parallel/_transformer}/transformer.py +48 -111
  519. mindspore/parallel/_utils.py +1 -2
  520. mindspore/parallel/algo_parameter_config.py +1 -1
  521. mindspore/parallel/checkpoint_transform.py +37 -34
  522. mindspore/parallel/shard.py +17 -18
  523. mindspore/profiler/common/validator/validate_path.py +2 -2
  524. mindspore/profiler/envprofiling.py +69 -47
  525. mindspore/profiler/parser/ascend_timeline_generator.py +49 -42
  526. mindspore/profiler/parser/base_timeline_generator.py +49 -56
  527. mindspore/profiler/parser/cpu_gpu_timeline_generator.py +98 -78
  528. mindspore/profiler/parser/hwts_log_parser.py +1 -1
  529. mindspore/profiler/parser/integrator.py +15 -14
  530. mindspore/profiler/parser/minddata_analyzer.py +2 -2
  531. mindspore/profiler/parser/msadvisor_analyzer.py +12 -25
  532. mindspore/profiler/parser/msadvisor_parser.py +2 -4
  533. mindspore/profiler/parser/optime_parser.py +17 -18
  534. mindspore/profiler/parser/profiler_info.py +2 -1
  535. mindspore/profiler/profiling.py +218 -186
  536. mindspore/rewrite/__init__.py +3 -1
  537. mindspore/rewrite/api/node.py +1 -114
  538. mindspore/rewrite/api/node_type.py +3 -0
  539. mindspore/rewrite/api/pattern_engine.py +31 -1
  540. mindspore/rewrite/api/scoped_value.py +4 -4
  541. mindspore/rewrite/api/symbol_tree.py +3 -78
  542. mindspore/rewrite/api/tree_node_helper.py +1 -1
  543. mindspore/rewrite/ast_creator_register.py +1 -0
  544. mindspore/rewrite/ast_helpers/__init__.py +2 -2
  545. mindspore/rewrite/ast_helpers/ast_creator.py +1 -2
  546. mindspore/rewrite/ast_helpers/ast_finder.py +65 -0
  547. mindspore/rewrite/ast_helpers/ast_modifier.py +11 -3
  548. mindspore/rewrite/ast_transformers/flatten_recursive_stmt.py +18 -2
  549. mindspore/rewrite/namespace.py +0 -2
  550. mindspore/rewrite/node.py +157 -11
  551. mindspore/rewrite/parsers/assign_parser.py +231 -53
  552. mindspore/rewrite/parsers/class_def_parser.py +187 -109
  553. mindspore/rewrite/parsers/for_parser.py +24 -14
  554. mindspore/rewrite/parsers/function_def_parser.py +21 -4
  555. mindspore/rewrite/parsers/if_parser.py +6 -2
  556. mindspore/rewrite/sparsify/__init__.py +0 -0
  557. mindspore/rewrite/sparsify/sparse_transformer.py +448 -0
  558. mindspore/rewrite/sparsify/sparsify.py +109 -0
  559. mindspore/rewrite/sparsify/utils.py +173 -0
  560. mindspore/rewrite/symbol_tree.py +256 -133
  561. mindspore/rewrite/symbol_tree_builder.py +38 -1
  562. mindspore/run_check/_check_version.py +69 -63
  563. mindspore/run_check/run_check.py +2 -1
  564. mindspore/tinyxml2.dll +0 -0
  565. mindspore/train/__init__.py +1 -1
  566. mindspore/train/_utils.py +28 -5
  567. mindspore/train/amp.py +273 -102
  568. mindspore/train/callback/_backup_and_restore.py +5 -5
  569. mindspore/train/callback/_callback.py +2 -2
  570. mindspore/train/callback/_checkpoint.py +3 -3
  571. mindspore/train/callback/_early_stop.py +3 -3
  572. mindspore/train/callback/_lambda_callback.py +2 -2
  573. mindspore/train/callback/_landscape.py +29 -31
  574. mindspore/train/callback/_loss_monitor.py +3 -3
  575. mindspore/train/callback/_on_request_exit.py +3 -3
  576. mindspore/train/callback/_reduce_lr_on_plateau.py +4 -4
  577. mindspore/train/callback/_summary_collector.py +23 -16
  578. mindspore/train/callback/_time_monitor.py +3 -3
  579. mindspore/train/checkpoint_pb2.py +68 -8
  580. mindspore/train/data_sink.py +15 -3
  581. mindspore/train/dataset_helper.py +10 -15
  582. mindspore/train/loss_scale_manager.py +8 -11
  583. mindspore/train/metrics/__init__.py +1 -1
  584. mindspore/train/metrics/bleu_score.py +1 -1
  585. mindspore/train/metrics/confusion_matrix.py +1 -1
  586. mindspore/train/metrics/cosine_similarity.py +1 -1
  587. mindspore/train/metrics/dice.py +2 -2
  588. mindspore/train/metrics/fbeta.py +1 -1
  589. mindspore/train/metrics/hausdorff_distance.py +4 -3
  590. mindspore/train/metrics/mean_surface_distance.py +2 -2
  591. mindspore/train/metrics/occlusion_sensitivity.py +1 -1
  592. mindspore/train/metrics/perplexity.py +1 -1
  593. mindspore/train/metrics/precision.py +1 -1
  594. mindspore/train/metrics/recall.py +1 -1
  595. mindspore/train/metrics/roc.py +2 -2
  596. mindspore/train/metrics/root_mean_square_surface_distance.py +2 -2
  597. mindspore/train/mind_ir_pb2.py +116 -37
  598. mindspore/train/model.py +45 -28
  599. mindspore/train/serialization.py +295 -188
  600. mindspore/train/summary/_summary_adapter.py +1 -1
  601. mindspore/train/summary/summary_record.py +43 -13
  602. mindspore/train/train_thor/convert_utils.py +2 -2
  603. mindspore/train/train_thor/dataset_helper.py +3 -3
  604. mindspore/turbojpeg.dll +0 -0
  605. mindspore/version.py +1 -1
  606. {mindspore-2.0.0a0.dist-info → mindspore-2.0.0rc1.dist-info}/METADATA +3 -2
  607. {mindspore-2.0.0a0.dist-info → mindspore-2.0.0rc1.dist-info}/RECORD +610 -541
  608. mindspore/compression/__init__.py +0 -19
  609. mindspore/compression/common/constant.py +0 -124
  610. mindspore/compression/export/__init__.py +0 -19
  611. mindspore/compression/export/quant_export.py +0 -515
  612. mindspore/compression/quant/__init__.py +0 -28
  613. mindspore/compression/quant/qat.py +0 -634
  614. mindspore/compression/quant/quant_utils.py +0 -462
  615. mindspore/compression/quant/quantizer.py +0 -68
  616. mindspore/nn/layer/quant.py +0 -1868
  617. mindspore/nn/layer/rnn_utils.py +0 -90
  618. mindspore/nn/probability/dpn/__init__.py +0 -22
  619. mindspore/nn/probability/dpn/vae/__init__.py +0 -25
  620. mindspore/nn/probability/dpn/vae/cvae.py +0 -140
  621. mindspore/nn/probability/dpn/vae/vae.py +0 -124
  622. mindspore/nn/probability/infer/__init__.py +0 -22
  623. mindspore/nn/probability/infer/variational/elbo.py +0 -70
  624. mindspore/nn/probability/infer/variational/svi.py +0 -84
  625. mindspore/nn/probability/toolbox/__init__.py +0 -22
  626. mindspore/nn/probability/toolbox/anomaly_detection.py +0 -99
  627. mindspore/nn/probability/toolbox/uncertainty_evaluation.py +0 -364
  628. mindspore/nn/probability/transforms/__init__.py +0 -22
  629. mindspore/nn/probability/transforms/transform_bnn.py +0 -262
  630. mindspore/nn/probability/zhusuan/__init__.py +0 -18
  631. mindspore/nn/probability/zhusuan/framework/__init__.py +0 -18
  632. mindspore/nn/probability/zhusuan/framework/bn.py +0 -95
  633. mindspore/nn/probability/zhusuan/variational/__init__.py +0 -18
  634. mindspore/nn/probability/zhusuan/variational/elbo.py +0 -46
  635. mindspore/ops/_op_impl/aicpu/parallel_concat.py +0 -42
  636. mindspore/ops/_op_impl/tbe/gather_v2.py +0 -56
  637. mindspore/ops/bprop_mindir/AssignAdd_bprop.mindir +0 -19
  638. mindspore/ops/bprop_mindir/Cast_bprop.mindir +0 -19
  639. mindspore/ops/bprop_mindir/LogicalOr_bprop.mindir +0 -19
  640. mindspore/ops/bprop_mindir/MatMul_bprop.mindir +0 -0
  641. mindspore/ops/bprop_mindir/ReLU_bprop.mindir +0 -17
  642. mindspore/ops/bprop_mindir/Transpose_bprop.mindir +0 -0
  643. mindspore/ops/bprop_mindir/UpdateState_bprop.mindir +0 -15
  644. mindspore/ops/composite/array_ops.py +0 -241
  645. mindspore/ops/composite/clip_ops.py +0 -134
  646. mindspore/ops/composite/random_ops.py +0 -426
  647. mindspore/ops/composite/vmap_ops.py +0 -38
  648. mindspore/parallel/nn/__init__.py +0 -42
  649. mindspore/parallel/nn/loss.py +0 -22
  650. mindspore/parallel/nn/moe.py +0 -21
  651. mindspore/parallel/nn/op_parallel_config.py +0 -22
  652. mindspore/parallel/nn/transformer.py +0 -31
  653. {mindspore-2.0.0a0.dist-info → mindspore-2.0.0rc1.dist-info}/WHEEL +0 -0
  654. {mindspore-2.0.0a0.dist-info → mindspore-2.0.0rc1.dist-info}/entry_points.txt +0 -0
  655. {mindspore-2.0.0a0.dist-info → mindspore-2.0.0rc1.dist-info}/top_level.txt +0 -0
@@ -21,21 +21,24 @@ import numpy as np
21
21
  from mindspore.common import Tensor
22
22
  from mindspore.ops import composite as C
23
23
  from mindspore.ops.operations.array_ops import Cast
24
+ from mindspore.ops.operations._scalar_ops import bit_or, bit_and
24
25
  from mindspore.ops import signature as sig
25
26
  from mindspore.ops.operations.math_ops import _infer_shape_reduce
26
27
  from mindspore.ops.primitive import PrimitiveWithCheck, PrimitiveWithInfer, prim_attr_register, Primitive, _run_op
27
28
  from mindspore import context
28
- from mindspore._checkparam import Rel
29
- from mindspore._checkparam import Validator as validator
29
+ from mindspore._c_expression import Tensor as Tensor_
30
+ from mindspore._c_expression import typing
31
+ from mindspore import _checkparam as validator
30
32
  from mindspore.common import dtype as mstype
31
33
  from mindspore.common.parameter import Parameter
32
34
  from mindspore.communication.management import GlobalComm
33
35
  from mindspore.common.api import _pynative_executor
36
+ from mindspore.common._register_for_adapter import ms_adapter_registry
34
37
 
35
38
 
36
39
  # Bit operation
37
- bit_and = Primitive("bit_and")
38
- bit_or = Primitive("bit_or")
40
+ bit_and = bit_and()
41
+ bit_or = bit_or()
39
42
  bit_xor = Primitive("bit_xor")
40
43
  bit_left_shift = Primitive("bit_left_shift")
41
44
  bit_right_shift = Primitive("bit_right_shift")
@@ -50,54 +53,10 @@ string_mul = Primitive("string_mul")
50
53
  string_getitem = Primitive("string_getitem")
51
54
 
52
55
 
53
- class FillV2(Primitive):
54
- """
55
- Creates a tensor filled with a scalar value.
56
-
57
- Creates a tensor with shape described by the first argument and fills it with values in the second argument.
58
-
59
- Inputs:
60
- - **shape** (tensor) - The specified shape of output tensor. The shape of the input1 must be 1D and
61
- the data type of the input1 must be int32 or int64.
62
- - **value** (tensor) - Value to fill the returned tensor. The shape of the input2 must be 0D and
63
- the data type of the input2 must be one of the following types:
64
- bool, int8, int16, int32, int64, uint8, uint16, uint32, uint64, float16, float32, float64.
65
-
66
- Outputs:
67
- A tensor, has the same type and shape as input value.
68
-
69
- Raises:
70
- ValueError: If `shape` is not a 1D tensor.
71
- TypeError: If the data type of `shape` is not int32 or int64.
72
- ValueError: If `value` is not a 0D tensor.
73
- ValueError: If the number of output elements is greater than 1000000.
74
-
75
- Supported Platforms:
76
- ``CPU``
77
-
78
- Examples:
79
- >>> fillV2 = ops.FillV2()
80
- >>> output = fillV2(Tensor([2, 3], mindspore.int32), Tensor(1, mindspore.float32))
81
- >>> print(output)
82
- [[1. 1. 1.]
83
- [1. 1. 1.]]
84
- >>> output = fillV2(Tensor([3, 3], mindspore.int64), Tensor(0, mindspore.int32))
85
- >>> print(output)
86
- [[0 0 0]
87
- [0 0 0]
88
- [0 0 0]]
89
- """
90
-
91
- @prim_attr_register
92
- def __init__(self):
93
- """Initialize FillV2"""
94
- self.add_prim_attr("max_length", 1000000)
95
-
96
-
97
56
  class ExtractImagePatches(Primitive):
98
- """
57
+ r"""
99
58
  Extracts patches from images.
100
- The input tensor must be a 4-D tensor and the data format is NHWC.
59
+ The input tensor must be a 4-D tensor and the data format is NCHW.
101
60
 
102
61
  Args:
103
62
  ksizes (Union[tuple[int], list[int]]): The size of sliding window, must be a tuple or a list of integers,
@@ -114,12 +73,32 @@ class ExtractImagePatches(Primitive):
114
73
  - valid: Means that the taken patch area must be completely covered in the original image.
115
74
 
116
75
  Inputs:
117
- - **input_x** (Tensor) - A 4-D tensor whose shape is [in_batch, in_row, in_col, in_depth] and
76
+ - **input_x** (Tensor) - A 4-D tensor whose shape is [in_batch, in_depth, in_row, in_col] and
118
77
  data type is number.
119
78
 
120
79
  Outputs:
121
80
  Tensor, a 4-D tensor whose data type is same as 'input_x',
122
- and the shape is [out_batch, out_row, out_col, out_depth], the out_batch is the same as the in_batch.
81
+ and the shape is [out_batch, out_depth, out_row, out_col], Where the out_batch is the same as the in_batch
82
+ and
83
+
84
+ .. math::
85
+ out_depth=ksize\_row * ksize\_col * in\_depth
86
+
87
+ and
88
+ if 'padding' is "valid":
89
+
90
+ .. math::
91
+ out\_row=floor((in\_row - (ksize\_row + (ksize\_row - 1) * (rate\_row - 1))) / stride\_row) + 1
92
+ out\_col=floor((in\_col - (ksize\_col + (ksize\_col - 1) * (rate\_col - 1))) / stride\_col) + 1
93
+
94
+ if 'padding' is "same":
95
+
96
+ .. math::
97
+ out\_row=floor((in\_row - 1) / stride\_row) + 1
98
+ out\_col=floor((in\_col - 1) / stride\_col) + 1
99
+
100
+ Supported Platforms:
101
+ ``Ascend`` ``GPU``
123
102
  """
124
103
 
125
104
  @prim_attr_register
@@ -223,12 +202,14 @@ class Lamb(PrimitiveWithInfer):
223
202
  Default: 0.0.
224
203
  - **global_step** (Tensor) - Tensor to record current global step.
225
204
  - **gradient** (Tensor) - Gradient, has the same shape and data type as `var`.
205
+
226
206
  Outputs:
227
207
  Tensor, the updated parameters.
208
+
228
209
  - **var** (Tensor) - The same shape and data type as `var`.
229
210
 
230
211
  Supported Platforms:
231
- ``GPU`` ``Ascend``
212
+ ``Ascend````GPU``
232
213
  """
233
214
 
234
215
  @prim_attr_register
@@ -238,9 +219,9 @@ class Lamb(PrimitiveWithInfer):
238
219
 
239
220
  def infer_shape(self, var_shape, m_shape, v_shape, lr_shape, beta1_shape, beta2_shape,
240
221
  epsilon_shape, decay_shape, global_step_shape, gradient_shape):
241
- validator.check("var_shape", var_shape, "m_shape", m_shape, Rel.EQ, self.name)
242
- validator.check("var_shape", var_shape, "v_shape", v_shape, Rel.EQ, self.name)
243
- validator.check("var_shape", var_shape, "gradient_shape", gradient_shape, Rel.EQ, self.name)
222
+ validator.check("var_shape", var_shape, "m_shape", m_shape, validator.EQ, self.name)
223
+ validator.check("var_shape", var_shape, "v_shape", v_shape, validator.EQ, self.name)
224
+ validator.check("var_shape", var_shape, "gradient_shape", gradient_shape, validator.EQ, self.name)
244
225
  return var_shape
245
226
 
246
227
  def infer_dtype(self, var_dtype, m_dtype, v_dtype, lr_dtype, beta1_dtype, beta2_dtype,
@@ -344,18 +325,18 @@ class MatrixDiag(PrimitiveWithInfer):
344
325
  return x_dtype
345
326
 
346
327
  def infer_shape(self, x_shape, assist_shape):
347
- validator.check_int(len(assist_shape), 2, Rel.GE, "assist rank", self.name)
328
+ validator.check_int(len(assist_shape), 2, validator.GE, "assist rank", self.name)
348
329
  validator.check('rank of x', len(x_shape) + 1,
349
- 'rank of assist', len(assist_shape), Rel.LE, self.name)
330
+ 'rank of assist', len(assist_shape), validator.LE, self.name)
350
331
  validator.check('assist\'s penultimate dimension', assist_shape[-2], 'assist\'s last dimension',
351
- assist_shape[-1], Rel.EQ, self.name)
332
+ assist_shape[-1], validator.EQ, self.name)
352
333
 
353
334
  r_end_dim = -len(x_shape)
354
335
  r_idx = -1
355
336
  while r_idx >= r_end_dim:
356
337
  if x_shape[r_idx] != 1:
357
338
  validator.check("reverse x dim %d" % r_idx, x_shape[r_idx], "reverse assist dim %d" %
358
- assist_shape[r_idx - 1], assist_shape[r_idx - 1], Rel.EQ, self.name)
339
+ assist_shape[r_idx - 1], assist_shape[r_idx - 1], validator.EQ, self.name)
359
340
  r_idx = r_idx - 1
360
341
 
361
342
  return assist_shape
@@ -393,8 +374,8 @@ class MatrixDiagPart(PrimitiveWithInfer):
393
374
  return x_dtype
394
375
 
395
376
  def infer_shape(self, x_shape, assist_shape):
396
- validator.check_int(len(x_shape), 2, Rel.GE, "x rank", self.name)
397
- validator.check("x shape", x_shape, "assist shape", assist_shape, Rel.EQ, self.name)
377
+ validator.check_int(len(x_shape), 2, validator.GE, "x rank", self.name)
378
+ validator.check("x shape", x_shape, "assist shape", assist_shape, validator.EQ, self.name)
398
379
 
399
380
  if assist_shape[-2] < assist_shape[-1]:
400
381
  out_shape = assist_shape[:-1]
@@ -555,15 +536,15 @@ class MatrixSetDiag(PrimitiveWithInfer):
555
536
  return x_dtype
556
537
 
557
538
  def infer_shape(self, x_shape, diagonal_shape, assist_shape):
558
- validator.check_int(len(x_shape), 2, Rel.GE, "x rank", self.name)
559
- validator.check("x shape", x_shape, "assist shape", assist_shape, Rel.EQ, self.name)
539
+ validator.check_int(len(x_shape), 2, validator.GE, "x rank", self.name)
540
+ validator.check("x shape", x_shape, "assist shape", assist_shape, validator.EQ, self.name)
560
541
 
561
542
  if x_shape[-2] < x_shape[-1]:
562
543
  validator.check("diagonal shape", diagonal_shape, "x shape excluding the last dimension",
563
- x_shape[:-1], Rel.EQ, self.name)
544
+ x_shape[:-1], validator.EQ, self.name)
564
545
  else:
565
546
  validator.check("diagonal shape", diagonal_shape, "x shape excluding the second last dimension",
566
- x_shape[:-2] + x_shape[-1:], Rel.EQ, self.name)
547
+ x_shape[:-2] + x_shape[-1:], validator.EQ, self.name)
567
548
 
568
549
  return assist_shape
569
550
 
@@ -680,7 +661,7 @@ class ConvertToDynamic(PrimitiveWithCheck):
680
661
  self.init_prim_io_names(inputs=["input"], outputs=["output"])
681
662
 
682
663
  def check_shape(self, input_shape):
683
- validator.check("input_shape rank", len(input_shape), "", 0, Rel.GT, self.name)
664
+ validator.check("input_shape rank", len(input_shape), "", 0, validator.GT, self.name)
684
665
 
685
666
  def check_dtype(self, input_dtype):
686
667
  validator.check_subclass("input_dtype", input_dtype, mstype.tensor, self.name)
@@ -730,7 +711,7 @@ class GpuConvertToDynamicShape(PrimitiveWithCheck):
730
711
  self.init_prim_io_names(inputs=["input"], outputs=["output"])
731
712
 
732
713
  def check_shape(self, input_shape):
733
- validator.check("input_shape rank", len(input_shape), "", 0, Rel.GT, self.name)
714
+ validator.check("input_shape rank", len(input_shape), "", 0, validator.GT, self.name)
734
715
 
735
716
  def check_dtype(self, input_dtype):
736
717
  validator.check_subclass("input_dtype", input_dtype, mstype.tensor, self.name)
@@ -811,7 +792,7 @@ class SequenceMask(PrimitiveWithCheck):
811
792
  One mask tensor of shape lengths.shape + (maxlen,).
812
793
 
813
794
  Supported Platforms:
814
- ``GPU``
795
+ ``GPU`` ``CPU``
815
796
 
816
797
  Examples:
817
798
  >>> from mindspore import ops
@@ -831,8 +812,8 @@ class SequenceMask(PrimitiveWithCheck):
831
812
  self.init_prim_io_names(inputs=["lengths", "maxlen"], outputs=["mask"])
832
813
 
833
814
  def check_shape(self, lengths_shape, maxlen_shape):
834
- validator.check("lengths_shape", len(lengths_shape), "", 0, Rel.GT, self.name)
835
- validator.check("maxlen_shape", len(maxlen_shape), "", 0, Rel.EQ, self.name)
815
+ validator.check("lengths_shape", len(lengths_shape), "", 0, validator.GT, self.name)
816
+ validator.check("maxlen_shape", len(maxlen_shape), "", 0, validator.EQ, self.name)
836
817
 
837
818
  def check_dtype(self, lengths_dtype, maxlen_dtype):
838
819
  validator.check_subclass("lengths_dtype", lengths_dtype, mstype.tensor, self.name)
@@ -904,10 +885,10 @@ class SyncBatchNorm(Primitive):
904
885
 
905
886
  @prim_attr_register
906
887
  def __init__(self, epsilon=1e-5, momentum=0.1, group="sync_bn_group0", device_num=2):
907
- validator.check_float_range(epsilon, 0, 1, Rel.INC_RIGHT, 'epsilon', self.name)
908
- validator.check_float_range(momentum, 0, 1, Rel.INC_BOTH, 'momentum', self.name)
888
+ validator.check_float_range(epsilon, 0, 1, validator.INC_RIGHT, 'epsilon', self.name)
889
+ validator.check_float_range(momentum, 0, 1, validator.INC_BOTH, 'momentum', self.name)
909
890
  validator.check_isinstance("group", group, str)
910
- validator.check_int(device_num, 2, Rel.GE, "device_num", self.name)
891
+ validator.check_int(device_num, 2, validator.GE, "device_num", self.name)
911
892
  self.init_prim_io_names(inputs=['x', 'scale', 'offset', 'mean', 'variance'],
912
893
  outputs=['y', 'batch_mean', 'batch_variance', 'reserve_space_1', 'reserve_space_2'])
913
894
  self.add_prim_attr('side_effect_mem', True)
@@ -970,7 +951,7 @@ class Centralization(PrimitiveWithInfer):
970
951
  validator.check_value_type('axis', axis_v, [int, list, tuple], self.name)
971
952
 
972
953
  if isinstance(axis_v, int):
973
- validator.check_int_range(axis_v, -rank, rank, Rel.INC_LEFT, 'axis', self.name)
954
+ validator.check_int_range(axis_v, -rank, rank, validator.INC_LEFT, 'axis', self.name)
974
955
  elif axis:
975
956
  for index, one_axis in enumerate(axis_v):
976
957
  validator.check_value_type('axis[%d]' % index, one_axis, [int], self.name)
@@ -1071,9 +1052,9 @@ class StackPop(PrimitiveWithInfer):
1071
1052
  validator.check_value_type("index", index, [int], self.name)
1072
1053
 
1073
1054
  validator.check_value_type('shape type', shape, [list, tuple], self.name)
1074
- validator.check_int(len(np.array(shape).shape), 1, Rel.EQ, "dim of shape", self.name)
1055
+ validator.check_int(len(np.array(shape).shape), 1, validator.EQ, "dim of shape", self.name)
1075
1056
  for elem in shape:
1076
- validator.check_int(elem, 1, Rel.GE, 'shape element', self.name)
1057
+ validator.check_int(elem, 1, validator.GE, 'shape element', self.name)
1077
1058
  validator.check_value_type('type of shape element', elem, [int], self.name)
1078
1059
 
1079
1060
  validator.check_type_name("dtype", dtype, (mstype.bool_,) + mstype.number_type, self.name)
@@ -1154,22 +1135,22 @@ class DynamicStitch(PrimitiveWithCheck):
1154
1135
 
1155
1136
  def check_shape(self, indices_shape, data_shape):
1156
1137
  validator.check_value_type("shape of indices", indices_shape, [tuple, list], self.name)
1157
- validator.check_int(len(indices_shape), 1, Rel.GE, "len of indices_shape", self.name)
1138
+ validator.check_int(len(indices_shape), 1, validator.GE, "len of indices_shape", self.name)
1158
1139
  indices_dim0 = len(indices_shape[0])
1159
1140
  indices_num = len(indices_shape)
1160
1141
 
1161
1142
  validator.check_value_type("shape of data", data_shape, [tuple, list], self.name)
1162
- validator.check_int(len(data_shape), 1, Rel.GE, "len of data_shape", self.name)
1143
+ validator.check_int(len(data_shape), 1, validator.GE, "len of data_shape", self.name)
1163
1144
  data_dim0 = len(data_shape[0])
1164
1145
  data_num = len(indices_shape)
1165
1146
 
1166
- validator.check("size of indices", indices_num, 'size of data', data_num, Rel.EQ, self.name)
1147
+ validator.check("size of indices", indices_num, 'size of data', data_num, validator.EQ, self.name)
1167
1148
 
1168
1149
  # shape of `data` must start with shape of `indices`
1169
1150
  for i in range(0, indices_num):
1170
1151
  indices_dim = len(indices_shape[i])
1171
1152
  data_dim = len(data_shape[i])
1172
- validator.check(f"dim of indices[{i}]", indices_dim, f"dim of data[{i}]", data_dim, Rel.LE, self.name)
1153
+ validator.check(f"dim of indices[{i}]", indices_dim, f"dim of data[{i}]", data_dim, validator.LE, self.name)
1173
1154
  if data_shape[i][:indices_dim] != data_shape[i][:indices_dim]:
1174
1155
  raise ValueError(f"data[{i}].shape: {data_shape} does not start with indices[{i}].shape: {data_shape}")
1175
1156
 
@@ -1180,10 +1161,10 @@ class DynamicStitch(PrimitiveWithCheck):
1180
1161
  data_dim = len(data_shape[i])
1181
1162
  extra = data_dim - indices_dim
1182
1163
  validator.check(f"extra dim of data[{i}]", extra,
1183
- f"extra dim of data[0]", base_extra, Rel.EQ, self.name)
1164
+ f"extra dim of data[0]", base_extra, validator.EQ, self.name)
1184
1165
  validator.check(f"data[0].shape[{indices_dim0}:]", data_shape[0][indices_dim0:],
1185
1166
  f"data[{i}].shape[{len(indices_shape[i])}:]",
1186
- data_shape[i][indices_dim:], Rel.EQ, self.name)
1167
+ data_shape[i][indices_dim:], validator.EQ, self.name)
1187
1168
 
1188
1169
  out_shape = [-1] + data_shape[0][indices_dim0:]
1189
1170
  return out_shape
@@ -1196,7 +1177,8 @@ class DynamicStitch(PrimitiveWithCheck):
1196
1177
  validator.check_tensor_dtype_valid(f'indices[{i}]', indices_type[i], mstype.int32, self.name)
1197
1178
  validator.check_tensor_dtype_valid(f'data[{i}]', data_type[i],
1198
1179
  mstype.number_type + (mstype.bool_,), self.name)
1199
- validator.check(f"type of data[{i}]", data_type[i], f"type of data[0]", data_type[0], Rel.EQ, self.name)
1180
+ validator.check(f"type of data[{i}]", data_type[i], f"type of data[0]",
1181
+ data_type[0], validator.EQ, self.name)
1200
1182
  return data_type[0]
1201
1183
 
1202
1184
 
@@ -1464,10 +1446,16 @@ class SliceGetItem(Primitive):
1464
1446
  raise TypeError(
1465
1447
  "Primitive[SliceGetItem] only support to get a slice type element but got {}".format(slice_value))
1466
1448
  if value == "start":
1449
+ if hasattr(slice_value.start, "ndim") and slice_value.start.ndim == 1:
1450
+ return slice_value.start.item()
1467
1451
  return slice_value.start
1468
1452
  if value == "stop":
1453
+ if hasattr(slice_value.stop, "ndim") and slice_value.stop.ndim == 1:
1454
+ return slice_value.stop.item()
1469
1455
  return slice_value.stop
1470
1456
  if value == "step":
1457
+ if hasattr(slice_value.step, "ndim") and slice_value.step.ndim == 1:
1458
+ return slice_value.step.item()
1471
1459
  return slice_value.step
1472
1460
  raise AttributeError("\'slice\' object has no attribute {}".format(value))
1473
1461
 
@@ -1489,7 +1477,7 @@ class DynamicBroadcastTo(Primitive):
1489
1477
  ValueError: if the target and input shapes are incompatible.
1490
1478
 
1491
1479
  Supported Platforms:
1492
- ``Ascend``
1480
+ ``Ascend`` ``GPU`` ``CPU``
1493
1481
  """
1494
1482
 
1495
1483
  @prim_attr_register
@@ -1502,12 +1490,25 @@ class Cummin(Primitive):
1502
1490
  r"""
1503
1491
  Returns the cumulative minimum of elements and the index.
1504
1492
 
1493
+ .. warning::
1494
+ This is an experimental API that is subject to change or deletion.
1495
+
1505
1496
  Refer to :func:`mindspore.ops.cummin` for more detail.
1506
1497
 
1507
1498
  Supported Platforms:
1508
1499
  ``Ascend`` ``GPU`` ``CPU``
1509
- """
1510
1500
 
1501
+ Examples:
1502
+ >>> from mindspore import Tensor, ops
1503
+ >>> import mindspore
1504
+ >>> a = Tensor([-0.2284, -0.6628, 0.0975, 0.2680, -1.3298, -0.4220], mindspore.float32)
1505
+ >>> func = ops.Cummin(axis=0)
1506
+ >>> output = func(a)
1507
+ >>> print(output[0])
1508
+ [-0.2284 -0.6628 -0.6628 -0.6628 -1.3298 -1.3298]
1509
+ >>> print(output[1])
1510
+ [0 1 1 1 4 4]
1511
+ """
1511
1512
  @prim_attr_register
1512
1513
  def __init__(self, axis):
1513
1514
  """Initialize Cummin"""
@@ -1624,7 +1625,7 @@ class ParallelResizeBilinear(PrimitiveWithInfer):
1624
1625
  """Initialize ParallelResizeBilinear."""
1625
1626
  validator.check_value_type("ori_image_size", ori_image_size, [list, tuple], self.name)
1626
1627
  validator.check_value_type("split_size", split_size, [list, tuple], self.name)
1627
- validator.check_int(len(split_size), 2, Rel.EQ, "len of split_size", self.name)
1628
+ validator.check_int(len(split_size), 2, validator.EQ, "len of split_size", self.name)
1628
1629
  validator.check_value_type("src_start_w", src_start_w, [int], self.name)
1629
1630
  validator.check_value_type("dst_start_w", dst_start_w, [int], self.name)
1630
1631
  validator.check_value_type("align_corners", align_corners, [bool], self.name)
@@ -1942,21 +1943,23 @@ class KMeansCentroids(PrimitiveWithInfer):
1942
1943
  def infer_shape(self, x_shape, y_shape, sum_square_y_shape, sum_square_x_shape):
1943
1944
  """infer shape of primitive"""
1944
1945
  expected_shape_size = 2
1945
- validator.check_int(len(x_shape), expected_shape_size, Rel.EQ, "dims of x", self.name)
1946
- validator.check_int(len(y_shape), expected_shape_size, Rel.EQ, "dims of y", self.name)
1947
- validator.check_int(len(sum_square_y_shape), expected_shape_size, Rel.EQ, "dims of sum_square_y", self.name)
1948
- validator.check_int(len(sum_square_x_shape), expected_shape_size, Rel.EQ, "dims of sum_square_x", self.name)
1949
-
1950
- validator.check_int(x_shape[1], y_shape[1], Rel.EQ,
1946
+ validator.check_int(len(x_shape), expected_shape_size, validator.EQ, "dims of x", self.name)
1947
+ validator.check_int(len(y_shape), expected_shape_size, validator.EQ, "dims of y", self.name)
1948
+ validator.check_int(len(sum_square_y_shape), expected_shape_size, validator.EQ,
1949
+ "dims of sum_square_y", self.name)
1950
+ validator.check_int(len(sum_square_x_shape), expected_shape_size, validator.EQ,
1951
+ "dims of sum_square_x", self.name)
1952
+
1953
+ validator.check_int(x_shape[1], y_shape[1], validator.EQ,
1951
1954
  "the second dim of x and the second dim of y", self.name)
1952
- validator.check_int(y_shape[0], sum_square_y_shape[1], Rel.EQ,
1955
+ validator.check_int(y_shape[0], sum_square_y_shape[1], validator.EQ,
1953
1956
  "the first dim of y and the second dim of sum_square_y", self.name)
1954
- validator.check_int(x_shape[0], sum_square_x_shape[0], Rel.EQ,
1957
+ validator.check_int(x_shape[0], sum_square_x_shape[0], validator.EQ,
1955
1958
  "the first dim of x and the first dim of sum_square_x", self.name)
1956
- validator.check_int(sum_square_y_shape[0], sum_square_x_shape[1], Rel.EQ,
1959
+ validator.check_int(sum_square_y_shape[0], sum_square_x_shape[1], validator.EQ,
1957
1960
  "the first dim of sum_square_y and the first dim of sum_square_x",
1958
1961
  self.name)
1959
- validator.check_int(sum_square_y_shape[0], 1, Rel.EQ,
1962
+ validator.check_int(sum_square_y_shape[0], 1, validator.EQ,
1960
1963
  "the first dim of sum_square_y", self.name)
1961
1964
 
1962
1965
  k = y_shape[0]
@@ -2027,7 +2030,7 @@ class ClipByNorm(PrimitiveWithInfer):
2027
2030
  x_dim = len(x_shape)
2028
2031
  axis = self.axis if isinstance(self.axis, Iterable) else (self.axis,)
2029
2032
  for _, value in enumerate(axis):
2030
- validator.check_int_range(value, -x_dim, x_dim, Rel.INC_LEFT, 'axis', self.name)
2033
+ validator.check_int_range(value, -x_dim, x_dim, validator.INC_LEFT, 'axis', self.name)
2031
2034
  return x_shape
2032
2035
 
2033
2036
  def infer_dtype(self, x_type, clip_norm_type):
@@ -2054,21 +2057,22 @@ class TopTypeof(Primitive):
2054
2057
  def __init__(self):
2055
2058
  self.prim = Primitive('TopTypeof')
2056
2059
  self.typeof_cache = {
2057
- 'slice': _pynative_executor.constant_folding(self.prim, slice(None, None, None)),
2058
- 'list': _pynative_executor.constant_folding(self.prim, []),
2059
- 'tuple': _pynative_executor.constant_folding(self.prim, ()),
2060
- 'Tensor': _pynative_executor.constant_folding(self.prim, Tensor(np.ones([1], dtype=np.float32))),
2061
- 'NoneType': _pynative_executor.constant_folding(self.prim, None),
2062
- 'int': _pynative_executor.constant_folding(self.prim, 0),
2063
- 'bool': _pynative_executor.constant_folding(self.prim, False),
2064
- 'ellipsis': _pynative_executor.constant_folding(self.prim, ...)
2060
+ 'slice': mstype.Slice(),
2061
+ 'list': mstype.List(),
2062
+ 'tuple': mstype.Tuple(),
2063
+ 'Tensor': mstype.tensor,
2064
+ 'NoneType': mstype.none_type(),
2065
+ 'int': mstype.Int(),
2066
+ 'bool': mstype.Bool(),
2067
+ 'ellipsis': mstype.Ellipsis_(),
2068
+ 'dict': mstype.Dict()
2065
2069
  }
2066
2070
 
2067
2071
  def __call__(self, x):
2068
2072
  index_type = type(x).__name__
2069
2073
  if 'Tensor' in index_type:
2070
2074
  index_type = 'Tensor'
2071
- if index_type in ('slice', 'list', 'tuple', 'Tensor', 'NoneType', 'int', 'bool', 'ellipsis'):
2075
+ if index_type in self.typeof_cache:
2072
2076
  return self.typeof_cache.get(index_type)
2073
2077
  return _pynative_executor.constant_folding(self.prim, x)
2074
2078
 
@@ -2237,20 +2241,27 @@ class SameTypeShape(PrimitiveWithInfer):
2237
2241
  """run in PyNative mode"""
2238
2242
  validator.check_value_type('x', x, Tensor, self.name)
2239
2243
  validator.check_value_type('y', y, Tensor, self.name)
2240
- validator.check('x dtype', x.dtype, 'y dtype', y.dtype, Rel.EQ, self.name, TypeError)
2241
- validator.check('x shape', x.shape, 'y shape', y.shape, Rel.EQ, self.name)
2244
+ validator.check('x dtype', x.dtype, 'y dtype', y.dtype, validator.EQ, self.name, TypeError)
2245
+ validator.check('x shape', x.shape, 'y shape', y.shape, validator.EQ, self.name)
2242
2246
  return x
2243
2247
 
2244
2248
  def __infer__(self, x, y):
2245
2249
  validator.check_subclass('x', x['dtype'], mstype.tensor, self.name)
2246
2250
  validator.check_subclass('y', y['dtype'], mstype.tensor, self.name)
2247
- validator.check('x dtype', x['dtype'], 'y dtype', y['dtype'], Rel.EQ, self.name, TypeError)
2248
- validator.check('x shape', x['shape'], 'y shape', y['shape'], Rel.EQ, self.name)
2251
+ validator.check('x dtype', x['dtype'], 'y dtype', y['dtype'], validator.EQ, self.name, TypeError)
2252
+ validator.check('x shape', x['shape'], 'y shape', y['shape'], validator.EQ, self.name)
2249
2253
  return x
2250
2254
 
2255
+
2251
2256
  same_type_shape_ = SameTypeShape()
2252
2257
 
2253
2258
 
2259
+ def _is_subclass_(type_, dtype):
2260
+ if not isinstance(type_, typing.Type):
2261
+ return False
2262
+ return typing.is_subclass(type_, dtype)
2263
+
2264
+
2254
2265
  class IsSubClass(PrimitiveWithInfer):
2255
2266
  """
2256
2267
  Checks whether this type is a sub-class of another type.
@@ -2285,7 +2296,7 @@ class IsSubClass(PrimitiveWithInfer):
2285
2296
  validator.check_value_type("sub_type", sub_type_t, [mstype.Type], self.name)
2286
2297
  validator.check_value_type("type_", type_v, [mstype.Type], self.name)
2287
2298
 
2288
- value = mstype._issubclass_(sub_type_t, type_v) # pylint: disable=W0212
2299
+ value = _is_subclass_(sub_type_t, type_v)
2289
2300
 
2290
2301
  out = {'shape': (),
2291
2302
  'dtype': mstype.type_type,
@@ -2335,9 +2346,204 @@ class IsInstance(PrimitiveWithInfer):
2335
2346
  elif type_v == mstype.tuple_:
2336
2347
  value = isinstance(sub_type_t, tuple)
2337
2348
  else:
2338
- value = mstype._issubclass_(sub_type_t, type_v) # pylint: disable=W0212
2349
+ value = _is_subclass_(sub_type_t, type_v)
2339
2350
 
2340
2351
  out = {'shape': (),
2341
2352
  'dtype': mstype.type_type,
2342
2353
  'value': value}
2343
2354
  return out
2355
+
2356
+
2357
+ class ConvertToAdapterTensor(Primitive):
2358
+ """
2359
+ Convert a tensor from MindSpore's Tensor type to MSAdapter's Tensor type,
2360
+ where MSAdapter's Tensor is a subclass of MindSpore's Tensor.
2361
+
2362
+ Inputs:
2363
+ - **x** (Tensor) - The input tensor.
2364
+
2365
+ Outputs:
2366
+ A tensor, whose type is MSAdapter's Tensor.
2367
+
2368
+ Supported Platforms:
2369
+ ``Ascend`` ``GPU`` ``CPU``
2370
+
2371
+ Examples:
2372
+ >>> x = Tensor([1, 2 ,3])
2373
+ >>> x = ops.ConvertToAdapterTensor()(x)
2374
+ >>> print(x)
2375
+ [1 2 3]
2376
+ """
2377
+ @prim_attr_register
2378
+ def __init__(self):
2379
+ """Initialize"""
2380
+
2381
+ def __call__(self, x):
2382
+ """run in PyNative mode"""
2383
+ return ms_adapter_registry.tensor(x, inner=True)
2384
+
2385
+ convert_to_adapter_tensor = ConvertToAdapterTensor()
2386
+
2387
+
2388
+ class ConvertToMsTensor(Primitive):
2389
+ """
2390
+ Convert a tensor from MSAdapter's Tensor type to MindSpore's Tensor type,
2391
+ where MSAdapter's Tensor is a subclass of MindSpore's Tensor.
2392
+
2393
+ Inputs:
2394
+ - **x** (Tensor) - The input tensor.
2395
+
2396
+ Outputs:
2397
+ A tensor, whose type is MindSpore's Tensor.
2398
+
2399
+ Supported Platforms:
2400
+ ``Ascend`` ``GPU`` ``CPU``
2401
+
2402
+ Examples:
2403
+ >>> x = Tensor([1, 2 ,3])
2404
+ >>> x = ops.ConvertToMsTensor()(x)
2405
+ >>> print(x)
2406
+ [1 2 3]
2407
+ """
2408
+ @prim_attr_register
2409
+ def __init__(self):
2410
+ """Initialize"""
2411
+
2412
+ def __call__(self, x):
2413
+ """run in PyNative mode"""
2414
+ return Tensor(x)
2415
+
2416
+ convert_to_ms_tensor = ConvertToMsTensor()
2417
+
2418
+
2419
+ class GetGrad(Primitive):
2420
+ """
2421
+ Use the position id or Parameter object to get the gradient from the output
2422
+ which returned by the :func:`mindspore.ops.grad`.
2423
+ """
2424
+
2425
+ @prim_attr_register
2426
+ def __init__(self):
2427
+ """Initialize ScatterElements"""
2428
+ self.init_prim_io_names(
2429
+ inputs=['gradients', 'x'], outputs=['gradient'])
2430
+
2431
+ def __call__(self, gradients, x):
2432
+ if not isinstance(x, int) and not isinstance(x, Parameter):
2433
+ raise TypeError(
2434
+ f"For `get_grad`, the `x` should be an integer or a Parameter, but got {x}")
2435
+ hash_id = x
2436
+ if isinstance(x, Parameter):
2437
+ hash_id = x.name
2438
+ output = None
2439
+
2440
+ def _get_grad(grads, identifier):
2441
+ if isinstance(grads, tuple):
2442
+ if len(grads) != 2 or identifier != grads[0]:
2443
+ for gradient in grads:
2444
+ _get_grad(gradient, identifier)
2445
+ else:
2446
+ nonlocal output
2447
+ output = grads[1]
2448
+ return
2449
+
2450
+ _get_grad(gradients, hash_id)
2451
+ if output is None:
2452
+ raise RuntimeError(
2453
+ f"Can not find the gradient for position or Parameter {x}")
2454
+ return output
2455
+
2456
+
2457
+ class IsParameter(PrimitiveWithInfer):
2458
+ """
2459
+ Check if input is `Parameter`
2460
+ """
2461
+ @prim_attr_register
2462
+ def __init__(self):
2463
+ """Initialize IsParameter"""
2464
+
2465
+ def __call__(self, x):
2466
+ return isinstance(x, Parameter)
2467
+
2468
+ def __infer__(self, x):
2469
+ return {'shape': [],
2470
+ 'dtype': mstype.bool_,
2471
+ 'value': isinstance(x['dtype'], mstype.ref_type)}
2472
+
2473
+
2474
+ class SiLU(Primitive):
2475
+ r"""
2476
+ Computes SiLU (Sigmoid Linear Unit activation function) of input tensors element-wise.
2477
+
2478
+ Refer to :func:`mindspore.ops.silu` for more details.
2479
+
2480
+ Supported Platforms:
2481
+ ``Ascend`` ``GPU`` ``CPU``
2482
+
2483
+ Examples:
2484
+ >>> x = Tensor(np.array([-1, 2, -3, 2, -1]), mindspore.float16)
2485
+ >>> output = ops.SiLU(x)
2486
+ >>> print(output)
2487
+ [-0.269 1.762 -0.1423 1.762 -0.269]
2488
+ """
2489
+
2490
+ @prim_attr_register
2491
+ def __init__(self):
2492
+ """Initialize SiLU"""
2493
+ self.init_prim_io_names(inputs=['x'], outputs=['output'])
2494
+
2495
+
2496
+ class TileSize(Primitive):
2497
+ r"""
2498
+ Tile size for matmul
2499
+ """
2500
+
2501
+ @prim_attr_register
2502
+ def __init__(self):
2503
+ """Initialize TileSize"""
2504
+ self.init_prim_io_names(inputs=['shape', 'out_shape', 'ndim'], outputs=['output'])
2505
+
2506
+ def __call__(self, shape, out_shape, ndim):
2507
+ size = [1] * ndim
2508
+ for idx, (i, j) in enumerate(zip(shape, out_shape)):
2509
+ if i != j:
2510
+ size[idx] = j
2511
+ return tuple(size)
2512
+
2513
+
2514
+ class GetitemTensorIndexInfo(Primitive):
2515
+ r"""
2516
+ Get getitem tensor index info
2517
+ """
2518
+
2519
+ @prim_attr_register
2520
+ def __init__(self, is_ascend):
2521
+ """Initialize GetitemTensorIndexInfo"""
2522
+ self.init_prim_io_names(inputs=['data', 'index'],
2523
+ outputs=["new_index", "tensor_update_types", "tensor_update_args"])
2524
+ validator.check_value_type('is_ascend', is_ascend, [bool], self.name)
2525
+ self.is_ascend = is_ascend
2526
+
2527
+ def __call__(self, data, index):
2528
+ return Tensor_.getitem_index_info(data, index, self.is_ascend)
2529
+
2530
+
2531
+ class SetitemTensorIndexInfo(Primitive):
2532
+ r"""
2533
+ Get setitem tensor index info
2534
+ """
2535
+
2536
+ @prim_attr_register
2537
+ def __init__(self, is_ascend):
2538
+ """Initialize GetitemTensorIndexInfo"""
2539
+ self.init_prim_io_names(
2540
+ inputs=['data', 'index', 'value'], outputs=['new_index',
2541
+ 'v_transfer_types',
2542
+ 'v_transfer_args',
2543
+ 'tensor_update_types',
2544
+ 'tensor_update_args'])
2545
+ validator.check_value_type('is_ascend', is_ascend, [bool], self.name)
2546
+ self.is_ascend = is_ascend
2547
+
2548
+ def __call__(self, data, index, value):
2549
+ return Tensor_.setitem_index_info(data, index, value, self.is_ascend)