mindspore 2.1.0__cp38-cp38-manylinux1_x86_64.whl → 2.2.10__cp38-cp38-manylinux1_x86_64.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 (580) hide show
  1. mindspore/.commit_id +1 -1
  2. mindspore/__init__.py +4 -1
  3. mindspore/_akg/akg/build_module.py +5 -6
  4. mindspore/_akg/akg/composite/build_module.py +46 -19
  5. mindspore/_akg/akg/composite/split_stitch.py +10 -11
  6. mindspore/_akg/akg/ms/info_version_adapt.py +67 -1
  7. mindspore/_akg/akg/tvm/api.py +4 -3
  8. mindspore/_akg/akg/tvm/autotvm/__init__.py +1 -2
  9. mindspore/_akg/akg/tvm/autotvm/graph_tuner/base_graph_tuner.py +1 -5
  10. mindspore/_akg/akg/tvm/autotvm/measure/__init__.py +1 -1
  11. mindspore/_akg/akg/tvm/autotvm/measure/measure.py +1 -10
  12. mindspore/_akg/akg/tvm/autotvm/measure/measure_methods.py +1 -372
  13. mindspore/_akg/akg/tvm/build_module.py +16 -1
  14. mindspore/_akg/akg/tvm/contrib/graph_runtime.py +0 -53
  15. mindspore/_akg/akg/tvm/hybrid/parser.py +7 -6
  16. mindspore/_akg/akg/tvm/ir_builder.py +1 -1
  17. mindspore/_akg/akg/tvm/module.py +1 -2
  18. mindspore/_akg/akg/tvm/stmt.py +2 -2
  19. mindspore/_akg/akg/utils/ascend_profilier/__init__.py +0 -0
  20. mindspore/_akg/akg/utils/ascend_profilier/cann_file_parser.py +76 -0
  21. mindspore/_akg/akg/utils/ascend_profilier/file_manager.py +56 -0
  22. mindspore/_akg/akg/utils/ascend_profilier/op_summary_bean.py +23 -0
  23. mindspore/_akg/akg/utils/ascend_profilier/op_summary_headers.py +8 -0
  24. mindspore/_akg/akg/utils/ascend_profilier/op_summary_parser.py +42 -0
  25. mindspore/_akg/akg/utils/ascend_profilier/path_manager.py +65 -0
  26. mindspore/_akg/akg/utils/composite_op_helper.py +9 -10
  27. mindspore/_akg/akg/utils/kernel_exec.py +98 -274
  28. mindspore/_akg/akg/utils/result_analysis.py +4 -24
  29. mindspore/_akg/akg/utils/tbe_codegen_utils.py +219 -0
  30. mindspore/_akg/akg/utils/util.py +38 -0
  31. mindspore/_c_dataengine.cpython-38-x86_64-linux-gnu.so +0 -0
  32. mindspore/_c_expression.cpython-38-x86_64-linux-gnu.so +0 -0
  33. mindspore/_c_mindrecord.cpython-38-x86_64-linux-gnu.so +0 -0
  34. mindspore/_check_jit_forbidden_api.py +3 -1
  35. mindspore/_checkparam.py +23 -29
  36. mindspore/_extends/graph_kernel/__init__.py +0 -1
  37. mindspore/_extends/graph_kernel/model/graph_split.py +84 -76
  38. mindspore/_extends/graph_kernel/model/model_builder.py +9 -50
  39. mindspore/_extends/graph_kernel/splitter.py +4 -11
  40. mindspore/_extends/parallel_compile/akg_compiler/akg_process.py +122 -15
  41. mindspore/_extends/parallel_compile/akg_compiler/build_tbe_kernel.py +84 -67
  42. mindspore/_extends/parallel_compile/akg_compiler/tbe_topi.py +4 -2
  43. mindspore/_extends/parallel_compile/akg_compiler/util.py +10 -7
  44. mindspore/_extends/parallel_compile/tbe_compiler/tbe_adapter.py +2 -2
  45. mindspore/_extends/parallel_compile/tbe_compiler/tbe_helper.py +6 -5
  46. mindspore/_extends/parallel_compile/tbe_compiler/tbe_job.py +1 -1
  47. mindspore/_extends/parallel_compile/tbe_compiler/tbe_job_manager.py +1 -1
  48. mindspore/_extends/parse/__init__.py +12 -15
  49. mindspore/_extends/parse/namespace.py +7 -33
  50. mindspore/_extends/parse/parser.py +61 -71
  51. mindspore/_extends/parse/resources.py +1 -1
  52. mindspore/_extends/parse/standard_method.py +74 -104
  53. mindspore/_extends/parse/trope.py +1 -1
  54. mindspore/_extends/remote/kernel_build_server.py +25 -7
  55. mindspore/_extends/remote/kernel_build_server_akg_v2.py +55 -0
  56. mindspore/_install_custom.py +43 -0
  57. mindspore/_mindspore_offline_debug.cpython-38-x86_64-linux-gnu.so +0 -0
  58. mindspore/amp.py +47 -11
  59. mindspore/bin/cache_admin +0 -0
  60. mindspore/bin/cache_server +0 -0
  61. mindspore/boost/boost.py +1 -8
  62. mindspore/boost/boost_cell_wrapper.py +3 -2
  63. mindspore/boost/grad_accumulation.py +1 -1
  64. mindspore/boost/group_loss_scale_manager.py +8 -7
  65. mindspore/common/__init__.py +5 -3
  66. mindspore/common/_jit_fallback_utils.py +6 -0
  67. mindspore/common/_register_for_adapter.py +2 -0
  68. mindspore/common/_register_for_tensor.py +2 -2
  69. mindspore/common/_stub_tensor.py +13 -0
  70. mindspore/common/_utils.py +13 -0
  71. mindspore/common/api.py +174 -259
  72. mindspore/common/auto_dynamic_shape.py +494 -0
  73. mindspore/common/dtype.py +18 -11
  74. mindspore/common/dump.py +6 -4
  75. mindspore/common/initializer.py +14 -14
  76. mindspore/common/jit_config.py +33 -15
  77. mindspore/common/lazy_inline.py +126 -7
  78. mindspore/common/mindir_util.py +101 -0
  79. mindspore/common/parameter.py +51 -41
  80. mindspore/common/seed.py +4 -4
  81. mindspore/common/sparse_tensor.py +13 -14
  82. mindspore/common/tensor.py +243 -165
  83. mindspore/communication/__init__.py +7 -4
  84. mindspore/communication/_comm_helper.py +83 -4
  85. mindspore/communication/management.py +152 -84
  86. mindspore/config/op_info.config +14 -3
  87. mindspore/config/super_bar_config.json +4 -2
  88. mindspore/context.py +152 -61
  89. mindspore/dataset/__init__.py +5 -5
  90. mindspore/dataset/audio/__init__.py +2 -2
  91. mindspore/dataset/audio/transforms.py +52 -52
  92. mindspore/dataset/callback/ds_callback.py +16 -2
  93. mindspore/dataset/core/config.py +68 -51
  94. mindspore/dataset/engine/cache_client.py +28 -5
  95. mindspore/dataset/engine/datasets.py +250 -112
  96. mindspore/dataset/engine/datasets_audio.py +43 -211
  97. mindspore/dataset/engine/datasets_standard_format.py +16 -35
  98. mindspore/dataset/engine/datasets_text.py +43 -67
  99. mindspore/dataset/engine/datasets_user_defined.py +86 -100
  100. mindspore/dataset/engine/datasets_vision.py +219 -1029
  101. mindspore/dataset/engine/iterators.py +11 -4
  102. mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +4 -0
  103. mindspore/dataset/engine/obs/util.py +3 -0
  104. mindspore/dataset/engine/samplers.py +1 -1
  105. mindspore/dataset/engine/validators.py +19 -5
  106. mindspore/dataset/text/__init__.py +3 -3
  107. mindspore/dataset/text/transforms.py +101 -127
  108. mindspore/dataset/text/utils.py +205 -138
  109. mindspore/dataset/transforms/__init__.py +1 -1
  110. mindspore/dataset/transforms/py_transforms_util.py +40 -12
  111. mindspore/dataset/transforms/transforms.py +95 -40
  112. mindspore/dataset/utils/browse_dataset.py +8 -2
  113. mindspore/dataset/utils/line_reader.py +17 -19
  114. mindspore/dataset/vision/__init__.py +3 -3
  115. mindspore/dataset/vision/c_transforms.py +6 -3
  116. mindspore/dataset/vision/transforms.py +409 -287
  117. mindspore/dataset/vision/utils.py +13 -14
  118. mindspore/dataset/vision/validators.py +11 -1
  119. mindspore/experimental/map_parameter.py +14 -0
  120. mindspore/{nn/optim_ex → experimental/optim}/__init__.py +30 -29
  121. mindspore/{nn/optim_ex → experimental/optim}/adam.py +60 -67
  122. mindspore/{nn/optim_ex → experimental/optim}/adamw.py +181 -203
  123. mindspore/experimental/optim/lr_scheduler.py +1427 -0
  124. mindspore/{nn/optim_ex → experimental/optim}/optimizer.py +252 -259
  125. mindspore/{nn/optim_ex → experimental/optim}/sgd.py +147 -152
  126. mindspore/gen_ops.py +273 -0
  127. mindspore/include/OWNERS +0 -1
  128. mindspore/include/api/data_type.h +2 -1
  129. mindspore/include/api/graph.h +0 -15
  130. mindspore/include/api/kernel.h +2 -0
  131. mindspore/include/api/kernel_api.h +37 -12
  132. mindspore/include/api/model.h +17 -14
  133. mindspore/include/api/status.h +8 -3
  134. mindspore/include/api/types.h +37 -4
  135. mindspore/include/c_api/ms/abstract.h +67 -0
  136. mindspore/include/c_api/ms/attribute.h +197 -0
  137. mindspore/include/c_api/ms/base/handle_types.h +43 -0
  138. mindspore/include/c_api/ms/base/macros.h +32 -0
  139. mindspore/include/c_api/ms/base/status.h +33 -0
  140. mindspore/include/c_api/ms/base/types.h +282 -0
  141. mindspore/include/c_api/ms/context.h +102 -0
  142. mindspore/include/c_api/ms/graph.h +160 -0
  143. mindspore/include/c_api/ms/node.h +606 -0
  144. mindspore/include/c_api/ms/tensor.h +161 -0
  145. mindspore/include/c_api/ms/value.h +84 -0
  146. mindspore/include/dataset/constants.h +6 -5
  147. mindspore/include/dataset/execute.h +23 -13
  148. mindspore/include/dataset/text.h +26 -26
  149. mindspore/include/dataset/transforms.h +13 -13
  150. mindspore/include/dataset/vision.h +60 -60
  151. mindspore/include/dataset/vision_ascend.h +5 -6
  152. mindspore/include/dataset/vision_lite.h +17 -17
  153. mindspore/include/mindapi/base/type_id.h +1 -0
  154. mindspore/include/mindapi/base/types.h +1 -0
  155. mindspore/lib/libdnnl.so.2 +0 -0
  156. mindspore/lib/libjemalloc.so.2 +0 -0
  157. mindspore/lib/libmindspore.so +0 -0
  158. mindspore/lib/libmindspore_backend.so +0 -0
  159. mindspore/lib/libmindspore_common.so +0 -0
  160. mindspore/lib/libmindspore_core.so +0 -0
  161. mindspore/lib/libmindspore_glog.so.0 +0 -0
  162. mindspore/lib/libmindspore_gpr.so.15 +0 -0
  163. mindspore/lib/libmindspore_grpc++.so.1 +0 -0
  164. mindspore/lib/libmindspore_grpc.so.15 +0 -0
  165. mindspore/lib/libmindspore_shared_lib.so +0 -0
  166. mindspore/lib/libnnacl.so +0 -0
  167. mindspore/lib/libopencv_core.so.4.5 +0 -0
  168. mindspore/lib/libopencv_imgcodecs.so.4.5 +0 -0
  169. mindspore/lib/libopencv_imgproc.so.4.5 +0 -0
  170. mindspore/lib/libps_cache.so +0 -0
  171. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/config/ascend310/aic-ascend310-ops-info.json +123 -0
  172. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/config/ascend310p/aic-ascend310p-ops-info.json +123 -0
  173. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/config/ascend910/aic-ascend910-ops-info.json +158 -0
  174. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/config/ascend910b/aic-ascend910b-ops-info.json +37 -0
  175. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/add_dsl.py +46 -0
  176. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/add_tik.py +51 -0
  177. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/kv_cache_mgr.py +241 -0
  178. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/ai_core/tbe/custom_aicore_ops_impl/matmul_tik.py +212 -0
  179. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/vector_core/tbe/custom_aicore_ops_impl/add_dsl.py +46 -0
  180. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/vector_core/tbe/custom_aicore_ops_impl/add_tik.py +51 -0
  181. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/vector_core/tbe/custom_aicore_ops_impl/kv_cache_mgr.py +241 -0
  182. mindspore/lib/plugin/ascend/custom_aicore_ops/op_impl/vector_core/tbe/custom_aicore_ops_impl/matmul_tik.py +212 -0
  183. mindspore/lib/plugin/ascend/custom_aicore_ops/op_proto/libop_proto.so +0 -0
  184. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_aicpu_kernels.so +0 -0
  185. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_cpu_kernels.so +0 -0
  186. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/config/cust_aicpu_kernel.json +8928 -0
  187. mindspore/lib/plugin/ascend/custom_aicpu_ops/op_proto/libcust_op_proto.so +0 -0
  188. mindspore/lib/plugin/ascend/libakg.so +0 -0
  189. mindspore/lib/plugin/ascend/libascend_collective.so +0 -0
  190. mindspore/lib/plugin/ascend/libdvpp_utils.so +0 -0
  191. mindspore/lib/plugin/ascend/libhccl_plugin.so +0 -0
  192. mindspore/lib/plugin/ascend/libmindspore_aicpu_kernels.so +0 -0
  193. mindspore/lib/plugin/ascend/libmindspore_cpu_kernels.so +0 -0
  194. mindspore/lib/plugin/cpu/libakg.so +0 -0
  195. mindspore/lib/plugin/gpu/libcuda_ops.so.10 +0 -0
  196. mindspore/lib/plugin/gpu/libcuda_ops.so.11 +0 -0
  197. mindspore/lib/plugin/gpu10.1/libakg.so +0 -0
  198. mindspore/lib/plugin/gpu10.1/libnccl.so.2 +0 -0
  199. mindspore/lib/plugin/gpu11.1/libakg.so +0 -0
  200. mindspore/lib/plugin/gpu11.1/libnccl.so.2 +0 -0
  201. mindspore/lib/plugin/gpu11.6/libakg.so +0 -0
  202. mindspore/lib/plugin/gpu11.6/libnccl.so.2 +0 -0
  203. mindspore/lib/plugin/libmindspore_ascend.so.1 +0 -0
  204. mindspore/lib/plugin/libmindspore_ascend.so.2 +0 -0
  205. mindspore/lib/plugin/libmindspore_gpu.so.10.1 +0 -0
  206. mindspore/lib/plugin/libmindspore_gpu.so.11.1 +0 -0
  207. mindspore/lib/plugin/libmindspore_gpu.so.11.6 +0 -0
  208. mindspore/mindrecord/tools/imagenet_to_mr.py +1 -1
  209. mindspore/mindrecord/tools/mnist_to_mr.py +2 -2
  210. mindspore/nn/__init__.py +0 -2
  211. mindspore/nn/cell.py +313 -74
  212. mindspore/nn/dynamic_lr.py +21 -21
  213. mindspore/nn/layer/activation.py +22 -30
  214. mindspore/nn/layer/basic.py +15 -13
  215. mindspore/nn/layer/channel_shuffle.py +1 -1
  216. mindspore/nn/layer/container.py +271 -9
  217. mindspore/nn/layer/conv.py +323 -204
  218. mindspore/nn/layer/dense.py +8 -5
  219. mindspore/nn/layer/embedding.py +33 -27
  220. mindspore/nn/layer/flash_attention.py +141 -88
  221. mindspore/nn/layer/image.py +8 -6
  222. mindspore/nn/layer/math.py +16 -25
  223. mindspore/nn/layer/normalization.py +107 -66
  224. mindspore/nn/layer/padding.py +1 -1
  225. mindspore/nn/layer/pooling.py +131 -109
  226. mindspore/nn/layer/rnn_cells.py +27 -22
  227. mindspore/nn/layer/rnns.py +13 -16
  228. mindspore/nn/layer/thor_layer.py +1 -1
  229. mindspore/nn/layer/transformer.py +221 -154
  230. mindspore/nn/learning_rate_schedule.py +9 -1
  231. mindspore/nn/loss/loss.py +235 -174
  232. mindspore/nn/optim/ada_grad.py +2 -1
  233. mindspore/nn/optim/adadelta.py +1 -0
  234. mindspore/nn/optim/adafactor.py +2 -1
  235. mindspore/nn/optim/adam.py +7 -4
  236. mindspore/nn/optim/adamax.py +3 -2
  237. mindspore/nn/optim/adasum.py +2 -2
  238. mindspore/nn/optim/asgd.py +2 -3
  239. mindspore/nn/optim/ftrl.py +6 -5
  240. mindspore/nn/optim/lamb.py +7 -4
  241. mindspore/nn/optim/lars.py +1 -1
  242. mindspore/nn/optim/lazyadam.py +5 -3
  243. mindspore/nn/optim/momentum.py +2 -1
  244. mindspore/nn/optim/optimizer.py +53 -4
  245. mindspore/nn/optim/proximal_ada_grad.py +3 -4
  246. mindspore/nn/optim/rmsprop.py +4 -3
  247. mindspore/nn/optim/rprop.py +23 -12
  248. mindspore/nn/optim/sgd.py +26 -11
  249. mindspore/nn/optim/thor.py +9 -7
  250. mindspore/nn/probability/bijector/bijector.py +5 -5
  251. mindspore/nn/probability/bijector/power_transform.py +27 -27
  252. mindspore/nn/probability/bijector/softplus.py +3 -3
  253. mindspore/nn/probability/distribution/_utils/custom_ops.py +3 -3
  254. mindspore/nn/probability/distribution/bernoulli.py +5 -5
  255. mindspore/nn/probability/distribution/beta.py +3 -3
  256. mindspore/nn/probability/distribution/categorical.py +7 -7
  257. mindspore/nn/probability/distribution/cauchy.py +0 -1
  258. mindspore/nn/probability/distribution/distribution.py +3 -3
  259. mindspore/nn/probability/distribution/gamma.py +3 -3
  260. mindspore/nn/probability/distribution/geometric.py +4 -4
  261. mindspore/nn/probability/distribution/gumbel.py +4 -4
  262. mindspore/nn/probability/distribution/log_normal.py +2 -2
  263. mindspore/nn/probability/distribution/logistic.py +2 -2
  264. mindspore/nn/probability/distribution/poisson.py +4 -4
  265. mindspore/nn/probability/distribution/transformed_distribution.py +3 -3
  266. mindspore/nn/probability/distribution/uniform.py +6 -6
  267. mindspore/nn/wrap/cell_wrapper.py +84 -34
  268. mindspore/nn/wrap/grad_reducer.py +8 -5
  269. mindspore/nn/wrap/loss_scale.py +105 -42
  270. mindspore/numpy/array_creations.py +1 -2
  271. mindspore/numpy/array_ops.py +3 -2
  272. mindspore/numpy/utils_const.py +5 -5
  273. mindspore/offline_debug/convert_async.py +2 -2
  274. mindspore/ops/_grad_experimental/__init__.py +0 -5
  275. mindspore/ops/_grad_experimental/grad_array_ops.py +2 -3
  276. mindspore/ops/_grad_experimental/grad_comm_ops.py +15 -2
  277. mindspore/ops/_grad_experimental/grad_debug_ops.py +0 -37
  278. mindspore/ops/_grad_experimental/grad_implementations.py +11 -1
  279. mindspore/ops/_grad_experimental/grad_inner_ops.py +2 -216
  280. mindspore/ops/_grad_experimental/grad_math_ops.py +19 -199
  281. mindspore/ops/_grad_experimental/grad_sparse.py +15 -0
  282. mindspore/ops/_grad_experimental/grad_sparse_ops.py +3 -3
  283. mindspore/ops/_op_impl/_custom_op/dsd_back_impl.py +1 -1
  284. mindspore/ops/_op_impl/_custom_op/flash_attention/attention.py +165 -109
  285. mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_bwd.py +144 -86
  286. mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_fwd.py +172 -187
  287. mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_impl.py +51 -57
  288. mindspore/ops/_op_impl/_custom_op/flash_attention/tik_ops_utils.py +6 -17
  289. mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/wukong_tiling.py +1 -1
  290. mindspore/ops/_op_impl/aicpu/__init__.py +14 -2
  291. mindspore/ops/_op_impl/aicpu/add.py +3 -3
  292. mindspore/ops/_op_impl/aicpu/bias_add_grad.py +0 -1
  293. mindspore/ops/_op_impl/aicpu/count_nonzero.py +43 -0
  294. mindspore/ops/_op_impl/aicpu/eps.py +32 -0
  295. mindspore/ops/_op_impl/aicpu/gamma.py +2 -2
  296. mindspore/ops/_op_impl/aicpu/log_uniform_candidate_sampler.py +6 -3
  297. mindspore/ops/_op_impl/aicpu/lu_unpack_grad.py +0 -1
  298. mindspore/ops/_op_impl/aicpu/multinomial.py +3 -3
  299. mindspore/ops/_op_impl/aicpu/parameterized_truncated_normal.py +15 -7
  300. mindspore/ops/_op_impl/aicpu/random_categorical.py +39 -19
  301. mindspore/ops/_op_impl/aicpu/random_choice_with_mask.py +5 -2
  302. mindspore/ops/_op_impl/aicpu/random_poisson.py +103 -52
  303. mindspore/ops/_op_impl/aicpu/random_shuffle.py +17 -15
  304. mindspore/ops/_op_impl/aicpu/{sparseaddmm.py → sparse_addmm.py} +2 -2
  305. mindspore/ops/_op_impl/aicpu/{sparsesparsemaximum.py → sparse_sparse_maximum.py} +4 -4
  306. mindspore/ops/_op_impl/aicpu/standard_laplace.py +5 -5
  307. mindspore/ops/_op_impl/aicpu/standard_normal.py +5 -5
  308. mindspore/ops/_op_impl/aicpu/truncated_normal.py +9 -7
  309. mindspore/ops/_op_impl/aicpu/uniform.py +5 -3
  310. mindspore/ops/_op_impl/aicpu/uniform_candidate_sampler.py +8 -4
  311. mindspore/ops/_op_impl/aicpu/uniform_int.py +5 -5
  312. mindspore/ops/_op_impl/aicpu/uniform_real.py +4 -4
  313. mindspore/ops/_op_impl/tbe/__init__.py +4 -4
  314. mindspore/ops/_op_impl/tbe/inplace_index_add.py +7 -3
  315. mindspore/ops/_op_impl/tbe/trans_data_ds.py +2 -0
  316. mindspore/ops/_primitive_cache.py +1 -1
  317. mindspore/ops/_tracefunc.py +45 -13
  318. mindspore/ops/_utils/utils.py +6 -1
  319. mindspore/ops/_vmap/vmap_array_ops.py +3 -3
  320. mindspore/ops/_vmap/vmap_base.py +3 -3
  321. mindspore/ops/_vmap/vmap_convolution_ops.py +1 -1
  322. mindspore/ops/_vmap/vmap_grad_math_ops.py +6 -4
  323. mindspore/ops/_vmap/vmap_math_ops.py +5 -2
  324. mindspore/ops/_vmap/vmap_nn_ops.py +61 -7
  325. mindspore/ops/arg_dtype_cast.py +54 -0
  326. mindspore/ops/composite/base.py +37 -10
  327. mindspore/ops/composite/math_ops.py +5 -4
  328. mindspore/ops/composite/multitype_ops/_compile_utils.py +275 -73
  329. mindspore/ops/composite/multitype_ops/_constexpr_utils.py +16 -9
  330. mindspore/ops/composite/multitype_ops/add_impl.py +43 -4
  331. mindspore/ops/composite/multitype_ops/getitem_impl.py +42 -4
  332. mindspore/ops/composite/multitype_ops/ones_like_impl.py +6 -0
  333. mindspore/ops/composite/multitype_ops/setitem_impl.py +2 -1
  334. mindspore/ops/composite/multitype_ops/zeros_like_impl.py +9 -0
  335. mindspore/ops/deprecated.py +304 -0
  336. mindspore/ops/function/__init__.py +4 -1
  337. mindspore/ops/function/array_func.py +174 -193
  338. mindspore/ops/function/clip_func.py +81 -13
  339. mindspore/ops/function/debug_func.py +1 -1
  340. mindspore/ops/function/grad/grad_func.py +18 -9
  341. mindspore/ops/function/image_func.py +10 -4
  342. mindspore/ops/function/linalg_func.py +5 -5
  343. mindspore/ops/function/math_func.py +575 -386
  344. mindspore/ops/function/nn_func.py +568 -260
  345. mindspore/ops/function/random_func.py +88 -57
  346. mindspore/ops/function/sparse_func.py +1 -1
  347. mindspore/ops/function/sparse_unary_func.py +14 -12
  348. mindspore/ops/function/vmap_func.py +6 -5
  349. mindspore/ops/functional.py +15 -10
  350. mindspore/ops/op_info_register.py +244 -25
  351. mindspore/ops/operations/__init__.py +28 -19
  352. mindspore/ops/operations/_grad_ops.py +72 -7
  353. mindspore/ops/operations/_inner_ops.py +350 -17
  354. mindspore/ops/operations/_quant_ops.py +4 -8
  355. mindspore/ops/operations/_sequence_ops.py +42 -0
  356. mindspore/ops/operations/array_ops.py +68 -282
  357. mindspore/ops/operations/comm_ops.py +107 -59
  358. mindspore/ops/operations/custom_ops.py +94 -70
  359. mindspore/ops/operations/debug_ops.py +8 -4
  360. mindspore/ops/operations/image_ops.py +18 -12
  361. mindspore/ops/operations/inner_ops.py +26 -3
  362. mindspore/ops/operations/math_ops.py +189 -141
  363. mindspore/ops/operations/nn_ops.py +794 -489
  364. mindspore/ops/operations/other_ops.py +0 -22
  365. mindspore/ops/operations/random_ops.py +53 -111
  366. mindspore/ops/operations/sparse_ops.py +3 -1
  367. mindspore/ops/primitive.py +24 -18
  368. mindspore/parallel/_auto_parallel_context.py +68 -8
  369. mindspore/parallel/_cost_model_context.py +2 -2
  370. mindspore/parallel/_offload_context.py +17 -3
  371. mindspore/parallel/_parallel_serialization.py +12 -5
  372. mindspore/parallel/_ps_context.py +12 -0
  373. mindspore/parallel/_tensor.py +18 -13
  374. mindspore/parallel/_transformer/layers.py +5 -3
  375. mindspore/parallel/_transformer/loss.py +1 -0
  376. mindspore/parallel/_transformer/moe.py +2 -2
  377. mindspore/parallel/_transformer/op_parallel_config.py +12 -1
  378. mindspore/parallel/_transformer/transformer.py +23 -3
  379. mindspore/parallel/_utils.py +11 -7
  380. mindspore/parallel/algo_parameter_config.py +85 -5
  381. mindspore/parallel/checkpoint_transform.py +19 -12
  382. mindspore/parallel/shard.py +21 -14
  383. mindspore/profiler/common/struct_type.py +3 -3
  384. mindspore/profiler/common/util.py +4 -2
  385. mindspore/profiler/envprofiling.py +1 -1
  386. mindspore/profiler/parser/aicpu_data_parser.py +5 -3
  387. mindspore/profiler/parser/ascend_flops_generator.py +2 -2
  388. mindspore/profiler/parser/ascend_fpbp_generator.py +1 -1
  389. mindspore/profiler/parser/ascend_hccl_generator.py +249 -12
  390. mindspore/profiler/parser/ascend_msprof_exporter.py +150 -255
  391. mindspore/profiler/parser/ascend_msprof_generator.py +204 -17
  392. mindspore/profiler/parser/ascend_op_generator.py +6 -6
  393. mindspore/profiler/parser/ascend_steptrace_generator.py +6 -4
  394. mindspore/profiler/parser/ascend_timeline_generator.py +14 -187
  395. mindspore/profiler/parser/base_timeline_generator.py +10 -8
  396. mindspore/profiler/parser/cpu_gpu_timeline_generator.py +16 -12
  397. mindspore/profiler/parser/flops_parser.py +15 -11
  398. mindspore/profiler/parser/framework_parser.py +38 -22
  399. mindspore/profiler/parser/hccl_parser.py +16 -12
  400. mindspore/profiler/parser/integrator.py +22 -11
  401. mindspore/profiler/parser/memory_usage_parser.py +2 -2
  402. mindspore/profiler/parser/minddata_analyzer.py +12 -14
  403. mindspore/profiler/parser/minddata_pipeline_parser.py +1 -1
  404. mindspore/profiler/parser/msadvisor_parser.py +8 -4
  405. mindspore/profiler/parser/op_intermediate_parser.py +5 -2
  406. mindspore/profiler/parser/optime_parser.py +1 -1
  407. mindspore/profiler/parser/profiler_info.py +21 -2
  408. mindspore/profiler/parser/step_trace_parser.py +11 -14
  409. mindspore/profiler/profiling.py +179 -89
  410. mindspore/rewrite/api/node.py +102 -19
  411. mindspore/rewrite/api/node_type.py +5 -1
  412. mindspore/rewrite/api/pattern_engine.py +1 -1
  413. mindspore/rewrite/api/scoped_value.py +9 -17
  414. mindspore/rewrite/api/symbol_tree.py +131 -47
  415. mindspore/rewrite/ast_helpers/__init__.py +2 -1
  416. mindspore/rewrite/ast_helpers/ast_finder.py +129 -0
  417. mindspore/rewrite/ast_helpers/ast_modifier.py +116 -104
  418. mindspore/rewrite/ast_transformers/flatten_recursive_stmt.py +93 -46
  419. mindspore/rewrite/common/rewrite_elog.py +5 -1
  420. mindspore/rewrite/namer.py +33 -24
  421. mindspore/rewrite/namespace.py +14 -5
  422. mindspore/{_extends/graph_kernel/expanders/complex → rewrite/node}/__init__.py +9 -9
  423. mindspore/rewrite/node/call_function.py +79 -0
  424. mindspore/rewrite/node/cell_container.py +135 -0
  425. mindspore/rewrite/node/control_flow.py +88 -0
  426. mindspore/rewrite/{node.py → node/node.py} +273 -234
  427. mindspore/rewrite/node/node_manager.py +254 -0
  428. mindspore/rewrite/{topological_manager.py → node/node_topological_manager.py} +13 -46
  429. mindspore/rewrite/parsers/arguments_parser.py +22 -21
  430. mindspore/rewrite/parsers/assign_parser.py +216 -221
  431. mindspore/rewrite/parsers/attribute_parser.py +9 -7
  432. mindspore/rewrite/parsers/class_def_parser.py +174 -113
  433. mindspore/rewrite/parsers/constant_parser.py +9 -6
  434. mindspore/rewrite/parsers/container_parser.py +9 -7
  435. mindspore/rewrite/parsers/for_parser.py +36 -15
  436. mindspore/rewrite/parsers/function_def_parser.py +24 -16
  437. mindspore/rewrite/parsers/if_parser.py +28 -24
  438. mindspore/rewrite/parsers/module_parser.py +196 -25
  439. mindspore/rewrite/{parser.py → parsers/parser.py} +4 -2
  440. mindspore/rewrite/{parser_register.py → parsers/parser_register.py} +1 -1
  441. mindspore/rewrite/parsers/return_parser.py +6 -6
  442. mindspore/rewrite/sparsify/sparse_transformer.py +12 -3
  443. mindspore/rewrite/sparsify/utils.py +1 -1
  444. mindspore/rewrite/symbol_tree.py +523 -578
  445. mindspore/rewrite/symbol_tree_builder.py +9 -193
  446. mindspore/rewrite/symbol_tree_dumper.py +2 -2
  447. mindspore/run_check/_check_version.py +6 -4
  448. mindspore/{ops/bprop_mindir → safeguard}/__init__.py +4 -3
  449. mindspore/safeguard/rewrite_obfuscation.py +541 -0
  450. mindspore/scipy/linalg.py +1 -1
  451. mindspore/scipy/optimize/minimize.py +7 -3
  452. mindspore/train/_utils.py +7 -3
  453. mindspore/train/amp.py +323 -123
  454. mindspore/train/anf_ir_pb2.py +14 -2
  455. mindspore/train/callback/_backup_and_restore.py +2 -12
  456. mindspore/train/callback/_callback.py +29 -4
  457. mindspore/train/callback/_checkpoint.py +23 -8
  458. mindspore/train/callback/_early_stop.py +2 -2
  459. mindspore/train/callback/_landscape.py +4 -4
  460. mindspore/train/callback/_loss_monitor.py +2 -2
  461. mindspore/train/callback/_on_request_exit.py +2 -2
  462. mindspore/train/callback/_reduce_lr_on_plateau.py +3 -4
  463. mindspore/train/callback/_summary_collector.py +15 -8
  464. mindspore/train/callback/_time_monitor.py +58 -5
  465. mindspore/train/data_sink.py +5 -11
  466. mindspore/train/dataset_helper.py +84 -57
  467. mindspore/train/loss_scale_manager.py +2 -2
  468. mindspore/train/metrics/__init__.py +3 -3
  469. mindspore/train/metrics/cosine_similarity.py +1 -1
  470. mindspore/train/metrics/hausdorff_distance.py +3 -2
  471. mindspore/train/metrics/mean_surface_distance.py +3 -2
  472. mindspore/train/metrics/metric.py +39 -19
  473. mindspore/train/metrics/roc.py +2 -2
  474. mindspore/train/metrics/root_mean_square_surface_distance.py +4 -3
  475. mindspore/train/mind_ir_pb2.py +85 -36
  476. mindspore/train/model.py +187 -47
  477. mindspore/train/serialization.py +487 -161
  478. mindspore/train/summary/_summary_adapter.py +1 -1
  479. mindspore/train/summary/_writer_pool.py +3 -2
  480. mindspore/train/summary/summary_record.py +37 -17
  481. mindspore/train/train_thor/convert_utils.py +3 -3
  482. mindspore/train/train_thor/dataset_helper.py +1 -1
  483. mindspore/version.py +1 -1
  484. {mindspore-2.1.0.dist-info → mindspore-2.2.10.dist-info}/METADATA +6 -7
  485. {mindspore-2.1.0.dist-info → mindspore-2.2.10.dist-info}/RECORD +488 -528
  486. {mindspore-2.1.0.dist-info → mindspore-2.2.10.dist-info}/entry_points.txt +0 -1
  487. mindspore/_akg/akg/tvm/contrib/debugger/__init__.py +0 -16
  488. mindspore/_akg/akg/tvm/contrib/debugger/debug_result.py +0 -274
  489. mindspore/_akg/akg/tvm/contrib/debugger/debug_runtime.py +0 -259
  490. mindspore/_akg/akg/tvm/contrib/peak.py +0 -341
  491. mindspore/_akg/akg/tvm/contrib/rpc.py +0 -25
  492. mindspore/_akg/akg/tvm/contrib/xcode.py +0 -257
  493. mindspore/_akg/akg/tvm/exec/__init__.py +0 -17
  494. mindspore/_akg/akg/tvm/exec/autotvm_log_editor.py +0 -60
  495. mindspore/_akg/akg/tvm/exec/measure_peak.py +0 -48
  496. mindspore/_akg/akg/tvm/exec/query_rpc_tracker.py +0 -48
  497. mindspore/_akg/akg/tvm/exec/rpc_proxy.py +0 -98
  498. mindspore/_akg/akg/tvm/exec/rpc_server.py +0 -88
  499. mindspore/_akg/akg/tvm/exec/rpc_tracker.py +0 -62
  500. mindspore/_akg/akg/tvm/rpc/__init__.py +0 -29
  501. mindspore/_akg/akg/tvm/rpc/base.py +0 -182
  502. mindspore/_akg/akg/tvm/rpc/client.py +0 -436
  503. mindspore/_akg/akg/tvm/rpc/proxy.py +0 -595
  504. mindspore/_akg/akg/tvm/rpc/server.py +0 -413
  505. mindspore/_akg/akg/tvm/rpc/tornado_util.py +0 -121
  506. mindspore/_akg/akg/tvm/rpc/tracker.py +0 -431
  507. mindspore/_extends/graph_kernel/expander.py +0 -80
  508. mindspore/_extends/graph_kernel/expanders/__init__.py +0 -54
  509. mindspore/_extends/graph_kernel/expanders/_utils.py +0 -269
  510. mindspore/_extends/graph_kernel/expanders/addn.py +0 -33
  511. mindspore/_extends/graph_kernel/expanders/batchnorm.py +0 -152
  512. mindspore/_extends/graph_kernel/expanders/batchnorm_grad.py +0 -105
  513. mindspore/_extends/graph_kernel/expanders/clip_by_norm_no_div_sum.py +0 -33
  514. mindspore/_extends/graph_kernel/expanders/complex/abs.py +0 -30
  515. mindspore/_extends/graph_kernel/expanders/complex/add.py +0 -44
  516. mindspore/_extends/graph_kernel/expanders/complex/div.py +0 -62
  517. mindspore/_extends/graph_kernel/expanders/complex/mul.py +0 -52
  518. mindspore/_extends/graph_kernel/expanders/complex/real_div.py +0 -62
  519. mindspore/_extends/graph_kernel/expanders/complex/sub.py +0 -45
  520. mindspore/_extends/graph_kernel/expanders/conv2d.py +0 -200
  521. mindspore/_extends/graph_kernel/expanders/dropout_grad.py +0 -30
  522. mindspore/_extends/graph_kernel/expanders/equal_count.py +0 -50
  523. mindspore/_extends/graph_kernel/expanders/erfc.py +0 -35
  524. mindspore/_extends/graph_kernel/expanders/expand_dims.py +0 -50
  525. mindspore/_extends/graph_kernel/expanders/fused_adam.py +0 -44
  526. mindspore/_extends/graph_kernel/expanders/fused_adam_weight_decay.py +0 -47
  527. mindspore/_extends/graph_kernel/expanders/fused_mul_add.py +0 -28
  528. mindspore/_extends/graph_kernel/expanders/gelu_grad.py +0 -70
  529. mindspore/_extends/graph_kernel/expanders/gkdropout.py +0 -40
  530. mindspore/_extends/graph_kernel/expanders/identity.py +0 -25
  531. mindspore/_extends/graph_kernel/expanders/layernorm.py +0 -93
  532. mindspore/_extends/graph_kernel/expanders/layernorm_grad.py +0 -113
  533. mindspore/_extends/graph_kernel/expanders/logsoftmax.py +0 -46
  534. mindspore/_extends/graph_kernel/expanders/logsoftmax_grad.py +0 -36
  535. mindspore/_extends/graph_kernel/expanders/matmul.py +0 -80
  536. mindspore/_extends/graph_kernel/expanders/maximum_grad.py +0 -59
  537. mindspore/_extends/graph_kernel/expanders/minimum_grad.py +0 -80
  538. mindspore/_extends/graph_kernel/expanders/oneslike.py +0 -26
  539. mindspore/_extends/graph_kernel/expanders/reduce_mean.py +0 -43
  540. mindspore/_extends/graph_kernel/expanders/relu_grad.py +0 -32
  541. mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits.py +0 -41
  542. mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits_grad.py +0 -35
  543. mindspore/_extends/graph_kernel/expanders/sigmoid_grad.py +0 -31
  544. mindspore/_extends/graph_kernel/expanders/slice.py +0 -35
  545. mindspore/_extends/graph_kernel/expanders/softmax_cross_entropy_with_logits.py +0 -42
  546. mindspore/_extends/graph_kernel/expanders/softmax_grad_ext.py +0 -41
  547. mindspore/_extends/graph_kernel/expanders/softsign.py +0 -28
  548. mindspore/_extends/graph_kernel/expanders/sqrt_grad.py +0 -29
  549. mindspore/_extends/graph_kernel/expanders/square_sum_all.py +0 -44
  550. mindspore/_extends/graph_kernel/expanders/square_sum_v1.py +0 -37
  551. mindspore/_extends/graph_kernel/expanders/squared_difference.py +0 -43
  552. mindspore/_extends/graph_kernel/expanders/tanh_grad.py +0 -31
  553. mindspore/_extends/graph_kernel/model/op_infer.py +0 -506
  554. mindspore/dataset/datapreprocess/__init__.py +0 -20
  555. mindspore/dataset/datapreprocess/preprocess_imagenet_validate_dataset.py +0 -54
  556. mindspore/include/api/net.h +0 -142
  557. mindspore/nn/lr_scheduler.py +0 -262
  558. mindspore/ops/_grad_experimental/grad_image_ops.py +0 -248
  559. mindspore/ops/_grad_experimental/grad_linalg_ops.py +0 -181
  560. mindspore/ops/_grad_experimental/grad_other_ops.py +0 -72
  561. mindspore/ops/_grad_experimental/grad_scalar_ops.py +0 -112
  562. mindspore/ops/_grad_experimental/grad_sequence_ops.py +0 -351
  563. mindspore/ops/bprop_mindir/BNTrainingReduce_bprop.mindir +0 -0
  564. mindspore/ops/bprop_mindir/Broadcast_bprop.mindir +0 -0
  565. mindspore/ops/bprop_mindir/Depend_bprop.mindir +0 -0
  566. mindspore/ops/bprop_mindir/DepthwiseConv2dNative_bprop.mindir +0 -138
  567. mindspore/ops/bprop_mindir/EmbeddingLookup_bprop.mindir +0 -0
  568. mindspore/ops/bprop_mindir/Load_bprop.mindir +0 -0
  569. mindspore/ops/bprop_mindir/ScatterNonAliasingAdd_bprop.mindir +0 -0
  570. mindspore/ops/bprop_mindir/SparseGatherV2_bprop.mindir +0 -0
  571. mindspore/ops/bprop_mindir/SparseSoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
  572. mindspore/ops/bprop_mindir/Switch_bprop.mindir +0 -0
  573. mindspore/ops/bprop_mindir/TransShape_bprop.mindir +0 -0
  574. mindspore/ops/bprop_mindir/TupleGetItem_bprop.mindir +0 -0
  575. mindspore/ops/bprop_mindir/Unique_bprop.mindir +0 -0
  576. mindspore/ops/bprop_mindir/Unstack_bprop.mindir +0 -0
  577. mindspore/ops/bprop_mindir/generate_mindir.py +0 -114
  578. mindspore/rewrite/node_visitor.py +0 -44
  579. {mindspore-2.1.0.dist-info → mindspore-2.2.10.dist-info}/WHEEL +0 -0
  580. {mindspore-2.1.0.dist-info → mindspore-2.2.10.dist-info}/top_level.txt +0 -0
@@ -18,6 +18,7 @@ from __future__ import absolute_import
18
18
  import math
19
19
 
20
20
  from mindspore import _checkparam as Validator
21
+ from mindspore import log as logger
21
22
  from mindspore.common._auto_dynamic import is_auto_dynamic, convert_new_shapes
22
23
  from mindspore.common.dtype import pytype_to_dtype
23
24
  from mindspore.common.api import _cell_graph_executor
@@ -29,6 +30,7 @@ from mindspore.parallel._utils import _get_device_num, _get_global_rank, _need_t
29
30
  _to_full_shapes, _get_pipeline_stages
30
31
  from mindspore.parallel._ps_context import _is_role_sched
31
32
  from mindspore.ops import operations as P
33
+ from mindspore.common.auto_dynamic_shape import _auto_dynamic_shape
32
34
 
33
35
 
34
36
  def _send_data(dataset, epoch_num):
@@ -50,6 +52,7 @@ def _dynamic_sink_data(dataset, dataset_iter):
50
52
  if hasattr(dataset_iter, "sink_size") and \
51
53
  dataset_iter.sink_size == 1 and \
52
54
  dataset.get_dataset_size() != 1 and \
55
+ not hasattr(dataset, "__no_send__") and \
53
56
  hasattr(dataset_iter, "sink_count") and \
54
57
  dataset_iter.sink_count == 1:
55
58
  return True
@@ -93,8 +96,7 @@ class _DataWrapper(nn.Cell):
93
96
  self.get_next = P.GetNext(
94
97
  dataset_types, dataset_shapes, len(dataset_types), queue_name)
95
98
  self.network = network
96
- if isinstance(network, nn.Cell) and network.jit_config_dict:
97
- self._jit_config_dict = network.jit_config_dict
99
+ self._get_attr_from_cell(network)
98
100
 
99
101
  def construct(self):
100
102
  outputs = self.get_next()
@@ -179,29 +181,20 @@ def _get_dataset_aux(dataset):
179
181
 
180
182
  def connect_network_with_dataset(network, dataset_helper):
181
183
  """
182
- Connect the `network` with dataset in `dataset_helper`.
183
-
184
- This function wraps the input network with 'GetNext' so that the data can be fetched automatically from the
185
- data channel corresponding to the 'queue_name' and passed to the input network during forward computation.
186
-
187
- Note:
188
- In the case of running the network on Ascend/GPU in graph mode, this function will wrap the input network with
189
- :class:`mindspore.ops.GetNext`. In other cases, the input network will be returned with no change.
190
- The :class:`mindspore.ops.GetNext` is required to get data only in sink mode,
191
- so this function is not applicable to no-sink mode.
192
- when dataset_helper's dataset_sink_mode is True, it can only be connected to one network.
184
+ Connect the `network` with dataset in `dataset_helper`. Only supported in `sink mode
185
+ <https://mindspore.cn/tutorials/experts/en/r2.2/optimize/execution_opt.html>`_, (dataset_sink_mode=True).
193
186
 
194
187
  Args:
195
188
  network (Cell): The training network for dataset.
196
189
  dataset_helper (DatasetHelper): A class to process the MindData dataset, it provides the type, shape and queue
197
- name of the dataset to wrap the `GetNext`.
190
+ name of the dataset.
198
191
 
199
192
  Returns:
200
- Cell, a new network wrapped with 'GetNext' in the case of running the task on Ascend in graph mode, otherwise
201
- it is the input network.
193
+ Cell, a new network containing the type, shape and queue name of the dataset info.
202
194
 
203
195
  Raises:
204
196
  RuntimeError: If the API was not called in dataset sink mode.
197
+
205
198
  Supported Platforms:
206
199
  ``Ascend`` ``GPU``
207
200
 
@@ -215,7 +208,7 @@ def connect_network_with_dataset(network, dataset_helper):
215
208
  >>> train_dataset = ds.NumpySlicesDataset(data=data).batch(32)
216
209
  >>> dataset_helper = ms.DatasetHelper(train_dataset, dataset_sink_mode=True)
217
210
  >>> net = nn.Dense(10, 5)
218
- >>> net_with_get_next = ms.connect_network_with_dataset(net, dataset_helper)
211
+ >>> net_with_dataset = ms.connect_network_with_dataset(net, dataset_helper)
219
212
  """
220
213
  dataset_iter = dataset_helper.iter
221
214
  dataset = dataset_iter.dataset
@@ -240,8 +233,10 @@ def connect_network_with_dataset(network, dataset_helper):
240
233
  if _dynamic_sink_scenario(dataset, dataset_iter, is_dynamic):
241
234
  dataset_types, dataset_shapes = dataset_helper.get_data_info()
242
235
  dataset_types = [pytype_to_dtype(x) for x in dataset_types]
243
-
236
+ if not is_dynamic:
237
+ dataset_shapes = _auto_dynamic_shape.auto_dynamic_generate_compile_args(dataset_shapes, True)
244
238
  key = str(dataset_types) + str(dataset_shapes)
239
+ _auto_dynamic_shape.update_phase_and_compile_args(dataset_shapes, key, True, aux)
245
240
  if hasattr(aux, '__network_manage__') and key in aux.__network_manage__:
246
241
  network = aux.__network_manage__[key]
247
242
  else:
@@ -312,7 +307,7 @@ class DatasetHelper:
312
307
  >>> for next_element in set_helper:
313
308
  ... # `next_element` includes data and label, using data to run the net
314
309
  ... data = next_element[0]
315
- ... net(data)
310
+ ... result = net(data)
316
311
  """
317
312
 
318
313
  def __init__(self, dataset, dataset_sink_mode=True, sink_size=-1, epoch_num=1):
@@ -393,15 +388,15 @@ class DatasetHelper:
393
388
  Stop send data about data sink.
394
389
 
395
390
  Examples:
396
- >>> import numpy as np
397
391
  >>> import mindspore as ms
398
- >>> from mindspore import nn
399
- >>> from mindspore import dataset as ds
400
- >>>
401
- >>> data = {"x": np.float32(np.random.rand(64, 10)), "y": np.random.randint(0, 5, (64,))}
402
- >>> train_dataset = ds.NumpySlicesDataset(data=data).batch(32)
403
- >>> set_helper = ms.DatasetHelper(train_dataset, dataset_sink_mode=False)
404
- >>> set_helper.stop_send()
392
+ >>> import numpy as np
393
+ >>> # Define a dataset pipeline
394
+ >>> def generator():
395
+ ... for i in range(5):
396
+ ... yield (np.ones((32, 10)),)
397
+ >>> train_dataset = ms.dataset.GeneratorDataset(generator, ["data"])
398
+ >>> dataset_helper = ms.DatasetHelper(train_dataset, dataset_sink_mode=True, sink_size=-1)
399
+ >>> dataset_helper.stop_send()
405
400
  """
406
401
  self.iter.stop_send()
407
402
 
@@ -417,8 +412,8 @@ class DatasetHelper:
417
412
  >>>
418
413
  >>> data = {"x": np.float32(np.random.rand(64, 10)), "y": np.random.randint(0, 5, (64,))}
419
414
  >>> train_dataset = ds.NumpySlicesDataset(data=data).batch(32)
420
- >>> set_helper = ms.DatasetHelper(train_dataset, dataset_sink_mode=False)
421
- >>> set_helper.release()
415
+ >>> dataset_helper = ms.DatasetHelper(train_dataset, dataset_sink_mode=True)
416
+ >>> dataset_helper.release()
422
417
  """
423
418
  self.iter.release()
424
419
 
@@ -434,22 +429,63 @@ class DatasetHelper:
434
429
  >>>
435
430
  >>> data = {"x": np.float32(np.random.rand(64, 10)), "y": np.random.randint(0, 5, (64,))}
436
431
  >>> train_dataset = ds.NumpySlicesDataset(data=data).batch(32)
437
- >>> set_helper = ms.DatasetHelper(train_dataset, dataset_sink_mode=False)
438
- >>> set_helper.continue_send()
432
+ >>> dataset_helper = ms.DatasetHelper(train_dataset, dataset_sink_mode=True)
433
+ >>> dataset_helper.continue_send()
439
434
  """
440
435
  self.iter.continue_send()
441
436
 
442
- def _reset(self, step, epoch):
437
+ def _reset(self, step, dataset_size):
443
438
  """Reset the dataset to the provided step and epoch."""
444
- self.iter._reset(step, epoch) # pylint: disable=protected-access
439
+ self.iter._reset(step, dataset_size) # pylint: disable=protected-access
445
440
 
441
+ # pylint: disable=missing-docstring
446
442
  def get_data_info(self):
447
- """
448
- In sink mode, it returns the types and shapes of the current data.
449
- Generally, it works in dynamic shape scenarios.
450
- """
443
+ # In sink mode, it returns the types and shapes of the current data.
444
+ # Generally, it works in dynamic shape scenarios.
451
445
  return self.iter.get_data_info()
452
446
 
447
+ # pylint: disable=missing-docstring
448
+ def get_send_info(self, run_context):
449
+ # In sink mode, it returns the send information of dataset at this moment.
450
+ # Send information includes number of send batches, time summary of fetching data on host
451
+ # and time summary of sending data.
452
+ class InfoViewer:
453
+ '''
454
+ Inner class for parsing send info.
455
+ '''
456
+ def __init__(self, send_info, run_context):
457
+ self.info_ = {}
458
+ self.sink_size = run_context.original_args()["batch_num"]
459
+ if run_context.original_args().get("train_dataset", None) is not None:
460
+ self.dataset_size = run_context.original_args()["train_dataset"].get_dataset_size()
461
+ elif run_context.original_args().get("valid_dataset", None) is not None:
462
+ self.dataset_size = run_context.original_args()["valid_dataset"].get_dataset_size()
463
+ else:
464
+ raise RuntimeError("Could not find a proper dataset to estimate dataset size.")
465
+ if not send_info:
466
+ epoch = 1
467
+ self.info_[epoch] = {'fetch_data_num': 0, 'fetch_data_time': 0, 'first_data_time': 0}
468
+ else:
469
+ for info_per_epoch in send_info:
470
+ epoch, fetch_data_num, first_data_time, fetch_data_time = info_per_epoch
471
+ if fetch_data_num > 1:
472
+ fetch_data_time = (fetch_data_time - first_data_time) / (fetch_data_num - 1) * 1000.
473
+ self.info_[epoch] = {'fetch_data_num': fetch_data_num,
474
+ 'fetch_data_time': fetch_data_time,
475
+ 'first_data_time': first_data_time}
476
+
477
+ def epoch(self, epoch):
478
+ if self.sink_size == self.dataset_size:
479
+ return self.info_[epoch]
480
+ global_step = epoch * self.sink_size
481
+ data_epoch = math.ceil(global_step / self.dataset_size)
482
+ return self.info_[data_epoch]
483
+
484
+ # send info struct:[epoch, data_num_per_epoch, first_data_time, accumulate_data_time]
485
+ # for example [1, 1875, 0.421, 0.362]
486
+ send_info = self.iter.get_send_info()
487
+ return InfoViewer(send_info, run_context)
488
+
453
489
 
454
490
  class _DatasetIter:
455
491
  """Base iter for dataset helper"""
@@ -460,6 +496,15 @@ class _DatasetIter:
460
496
  self.sink_count = self.get_sink_count(dataset)
461
497
  self.dataset_types, self.dataset_shapes = _get_types_and_shapes(
462
498
  dataset)
499
+
500
+ if dataset.get_init_step() % sink_size != 0:
501
+ init_epoch = dataset.get_init_step() // sink_size
502
+ init_step = init_epoch * sink_size
503
+ logger.warning("Init global step must be the end of the epoch in sink mode, "
504
+ "but got: {0}. Reset it to the end of epoch {1} at step {2}."
505
+ .format(dataset.get_init_step(), init_epoch, init_step))
506
+ dataset.set_init_step(init_step)
507
+
463
508
  if not hasattr(dataset, '__transfer_dataset__'):
464
509
  if hasattr(dataset, '__loop_size__'):
465
510
  self.sink_size = dataset.__loop_size__
@@ -481,6 +526,7 @@ class _DatasetIter:
481
526
  self.release = dataset.__transfer_dataset__.release
482
527
  self.continue_send = dataset.__transfer_dataset__.continue_send
483
528
  self.get_data_info = dataset.__transfer_dataset__.get_data_info
529
+ self.get_send_info = dataset.__transfer_dataset__.get_send_info
484
530
  if hasattr(dataset.__transfer_dataset__, "_reset"):
485
531
  self._reset = dataset.__transfer_dataset__._reset # pylint: disable=protected-access
486
532
 
@@ -517,8 +563,7 @@ class _DatasetIter:
517
563
  if hasattr(self.dataset, '__loop_size__'):
518
564
  sink_size = self.dataset.__loop_size__
519
565
  else:
520
- if context.get_context("enable_ge") or context.get_context("device_target") == "Ascend" \
521
- or context.get_context("device_target") == "GPU":
566
+ if context.get_context("device_target") == "Ascend" or context.get_context("device_target") == "GPU":
522
567
  if self.sink_size > 0:
523
568
  sink_size = self.sink_size
524
569
  else:
@@ -526,24 +571,6 @@ class _DatasetIter:
526
571
  return sink_size
527
572
 
528
573
 
529
- class _DatasetIterGE(_DatasetIter):
530
- """Iter for GE."""
531
-
532
- def __init__(self, dataset, sink_size, epoch_num):
533
- super().__init__(dataset, sink_size, epoch_num)
534
- self.sink_count = self.get_sink_count(dataset)
535
- batch_expand_num = 1
536
- if _need_to_full():
537
- batch_expand_num = _get_device_num() // _get_pipeline_stages()
538
- tensor_list_run = _construct_tensor_list(
539
- self.dataset_types, self.dataset_shapes, batch_expand_num)
540
-
541
- def op():
542
- return tensor_list_run
543
-
544
- self.op = op
545
-
546
-
547
574
  class _DatasetIterPyNative(_DatasetIter):
548
575
  """Iter for context (mode=PYNATIVE_MODE)."""
549
576
 
@@ -62,7 +62,7 @@ class FixedLossScaleManager(LossScaleManager):
62
62
  >>> from mindspore import amp, nn
63
63
  >>>
64
64
  >>> # Define the network structure of LeNet5. Refer to
65
- >>> # https://gitee.com/mindspore/docs/blob/r2.1/docs/mindspore/code/lenet.py
65
+ >>> # https://gitee.com/mindspore/docs/blob/r2.2/docs/mindspore/code/lenet.py
66
66
  >>> net = LeNet5()
67
67
  >>> loss_scale = 1024.0
68
68
  >>> loss_scale_manager = amp.FixedLossScaleManager(loss_scale, False)
@@ -136,7 +136,7 @@ class DynamicLossScaleManager(LossScaleManager):
136
136
  >>> from mindspore import amp, nn
137
137
  >>>
138
138
  >>> # Define the network structure of LeNet5. Refer to
139
- >>> # https://gitee.com/mindspore/docs/blob/r2.1/docs/mindspore/code/lenet.py
139
+ >>> # https://gitee.com/mindspore/docs/blob/r2.2/docs/mindspore/code/lenet.py
140
140
  >>> net = LeNet5()
141
141
  >>> loss_scale_manager = amp.DynamicLossScaleManager()
142
142
  >>> optim = nn.Momentum(params=net.trainable_params(), learning_rate=0.1, momentum=0.9)
@@ -109,9 +109,9 @@ def names():
109
109
  >>> import mindspore as ms
110
110
  >>> ms.train.names()
111
111
  ['F1', 'acc', 'accuracy', 'auc', 'bleu_score', 'confusion_matrix', 'confusion_matrix_metric',
112
- 'cosine_similarity', 'dice', 'hausdorff_distance', 'loss', 'mae', 'mean_surface_distance', 'mase',
113
- 'occlusion_sensitivity', 'perplexity', 'recall', 'roc', 'root_mean_square_distance', 'top_1_accuracy',
114
- 'top_5_accuracy', 'topk']
112
+ 'cosine_similarity', 'dice', 'hausdorff_distance', 'loss', 'mae', 'mean_surface_distance', 'mse',
113
+ 'occlusion_sensitivity', 'perplexity', 'precision', 'recall', 'roc', 'root_mean_square_distance',
114
+ 'top_1_accuracy', 'top_5_accuracy', 'topk']
115
115
  """
116
116
  return sorted(__factory__.keys())
117
117
 
@@ -27,7 +27,7 @@ class CosineSimilarity(Metric):
27
27
 
28
28
  Args:
29
29
  similarity (str): 'dot' or 'cosine'. Default: ``'cosine'`` .
30
- reduction (str): 'none', 'sum', 'mean' (all along dim -1). Default: ``'none'`` .
30
+ reduction (str): ``'none'``, 'sum', ``'mean'`` (all along dim -1). Default: ``'none'`` .
31
31
  zero_diagonal (bool): If True, diagonals of results will be set to zero. Default: ``True`` .
32
32
 
33
33
  Supported Platforms:
@@ -85,8 +85,8 @@ class HausdorffDistance(Metric):
85
85
 
86
86
  Args:
87
87
  distance_metric (string): Three distance measurement methods are supported:
88
- ``"euclidean"`` , ``"chessboard"`` or
89
- ``"taxicab"`` . Default: ``"euclidean"`` .
88
+ ``"euclidean"`` (Euclidean Distance) , ``"chessboard"`` (Chessboard Distance, Chebyshev Distance)
89
+ or ``"taxicab"`` (Taxicab Distance, Manhattan Distance). Default: ``"euclidean"`` .
90
90
  percentile (float): Floating point numbers between 0 and 100. Specify the percentile parameter to get the
91
91
  percentile of the Hausdorff distance. Default: ``None`` .
92
92
  directed (bool): If True, it only calculates h(y_pred, y) distance, otherwise, max(h(y_pred, y), h(y, y_pred))
@@ -112,6 +112,7 @@ class HausdorffDistance(Metric):
112
112
  >>> print(mean_average_distance)
113
113
  1.4142135623730951
114
114
  """
115
+
115
116
  def __init__(self, distance_metric="euclidean", percentile=None, directed=False, crop=True):
116
117
  super(HausdorffDistance, self).__init__()
117
118
  string_list = ["euclidean", "chessboard", "taxicab"]
@@ -49,8 +49,9 @@ class MeanSurfaceDistance(Metric):
49
49
  \left | S(B) \right |}
50
50
 
51
51
  Args:
52
- distance_metric (string): Three measurement methods are supported: "euclidean", "chessboard" or "taxicab".
53
- Default: ``"euclidean"`` .
52
+ distance_metric (string): Three measurement methods are supported: ``"euclidean"`` (Euclidean Distance) ,
53
+ ``"chessboard"`` (Chessboard Distance, Chebyshev Distance) or
54
+ ``"taxicab"`` (Taxicab Distance, Manhattan Distance) Default: ``"euclidean"`` .
54
55
  symmetric (bool): Whether to calculate the Mean Surface Distance between y_pred and y.
55
56
  If False, it only calculates :math:`AvgSurDis(y\_pred \rightarrow y)`,
56
57
  otherwise, the mean of distance from `y_pred` to `y` and from `y` to `y_pred`, i.e.
@@ -83,6 +83,42 @@ class Metric(metaclass=ABCMeta):
83
83
 
84
84
  Supported Platforms:
85
85
  ``Ascend`` ``GPU`` ``CPU``
86
+
87
+ Examples:
88
+ >>> import numpy as np
89
+ >>> import mindspore as ms
90
+ >>>
91
+ >>> class MyMAE(ms.train.Metric):
92
+ ... def __init__(self):
93
+ ... super(MyMAE, self).__init__()
94
+ ... self.clear()
95
+ ...
96
+ ... def clear(self):
97
+ ... self._abs_error_sum = 0
98
+ ... self._samples_num = 0
99
+ ...
100
+ ... def update(self, *inputs):
101
+ ... y_pred = inputs[0].asnumpy()
102
+ ... y = inputs[1].asnumpy()
103
+ ... abs_error_sum = np.abs(y - y_pred)
104
+ ... self._abs_error_sum += abs_error_sum.sum()
105
+ ... self._samples_num += y.shape[0]
106
+ ...
107
+ ... def eval(self):
108
+ ... return self._abs_error_sum / self._samples_num
109
+ >>>
110
+ >>> x = ms.Tensor(np.array([[0.1, 0.2, 0.6, 0.9], [0.1, 0.2, 0.6, 0.9]]), ms.float32)
111
+ >>> y = ms.Tensor(np.array([[0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1]]), ms.float32)
112
+ >>> y2 = ms.Tensor(np.array([[0.1, 0.25, 0.7, 0.9], [0.1, 0.25, 0.7, 0.9]]), ms.float32)
113
+ >>> metric = MyMAE().set_indexes([0, 2])
114
+ >>> metric.clear()
115
+ >>> # indexes is [0, 2], using x as logits, y2 as label.
116
+ >>> metric.update(x, y, y2)
117
+ >>> accuracy = metric.eval()
118
+ >>> print(accuracy)
119
+ 1.399999976158142
120
+ >>> print(metric.indexes)
121
+ [0, 2]
86
122
  """
87
123
  def __init__(self):
88
124
  self._indexes = None
@@ -133,22 +169,6 @@ class Metric(metaclass=ABCMeta):
133
169
 
134
170
  Raises:
135
171
  ValueError: If the type of input 'indexes' is not a list or its elements are not all int.
136
-
137
- Examples:
138
- >>> import numpy as np
139
- >>> from mindspore import Tensor
140
- >>> from mindspore.train import Accuracy
141
- >>>
142
- >>> x = Tensor(np.array([[0.2, 0.5], [0.3, 0.1], [0.9, 0.6]]))
143
- >>> y = Tensor(np.array([1, 0, 1]))
144
- >>> y2 = Tensor(np.array([0, 0, 1]))
145
- >>> metric = Accuracy('classification').set_indexes([0, 2])
146
- >>> metric.clear()
147
- >>> # indexes is [0, 2], using x as logits, y2 as label.
148
- >>> metric.update(x, y, y2)
149
- >>> accuracy = metric.eval()
150
- >>> print(accuracy)
151
- 0.3333333333333333
152
172
  """
153
173
  if not isinstance(indexes, list) or not all(isinstance(i, int) for i in indexes):
154
174
  raise ValueError("For 'set_indexes', the argument 'indexes' must be a list and all its elements must "
@@ -180,7 +200,7 @@ class Metric(metaclass=ABCMeta):
180
200
 
181
201
  Tutorial Examples:
182
202
  - `Evaluation Metrics - Customized Metrics
183
- <https://mindspore.cn/tutorials/en/r2.1/advanced/model/metric.html#customized-metrics>`_
203
+ <https://mindspore.cn/tutorials/en/r2.2/advanced/model/metric.html#customized-metrics>`_
184
204
  """
185
205
  raise NotImplementedError('Must define clear function to use this base class')
186
206
 
@@ -194,7 +214,7 @@ class Metric(metaclass=ABCMeta):
194
214
 
195
215
  Tutorial Examples:
196
216
  - `Evaluation Metrics - Customized Metrics
197
- <https://mindspore.cn/tutorials/en/r2.1/advanced/model/metric.html#customized-metrics>`_
217
+ <https://mindspore.cn/tutorials/en/r2.2/advanced/model/metric.html#customized-metrics>`_
198
218
  """
199
219
  raise NotImplementedError('Must define eval function to use this base class')
200
220
 
@@ -211,7 +231,7 @@ class Metric(metaclass=ABCMeta):
211
231
 
212
232
  Tutorial Examples:
213
233
  - `Evaluation Metrics - Customized Metrics
214
- <https://mindspore.cn/tutorials/en/r2.1/advanced/model/metric.html#customized-metrics>`_
234
+ <https://mindspore.cn/tutorials/en/r2.2/advanced/model/metric.html#customized-metrics>`_
215
235
  """
216
236
  raise NotImplementedError('Must define update function to use this base class')
217
237
 
@@ -172,8 +172,8 @@ class ROC(Metric):
172
172
  - **fpr** (np.array) - False positive rate. In binary classification case, a fpr numpy array under different
173
173
  thresholds will be returned, otherwise in multiclass case, a list of
174
174
  fpr numpy arrays will be returned and each element represents one category.
175
- - **tpr** (np.array) - True positive rates. n binary classification case, a tps numpy array under different
176
- thresholds will be returned, otherwise in multiclass case, a list of tps numpy arrays
175
+ - **tpr** (np.array) - True positive rates. n binary classification case, a tpr numpy array under different
176
+ thresholds will be returned, otherwise in multiclass case, a list of tpr numpy arrays
177
177
  will be returned and each element represents one category.
178
178
  - **thresholds** (np.array) - Thresholds used for computing fpr and tpr.
179
179
 
@@ -49,7 +49,8 @@ class RootMeanSquareDistance(Metric):
49
49
 
50
50
  Args:
51
51
  distance_metric (string): Three measurement methods are supported:
52
- "euclidean", "chessboard" or "taxicab". Default: ``"euclidean"`` .
52
+ ``"euclidean"`` (Euclidean Distance) , ``"chessboard"`` (Chessboard Distance, Chebyshev Distance)
53
+ or ``"taxicab"`` (Taxicab Distance, Manhattan Distance). Default: ``"euclidean"`` .
53
54
  symmetric (bool): Whether to calculate the symmetric average root mean square distance between
54
55
  y_pred and y. If False, only calculates :math:`RmsSurDis(y\_pred, y)` surface distance,
55
56
  otherwise, the mean of distance from `y_pred` to `y` and from `y` to `y_pred`, i.e.
@@ -175,7 +176,7 @@ class RootMeanSquareDistance(Metric):
175
176
  if residual_mean_square_distance.shape == (0,):
176
177
  return np.inf
177
178
 
178
- rms_surface_distance = (residual_mean_square_distance**2).mean()
179
+ rms_surface_distance = (residual_mean_square_distance ** 2).mean()
179
180
 
180
181
  if not self.symmetric:
181
182
  return rms_surface_distance
@@ -184,7 +185,7 @@ class RootMeanSquareDistance(Metric):
184
185
  if contrary_residual_mean_square_distance.shape == (0,):
185
186
  return np.inf
186
187
 
187
- contrary_rms_surface_distance = (contrary_residual_mean_square_distance**2).mean()
188
+ contrary_rms_surface_distance = (contrary_residual_mean_square_distance ** 2).mean()
188
189
 
189
190
  rms_distance = np.sqrt(np.mean((rms_surface_distance, contrary_rms_surface_distance)))
190
191
  return rms_distance