mindspore 2.5.0__cp310-cp310-win_amd64.whl → 2.6.0rc1__cp310-cp310-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.
- mindspore/.commit_id +1 -1
- mindspore/Microsoft.VisualStudio.Telemetry.dll +0 -0
- mindspore/Newtonsoft.Json.dll +0 -0
- mindspore/__init__.py +6 -4
- mindspore/_c_dataengine.cp310-win_amd64.pyd +0 -0
- mindspore/_c_expression.cp310-win_amd64.pyd +0 -0
- mindspore/_c_mindrecord.cp310-win_amd64.pyd +0 -0
- mindspore/_check_jit_forbidden_api.py +3 -0
- mindspore/_checkparam.py +3 -33
- mindspore/_deprecated/__init__.py +17 -0
- mindspore/_deprecated/jit.py +198 -0
- mindspore/_extends/builtin_operations.py +1 -1
- mindspore/_extends/parse/__init__.py +6 -7
- mindspore/_extends/parse/compile_config.py +19 -0
- mindspore/_extends/parse/deprecated/deprecated_tensor_method.py +22 -3
- mindspore/_extends/parse/jit_fallback_modules/__init__.py +0 -0
- mindspore/_extends/parse/jit_fallback_modules/check_utils.py +123 -0
- mindspore/_extends/parse/jit_fallback_modules/third_party_modules.py +50 -0
- mindspore/_extends/parse/parser.py +24 -193
- mindspore/_extends/parse/resources.py +1 -5
- mindspore/_extends/parse/standard_method.py +97 -74
- mindspore/_extends/pijit/__init__.py +2 -2
- mindspore/_extends/pijit/pijit_func_white_list.py +16 -11
- mindspore/_extends/pijit/tensor_func_list.py +27 -0
- mindspore/_extends/utils.py +1 -1
- mindspore/amp.py +4 -4
- mindspore/atlprov.dll +0 -0
- mindspore/avcodec-59.dll +0 -0
- mindspore/avdevice-59.dll +0 -0
- mindspore/avfilter-8.dll +0 -0
- mindspore/avformat-59.dll +0 -0
- mindspore/avutil-57.dll +0 -0
- mindspore/boost/__init__.py +2 -2
- mindspore/boost/base.py +3 -7
- mindspore/boost/boost_cell_wrapper.py +2 -2
- mindspore/c1.dll +0 -0
- mindspore/c1xx.dll +0 -0
- mindspore/c2.dll +0 -0
- mindspore/common/__init__.py +4 -3
- mindspore/common/_grad_function.py +56 -0
- mindspore/common/_pijit_context.py +14 -5
- mindspore/common/_register_for_tensor.py +1 -1
- mindspore/common/_stub_tensor.py +5 -10
- mindspore/common/_tensor_cpp_method.py +1 -1
- mindspore/common/_tensor_docs.py +1915 -3287
- mindspore/common/api.py +341 -354
- mindspore/common/auto_dynamic_shape.py +41 -44
- mindspore/common/dtype.py +5 -2
- mindspore/common/dump.py +7 -5
- mindspore/common/file_system.py +3 -0
- mindspore/common/hook_handle.py +5 -3
- mindspore/common/initializer.py +10 -6
- mindspore/common/jit_begin_end.py +94 -0
- mindspore/common/jit_config.py +6 -1
- mindspore/common/jit_context.py +76 -0
- mindspore/common/jit_trace.py +378 -0
- mindspore/common/lazy_inline.py +2 -2
- mindspore/common/mutable.py +5 -4
- mindspore/common/parameter.py +106 -39
- mindspore/common/seed.py +2 -2
- mindspore/common/sparse_tensor.py +23 -17
- mindspore/common/tensor.py +297 -714
- mindspore/communication/__init__.py +7 -5
- mindspore/communication/_comm_helper.py +47 -2
- mindspore/communication/comm_func.py +70 -53
- mindspore/communication/management.py +83 -17
- mindspore/context.py +214 -560
- mindspore/dataset/__init__.py +44 -20
- mindspore/dataset/audio/__init__.py +2 -8
- mindspore/dataset/audio/transforms.py +3 -17
- mindspore/dataset/core/config.py +3 -3
- mindspore/dataset/engine/cache_client.py +1 -1
- mindspore/dataset/engine/datasets.py +102 -120
- mindspore/dataset/engine/datasets_audio.py +22 -22
- mindspore/dataset/engine/datasets_standard_format.py +43 -24
- mindspore/dataset/engine/datasets_text.py +78 -85
- mindspore/dataset/engine/datasets_user_defined.py +108 -76
- mindspore/dataset/engine/datasets_vision.py +111 -108
- mindspore/dataset/engine/iterators.py +5 -3
- mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +1 -1
- mindspore/dataset/engine/samplers.py +279 -57
- mindspore/dataset/engine/serializer_deserializer.py +2 -1
- mindspore/dataset/engine/validators.py +10 -0
- mindspore/dataset/text/__init__.py +7 -6
- mindspore/dataset/text/transforms.py +6 -5
- mindspore/dataset/text/utils.py +3 -3
- mindspore/dataset/transforms/__init__.py +0 -9
- mindspore/dataset/transforms/transforms.py +3 -3
- mindspore/dataset/utils/browse_dataset.py +1 -1
- mindspore/dataset/vision/__init__.py +2 -9
- mindspore/dataset/vision/transforms.py +202 -158
- mindspore/dataset/vision/utils.py +7 -5
- mindspore/device_context/ascend/op_debug.py +60 -1
- mindspore/device_context/ascend/op_tuning.py +0 -4
- mindspore/device_manager.py +39 -3
- mindspore/dnnl.dll +0 -0
- mindspore/dpcmi.dll +0 -0
- mindspore/experimental/es/embedding_service.py +35 -27
- mindspore/experimental/map_parameter.py +4 -4
- mindspore/experimental/optim/adadelta.py +22 -26
- mindspore/experimental/optim/adagrad.py +4 -4
- mindspore/experimental/optim/adam.py +4 -0
- mindspore/experimental/optim/adamax.py +4 -4
- mindspore/experimental/optim/adamw.py +4 -0
- mindspore/experimental/optim/asgd.py +1 -1
- mindspore/experimental/optim/lr_scheduler.py +40 -22
- mindspore/experimental/optim/radam.py +5 -5
- mindspore/experimental/optim/rprop.py +1 -1
- mindspore/experimental/optim/sgd.py +1 -1
- mindspore/hal/contiguous_tensors_handle.py +6 -10
- mindspore/hal/device.py +55 -81
- mindspore/hal/event.py +38 -55
- mindspore/hal/memory.py +93 -144
- mindspore/hal/stream.py +81 -125
- mindspore/include/dataset/constants.h +7 -4
- mindspore/include/dataset/execute.h +2 -2
- mindspore/jpeg62.dll +0 -0
- mindspore/log.py +40 -2
- mindspore/mindrecord/__init__.py +20 -7
- mindspore/mindspore_backend_common.dll +0 -0
- mindspore/mindspore_backend_manager.dll +0 -0
- mindspore/mindspore_common.dll +0 -0
- mindspore/mindspore_core.dll +0 -0
- mindspore/mindspore_dump.dll +0 -0
- mindspore/mindspore_frontend.dll +0 -0
- mindspore/mindspore_glog.dll +0 -0
- mindspore/mindspore_memory_pool.dll +0 -0
- mindspore/mindspore_ms_backend.dll +0 -0
- mindspore/mindspore_ops.dll +0 -0
- mindspore/{mindspore_backend.dll → mindspore_ops_host.dll} +0 -0
- mindspore/mindspore_ops_kernel_common.dll +0 -0
- mindspore/mindspore_profiler.dll +0 -0
- mindspore/mindspore_pyboost.dll +0 -0
- mindspore/mindspore_pynative.dll +0 -0
- mindspore/mindspore_res_manager.dll +0 -0
- mindspore/mindspore_runtime_pipeline.dll +0 -0
- mindspore/mint/__init__.py +131 -700
- mindspore/mint/distributed/__init__.py +5 -1
- mindspore/mint/distributed/distributed.py +194 -109
- mindspore/mint/linalg/__init__.py +2 -0
- mindspore/mint/nn/__init__.py +280 -18
- mindspore/mint/nn/functional.py +282 -64
- mindspore/mint/nn/layer/__init__.py +4 -0
- mindspore/mint/nn/layer/_functions.py +7 -3
- mindspore/mint/nn/layer/activation.py +120 -13
- mindspore/mint/nn/layer/conv.py +218 -24
- mindspore/mint/nn/layer/normalization.py +15 -16
- mindspore/mint/nn/layer/padding.py +1 -1
- mindspore/mint/nn/layer/pooling.py +66 -1
- mindspore/mint/optim/__init__.py +2 -1
- mindspore/mint/optim/sgd.py +171 -0
- mindspore/msobj140.dll +0 -0
- mindspore/mspdb140.dll +0 -0
- mindspore/mspdbcore.dll +0 -0
- mindspore/mspdbst.dll +0 -0
- mindspore/mspft140.dll +0 -0
- mindspore/msvcdis140.dll +0 -0
- mindspore/msvcp140_1.dll +0 -0
- mindspore/msvcp140_2.dll +0 -0
- mindspore/msvcp140_atomic_wait.dll +0 -0
- mindspore/msvcp140_codecvt_ids.dll +0 -0
- mindspore/nn/__init__.py +4 -1
- mindspore/nn/cell.py +1250 -176
- mindspore/nn/layer/activation.py +23 -21
- mindspore/nn/layer/basic.py +22 -16
- mindspore/nn/layer/container.py +1 -1
- mindspore/nn/layer/conv.py +22 -17
- mindspore/nn/layer/embedding.py +9 -8
- mindspore/nn/layer/normalization.py +48 -42
- mindspore/nn/layer/pooling.py +75 -31
- mindspore/nn/layer/transformer.py +11 -10
- mindspore/nn/learning_rate_schedule.py +4 -2
- mindspore/nn/loss/loss.py +27 -19
- mindspore/nn/optim/ada_grad.py +6 -5
- mindspore/nn/optim/adadelta.py +9 -7
- mindspore/nn/optim/adafactor.py +1 -1
- mindspore/nn/optim/adam.py +16 -12
- mindspore/nn/optim/adamax.py +8 -7
- mindspore/nn/optim/adasum.py +5 -5
- mindspore/nn/optim/asgd.py +1 -1
- mindspore/nn/optim/ftrl.py +11 -9
- mindspore/nn/optim/lamb.py +1 -1
- mindspore/nn/optim/lazyadam.py +12 -10
- mindspore/nn/optim/momentum.py +7 -6
- mindspore/nn/optim/optimizer.py +2 -2
- mindspore/nn/optim/proximal_ada_grad.py +12 -10
- mindspore/nn/optim/rmsprop.py +13 -12
- mindspore/nn/optim/rprop.py +9 -7
- mindspore/nn/optim/sgd.py +9 -6
- mindspore/nn/optim/tft_wrapper.py +5 -2
- mindspore/nn/probability/bijector/bijector.py +17 -11
- mindspore/nn/probability/bijector/gumbel_cdf.py +5 -5
- mindspore/nn/probability/bijector/invert.py +2 -2
- mindspore/nn/probability/bijector/scalar_affine.py +3 -3
- mindspore/nn/probability/bijector/softplus.py +3 -2
- mindspore/nn/probability/distribution/beta.py +3 -3
- mindspore/nn/probability/distribution/categorical.py +1 -1
- mindspore/nn/probability/distribution/cauchy.py +4 -2
- mindspore/nn/probability/distribution/exponential.py +6 -7
- mindspore/nn/probability/distribution/gamma.py +2 -2
- mindspore/nn/probability/distribution/gumbel.py +2 -2
- mindspore/nn/probability/distribution/half_normal.py +5 -3
- mindspore/nn/probability/distribution/logistic.py +5 -3
- mindspore/nn/probability/distribution/poisson.py +1 -1
- mindspore/nn/probability/distribution/uniform.py +5 -3
- mindspore/nn/reinforcement/_tensors_queue.py +1 -1
- mindspore/nn/reinforcement/tensor_array.py +1 -1
- mindspore/nn/wrap/__init__.py +6 -6
- mindspore/nn/wrap/cell_wrapper.py +178 -117
- mindspore/nn/wrap/grad_reducer.py +45 -36
- mindspore/nn/wrap/loss_scale.py +3 -3
- mindspore/numpy/array_creations.py +3 -3
- mindspore/numpy/array_ops.py +1 -1
- mindspore/numpy/math_ops.py +4 -4
- mindspore/numpy/utils.py +1 -2
- mindspore/numpy/utils_const.py +1 -2
- mindspore/opencv_core452.dll +0 -0
- mindspore/opencv_imgcodecs452.dll +0 -0
- mindspore/opencv_imgproc452.dll +0 -0
- mindspore/ops/__init__.py +3 -2
- mindspore/ops/_grad_experimental/grad_comm_ops.py +18 -3
- mindspore/ops/_grad_experimental/grad_debug_ops.py +8 -1
- mindspore/ops/_grad_experimental/taylor_rule.py +29 -0
- mindspore/ops/_register_for_op.py +0 -11
- mindspore/{ops_generate → ops/_utils}/arg_dtype_cast.py +123 -4
- mindspore/{ops_generate → ops/_utils}/arg_handler.py +3 -4
- mindspore/ops/_vmap/vmap_array_ops.py +7 -6
- mindspore/ops/_vmap/vmap_grad_nn_ops.py +2 -1
- mindspore/ops/_vmap/vmap_math_ops.py +4 -7
- mindspore/ops/_vmap/vmap_nn_ops.py +9 -8
- mindspore/ops/auto_generate/__init__.py +4 -3
- mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +102 -49
- mindspore/ops/auto_generate/gen_extend_func.py +281 -135
- mindspore/ops/auto_generate/gen_ops_def.py +2574 -2326
- mindspore/ops/auto_generate/gen_ops_prim.py +8566 -2755
- mindspore/ops/auto_generate/pyboost_inner_prim.py +106 -76
- mindspore/ops/composite/__init__.py +2 -1
- mindspore/ops/composite/base.py +19 -24
- mindspore/ops/composite/math_ops.py +6 -16
- mindspore/ops/composite/multitype_ops/__init__.py +5 -2
- mindspore/ops/composite/multitype_ops/_compile_utils.py +2 -3
- mindspore/ops/composite/multitype_ops/_constexpr_utils.py +1 -2
- mindspore/ops/composite/multitype_ops/add_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/bitwise_and_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/bitwise_or_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/bitwise_xor_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/div_impl.py +6 -4
- mindspore/ops/composite/multitype_ops/equal_impl.py +4 -3
- mindspore/ops/composite/multitype_ops/floordiv_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/getitem_impl.py +3 -2
- mindspore/ops/composite/multitype_ops/greater_equal_impl.py +4 -3
- mindspore/ops/composite/multitype_ops/greater_impl.py +4 -3
- mindspore/ops/composite/multitype_ops/in_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/invert_impl.py +50 -0
- mindspore/ops/composite/multitype_ops/left_shift_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/less_equal_impl.py +4 -3
- mindspore/ops/composite/multitype_ops/less_impl.py +4 -3
- mindspore/ops/composite/multitype_ops/logic_not_impl.py +3 -2
- mindspore/ops/composite/multitype_ops/logical_and_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/logical_or_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/mod_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/mul_impl.py +3 -2
- mindspore/ops/composite/multitype_ops/negative_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/not_equal_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/not_in_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/ones_like_impl.py +18 -0
- mindspore/ops/composite/multitype_ops/pow_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/right_shift_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/setitem_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/sub_impl.py +2 -1
- mindspore/ops/function/__init__.py +28 -2
- mindspore/ops/function/_add_attr_func.py +58 -0
- mindspore/ops/function/array_func.py +1629 -2345
- mindspore/ops/function/clip_func.py +38 -45
- mindspore/ops/function/debug_func.py +36 -44
- mindspore/ops/function/grad/__init__.py +1 -0
- mindspore/ops/function/grad/grad_func.py +104 -71
- mindspore/ops/function/image_func.py +1 -1
- mindspore/ops/function/linalg_func.py +46 -78
- mindspore/ops/function/math_func.py +3035 -3705
- mindspore/ops/function/nn_func.py +676 -241
- mindspore/ops/function/other_func.py +159 -1
- mindspore/ops/function/parameter_func.py +17 -30
- mindspore/ops/function/random_func.py +204 -361
- mindspore/ops/function/reshard_func.py +4 -70
- mindspore/ops/function/sparse_func.py +3 -3
- mindspore/ops/function/sparse_unary_func.py +5 -5
- mindspore/ops/function/spectral_func.py +25 -58
- mindspore/ops/function/vmap_func.py +24 -17
- mindspore/ops/functional.py +6 -4
- mindspore/ops/functional_overload.py +547 -4
- mindspore/ops/op_info_register.py +32 -244
- mindspore/ops/operations/__init__.py +10 -5
- mindspore/ops/operations/_custom_ops_utils.py +247 -0
- mindspore/ops/operations/_grad_ops.py +1 -10
- mindspore/ops/operations/_inner_ops.py +5 -76
- mindspore/ops/operations/_ms_kernel.py +4 -10
- mindspore/ops/operations/_rl_inner_ops.py +1 -1
- mindspore/ops/operations/_scalar_ops.py +3 -2
- mindspore/ops/operations/_sequence_ops.py +1 -1
- mindspore/ops/operations/_tensor_array.py +1 -1
- mindspore/ops/operations/array_ops.py +37 -22
- mindspore/ops/operations/comm_ops.py +150 -107
- mindspore/ops/operations/custom_ops.py +221 -23
- mindspore/ops/operations/debug_ops.py +115 -16
- mindspore/ops/operations/inner_ops.py +1 -1
- mindspore/ops/operations/linalg_ops.py +1 -58
- mindspore/ops/operations/manually_defined/_inner.py +1 -1
- mindspore/ops/operations/manually_defined/ops_def.py +746 -79
- mindspore/ops/operations/math_ops.py +21 -18
- mindspore/ops/operations/nn_ops.py +65 -191
- mindspore/ops/operations/other_ops.py +62 -9
- mindspore/ops/operations/random_ops.py +13 -7
- mindspore/ops/operations/reshard_ops.py +1 -1
- mindspore/ops/operations/sparse_ops.py +2 -2
- mindspore/ops/primitive.py +43 -32
- mindspore/ops/tensor_method.py +232 -13
- mindspore/ops_generate/__init__.py +0 -5
- mindspore/ops_generate/aclnn/__init__.py +0 -0
- mindspore/ops_generate/{aclnn_kernel_register_auto_cc_generator.py → aclnn/aclnn_kernel_register_auto_cc_generator.py} +43 -18
- mindspore/ops_generate/{gen_aclnn_implement.py → aclnn/gen_aclnn_implement.py} +49 -51
- mindspore/ops_generate/api/__init__.py +0 -0
- mindspore/ops_generate/{add_tensor_docs_generator.py → api/add_tensor_docs_generator.py} +9 -7
- mindspore/ops_generate/{cpp_create_prim_instance_helper_generator.py → api/cpp_create_prim_instance_helper_generator.py} +6 -9
- mindspore/ops_generate/{functional_map_cpp_generator.py → api/functional_map_cpp_generator.py} +25 -12
- mindspore/ops_generate/{functional_overload_py_generator.py → api/functional_overload_py_generator.py} +8 -6
- mindspore/ops_generate/{functions_cc_generator.py → api/functions_cc_generator.py} +14 -10
- mindspore/ops_generate/api/gen_api.py +103 -0
- mindspore/ops_generate/{op_api_proto.py → api/op_api_proto.py} +98 -69
- mindspore/ops_generate/{tensor_func_reg_cpp_generator.py → api/tensor_func_reg_cpp_generator.py} +82 -43
- mindspore/ops_generate/common/__init__.py +0 -0
- mindspore/ops_generate/common/gen_constants.py +91 -0
- mindspore/ops_generate/{gen_utils.py → common/gen_utils.py} +72 -19
- mindspore/ops_generate/{op_proto.py → common/op_proto.py} +64 -1
- mindspore/ops_generate/{template.py → common/template.py} +96 -84
- mindspore/ops_generate/gen_ops.py +23 -325
- mindspore/ops_generate/op_def/__init__.py +0 -0
- mindspore/ops_generate/op_def/gen_op_def.py +90 -0
- mindspore/ops_generate/{lite_ops_cpp_generator.py → op_def/lite_ops_cpp_generator.py} +47 -11
- mindspore/ops_generate/{ops_def_cc_generator.py → op_def/ops_def_cc_generator.py} +18 -7
- mindspore/ops_generate/{ops_def_h_generator.py → op_def/ops_def_h_generator.py} +5 -5
- mindspore/ops_generate/{ops_name_h_generator.py → op_def/ops_name_h_generator.py} +30 -15
- mindspore/ops_generate/op_def/ops_primitive_h_generator.py +125 -0
- mindspore/ops_generate/op_def_py/__init__.py +0 -0
- mindspore/ops_generate/op_def_py/gen_op_def_py.py +47 -0
- mindspore/ops_generate/{op_def_py_generator.py → op_def_py/op_def_py_generator.py} +6 -5
- mindspore/ops_generate/{op_prim_py_generator.py → op_def_py/op_prim_py_generator.py} +24 -15
- mindspore/ops_generate/pyboost/__init__.py +0 -0
- mindspore/ops_generate/{auto_grad_impl_cc_generator.py → pyboost/auto_grad_impl_cc_generator.py} +11 -7
- mindspore/ops_generate/{auto_grad_reg_cc_generator.py → pyboost/auto_grad_reg_cc_generator.py} +7 -7
- mindspore/ops_generate/{gen_pyboost_func.py → pyboost/gen_pyboost_func.py} +40 -16
- mindspore/ops_generate/{op_template_parser.py → pyboost/op_template_parser.py} +105 -24
- mindspore/ops_generate/{pyboost_functions_cpp_generator.py → pyboost/pyboost_functions_cpp_generator.py} +55 -18
- mindspore/ops_generate/{pyboost_functions_h_generator.py → pyboost/pyboost_functions_h_generator.py} +42 -10
- mindspore/ops_generate/{pyboost_functions_py_generator.py → pyboost/pyboost_functions_py_generator.py} +6 -6
- mindspore/ops_generate/{pyboost_grad_function_cpp_generator.py → pyboost/pyboost_grad_function_cpp_generator.py} +11 -10
- mindspore/ops_generate/{pyboost_inner_prim_generator.py → pyboost/pyboost_inner_prim_generator.py} +8 -7
- mindspore/ops_generate/{pyboost_native_grad_functions_generator.py → pyboost/pyboost_native_grad_functions_generator.py} +14 -10
- mindspore/ops_generate/{pyboost_op_cpp_code_generator.py → pyboost/pyboost_op_cpp_code_generator.py} +140 -53
- mindspore/ops_generate/{pyboost_overload_functions_cpp_generator.py → pyboost/pyboost_overload_functions_cpp_generator.py} +28 -15
- mindspore/ops_generate/{pyboost_utils.py → pyboost/pyboost_utils.py} +88 -4
- mindspore/ops_generate/resources/__init__.py +0 -0
- mindspore/ops_generate/resources/resource_list.py +30 -0
- mindspore/ops_generate/resources/resource_loader.py +36 -0
- mindspore/ops_generate/resources/resource_manager.py +64 -0
- mindspore/ops_generate/resources/yaml_loader.py +88 -0
- mindspore/ops_generate/tensor_py_cc_generator.py +122 -0
- mindspore/parallel/__init__.py +6 -2
- mindspore/parallel/_auto_parallel_context.py +133 -6
- mindspore/parallel/_cell_wrapper.py +130 -15
- mindspore/parallel/_parallel_serialization.py +95 -4
- mindspore/parallel/_ps_context.py +1 -1
- mindspore/parallel/_recovery_context.py +7 -2
- mindspore/parallel/_tensor.py +142 -18
- mindspore/parallel/_utils.py +198 -25
- mindspore/parallel/algo_parameter_config.py +3 -3
- mindspore/parallel/auto_parallel.py +732 -0
- mindspore/parallel/checkpoint_convert.py +159 -0
- mindspore/parallel/checkpoint_transform.py +656 -37
- mindspore/parallel/cluster/process_entity/_api.py +151 -19
- mindspore/parallel/cluster/run.py +1 -1
- mindspore/parallel/function/__init__.py +24 -0
- mindspore/parallel/function/reshard_func.py +259 -0
- mindspore/parallel/nn/__init__.py +25 -0
- mindspore/parallel/nn/parallel_cell_wrapper.py +263 -0
- mindspore/parallel/nn/parallel_grad_reducer.py +169 -0
- mindspore/parallel/parameter_broadcast.py +24 -13
- mindspore/parallel/shard.py +137 -61
- mindspore/parallel/transform_safetensors.py +287 -95
- mindspore/pgodb140.dll +0 -0
- mindspore/pgort140.dll +0 -0
- mindspore/profiler/__init__.py +9 -5
- mindspore/profiler/analysis/parser/ascend_cann_parser.py +6 -2
- mindspore/profiler/analysis/parser/ms_framework_parser.py +4 -4
- mindspore/profiler/analysis/parser/timeline_assembly_factory/ascend_timeline_assembler.py +7 -4
- mindspore/profiler/analysis/parser/timeline_assembly_factory/trace_view_container.py +22 -0
- mindspore/profiler/analysis/parser/timeline_creator/fwk_timeline_creator.py +3 -3
- mindspore/profiler/analysis/parser/timeline_event/fwk_event.py +241 -86
- mindspore/profiler/analysis/viewer/ascend_communication_viewer.py +41 -2
- mindspore/profiler/analysis/viewer/ascend_kernel_details_viewer.py +33 -35
- mindspore/profiler/analysis/viewer/ascend_memory_viewer.py +7 -0
- mindspore/profiler/analysis/viewer/ascend_op_memory_viewer.py +8 -3
- mindspore/profiler/analysis/viewer/ascend_step_trace_time_viewer.py +141 -30
- mindspore/profiler/analysis/viewer/ms_dataset_viewer.py +5 -6
- mindspore/profiler/common/ascend_msprof_exporter.py +5 -4
- mindspore/profiler/common/constant.py +12 -0
- mindspore/profiler/common/msprof_cmd_tool.py +42 -23
- mindspore/profiler/common/path_manager.py +24 -0
- mindspore/profiler/common/profiler_context.py +26 -2
- mindspore/profiler/common/profiler_meta_data.py +74 -0
- mindspore/profiler/common/profiler_parameters.py +59 -18
- mindspore/profiler/common/profiler_path_manager.py +66 -7
- mindspore/profiler/dynamic_profiler.py +112 -79
- mindspore/profiler/envprofiler.py +26 -1
- mindspore/profiler/experimental_config.py +197 -0
- mindspore/profiler/mstx.py +57 -14
- mindspore/profiler/platform/npu_profiler.py +33 -7
- mindspore/profiler/profiler.py +541 -45
- mindspore/profiler/profiler_action_controller.py +1 -1
- mindspore/profiler/profiler_interface.py +4 -0
- mindspore/profiler/schedule.py +57 -22
- mindspore/rewrite/api/node.py +15 -13
- mindspore/rewrite/api/symbol_tree.py +1 -1
- mindspore/run_check/_check_version.py +25 -14
- mindspore/run_check/run_check.py +1 -1
- mindspore/runtime/__init__.py +2 -2
- mindspore/runtime/executor.py +40 -11
- mindspore/runtime/memory.py +25 -8
- mindspore/safeguard/rewrite_obfuscation.py +12 -9
- mindspore/swresample-4.dll +0 -0
- mindspore/swscale-6.dll +0 -0
- mindspore/tbbmalloc.dll +0 -0
- mindspore/tinyxml2.dll +0 -0
- mindspore/train/__init__.py +8 -8
- mindspore/train/_utils.py +35 -7
- mindspore/train/amp.py +1 -1
- mindspore/train/callback/__init__.py +2 -2
- mindspore/train/callback/_callback.py +2 -16
- mindspore/train/callback/_checkpoint.py +24 -40
- mindspore/train/callback/_cluster_monitor.py +14 -18
- mindspore/train/callback/_flops_collector.py +2 -3
- mindspore/train/callback/_history.py +7 -4
- mindspore/train/callback/_lambda_callback.py +2 -2
- mindspore/train/callback/_landscape.py +0 -3
- mindspore/train/callback/_loss_monitor.py +2 -1
- mindspore/train/callback/_on_request_exit.py +6 -5
- mindspore/train/callback/_reduce_lr_on_plateau.py +11 -6
- mindspore/train/callback/_summary_collector.py +8 -13
- mindspore/train/callback/_time_monitor.py +2 -1
- mindspore/train/callback/{_tft_register.py → _train_fault_tolerance.py} +179 -103
- mindspore/train/data_sink.py +25 -2
- mindspore/train/dataset_helper.py +4 -5
- mindspore/train/loss_scale_manager.py +8 -7
- mindspore/train/metrics/accuracy.py +3 -3
- mindspore/train/metrics/confusion_matrix.py +9 -9
- mindspore/train/metrics/error.py +3 -3
- mindspore/train/metrics/hausdorff_distance.py +4 -4
- mindspore/train/metrics/mean_surface_distance.py +3 -3
- mindspore/train/metrics/metric.py +0 -12
- mindspore/train/metrics/occlusion_sensitivity.py +4 -2
- mindspore/train/metrics/precision.py +8 -6
- mindspore/train/metrics/recall.py +9 -9
- mindspore/train/metrics/root_mean_square_surface_distance.py +2 -2
- mindspore/train/mind_ir_pb2.py +19 -12
- mindspore/train/model.py +176 -103
- mindspore/train/serialization.py +246 -988
- mindspore/train/summary/_summary_adapter.py +2 -2
- mindspore/train/summary/summary_record.py +1 -1
- mindspore/turbojpeg.dll +0 -0
- mindspore/utils/__init__.py +3 -2
- mindspore/utils/dryrun.py +4 -2
- mindspore/utils/hooks.py +81 -0
- mindspore/utils/utils.py +138 -4
- mindspore/vcmeta.dll +0 -0
- mindspore/vcruntime140.dll +0 -0
- mindspore/vcruntime140_1.dll +0 -0
- mindspore/version.py +1 -1
- {mindspore-2.5.0.dist-info → mindspore-2.6.0rc1.dist-info}/METADATA +2 -1
- {mindspore-2.5.0.dist-info → mindspore-2.6.0rc1.dist-info}/RECORD +483 -438
- mindspore/_install_custom.py +0 -43
- mindspore/common/_register_for_adapter.py +0 -74
- mindspore/ops/auto_generate/gen_arg_dtype_cast.py +0 -252
- mindspore/ops/auto_generate/gen_arg_handler.py +0 -136
- mindspore/ops/operations/_opaque_predicate_registry.py +0 -41
- mindspore/ops_generate/gen_constants.py +0 -190
- mindspore/ops_generate/gen_ops_inner_prim.py +0 -131
- mindspore/ops_generate/ops_primitive_h_generator.py +0 -81
- /mindspore/ops_generate/{base_generator.py → common/base_generator.py} +0 -0
- {mindspore-2.5.0.dist-info → mindspore-2.6.0rc1.dist-info}/WHEEL +0 -0
- {mindspore-2.5.0.dist-info → mindspore-2.6.0rc1.dist-info}/entry_points.txt +0 -0
- {mindspore-2.5.0.dist-info → mindspore-2.6.0rc1.dist-info}/top_level.txt +0 -0
mindspore/common/parameter.py
CHANGED
|
@@ -30,13 +30,12 @@ from mindspore.log import _LogActionOnce
|
|
|
30
30
|
from mindspore._c_expression import ParamInfo
|
|
31
31
|
from mindspore.common import dtype as mstype
|
|
32
32
|
from mindspore import context
|
|
33
|
-
from mindspore.parallel._utils import _get_parallel_mode, _get_global_rank
|
|
34
33
|
from mindspore.common._utils import get_slice_num, get_slice_shape
|
|
35
34
|
from mindspore.common.initializer import initializer
|
|
36
|
-
from mindspore.common.tensor import Tensor
|
|
35
|
+
from mindspore.common.tensor import Tensor, _TensorMeta
|
|
37
36
|
from mindspore import _checkparam as Validator
|
|
38
37
|
from mindspore._check_jit_forbidden_api import jit_forbidden_register
|
|
39
|
-
from mindspore._c_expression import
|
|
38
|
+
from mindspore._c_expression import TensorPy as Tensor_
|
|
40
39
|
from mindspore.parallel._tensor import _get_slice_index
|
|
41
40
|
from mindspore.parallel._auto_parallel_context import auto_parallel_context
|
|
42
41
|
from mindspore.parallel._ps_context import _is_role_worker, _is_role_pserver, _is_role_sched, _clone_hash_table, \
|
|
@@ -44,7 +43,7 @@ from mindspore.parallel._ps_context import _is_role_worker, _is_role_pserver, _i
|
|
|
44
43
|
from mindspore.parallel._ps_context import _reinsert_hash_table_size, _insert_accumu_init_info, _cache_enable
|
|
45
44
|
from mindspore.common._decorator import deprecated
|
|
46
45
|
from mindspore.communication._comm_helper import _is_initialized
|
|
47
|
-
from mindspore.communication import get_group_size
|
|
46
|
+
from mindspore.communication import get_group_size, get_rank
|
|
48
47
|
import mindspore.common._monad as monad
|
|
49
48
|
|
|
50
49
|
__all__ = ['Parameter', 'ParameterTuple']
|
|
@@ -77,7 +76,7 @@ def _is_parallel_mode():
|
|
|
77
76
|
return False
|
|
78
77
|
if os.getenv("RUN_MODE") != "predict":
|
|
79
78
|
return False
|
|
80
|
-
if get_group_size() > 1
|
|
79
|
+
if get_group_size() > 1:
|
|
81
80
|
return True
|
|
82
81
|
return False
|
|
83
82
|
|
|
@@ -120,7 +119,7 @@ def _gen_offload_file_path(offload_dir):
|
|
|
120
119
|
offload_dir = os.path.relpath(offload_dir)
|
|
121
120
|
if not os.path.exists(offload_dir):
|
|
122
121
|
os.makedirs(offload_dir, mode=0o700, exist_ok=True)
|
|
123
|
-
offload_file_path = offload_dir + "/" + str(
|
|
122
|
+
offload_file_path = offload_dir + "/" + str(get_rank()) + "_" + str(
|
|
124
123
|
_get_unique_parameter_key()) + "_" + str(time.time()) + ".data"
|
|
125
124
|
return offload_file_path
|
|
126
125
|
|
|
@@ -155,7 +154,7 @@ class Parameter(Tensor_):
|
|
|
155
154
|
the list of its parameters, and will appear, e.g. in `cell.get_parameters()` iterator.
|
|
156
155
|
|
|
157
156
|
Note:
|
|
158
|
-
-
|
|
157
|
+
- When using `AutoParallel(cell)` to enable parallel mode, if init `Parameter` by
|
|
159
158
|
a `Tensor`, the type of Parameter will be `Tensor`. `Tensor` will save the shape and type info of a tensor
|
|
160
159
|
with no memory usage.
|
|
161
160
|
|
|
@@ -215,9 +214,8 @@ class Parameter(Tensor_):
|
|
|
215
214
|
requires_grad (bool): True if the parameter requires gradient. Default: ``True`` .
|
|
216
215
|
layerwise_parallel (bool): When `layerwise_parallel` is true in data/hybrid parallel mode,
|
|
217
216
|
broadcast and gradients communication would not be applied to the `Parameter`. Default: ``False`` .
|
|
218
|
-
parallel_optimizer (bool): It is used to filter the weight shard operation in
|
|
219
|
-
|
|
220
|
-
:func:`mindspore.set_auto_parallel_context`. Default: ``True`` .
|
|
217
|
+
parallel_optimizer (bool): It is used to filter the weight shard operation in parallel mode. It works only when
|
|
218
|
+
enable parallel optimizer in :func:`mindspore.parallel.auto_parallel.AutoParallel.hsdp`. Default: ``True`` .
|
|
221
219
|
storage_format (str): Only Ascend device target is supported. It is used to specify the format of the weight
|
|
222
220
|
loaded to the device. By default, the format is not changed. The optional values are ``"FRACTAL_NZ"`` ,
|
|
223
221
|
``"NC1HWC0"`` , ``"FRACTAL_Z"`` , etc. Default: ``""`` .
|
|
@@ -301,7 +299,6 @@ class Parameter(Tensor_):
|
|
|
301
299
|
self._cast_type = None
|
|
302
300
|
self._unique = False
|
|
303
301
|
self.is_in_parallel = _is_in_auto_parallel_mode()
|
|
304
|
-
self.is_in_shard = False
|
|
305
302
|
self._pipeline_stage_list = []
|
|
306
303
|
self.slice_num = 1
|
|
307
304
|
if -1 in self.shape:
|
|
@@ -317,14 +314,14 @@ class Parameter(Tensor_):
|
|
|
317
314
|
self.param_info.use_persistent_storage = True
|
|
318
315
|
self.param_info.origin_shape = default_input.shape
|
|
319
316
|
self.slice_num = slice_num_of_persistent_data
|
|
320
|
-
Tensor_.__init__(self, default_input.dtype, tuple(data_shape))
|
|
317
|
+
Tensor_.__init__(self, dtype=default_input.dtype, shape=tuple(data_shape))
|
|
321
318
|
else:
|
|
322
|
-
Tensor_.__init__(self, default_input.dtype, default_input.shape)
|
|
319
|
+
Tensor_.__init__(self, dtype=default_input.dtype, shape=default_input.shape)
|
|
323
320
|
|
|
324
321
|
elif isinstance(default_input, int):
|
|
325
|
-
Tensor_.__init__(self, mstype.int64, ())
|
|
322
|
+
Tensor_.__init__(self, dtype=mstype.int64, shape=())
|
|
326
323
|
elif isinstance(default_input, float):
|
|
327
|
-
Tensor_.__init__(self, mstype.float32, ())
|
|
324
|
+
Tensor_.__init__(self, dtype=mstype.float32, shape=())
|
|
328
325
|
elif isinstance(default_input, (np.ndarray, list)):
|
|
329
326
|
Tensor_.__init__(self, default_input)
|
|
330
327
|
else:
|
|
@@ -341,7 +338,7 @@ class Parameter(Tensor_):
|
|
|
341
338
|
self.load = other_ops.Load()
|
|
342
339
|
|
|
343
340
|
def __deepcopy__(self, memodict):
|
|
344
|
-
new_obj = Parameter(self)
|
|
341
|
+
new_obj = Parameter(self, requires_grad=self.requires_grad)
|
|
345
342
|
new_obj.name = self.name
|
|
346
343
|
new_obj._inited_param = self._inited_param
|
|
347
344
|
return new_obj
|
|
@@ -407,9 +404,6 @@ class Parameter(Tensor_):
|
|
|
407
404
|
init_in_server (bool): Whether trainable parameter updated by parameter server is
|
|
408
405
|
initialized on server. Default: ``False``.
|
|
409
406
|
|
|
410
|
-
Tutorial Examples:
|
|
411
|
-
- `Parameter Server Mode
|
|
412
|
-
<https://www.mindspore.cn/docs/en/master/model_train/parallel/parameter_server_training.html>`_
|
|
413
407
|
"""
|
|
414
408
|
if not _is_ps_mode() or not (_is_role_worker() or _is_role_pserver() or _is_role_sched()):
|
|
415
409
|
raise RuntimeError("Must complete following two steps before calling set_param_ps: \n"
|
|
@@ -475,7 +469,7 @@ class Parameter(Tensor_):
|
|
|
475
469
|
Tensor_.wait_pipeline(self)
|
|
476
470
|
param_info_.obj = self
|
|
477
471
|
self._param_info = param_info_
|
|
478
|
-
Tensor_.
|
|
472
|
+
Tensor_.set_param_info(self, param_info_)
|
|
479
473
|
|
|
480
474
|
@property
|
|
481
475
|
def name(self):
|
|
@@ -542,8 +536,8 @@ class Parameter(Tensor_):
|
|
|
542
536
|
"""
|
|
543
537
|
Get the fusion type (int) for communication operators corresponding to this parameter.
|
|
544
538
|
|
|
545
|
-
|
|
546
|
-
gradients aggregation are inserted automatically.
|
|
539
|
+
When using `AutoParallel(cell)` to enable parallel mode, some communication operators used
|
|
540
|
+
for parameters or gradients aggregation are inserted automatically.
|
|
547
541
|
The value of `comm_fusion` must be greater than or equal to 0.
|
|
548
542
|
When the value of `comm_fusion` is ``0`` , operators will not be fused together.
|
|
549
543
|
|
|
@@ -559,9 +553,6 @@ class Parameter(Tensor_):
|
|
|
559
553
|
|
|
560
554
|
@comm_fusion.setter
|
|
561
555
|
def comm_fusion(self, comm_fusion_):
|
|
562
|
-
if context.get_context("mode") == context.PYNATIVE_MODE and "auto_parallel" in _get_parallel_mode():
|
|
563
|
-
raise RuntimeError(
|
|
564
|
-
"`comm_fusion` does not support PYNATIVE_MODE in AUTO_PARALLEL and SEMI_AUTO_PARALLEL mode.")
|
|
565
556
|
Validator.check_non_negative_int(comm_fusion_)
|
|
566
557
|
self.param_info.comm_fusion = comm_fusion_
|
|
567
558
|
|
|
@@ -570,7 +561,7 @@ class Parameter(Tensor_):
|
|
|
570
561
|
"""
|
|
571
562
|
Get the communication recompute status(bool) of optimizer parallel for the parameter.
|
|
572
563
|
|
|
573
|
-
|
|
564
|
+
When using `AutoParallel(cell)` to enable parallel mode, and applying parallel optimizer,
|
|
574
565
|
some :class:`mindspore.ops.AllGather` operators
|
|
575
566
|
used for parameters gathering are inserted automatically. It is used to control the recompute attr for those
|
|
576
567
|
:class:`mindspore.ops.AllGather` operators.
|
|
@@ -658,7 +649,9 @@ class Parameter(Tensor_):
|
|
|
658
649
|
if init != 'same':
|
|
659
650
|
shape = self.shape if self.slice_num == 1 else self.param_info.origin_shape
|
|
660
651
|
dtype = self.dtype
|
|
661
|
-
|
|
652
|
+
tensor = initializer(init, shape=shape, dtype=dtype)
|
|
653
|
+
x.set_data(tensor)
|
|
654
|
+
x.init = tensor.init
|
|
662
655
|
device = self._get_user_data("parameter_device")
|
|
663
656
|
if device is not None:
|
|
664
657
|
x._set_user_data("parameter_device", device)
|
|
@@ -693,8 +686,9 @@ class Parameter(Tensor_):
|
|
|
693
686
|
"""
|
|
694
687
|
Get the optimizer parallel status(bool) of the parameter.
|
|
695
688
|
|
|
696
|
-
|
|
697
|
-
when enable parallel optimizer in
|
|
689
|
+
When using `AutoParallel(cell)` to enable parallel mode, it is used to filter the weight
|
|
690
|
+
shard operation. It works only when enable parallel optimizer in
|
|
691
|
+
:func:`mindspore.parallel.auto_parallel.AutoParallel.hsdp`.
|
|
698
692
|
|
|
699
693
|
Examples:
|
|
700
694
|
>>> from mindspore import Tensor, Parameter
|
|
@@ -953,7 +947,7 @@ class Parameter(Tensor_):
|
|
|
953
947
|
layout (Union[None, tuple]): The parameter's layout info.
|
|
954
948
|
layout [dev_mat, tensor_map, slice_shape, filed_size, uniform_split, opt_shard_group].
|
|
955
949
|
Default: ``None``.
|
|
956
|
-
It's not None only
|
|
950
|
+
It's not None only when using `AutoParallel(cell)` to enable parallel mode.
|
|
957
951
|
|
|
958
952
|
- dev_mat (list(int)): The parameter's device matrix.
|
|
959
953
|
- tensor_map (list(int)): The parameter's tensor map.
|
|
@@ -980,8 +974,6 @@ class Parameter(Tensor_):
|
|
|
980
974
|
>>> x = Parameter(Tensor(np.array([[1, 2], [3, 4]], dtype=np.float32)), name="param")
|
|
981
975
|
>>> x.init_data()
|
|
982
976
|
"""
|
|
983
|
-
if self.is_default_input_init and self.is_in_parallel != _is_in_auto_parallel_mode():
|
|
984
|
-
raise RuntimeError("Must set or change parallel mode before any initializer Tensor created.")
|
|
985
977
|
if self.init_mode is None or not self.has_init:
|
|
986
978
|
return self
|
|
987
979
|
if self.inited_param is not None:
|
|
@@ -999,8 +991,10 @@ class Parameter(Tensor_):
|
|
|
999
991
|
data = self.init_mode.init_data(0, [1])
|
|
1000
992
|
else:
|
|
1001
993
|
data = self.init_mode.init_data(*init_data_args)
|
|
1002
|
-
|
|
994
|
+
origin_dtype = self.dtype
|
|
1003
995
|
obj = self._update_tensor_data(data)
|
|
996
|
+
if self.dtype != origin_dtype:
|
|
997
|
+
self.set_dtype(origin_dtype)
|
|
1004
998
|
if id(obj) != id(self):
|
|
1005
999
|
self._inited_param = obj
|
|
1006
1000
|
obj.init_mode = None
|
|
@@ -1019,6 +1013,83 @@ class Parameter(Tensor_):
|
|
|
1019
1013
|
def _remove_hook(self):
|
|
1020
1014
|
set_parameter_hook_updated(True)
|
|
1021
1015
|
|
|
1016
|
+
def _offload(self):
|
|
1017
|
+
r"""
|
|
1018
|
+
Offload parameter to host with releasing device resource.
|
|
1019
|
+
|
|
1020
|
+
Supported Platforms:
|
|
1021
|
+
``Ascend``
|
|
1022
|
+
|
|
1023
|
+
.. warning::
|
|
1024
|
+
This is an experimental API that is subject to change or deletion.
|
|
1025
|
+
|
|
1026
|
+
Examples:
|
|
1027
|
+
>>> from mindspore import Parameter, Tensor
|
|
1028
|
+
>>> x = Parameter(Tensor(np.array([1, 2], dtype=np.float32)), name="param")
|
|
1029
|
+
>>> x._offload()
|
|
1030
|
+
"""
|
|
1031
|
+
return Tensor_._offload(self, True)
|
|
1032
|
+
|
|
1033
|
+
|
|
1034
|
+
def _load(self):
|
|
1035
|
+
r"""
|
|
1036
|
+
Load parameter to device.
|
|
1037
|
+
|
|
1038
|
+
Supported Platforms:
|
|
1039
|
+
``Ascend``
|
|
1040
|
+
|
|
1041
|
+
.. warning::
|
|
1042
|
+
This is an experimental API that is subject to change or deletion.
|
|
1043
|
+
|
|
1044
|
+
Examples:
|
|
1045
|
+
>>> from mindspore import Parameter, Tensor
|
|
1046
|
+
>>> x = Parameter(Tensor(np.array([1, 2], dtype=np.float32)), name="param")
|
|
1047
|
+
>>> x._offload()
|
|
1048
|
+
>>> x._load()
|
|
1049
|
+
"""
|
|
1050
|
+
return Tensor_._load(self)
|
|
1051
|
+
|
|
1052
|
+
|
|
1053
|
+
# Metaclass to combine _TensorMeta and the instance check override for Buffer.
|
|
1054
|
+
class _BufferMeta(_TensorMeta):
|
|
1055
|
+
# Make `isinstance(t, Buffer)` return True for custom tensor instances that have the _is_buffer flag.
|
|
1056
|
+
def __instancecheck__(cls, instance):
|
|
1057
|
+
if cls is _Buffer:
|
|
1058
|
+
if isinstance(instance, Tensor) and getattr(instance, "_is_buffer", False):
|
|
1059
|
+
return True
|
|
1060
|
+
return super().__instancecheck__(instance)
|
|
1061
|
+
|
|
1062
|
+
|
|
1063
|
+
class _Buffer(Tensor, metaclass=_BufferMeta):
|
|
1064
|
+
r"""A kind of Tensor that should not be considered a model
|
|
1065
|
+
parameter. For example, BatchNorm's `running_mean` is not a parameter, but is part of the Cell's state.
|
|
1066
|
+
|
|
1067
|
+
Buffers are :class:`~mindspore.Tensor` subclasses, that have a
|
|
1068
|
+
very special property when used with :class:`~.nn.Cell` s: when they're
|
|
1069
|
+
assigned as Cell attributes they are automatically added to the list of
|
|
1070
|
+
its buffers, and will appear e.g. in :func:`mindspore.nn.Cell.buffers` iterator.
|
|
1071
|
+
Assigning a tensor doesn't have such effect. One can still assign a tensor as a buffer explicitly by using
|
|
1072
|
+
the :func:`mindspore.nn.Cell.register_buffer` function.
|
|
1073
|
+
|
|
1074
|
+
Args:
|
|
1075
|
+
data (Tensor): buffer tensor.
|
|
1076
|
+
|
|
1077
|
+
Keyword Args:
|
|
1078
|
+
persistent (bool, optional): whether the buffer is part of the Cell's
|
|
1079
|
+
:attr:`state_dict`. Default ``True``.
|
|
1080
|
+
"""
|
|
1081
|
+
|
|
1082
|
+
def __new__(cls, data, *, persistent=True):
|
|
1083
|
+
if data is None:
|
|
1084
|
+
raise ValueError('For create Buffer, input data should not be None')
|
|
1085
|
+
if not isinstance(data, Tensor):
|
|
1086
|
+
raise TypeError('For create Buffer, type of input data should be Tensor')
|
|
1087
|
+
from mindspore.ops import stop_gradient
|
|
1088
|
+
t = stop_gradient(data)
|
|
1089
|
+
t._is_buffer = True # pylint: disable=W0212
|
|
1090
|
+
t.persistent = persistent
|
|
1091
|
+
return t
|
|
1092
|
+
|
|
1022
1093
|
|
|
1023
1094
|
class ParameterTuple(tuple):
|
|
1024
1095
|
"""
|
|
@@ -1066,18 +1137,13 @@ class ParameterTuple(tuple):
|
|
|
1066
1137
|
set data according to `init`. Default: ``'same'``.
|
|
1067
1138
|
|
|
1068
1139
|
- If `init` is a `Tensor` , set the new Parameter data to the input Tensor.
|
|
1069
|
-
- If `init` is `numbers.Number` , set the new Parameter data to the input number.
|
|
1070
1140
|
- If `init` is a `str`, data will be set according to the initialization method of the same name in
|
|
1071
1141
|
the `Initializer`. When it is ``'same'``, the new Parameter will have the same value
|
|
1072
1142
|
with the original Parameter.
|
|
1143
|
+
- If `init` is `numbers.Number` , set the new Parameter data to the input number.
|
|
1073
1144
|
|
|
1074
1145
|
Returns:
|
|
1075
1146
|
Tuple, the new Parameter tuple.
|
|
1076
|
-
|
|
1077
|
-
Tutorial Examples:
|
|
1078
|
-
- `Tensor and Parameter - Parameter Tuple
|
|
1079
|
-
<https://mindspore.cn/docs/en/master/model_train/model_building/tensor_and_parameter.html
|
|
1080
|
-
#parameter-tuple>`_
|
|
1081
1147
|
"""
|
|
1082
1148
|
Validator.check_str_by_regular(prefix)
|
|
1083
1149
|
new = []
|
|
@@ -1094,5 +1160,6 @@ class ParameterTuple(tuple):
|
|
|
1094
1160
|
_insert_accumu_init_info(x1.name, init_to_value(init))
|
|
1095
1161
|
return ParameterTuple(new)
|
|
1096
1162
|
|
|
1163
|
+
|
|
1097
1164
|
def __parameter_tuple__(self):
|
|
1098
1165
|
"""For parse check."""
|
mindspore/common/seed.py
CHANGED
|
@@ -193,7 +193,7 @@ def _update_seeds(op_seed, kernel_name):
|
|
|
193
193
|
|
|
194
194
|
Args:
|
|
195
195
|
op_seed (int): The op seed to be updated.
|
|
196
|
-
kernel_name (
|
|
196
|
+
kernel_name (str): The random op kernel.
|
|
197
197
|
"""
|
|
198
198
|
global _KERNEL_SEED
|
|
199
199
|
if op_seed is not None:
|
|
@@ -208,7 +208,7 @@ def _get_op_seed(op_seed, kernel_name):
|
|
|
208
208
|
|
|
209
209
|
Args:
|
|
210
210
|
op_seed (int): The op seed to be updated.
|
|
211
|
-
kernel_name (
|
|
211
|
+
kernel_name (str): The random op kernel.
|
|
212
212
|
"""
|
|
213
213
|
if (kernel_name, op_seed) not in _KERNEL_SEED:
|
|
214
214
|
_KERNEL_SEED[(kernel_name, op_seed)] = op_seed
|
|
@@ -26,7 +26,7 @@ from mindspore.common.tensor import Tensor
|
|
|
26
26
|
from mindspore._c_expression import COOTensor as COOTensor_
|
|
27
27
|
from mindspore._c_expression import CSRTensor as CSRTensor_
|
|
28
28
|
from mindspore._c_expression import RowTensor as RowTensor_
|
|
29
|
-
from mindspore._c_expression import
|
|
29
|
+
from mindspore._c_expression import TensorPy as Tensor_
|
|
30
30
|
from mindspore import _checkparam as validator
|
|
31
31
|
from mindspore._checkparam import is_stub_tensor
|
|
32
32
|
|
|
@@ -211,7 +211,8 @@ class SparseTensor(COOTensor_):
|
|
|
211
211
|
|
|
212
212
|
class COOTensor(COOTensor_):
|
|
213
213
|
"""
|
|
214
|
-
A sparse representation of a set of nonzero elements from a tensor at given indices
|
|
214
|
+
A sparse representation of a set of nonzero elements from a tensor at given indices,
|
|
215
|
+
where the indices indicate the position of each non-zero element.
|
|
215
216
|
|
|
216
217
|
For a tensor dense, its COOTensor(indices, values, shape) has
|
|
217
218
|
`dense[indices[i]] = values[i]`.
|
|
@@ -227,7 +228,7 @@ class COOTensor(COOTensor_):
|
|
|
227
228
|
|
|
228
229
|
Common arithmetic operations include: addition (+), subtraction (-), multiplication (*),
|
|
229
230
|
and division (/). For details about operations supported by `COOTensor`, see
|
|
230
|
-
`operators <https://www.mindspore.cn/
|
|
231
|
+
`operators <https://www.mindspore.cn/tutorials/en/master/compile/static_graph.html#operators>`_.
|
|
231
232
|
|
|
232
233
|
.. warning::
|
|
233
234
|
- This is an experimental API that is subject to change or deletion.
|
|
@@ -237,8 +238,8 @@ class COOTensor(COOTensor_):
|
|
|
237
238
|
|
|
238
239
|
Args:
|
|
239
240
|
indices (Tensor): A 2-D integer Tensor of shape :math:`(N, ndims)`,
|
|
240
|
-
where N and ndims are the number of `values` and number of dimensions in
|
|
241
|
-
the COOTensor, respectively. Currently,
|
|
241
|
+
where :math:`N` and :math:`ndims` are the number of `values` and number of dimensions in
|
|
242
|
+
the COOTensor, respectively. Currently, :math:`ndims` must be 2. Default: ``None`` .
|
|
242
243
|
Please make sure that the indices are in range of the given shape.
|
|
243
244
|
values (Tensor): A 1-D tensor of any type and shape :math:`(N)`, which
|
|
244
245
|
supplies the values for each element in `indices`. Default: ``None`` .
|
|
@@ -658,20 +659,25 @@ class CSRTensor(CSRTensor_):
|
|
|
658
659
|
of `indices` and `values` should be equal to the number of non-zero values in the tensor. To be concrete, get
|
|
659
660
|
the query indices of none-zero elements in every line according to `indptr`. Then get the column positions of
|
|
660
661
|
none-zero elements in every line by looking up query indices in `indices`. Finally, get the actual values of
|
|
661
|
-
none-zero elements in every line by looking up query indices in `values`.
|
|
662
|
+
none-zero elements in every line by looking up query indices in `values`.
|
|
663
|
+
|
|
664
|
+
In the former example, 'indptr' of
|
|
662
665
|
[0, 2, 5, 6] represents that the indices of 0th row of the tensor origins from [0, 2), the indices of
|
|
663
|
-
the 1st row of the tensor origins from [2, 5) and the 2nd row of the tensor origins from [5, 6). For example
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
666
|
+
the 1st row of the tensor origins from [2, 5) and the 2nd row of the tensor origins from [5, 6). For example:
|
|
667
|
+
|
|
668
|
+
- The column positions of the non-zero elements of the 0th row in the tensor are provided by the [0, 2) elements in
|
|
669
|
+
`indices` (i.e. [0, 3]) and the corresponding values are provided by the [0, 2) elements in `values`
|
|
670
|
+
(i.e. [1., 2.]).
|
|
671
|
+
- The column positions of the non-zero elements of the 1st row in the tensor are provided by the
|
|
672
|
+
[2, 5) elements in `indices` (i.e. [1, 2, 4]) and the corresponding values are provided by the [2, 5) elements in
|
|
673
|
+
`values` (i.e. [3., 4., 5.]).
|
|
674
|
+
- The column positions of the non-zero elements of the 2nd row in the tensor are
|
|
675
|
+
provided by the [5, 6) elements in `indices` (i.e. [2]) and the corresponding values are provided by the [5, 6)
|
|
676
|
+
elements in `values` (i.e. [6.]).
|
|
671
677
|
|
|
672
678
|
Common arithmetic operations include: addition (+), subtraction (-), multiplication (*),
|
|
673
679
|
and division (/). For details about operations supported by `CSRTensor`, see
|
|
674
|
-
`operators <https://www.mindspore.cn/
|
|
680
|
+
`operators <https://www.mindspore.cn/tutorials/en/master/compile/static_graph.html#operators>`_.
|
|
675
681
|
|
|
676
682
|
.. warning::
|
|
677
683
|
- This is an experimental API that is subjected to change.
|
|
@@ -688,10 +694,10 @@ class CSRTensor(CSRTensor_):
|
|
|
688
694
|
indicates the which column `values` should be placed. Default: ``None``. If provided,
|
|
689
695
|
must be int16, int32 or int64.
|
|
690
696
|
values (Tensor): Tensor, which has the same length as `indices` (values.shape[0] == indices.shape[0]).
|
|
691
|
-
`values`
|
|
697
|
+
`values` stores the data for CSRTensor. Default: ``None``.
|
|
692
698
|
shape (tuple(int)): An integer tuple of shape :math:`(ndims)`, and `shape[0]` must equal to `M - 1`,
|
|
693
699
|
which all equal to number of rows of the CSRTensor. Default: ``None``.
|
|
694
|
-
csr_tensor (CSRTensor): A CSRTensor object.
|
|
700
|
+
csr_tensor (CSRTensor): A CSRTensor object. Values' feature dimension should match with
|
|
695
701
|
CSRTensor's feature dimension :math:`(values.shape[1:] == csr\_tensor.shape[2:])` . Default: ``None``.
|
|
696
702
|
|
|
697
703
|
Outputs:
|