mindspore 2.4.10__cp310-cp310-win_amd64.whl → 2.6.0__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 +13 -6
- 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 -38
- mindspore/_deprecated/__init__.py +17 -0
- mindspore/_deprecated/jit.py +198 -0
- mindspore/_extends/builtin_operations.py +1 -1
- mindspore/_extends/parallel_compile/akg_compiler/gen_custom_op_files.py +1 -1
- mindspore/_extends/parse/__init__.py +6 -7
- mindspore/_extends/parse/compile_config.py +83 -0
- mindspore/_extends/parse/deprecated/__init__.py +0 -0
- mindspore/_extends/parse/deprecated/deprecated_tensor_method.py +394 -0
- 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 +47 -198
- mindspore/_extends/parse/resources.py +1 -5
- mindspore/_extends/parse/standard_method.py +229 -99
- mindspore/_extends/pijit/__init__.py +2 -2
- mindspore/_extends/pijit/pijit_func_white_list.py +17 -12
- mindspore/_extends/pijit/tensor_func_list.py +27 -0
- mindspore/_extends/utils.py +1 -1
- mindspore/amp.py +11 -5
- 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 +138 -43
- mindspore/c1.dll +0 -0
- mindspore/c1xx.dll +0 -0
- mindspore/c2.dll +0 -0
- mindspore/common/__init__.py +6 -3
- mindspore/common/_grad_function.py +56 -0
- mindspore/common/_pijit_context.py +14 -5
- mindspore/common/_register_for_tensor.py +1 -2
- mindspore/common/_stub_tensor.py +30 -14
- mindspore/common/_tensor_cpp_method.py +17 -0
- mindspore/common/_tensor_docs.py +4760 -0
- mindspore/common/api.py +480 -372
- mindspore/common/auto_dynamic_shape.py +41 -44
- mindspore/common/dtype.py +39 -36
- mindspore/common/dump.py +9 -6
- mindspore/common/file_system.py +9 -1
- mindspore/common/generator.py +5 -0
- mindspore/common/hook_handle.py +6 -2
- mindspore/common/initializer.py +13 -10
- 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 +9 -3
- mindspore/common/mindir_util.py +10 -2
- mindspore/common/mutable.py +5 -4
- mindspore/common/parameter.py +135 -52
- mindspore/common/seed.py +2 -2
- mindspore/common/sparse_tensor.py +23 -17
- mindspore/common/tensor.py +975 -1981
- mindspore/communication/__init__.py +7 -5
- mindspore/communication/_comm_helper.py +52 -2
- mindspore/communication/comm_func.py +240 -181
- mindspore/communication/management.py +95 -26
- mindspore/context.py +324 -573
- mindspore/dataset/__init__.py +65 -37
- mindspore/dataset/audio/__init__.py +2 -8
- mindspore/dataset/audio/transforms.py +3 -17
- mindspore/dataset/callback/ds_callback.py +2 -1
- mindspore/dataset/core/config.py +87 -6
- mindspore/dataset/engine/cache_admin.py +3 -3
- mindspore/dataset/engine/cache_client.py +6 -5
- mindspore/dataset/engine/datasets.py +292 -267
- mindspore/dataset/engine/datasets_audio.py +22 -8
- mindspore/dataset/engine/datasets_standard_format.py +46 -27
- mindspore/dataset/engine/datasets_text.py +78 -48
- mindspore/dataset/engine/datasets_user_defined.py +183 -117
- mindspore/dataset/engine/datasets_vision.py +120 -44
- mindspore/dataset/engine/iterators.py +283 -63
- mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +1 -1
- mindspore/dataset/engine/obs/util.py +8 -0
- mindspore/dataset/engine/queue.py +40 -0
- mindspore/dataset/engine/samplers.py +289 -43
- mindspore/dataset/engine/serializer_deserializer.py +3 -2
- mindspore/dataset/engine/validators.py +53 -11
- 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/py_transforms_util.py +17 -0
- mindspore/dataset/transforms/transforms.py +31 -14
- 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/dataset/vision/validators.py +1 -2
- mindspore/device_context/__init__.py +21 -0
- mindspore/device_context/ascend/__init__.py +25 -0
- mindspore/device_context/ascend/device.py +72 -0
- mindspore/device_context/ascend/op_debug.py +153 -0
- mindspore/device_context/ascend/op_precision.py +193 -0
- mindspore/device_context/ascend/op_tuning.py +123 -0
- mindspore/{ops_generate/gen_constants.py → device_context/cpu/__init__.py} +6 -17
- mindspore/device_context/cpu/device.py +62 -0
- mindspore/device_context/cpu/op_tuning.py +43 -0
- mindspore/device_context/gpu/__init__.py +21 -0
- mindspore/device_context/gpu/device.py +70 -0
- mindspore/device_context/gpu/op_precision.py +67 -0
- mindspore/device_context/gpu/op_tuning.py +175 -0
- mindspore/device_manager.py +170 -0
- mindspore/dnnl.dll +0 -0
- mindspore/dpcmi.dll +0 -0
- mindspore/experimental/es/embedding_service.py +35 -27
- mindspore/experimental/llm_boost/__init__.py +1 -0
- mindspore/experimental/llm_boost/ascend_native/__init__.py +22 -0
- mindspore/experimental/llm_boost/ascend_native/llama_boost_ascend_native.py +209 -0
- mindspore/experimental/llm_boost/ascend_native/llm_boost.py +52 -0
- mindspore/experimental/llm_boost/atb/boost_base.py +2 -3
- mindspore/experimental/llm_boost/atb/llama_boost.py +6 -1
- mindspore/experimental/llm_boost/register.py +1 -0
- mindspore/experimental/map_parameter.py +4 -4
- mindspore/experimental/optim/adadelta.py +6 -6
- mindspore/experimental/optim/adagrad.py +4 -4
- mindspore/experimental/optim/adam.py +7 -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 +73 -46
- mindspore/experimental/optim/radam.py +34 -31
- 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 -53
- mindspore/hal/event.py +52 -52
- mindspore/hal/memory.py +179 -120
- mindspore/hal/stream.py +150 -109
- mindspore/include/api/context.h +0 -1
- mindspore/include/dataset/constants.h +7 -4
- mindspore/include/dataset/execute.h +2 -2
- mindspore/jpeg62.dll +0 -0
- mindspore/log.py +50 -0
- mindspore/mindrecord/__init__.py +21 -8
- mindspore/mindrecord/config.py +17 -316
- mindspore/mindrecord/filereader.py +1 -9
- mindspore/mindrecord/filewriter.py +5 -15
- mindspore/mindrecord/mindpage.py +1 -9
- 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 +798 -761
- mindspore/mint/distributed/__init__.py +70 -4
- mindspore/mint/distributed/distributed.py +2679 -44
- mindspore/mint/linalg/__init__.py +8 -0
- mindspore/mint/nn/__init__.py +743 -22
- mindspore/mint/nn/functional.py +716 -23
- mindspore/mint/nn/layer/__init__.py +21 -4
- mindspore/mint/nn/layer/_functions.py +334 -0
- mindspore/mint/nn/layer/activation.py +276 -1
- mindspore/mint/nn/layer/basic.py +123 -0
- mindspore/mint/nn/layer/conv.py +933 -0
- mindspore/mint/nn/layer/normalization.py +223 -28
- mindspore/mint/nn/layer/padding.py +797 -0
- mindspore/mint/nn/layer/pooling.py +235 -0
- mindspore/mint/optim/__init__.py +3 -1
- mindspore/mint/optim/adam.py +223 -0
- mindspore/mint/optim/adamw.py +26 -19
- mindspore/mint/optim/sgd.py +171 -0
- mindspore/mint/special/__init__.py +2 -1
- 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/multiprocessing/__init__.py +5 -0
- mindspore/nn/__init__.py +4 -1
- mindspore/nn/cell.py +1373 -192
- mindspore/nn/dynamic_lr.py +2 -1
- mindspore/nn/layer/activation.py +29 -27
- mindspore/nn/layer/basic.py +51 -35
- mindspore/nn/layer/channel_shuffle.py +3 -3
- mindspore/nn/layer/container.py +1 -1
- mindspore/nn/layer/conv.py +53 -42
- mindspore/nn/layer/embedding.py +12 -11
- mindspore/nn/layer/normalization.py +56 -49
- mindspore/nn/layer/padding.py +4 -3
- mindspore/nn/layer/pooling.py +120 -42
- mindspore/nn/layer/rnn_cells.py +1 -1
- mindspore/nn/layer/rnns.py +2 -1
- mindspore/nn/layer/timedistributed.py +5 -5
- mindspore/nn/layer/transformer.py +59 -36
- mindspore/nn/learning_rate_schedule.py +8 -4
- mindspore/nn/loss/loss.py +58 -55
- mindspore/nn/optim/ada_grad.py +7 -5
- mindspore/nn/optim/adadelta.py +11 -9
- mindspore/nn/optim/adafactor.py +1 -1
- mindspore/nn/optim/adam.py +19 -15
- mindspore/nn/optim/adamax.py +8 -7
- mindspore/nn/optim/adasum.py +5 -5
- mindspore/nn/optim/asgd.py +3 -1
- mindspore/nn/optim/ftrl.py +11 -9
- mindspore/nn/optim/lamb.py +1 -1
- mindspore/nn/optim/lars.py +1 -4
- mindspore/nn/optim/lazyadam.py +12 -10
- mindspore/nn/optim/momentum.py +7 -6
- mindspore/nn/optim/optimizer.py +3 -3
- mindspore/nn/optim/proximal_ada_grad.py +12 -10
- mindspore/nn/optim/rmsprop.py +13 -12
- mindspore/nn/optim/rprop.py +11 -9
- mindspore/nn/optim/sgd.py +9 -6
- mindspore/nn/optim/tft_wrapper.py +5 -2
- mindspore/nn/optim/thor.py +2 -1
- 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/utils/init.py +13 -11
- mindspore/nn/wrap/__init__.py +6 -6
- mindspore/nn/wrap/cell_wrapper.py +181 -122
- mindspore/nn/wrap/grad_reducer.py +45 -36
- mindspore/nn/wrap/loss_scale.py +6 -7
- mindspore/numpy/array_creations.py +63 -65
- mindspore/numpy/array_ops.py +149 -144
- mindspore/numpy/logic_ops.py +41 -42
- mindspore/numpy/math_ops.py +361 -359
- mindspore/numpy/utils.py +17 -18
- mindspore/numpy/utils_const.py +5 -6
- mindspore/opencv_core452.dll +0 -0
- mindspore/opencv_imgcodecs452.dll +0 -0
- mindspore/opencv_imgproc452.dll +0 -0
- mindspore/ops/__init__.py +5 -3
- mindspore/ops/_grad_experimental/grad_comm_ops.py +112 -16
- mindspore/ops/_grad_experimental/grad_debug_ops.py +14 -2
- mindspore/ops/_grad_experimental/grad_inner_ops.py +9 -0
- mindspore/ops/_grad_experimental/grad_math_ops.py +2 -1
- mindspore/ops/_grad_experimental/taylor_rule.py +29 -0
- mindspore/ops/_op_impl/cpu/__init__.py +1 -0
- mindspore/ops/_op_impl/cpu/raise_op.py +28 -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 -65
- mindspore/ops/_vmap/vmap_array_ops.py +52 -25
- mindspore/ops/_vmap/vmap_base.py +0 -2
- mindspore/ops/_vmap/vmap_grad_nn_ops.py +21 -14
- mindspore/ops/_vmap/vmap_math_ops.py +15 -16
- mindspore/ops/_vmap/vmap_nn_ops.py +29 -42
- mindspore/ops/auto_generate/__init__.py +4 -3
- mindspore/ops/auto_generate/cpp_create_prim_instance_helper.py +258 -46
- mindspore/ops/auto_generate/gen_extend_func.py +757 -185
- mindspore/ops/auto_generate/gen_ops_def.py +4197 -2243
- mindspore/ops/auto_generate/gen_ops_prim.py +16976 -6055
- mindspore/ops/auto_generate/pyboost_inner_prim.py +221 -87
- mindspore/ops/composite/__init__.py +2 -1
- mindspore/ops/composite/base.py +20 -25
- 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 +228 -30
- 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 -30
- 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 +40 -2
- mindspore/ops/function/_add_attr_func.py +58 -0
- mindspore/ops/function/array_func.py +2089 -2403
- mindspore/ops/function/clip_func.py +80 -23
- mindspore/ops/function/debug_func.py +57 -57
- mindspore/ops/function/grad/__init__.py +1 -0
- mindspore/ops/function/grad/grad_func.py +104 -71
- mindspore/ops/function/image_func.py +2 -2
- mindspore/ops/function/linalg_func.py +47 -78
- mindspore/ops/function/math_func.py +4351 -3813
- mindspore/ops/function/nn_func.py +1712 -637
- mindspore/ops/function/other_func.py +159 -1
- mindspore/ops/function/parameter_func.py +18 -84
- mindspore/ops/function/random_func.py +452 -387
- mindspore/ops/function/reshard_func.py +4 -70
- mindspore/ops/function/sparse_func.py +3 -3
- mindspore/ops/function/sparse_unary_func.py +6 -6
- mindspore/ops/function/spectral_func.py +25 -58
- mindspore/ops/function/vmap_func.py +26 -18
- mindspore/ops/functional.py +23 -7
- mindspore/ops/functional_overload.py +1548 -0
- mindspore/ops/op_info_register.py +32 -244
- mindspore/ops/operations/__init__.py +23 -15
- mindspore/ops/operations/_custom_ops_utils.py +235 -0
- mindspore/ops/operations/_embedding_cache_ops.py +4 -4
- mindspore/ops/operations/_grad_ops.py +2 -43
- mindspore/ops/operations/_infer_ops.py +2 -1
- mindspore/ops/operations/_inner_ops.py +43 -84
- 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 +81 -324
- mindspore/ops/operations/comm_ops.py +154 -108
- mindspore/ops/operations/custom_ops.py +298 -87
- mindspore/ops/operations/debug_ops.py +157 -59
- mindspore/ops/operations/inner_ops.py +7 -5
- mindspore/ops/operations/linalg_ops.py +1 -57
- mindspore/ops/operations/manually_defined/_inner.py +1 -1
- mindspore/ops/operations/manually_defined/ops_def.py +928 -180
- mindspore/ops/operations/math_ops.py +32 -234
- mindspore/ops/operations/nn_ops.py +212 -531
- 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 +66 -53
- mindspore/ops/tensor_method.py +1895 -0
- mindspore/ops_generate/__init__.py +0 -5
- mindspore/ops_generate/aclnn/__init__.py +0 -0
- mindspore/ops_generate/aclnn/aclnn_kernel_register_auto_cc_generator.py +135 -0
- mindspore/ops_generate/aclnn/gen_aclnn_implement.py +257 -0
- mindspore/ops_generate/api/__init__.py +0 -0
- mindspore/ops_generate/api/add_tensor_docs_generator.py +56 -0
- mindspore/ops_generate/api/cpp_create_prim_instance_helper_generator.py +105 -0
- mindspore/ops_generate/api/functional_map_cpp_generator.py +504 -0
- mindspore/ops_generate/api/functional_overload_py_generator.py +112 -0
- mindspore/ops_generate/api/functions_cc_generator.py +237 -0
- mindspore/ops_generate/api/gen_api.py +103 -0
- mindspore/ops_generate/api/op_api_proto.py +235 -0
- mindspore/ops_generate/api/tensor_func_reg_cpp_generator.py +461 -0
- mindspore/ops_generate/common/__init__.py +0 -0
- mindspore/ops_generate/common/base_generator.py +11 -0
- mindspore/ops_generate/common/gen_constants.py +91 -0
- mindspore/ops_generate/common/gen_utils.py +348 -0
- mindspore/ops_generate/common/op_proto.py +473 -0
- mindspore/ops_generate/common/template.py +523 -0
- mindspore/ops_generate/gen_ops.py +22 -1069
- mindspore/ops_generate/op_def/__init__.py +0 -0
- mindspore/ops_generate/op_def/gen_op_def.py +90 -0
- mindspore/ops_generate/op_def/lite_ops_cpp_generator.py +191 -0
- mindspore/ops_generate/op_def/ops_def_cc_generator.py +296 -0
- mindspore/ops_generate/op_def/ops_def_h_generator.py +74 -0
- mindspore/ops_generate/op_def/ops_name_h_generator.py +83 -0
- 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/op_def_py_generator.py +132 -0
- mindspore/ops_generate/op_def_py/op_prim_py_generator.py +489 -0
- mindspore/ops_generate/pyboost/__init__.py +0 -0
- mindspore/ops_generate/pyboost/auto_grad_impl_cc_generator.py +139 -0
- mindspore/ops_generate/pyboost/auto_grad_reg_cc_generator.py +93 -0
- mindspore/ops_generate/pyboost/gen_pyboost_func.py +175 -0
- mindspore/ops_generate/pyboost/op_template_parser.py +517 -0
- mindspore/ops_generate/pyboost/pyboost_functions_cpp_generator.py +407 -0
- mindspore/ops_generate/pyboost/pyboost_functions_h_generator.py +100 -0
- mindspore/ops_generate/pyboost/pyboost_functions_py_generator.py +148 -0
- mindspore/ops_generate/pyboost/pyboost_grad_function_cpp_generator.py +155 -0
- mindspore/ops_generate/pyboost/pyboost_inner_prim_generator.py +132 -0
- mindspore/ops_generate/pyboost/pyboost_native_grad_functions_generator.py +272 -0
- mindspore/ops_generate/pyboost/pyboost_op_cpp_code_generator.py +938 -0
- mindspore/ops_generate/pyboost/pyboost_overload_functions_cpp_generator.py +357 -0
- mindspore/ops_generate/{pyboost_utils.py → pyboost/pyboost_utils.py} +179 -36
- 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 +7 -3
- mindspore/parallel/_auto_parallel_context.py +159 -40
- mindspore/parallel/_cell_wrapper.py +132 -15
- mindspore/parallel/_parallel_serialization.py +107 -5
- mindspore/parallel/_ps_context.py +1 -1
- mindspore/parallel/_recovery_context.py +7 -2
- mindspore/parallel/_tensor.py +142 -18
- mindspore/parallel/_utils.py +199 -23
- mindspore/parallel/algo_parameter_config.py +4 -4
- mindspore/parallel/auto_parallel.py +732 -0
- mindspore/parallel/checkpoint_convert.py +159 -0
- mindspore/parallel/checkpoint_transform.py +700 -35
- mindspore/parallel/cluster/process_entity/_api.py +276 -50
- mindspore/parallel/cluster/process_entity/_utils.py +41 -6
- mindspore/parallel/cluster/run.py +21 -4
- mindspore/parallel/function/__init__.py +24 -0
- mindspore/parallel/function/reshard_func.py +258 -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 +25 -14
- mindspore/parallel/shard.py +137 -59
- mindspore/parallel/transform_safetensors.py +364 -305
- mindspore/pgodb140.dll +0 -0
- mindspore/pgort140.dll +0 -0
- mindspore/profiler/__init__.py +22 -5
- mindspore/profiler/analysis/__init__.py +0 -0
- mindspore/profiler/analysis/parser/__init__.py +0 -0
- mindspore/profiler/analysis/parser/ascend_cann_parser.py +170 -0
- mindspore/profiler/analysis/parser/base_parser.py +158 -0
- mindspore/profiler/analysis/parser/framework_cann_relation_parser.py +45 -0
- mindspore/profiler/analysis/parser/ms_framework_parser.py +142 -0
- mindspore/profiler/analysis/parser/ms_minddata_parser.py +145 -0
- mindspore/profiler/analysis/parser/timeline_assembly_factory/__init__.py +0 -0
- mindspore/profiler/analysis/parser/timeline_assembly_factory/ascend_timeline_assembler.py +264 -0
- mindspore/profiler/analysis/parser/timeline_assembly_factory/base_timeline_assembler.py +40 -0
- mindspore/profiler/analysis/parser/timeline_assembly_factory/trace_view_container.py +109 -0
- mindspore/profiler/analysis/parser/timeline_creator/__init__.py +0 -0
- mindspore/profiler/analysis/parser/timeline_creator/base_timeline_creator.py +44 -0
- mindspore/profiler/analysis/parser/timeline_creator/cpu_op_timeline_creator.py +90 -0
- mindspore/profiler/analysis/parser/timeline_creator/fwk_timeline_creator.py +76 -0
- mindspore/profiler/analysis/parser/timeline_creator/msprof_timeline_creator.py +103 -0
- mindspore/profiler/analysis/parser/timeline_creator/scope_layer_timeline_creator.py +134 -0
- mindspore/profiler/analysis/parser/timeline_event/__init__.py +0 -0
- mindspore/profiler/analysis/parser/timeline_event/base_event.py +233 -0
- mindspore/profiler/analysis/parser/timeline_event/cpu_op_event.py +47 -0
- mindspore/profiler/analysis/parser/timeline_event/flow_event.py +36 -0
- mindspore/profiler/analysis/parser/timeline_event/fwk_event.py +415 -0
- mindspore/profiler/analysis/parser/timeline_event/msprof_event.py +73 -0
- mindspore/profiler/analysis/parser/timeline_event/scope_layer_event.py +53 -0
- mindspore/profiler/analysis/parser/timeline_event/timeline_event_pool.py +146 -0
- mindspore/profiler/analysis/task_manager.py +131 -0
- mindspore/profiler/analysis/time_converter.py +84 -0
- mindspore/profiler/analysis/viewer/__init__.py +0 -0
- mindspore/profiler/analysis/viewer/ascend_communication_viewer.py +372 -0
- mindspore/profiler/analysis/viewer/ascend_integrate_viewer.py +87 -0
- mindspore/profiler/analysis/viewer/ascend_kernel_details_viewer.py +250 -0
- mindspore/profiler/analysis/viewer/ascend_memory_viewer.py +320 -0
- mindspore/profiler/analysis/viewer/ascend_op_memory_viewer.py +327 -0
- mindspore/profiler/analysis/viewer/ascend_step_trace_time_viewer.py +376 -0
- mindspore/profiler/analysis/viewer/ascend_timeline_viewer.py +58 -0
- mindspore/profiler/analysis/viewer/base_viewer.py +26 -0
- mindspore/profiler/analysis/viewer/ms_dataset_viewer.py +96 -0
- mindspore/profiler/analysis/viewer/ms_minddata_viewer.py +581 -0
- mindspore/profiler/analysis/work_flow.py +73 -0
- mindspore/profiler/common/ascend_msprof_exporter.py +139 -0
- mindspore/profiler/common/command_executor.py +90 -0
- mindspore/profiler/common/constant.py +186 -3
- mindspore/profiler/common/file_manager.py +208 -0
- mindspore/profiler/common/log.py +130 -0
- mindspore/profiler/common/msprof_cmd_tool.py +221 -0
- mindspore/profiler/common/path_manager.py +395 -0
- mindspore/profiler/common/process_bar.py +168 -0
- mindspore/profiler/common/process_pool.py +9 -3
- mindspore/profiler/common/profiler_context.py +500 -0
- mindspore/profiler/common/profiler_info.py +304 -0
- mindspore/profiler/common/profiler_meta_data.py +74 -0
- mindspore/profiler/common/profiler_output_path.py +284 -0
- mindspore/profiler/common/profiler_parameters.py +251 -0
- mindspore/profiler/common/profiler_path_manager.py +179 -0
- mindspore/profiler/common/record_function.py +76 -0
- mindspore/profiler/common/tlv_decoder.py +76 -0
- mindspore/profiler/common/util.py +75 -2
- mindspore/profiler/dynamic_profiler.py +341 -75
- mindspore/profiler/envprofiler.py +163 -0
- mindspore/profiler/experimental_config.py +197 -0
- mindspore/profiler/mstx.py +242 -0
- mindspore/profiler/platform/__init__.py +21 -0
- mindspore/profiler/platform/base_profiler.py +40 -0
- mindspore/profiler/platform/cpu_profiler.py +124 -0
- mindspore/profiler/platform/gpu_profiler.py +74 -0
- mindspore/profiler/platform/npu_profiler.py +335 -0
- mindspore/profiler/profiler.py +1073 -90
- mindspore/profiler/profiler_action_controller.py +187 -0
- mindspore/profiler/profiler_interface.py +118 -0
- mindspore/profiler/schedule.py +243 -0
- mindspore/rewrite/api/node.py +15 -13
- mindspore/rewrite/api/symbol_tree.py +2 -3
- mindspore/run_check/_check_version.py +27 -20
- mindspore/run_check/run_check.py +1 -1
- mindspore/runtime/__init__.py +37 -0
- mindspore/runtime/device.py +27 -0
- mindspore/runtime/event.py +209 -0
- mindspore/runtime/executor.py +177 -0
- mindspore/runtime/memory.py +416 -0
- mindspore/runtime/stream.py +460 -0
- mindspore/runtime/thread_bind_core.py +401 -0
- 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 +96 -27
- mindspore/train/amp.py +9 -5
- mindspore/train/callback/__init__.py +2 -2
- mindspore/train/callback/_callback.py +2 -16
- mindspore/train/callback/_checkpoint.py +53 -55
- mindspore/train/callback/_cluster_monitor.py +14 -18
- mindspore/train/callback/_early_stop.py +1 -1
- mindspore/train/callback/_flops_collector.py +103 -68
- mindspore/train/callback/_history.py +8 -5
- 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 +52 -19
- mindspore/train/callback/_time_monitor.py +2 -1
- mindspore/train/callback/{_tft_register.py → _train_fault_tolerance.py} +228 -108
- mindspore/train/data_sink.py +25 -2
- mindspore/train/dataset_helper.py +15 -16
- 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 +11 -10
- mindspore/train/metrics/recall.py +9 -9
- mindspore/train/metrics/root_mean_square_surface_distance.py +2 -2
- mindspore/train/mind_ir_pb2.py +174 -46
- mindspore/train/model.py +269 -136
- mindspore/train/serialization.py +622 -978
- mindspore/train/summary/_summary_adapter.py +2 -2
- mindspore/train/summary/summary_record.py +2 -3
- mindspore/train/train_thor/model_thor.py +1 -1
- mindspore/turbojpeg.dll +0 -0
- mindspore/utils/__init__.py +6 -3
- mindspore/utils/dryrun.py +140 -0
- mindspore/utils/hooks.py +81 -0
- mindspore/utils/runtime_execution_order_check.py +552 -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.4.10.dist-info → mindspore-2.6.0.dist-info}/METADATA +3 -3
- {mindspore-2.4.10.dist-info → mindspore-2.6.0.dist-info}/RECORD +587 -418
- {mindspore-2.4.10.dist-info → mindspore-2.6.0.dist-info}/entry_points.txt +1 -1
- mindspore/_install_custom.py +0 -43
- mindspore/common/_register_for_adapter.py +0 -74
- mindspore/common/_tensor_overload.py +0 -139
- mindspore/mindspore_np_dtype.dll +0 -0
- mindspore/ops/auto_generate/gen_arg_dtype_cast.py +0 -252
- mindspore/ops/auto_generate/gen_arg_handler.py +0 -197
- mindspore/ops/operations/_opaque_predicate_registry.py +0 -41
- mindspore/ops_generate/gen_aclnn_implement.py +0 -263
- mindspore/ops_generate/gen_ops_inner_prim.py +0 -131
- mindspore/ops_generate/gen_pyboost_func.py +0 -1052
- mindspore/ops_generate/gen_utils.py +0 -209
- mindspore/ops_generate/op_proto.py +0 -145
- mindspore/ops_generate/template.py +0 -261
- mindspore/profiler/envprofiling.py +0 -254
- mindspore/profiler/profiling.py +0 -1926
- {mindspore-2.4.10.dist-info → mindspore-2.6.0.dist-info}/WHEEL +0 -0
- {mindspore-2.4.10.dist-info → mindspore-2.6.0.dist-info}/top_level.txt +0 -0
|
@@ -32,17 +32,18 @@ from mindspore._checkparam import _check_3d_int_or_tuple
|
|
|
32
32
|
from mindspore.common import dtype as mstype
|
|
33
33
|
from mindspore.common._decorator import deprecated
|
|
34
34
|
from mindspore.common import Tensor, CSRTensor, COOTensor
|
|
35
|
-
from mindspore._c_expression import
|
|
35
|
+
from mindspore._c_expression import TensorPy as Tensor_
|
|
36
36
|
from mindspore._c_expression import CSRTensor as CSRTensor_
|
|
37
37
|
from mindspore._c_expression import COOTensor as COOTensor_
|
|
38
|
-
from ..auto_generate import (
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
38
|
+
from ..auto_generate import (
|
|
39
|
+
ExpandDims, Reshape, TensorShape, Transpose, TransposeView, Gather, OnesLike, ZerosLike,
|
|
40
|
+
Argmax, ArgMaxExt, ReverseV2, Diag, Eye, ScatterNd,
|
|
41
|
+
ResizeNearestNeighborV2, GatherNd, GatherD, Range, MaskedFill, RightShift,
|
|
42
|
+
NonZero, ResizeNearestNeighbor, Identity, Split, CumSum, CumProd,
|
|
43
|
+
MaskedSelect, Cummax, Cummin, Argmin, Concat, UnsortedSegmentSum, UniqueConsecutive,
|
|
44
|
+
ScalarToTensor, Triu, BroadcastTo, StridedSlice, Select, TopkExt,
|
|
45
|
+
SearchSorted, Meshgrid, Squeeze, Slice, TransposeExtView)
|
|
46
|
+
from .manually_defined import Rank, Shape, Tile, Cast, Ones, Zeros, TypeAs
|
|
46
47
|
from ..auto_generate import ArgMaxWithValue, ArgMinWithValue
|
|
47
48
|
from ..auto_generate import TensorScatterElements as TensorScatterElementsExt
|
|
48
49
|
|
|
@@ -182,8 +183,7 @@ def _check_infer_attr_reduce(axis, keep_dims, prim_name):
|
|
|
182
183
|
|
|
183
184
|
class Expand(Primitive):
|
|
184
185
|
"""
|
|
185
|
-
|
|
186
|
-
Please use :class:`mindspore.ops.BroadcastTo` instead.
|
|
186
|
+
This interface will be deprecated in the future, and use :class:`mindspore.ops.BroadcastTo` instead.
|
|
187
187
|
"""
|
|
188
188
|
|
|
189
189
|
@deprecated("2.1", "BroadcastTo", False)
|
|
@@ -273,7 +273,7 @@ class Im2Col(Primitive):
|
|
|
273
273
|
each sliding `ksizes`- sized block within the spatial dimensions
|
|
274
274
|
of input `x` into a column (i.e., last dimension) of a 4-D output
|
|
275
275
|
tensor of shape :math:`(N, C, \prod(\text{kernel_size}), L)`, where
|
|
276
|
-
:math:`C \times \prod(\text{kernel_size})` is the total number of
|
|
276
|
+
:math:`C \times \prod(\text{kernel_size})` is the total number of elements
|
|
277
277
|
within each block (a block has :math:`\prod(\text{kernel_size})` spatial
|
|
278
278
|
locations each containing a `C`-channeled vector), and :math:`L` is
|
|
279
279
|
the total number of such blocks:
|
|
@@ -474,52 +474,6 @@ class Unsqueeze(PrimitiveWithCheck):
|
|
|
474
474
|
self.axis = axis
|
|
475
475
|
|
|
476
476
|
|
|
477
|
-
class Squeeze(Primitive):
|
|
478
|
-
"""
|
|
479
|
-
Return the Tensor after deleting the dimension of size 1 in the specified `axis`.
|
|
480
|
-
|
|
481
|
-
Refer to :func:`mindspore.ops.squeeze` for more details.
|
|
482
|
-
|
|
483
|
-
Args:
|
|
484
|
-
axis (Union[int, tuple(int)]): Specifies the dimension indexes of shape to be removed, which will remove
|
|
485
|
-
all the dimensions of size 1 in the given axis parameter. If specified, it must be int32 or int64.
|
|
486
|
-
Default: ``()`` .
|
|
487
|
-
|
|
488
|
-
Inputs:
|
|
489
|
-
- **input_x** (Tensor) - The shape of tensor is :math:`(x_1, x_2, ..., x_R)`.
|
|
490
|
-
|
|
491
|
-
Outputs:
|
|
492
|
-
Tensor, the shape of tensor is :math:`(x_1, x_2, ..., x_S)`.
|
|
493
|
-
|
|
494
|
-
Supported Platforms:
|
|
495
|
-
``Ascend`` ``GPU`` ``CPU``
|
|
496
|
-
|
|
497
|
-
Examples:
|
|
498
|
-
>>> import mindspore
|
|
499
|
-
>>> import numpy as np
|
|
500
|
-
>>> from mindspore import Tensor, ops
|
|
501
|
-
>>> input_x = Tensor(np.ones(shape=[3, 2, 1]), mindspore.float32)
|
|
502
|
-
>>> squeeze = ops.Squeeze(2)
|
|
503
|
-
>>> output = squeeze(input_x)
|
|
504
|
-
>>> print(output)
|
|
505
|
-
[[1. 1.]
|
|
506
|
-
[1. 1.]
|
|
507
|
-
[1. 1.]]
|
|
508
|
-
"""
|
|
509
|
-
|
|
510
|
-
@prim_attr_register
|
|
511
|
-
def __init__(self, axis=()):
|
|
512
|
-
"""Initialize Squeeze"""
|
|
513
|
-
self.init_prim_io_names(inputs=['x'], outputs=['output'])
|
|
514
|
-
validator.check_value_type('axis', axis, [int, tuple], self.name)
|
|
515
|
-
if isinstance(axis, tuple):
|
|
516
|
-
for idx, item in enumerate(axis):
|
|
517
|
-
validator.check_value_type("axis[%d]" % idx, item, [int], self.name)
|
|
518
|
-
else:
|
|
519
|
-
self.axis = (axis,)
|
|
520
|
-
self.add_prim_attr("axis", (axis,))
|
|
521
|
-
|
|
522
|
-
|
|
523
477
|
class ConjugateTranspose(Primitive):
|
|
524
478
|
"""
|
|
525
479
|
Calculate the conjugate matrix of input x which has been transposed according to input perm.
|
|
@@ -556,8 +510,8 @@ class ConjugateTranspose(Primitive):
|
|
|
556
510
|
>>> conjugate_transpose = ops.ConjugateTranspose()
|
|
557
511
|
>>> output = conjugate_transpose(x, perm)
|
|
558
512
|
>>> print(output)
|
|
559
|
-
|
|
560
|
-
|
|
513
|
+
[[1.-1.j 3.-3.j]
|
|
514
|
+
[2.-2.j 4.-4.j]]
|
|
561
515
|
"""
|
|
562
516
|
|
|
563
517
|
@prim_attr_register
|
|
@@ -630,65 +584,6 @@ class Unique(Primitive):
|
|
|
630
584
|
self.init_prim_io_names(inputs=['x'], outputs=['output'])
|
|
631
585
|
|
|
632
586
|
|
|
633
|
-
class UniqueConsecutive(Primitive):
|
|
634
|
-
"""
|
|
635
|
-
Returns the elements that are unique in each consecutive group of equivalent elements in the input tensor.
|
|
636
|
-
|
|
637
|
-
.. warning::
|
|
638
|
-
This is an experimental API that is subject to change or deletion.
|
|
639
|
-
|
|
640
|
-
Refer to :func:`mindspore.ops.unique_consecutive` for more details.
|
|
641
|
-
|
|
642
|
-
Args:
|
|
643
|
-
return_idx (bool, optional): Whether to return the index of where the element in the original input
|
|
644
|
-
maps to the position in the output. Default: ``False`` .
|
|
645
|
-
return_counts (bool, optional): Whether to return the counts of each unique element. Default: ``False`` .
|
|
646
|
-
axis (int, optional): The dimension to apply unique. If ``None`` , the unique of the flattened input is
|
|
647
|
-
returned. If specified, it must be int32 or int64. Default: ``None`` .
|
|
648
|
-
|
|
649
|
-
Inputs:
|
|
650
|
-
- **x** (Tensor) - The input tensor.
|
|
651
|
-
|
|
652
|
-
Outputs:
|
|
653
|
-
A tensor or a tuple of tensors containing tensor objects (`output`, `idx`, `counts`).
|
|
654
|
-
|
|
655
|
-
- `output` has the same type as `x` and is used to represent the output list of unique scalar elements.
|
|
656
|
-
- If `return_idx` is True, there will be an additional returned tensor, `idx`,
|
|
657
|
-
which has the same shape as `x` and represents
|
|
658
|
-
the index of where the element in the original input maps to the position in the output.
|
|
659
|
-
- If `return_counts` is True, there will be an additional returned tensor, `counts`,
|
|
660
|
-
which represents the number of occurrences for each unique value or tensor.
|
|
661
|
-
|
|
662
|
-
Supported Platforms:
|
|
663
|
-
``Ascend`` ``GPU`` ``CPU``
|
|
664
|
-
|
|
665
|
-
Examples:
|
|
666
|
-
>>> import numpy as np
|
|
667
|
-
>>> from mindspore import Tensor, ops
|
|
668
|
-
>>> from mindspore import dtype as mstype
|
|
669
|
-
>>> x = Tensor(np.array([1, 1, 2, 2, 3, 1, 1, 2]), mstype.int32)
|
|
670
|
-
>>> unique_consecutive = ops.UniqueConsecutive(True, True, None)
|
|
671
|
-
>>> output, idx, counts = unique_consecutive(x)
|
|
672
|
-
>>> print(output)
|
|
673
|
-
[1 2 3 1 2]
|
|
674
|
-
>>> print(idx)
|
|
675
|
-
[0 0 1 1 2 3 3 4]
|
|
676
|
-
>>> print(counts)
|
|
677
|
-
[2 2 1 2 1]
|
|
678
|
-
"""
|
|
679
|
-
|
|
680
|
-
@prim_attr_register
|
|
681
|
-
def __init__(self, return_idx=False, return_counts=False, axis=None):
|
|
682
|
-
"""Initialize UniqueConsecutive"""
|
|
683
|
-
self.init_prim_io_names(inputs=['x'], outputs=['output'])
|
|
684
|
-
validator.check_value_type("return_idx", return_idx, [bool], self.name)
|
|
685
|
-
validator.check_value_type("return_counts", return_counts, [bool], self.name)
|
|
686
|
-
validator.check_value_type("axis", axis, [int, type(None)], self.name)
|
|
687
|
-
self.add_prim_attr("return_idx", return_idx)
|
|
688
|
-
self.add_prim_attr("return_counts", return_counts)
|
|
689
|
-
self.add_prim_attr("axis", axis)
|
|
690
|
-
|
|
691
|
-
|
|
692
587
|
class SparseGatherV2(Primitive):
|
|
693
588
|
"""
|
|
694
589
|
Returns a slice of input tensor based on the specified indices and axis.
|
|
@@ -1274,7 +1169,7 @@ class TupleToArray(PrimitiveWithInfer):
|
|
|
1274
1169
|
|
|
1275
1170
|
Inputs:
|
|
1276
1171
|
- **input_x** (tuple) - A tuple of numbers. These numbers have the same type.
|
|
1277
|
-
The shape is :math:`(N
|
|
1172
|
+
The shape is :math:`(N,)`.
|
|
1278
1173
|
|
|
1279
1174
|
Outputs:
|
|
1280
1175
|
Tensor, if the input tuple contains `N` numbers, then the shape of the output tensor is :math:`(N,)`.
|
|
@@ -1907,9 +1802,9 @@ class Unstack(Primitive):
|
|
|
1907
1802
|
Refer to :func:`mindspore.ops.unstack` for more details.
|
|
1908
1803
|
|
|
1909
1804
|
Args:
|
|
1910
|
-
axis (int): Dimension along which to unpack. Default: ``0`` .
|
|
1805
|
+
axis (int, optional): Dimension along which to unpack. Default: ``0`` .
|
|
1911
1806
|
Negative values wrap around. The range is [-R, R).
|
|
1912
|
-
num (Union[None, int]): The number of output tensors.
|
|
1807
|
+
num (Union[None, int], optional): The number of output tensors.
|
|
1913
1808
|
Automatically inferred by input_x and axis if ``None`` . Default: ``None`` .
|
|
1914
1809
|
|
|
1915
1810
|
Inputs:
|
|
@@ -1943,55 +1838,6 @@ class Unstack(Primitive):
|
|
|
1943
1838
|
validator.check_value_type("num", num, [int], self.name)
|
|
1944
1839
|
|
|
1945
1840
|
|
|
1946
|
-
class Slice(Primitive):
|
|
1947
|
-
"""
|
|
1948
|
-
Slices a tensor in the specified shape.
|
|
1949
|
-
|
|
1950
|
-
Refer to :func:`mindspore.ops.slice` for more details.
|
|
1951
|
-
|
|
1952
|
-
Inputs:
|
|
1953
|
-
- **input_x** (Tensor) - The target tensor.
|
|
1954
|
-
The shape is :math:`(N, *)` where :math:`*` means, any number of additional dimensions.
|
|
1955
|
-
- **begin** (Union[tuple, list]) - The beginning of the slice. Only constant value(>=0) is allowed.
|
|
1956
|
-
- **size** (Union[tuple, list]) - The size of the slice. Only constant value is allowed.
|
|
1957
|
-
|
|
1958
|
-
Outputs:
|
|
1959
|
-
Tensor, the shape is: input `size`, the data type is the same as `input_x`.
|
|
1960
|
-
|
|
1961
|
-
Supported Platforms:
|
|
1962
|
-
``Ascend`` ``GPU`` ``CPU``
|
|
1963
|
-
|
|
1964
|
-
Examples:
|
|
1965
|
-
>>> from mindspore import Tensor
|
|
1966
|
-
>>> from mindspore import ops
|
|
1967
|
-
>>> import numpy as np
|
|
1968
|
-
>>> data = Tensor(np.array([[[1, 1, 1], [2, 2, 2]],
|
|
1969
|
-
... [[3, 3, 3], [4, 4, 4]],
|
|
1970
|
-
... [[5, 5, 5], [6, 6, 6]]]).astype(np.int32))
|
|
1971
|
-
>>> slice_op = ops.Slice()
|
|
1972
|
-
>>> output = slice_op(data, (1, 0, 0), (1, 1, 3))
|
|
1973
|
-
>>> print(output)
|
|
1974
|
-
[[[3 3 3]]]
|
|
1975
|
-
>>> output = slice_op(data, (1, 0, 0), (1, 1, 2))
|
|
1976
|
-
>>> print(output)
|
|
1977
|
-
[[[3 3]]]
|
|
1978
|
-
>>> output = slice_op(data, (1, 0, 0), (1, 1, 1))
|
|
1979
|
-
>>> print(output)
|
|
1980
|
-
[[[3]]]
|
|
1981
|
-
>>> output = slice_op(data, (1, 1, 0), (1, 1, 3))
|
|
1982
|
-
>>> print(output)
|
|
1983
|
-
[[[4 4 4]]]
|
|
1984
|
-
>>> output = slice_op(data, (1, 0, 1), (1, 1, 2))
|
|
1985
|
-
>>> print(output)
|
|
1986
|
-
[[[3 3]]]
|
|
1987
|
-
"""
|
|
1988
|
-
|
|
1989
|
-
@prim_attr_register
|
|
1990
|
-
def __init__(self):
|
|
1991
|
-
"""Initialize slice"""
|
|
1992
|
-
self.init_prim_io_names(inputs=['x', 'begin', 'size'], outputs=['output'])
|
|
1993
|
-
|
|
1994
|
-
|
|
1995
1841
|
class Coalesce(Primitive):
|
|
1996
1842
|
"""
|
|
1997
1843
|
Returns the coalesced sparse tensor of the input.
|
|
@@ -2198,7 +2044,7 @@ class ScatterUpdate(Primitive):
|
|
|
2198
2044
|
use_locking (bool): Whether to protect the assignment by a lock. Default: ``True`` .
|
|
2199
2045
|
|
|
2200
2046
|
Inputs:
|
|
2201
|
-
- **input_x** (Parameter) - The target tensor, with data type of Parameter.
|
|
2047
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
2202
2048
|
The shape is 0-D or :math:`(N, *)` where :math:`*` means any number of additional dimensions.
|
|
2203
2049
|
- **indices** (Tensor) - The index of input tensor. With int32 data type.
|
|
2204
2050
|
If there are duplicates in indices, the order for updating is undefined.
|
|
@@ -2212,8 +2058,8 @@ class ScatterUpdate(Primitive):
|
|
|
2212
2058
|
TypeError: If `use_locking` is not a bool.
|
|
2213
2059
|
TypeError: If `indices` is not an int32.
|
|
2214
2060
|
ValueError: If the shape of `updates` is not equal to `indices.shape + input_x.shape[1:]`.
|
|
2215
|
-
RuntimeError: If the data type of `input_x` and `updates` conversion
|
|
2216
|
-
is
|
|
2061
|
+
RuntimeError: If the data type of `input_x` and `updates` conversion is required when data type conversion
|
|
2062
|
+
is not supported.
|
|
2217
2063
|
|
|
2218
2064
|
Supported Platforms:
|
|
2219
2065
|
``Ascend`` ``GPU`` ``CPU``
|
|
@@ -2267,10 +2113,10 @@ class ScatterNdUpdate(Primitive):
|
|
|
2267
2113
|
the relatively highest priority data type.
|
|
2268
2114
|
|
|
2269
2115
|
Args:
|
|
2270
|
-
use_locking (bool): Whether to protect the assignment by a lock. Default: ``True`` .
|
|
2116
|
+
use_locking (bool, optional): Whether to protect the assignment by a lock. Default: ``True`` .
|
|
2271
2117
|
|
|
2272
2118
|
Inputs:
|
|
2273
|
-
- **input_x** (Parameter) - The target tensor, with data type of Parameter.
|
|
2119
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
2274
2120
|
The shape is :math:`(N, *)` where :math:`*` means any number of additional dimensions.
|
|
2275
2121
|
- **indices** (Tensor) - The index of input tensor, with int32 or int64 data type.
|
|
2276
2122
|
- **updates** (Tensor) - N-D(2D or 3D) Tensor The tensor to be updated to the input tensor,
|
|
@@ -2282,8 +2128,8 @@ class ScatterNdUpdate(Primitive):
|
|
|
2282
2128
|
Raises:
|
|
2283
2129
|
TypeError: If `use_locking` is not a bool.
|
|
2284
2130
|
TypeError: If `indices` is not an int32 or an int64.
|
|
2285
|
-
RuntimeError: If the data type of `input_x` and `updates` conversion
|
|
2286
|
-
is
|
|
2131
|
+
RuntimeError: If the data type of `input_x` and `updates` conversion is required when data type conversion
|
|
2132
|
+
is not supported.
|
|
2287
2133
|
|
|
2288
2134
|
Supported Platforms:
|
|
2289
2135
|
``Ascend`` ``GPU`` ``CPU``
|
|
@@ -2340,7 +2186,7 @@ class ScatterMax(_ScatterOpDynamic):
|
|
|
2340
2186
|
use_locking (bool): Whether to protect the assignment by a lock. Default: ``False`` .
|
|
2341
2187
|
|
|
2342
2188
|
Inputs:
|
|
2343
|
-
- **input_x** (Parameter) - The target tensor, with data type of Parameter.
|
|
2189
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
2344
2190
|
The shape is :math:`(N, *)` where :math:`*` means any number of additional dimensions.
|
|
2345
2191
|
- **indices** (Tensor) - The index to do max operation whose data type must be mindspore.int32 or
|
|
2346
2192
|
mindspore.int64.
|
|
@@ -2354,8 +2200,8 @@ class ScatterMax(_ScatterOpDynamic):
|
|
|
2354
2200
|
TypeError: If `use_locking` is not a bool.
|
|
2355
2201
|
TypeError: If `indices` is not an int32 or an int64.
|
|
2356
2202
|
ValueError: If the shape of `updates` is not equal to `indices.shape + x.shape[1:]`.
|
|
2357
|
-
RuntimeError: If the data type of `input_x` and `updates` conversion
|
|
2358
|
-
is
|
|
2203
|
+
RuntimeError: If the data type of `input_x` and `updates` conversion is required when data type conversion
|
|
2204
|
+
is not supported.
|
|
2359
2205
|
RuntimeError: On the Ascend platform, the input data dimension of `input_x` , `indices`
|
|
2360
2206
|
and `updates` is greater than 8 dimensions.
|
|
2361
2207
|
|
|
@@ -2398,10 +2244,10 @@ class ScatterMin(_ScatterOpDynamic):
|
|
|
2398
2244
|
when `updates` does not support conversion to the data type required by `input_x`.
|
|
2399
2245
|
|
|
2400
2246
|
Args:
|
|
2401
|
-
use_locking (bool): Whether to protect the assignment by a lock. Default: ``False`` .
|
|
2247
|
+
use_locking (bool, optional): Whether to protect the assignment by a lock. Default: ``False`` .
|
|
2402
2248
|
|
|
2403
2249
|
Inputs:
|
|
2404
|
-
- **input_x** (Parameter) - The target tensor, with data type of Parameter.
|
|
2250
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
2405
2251
|
The shape is :math:`(N, *)` where :math:`*` means any number of additional dimensions.
|
|
2406
2252
|
- **indices** (Tensor) - The index to do min operation whose data type must be mindspore.int32 or
|
|
2407
2253
|
mindspore.int64.
|
|
@@ -2415,8 +2261,8 @@ class ScatterMin(_ScatterOpDynamic):
|
|
|
2415
2261
|
TypeError: If `use_locking` is not a bool.
|
|
2416
2262
|
TypeError: If `indices` is not an int32 or an int64.
|
|
2417
2263
|
ValueError: If the shape of `updates` is not equal to `indices.shape + input_x.shape[1:]`.
|
|
2418
|
-
RuntimeError: If the data type of `input_x` and `updates` conversion
|
|
2419
|
-
is
|
|
2264
|
+
RuntimeError: If the data type of `input_x` and `updates` conversion is required when data type conversion
|
|
2265
|
+
is not supported.
|
|
2420
2266
|
RuntimeError: On the Ascend platform, the input data dimension of `input_x` , `indices`
|
|
2421
2267
|
and `updates` is greater than 8 dimensions.
|
|
2422
2268
|
|
|
@@ -2460,12 +2306,12 @@ class ScatterAdd(Primitive):
|
|
|
2460
2306
|
This is an in-place update operator. Therefore, the `input_x` will be updated after the operation is completed.
|
|
2461
2307
|
|
|
2462
2308
|
Args:
|
|
2463
|
-
use_locking (bool): Whether to protect the assignment by a lock.
|
|
2309
|
+
use_locking (bool, optional): Whether to protect the assignment by a lock.
|
|
2464
2310
|
If ``True`` , `input_x` will be protected by the lock.
|
|
2465
2311
|
Otherwise, the calculation result is undefined. Default: ``False`` .
|
|
2466
2312
|
|
|
2467
2313
|
Inputs:
|
|
2468
|
-
- **input_x** (Parameter) - The target tensor, with data type of Parameter.
|
|
2314
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
2469
2315
|
- **indices** (Tensor) - The index to do min operation whose data type must be mindspore.int32 or
|
|
2470
2316
|
mindspore.int64.
|
|
2471
2317
|
- **updates** (Tensor) - The tensor doing the min operation with `input_x`,
|
|
@@ -2478,8 +2324,8 @@ class ScatterAdd(Primitive):
|
|
|
2478
2324
|
TypeError: If `use_locking` is not a bool.
|
|
2479
2325
|
TypeError: If `indices` is not an int32 or an int64.
|
|
2480
2326
|
ValueError: If the shape of `updates` is not equal to `indices.shape + x.shape[1:]`.
|
|
2481
|
-
RuntimeError: If the data type of `input_x` and `updates` conversion
|
|
2482
|
-
is
|
|
2327
|
+
RuntimeError: If the data type of `input_x` and `updates` conversion is required when data type conversion
|
|
2328
|
+
is not supported.
|
|
2483
2329
|
|
|
2484
2330
|
Supported Platforms:
|
|
2485
2331
|
``Ascend`` ``GPU`` ``CPU``
|
|
@@ -2580,10 +2426,10 @@ class ScatterSub(Primitive):
|
|
|
2580
2426
|
the relatively highest priority data type.
|
|
2581
2427
|
|
|
2582
2428
|
Args:
|
|
2583
|
-
use_locking (bool): Whether to protect the assignment by a lock. Default: ``False`` .
|
|
2429
|
+
use_locking (bool, optional): Whether to protect the assignment by a lock. Default: ``False`` .
|
|
2584
2430
|
|
|
2585
2431
|
Inputs:
|
|
2586
|
-
- **input_x** (Parameter) - The target tensor, with data type of Parameter.
|
|
2432
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
2587
2433
|
The shape is :math:`(N, *)` where :math:`*` means any number of additional dimensions.
|
|
2588
2434
|
- **indices** (Tensor) - The index to do min operation whose data type must be mindspore.int32 or
|
|
2589
2435
|
mindspore.int64.
|
|
@@ -2597,8 +2443,8 @@ class ScatterSub(Primitive):
|
|
|
2597
2443
|
TypeError: If `use_locking` is not a bool.
|
|
2598
2444
|
TypeError: If `indices` is not an int32.
|
|
2599
2445
|
ValueError: If the shape of `updates` is not equal to `indices_shape + x_shape[1:]`.
|
|
2600
|
-
RuntimeError: If the data type of `input_x` and `updates` conversion
|
|
2601
|
-
is
|
|
2446
|
+
RuntimeError: If the data type of `input_x` and `updates` conversion is required when data type conversion
|
|
2447
|
+
is not supported.
|
|
2602
2448
|
|
|
2603
2449
|
Supported Platforms:
|
|
2604
2450
|
``Ascend`` ``GPU`` ``CPU``
|
|
@@ -2702,7 +2548,7 @@ class ScatterMul(_ScatterOpDynamic):
|
|
|
2702
2548
|
use_locking (bool): Whether to protect the assignment by a lock. Default: ``False`` .
|
|
2703
2549
|
|
|
2704
2550
|
Inputs:
|
|
2705
|
-
- **input_x** (Parameter) - The target tensor, with data type of Parameter.
|
|
2551
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
2706
2552
|
The shape is :math:`(N, *)` where :math:`*` means any number of additional dimensions.
|
|
2707
2553
|
- **indices** (Tensor) - The index to do multiply operation whose data type must be mstype.int32 or
|
|
2708
2554
|
mstype.int64.
|
|
@@ -2716,8 +2562,8 @@ class ScatterMul(_ScatterOpDynamic):
|
|
|
2716
2562
|
TypeError: If `use_locking` is not a bool.
|
|
2717
2563
|
TypeError: If `indices` is not an int32 or an int64.
|
|
2718
2564
|
ValueError: If the shape of `updates` is not equal to `indices.shape + input_x.shape[1:]`.
|
|
2719
|
-
RuntimeError: If the data type of `input_x` and `updates` conversion
|
|
2720
|
-
is
|
|
2565
|
+
RuntimeError: If the data type of `input_x` and `updates` conversion is required when data type conversion
|
|
2566
|
+
is not supported.
|
|
2721
2567
|
|
|
2722
2568
|
Supported Platforms:
|
|
2723
2569
|
``Ascend`` ``GPU`` ``CPU``
|
|
@@ -2810,7 +2656,7 @@ class ScatterDiv(_ScatterOpDynamic):
|
|
|
2810
2656
|
use_locking (bool): Whether to protect the assignment by a lock. Default: ``False`` .
|
|
2811
2657
|
|
|
2812
2658
|
Inputs:
|
|
2813
|
-
- **input_x** (Parameter) - The target tensor, with data type of Parameter.
|
|
2659
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
2814
2660
|
The shape is :math:`(N, *)` where :math:`*` means any number of additional dimensions.
|
|
2815
2661
|
- **indices** (Tensor) - The index to do divide operation whose data type must be mstype.int32 or
|
|
2816
2662
|
mstype.int64.
|
|
@@ -2824,8 +2670,8 @@ class ScatterDiv(_ScatterOpDynamic):
|
|
|
2824
2670
|
TypeError: If `use_locking` is not a bool.
|
|
2825
2671
|
TypeError: If `indices` is not an int32 or an int64.
|
|
2826
2672
|
ValueError: If the shape of `updates` is not equal to `indices.shape + input_x.shape[1:]`.
|
|
2827
|
-
RuntimeError: If the data type of `input_x` and `updates` conversion
|
|
2828
|
-
is
|
|
2673
|
+
RuntimeError: If the data type of `input_x` and `updates` conversion is required when data type conversion
|
|
2674
|
+
is not supported.
|
|
2829
2675
|
RuntimeError: On the Ascend platform, the input data dimension of `input_x` , `indices`
|
|
2830
2676
|
and `updates` is greater than 8 dimensions.
|
|
2831
2677
|
|
|
@@ -2914,7 +2760,7 @@ class ScatterNdAdd(Primitive):
|
|
|
2914
2760
|
use_locking (bool, optional): Whether to protect the assignment by a lock. Default: ``False`` .
|
|
2915
2761
|
|
|
2916
2762
|
Inputs:
|
|
2917
|
-
- **input_x** (Parameter) - The target tensor, with data type of Parameter.
|
|
2763
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
2918
2764
|
The shape is :math:`(N, *)` where :math:`*` means any number of additional dimensions.
|
|
2919
2765
|
- **indices** (Tensor) - The index to do add operation whose data type must be mindspore.int32.
|
|
2920
2766
|
The rank of indices must be at least 2 and `indices.shape[-1] <= len(shape)`.
|
|
@@ -2991,7 +2837,7 @@ class ScatterNdSub(Primitive):
|
|
|
2991
2837
|
use_locking (bool, optional): Whether to protect the assignment by a lock. Default: ``False`` .
|
|
2992
2838
|
|
|
2993
2839
|
Inputs:
|
|
2994
|
-
- **input_x** (Parameter) - The target tensor, with data type of Parameter.
|
|
2840
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
2995
2841
|
The shape is :math:`(N, *)` where :math:`*` means any number of additional dimensions.
|
|
2996
2842
|
- **indices** (Tensor) - The index to do sub operation whose data type must be mindspore.int32.
|
|
2997
2843
|
The rank of indices must be at least 2 and `indices.shape[-1] <= len(shape)`.
|
|
@@ -3072,7 +2918,7 @@ class ScatterNdMul(_ScatterNdOp):
|
|
|
3072
2918
|
use_locking (bool, optional): Whether to protect the assignment by a lock. Default: ``False`` .
|
|
3073
2919
|
|
|
3074
2920
|
Inputs:
|
|
3075
|
-
- **input_x** (Parameter) - The target tensor, with data type of Parameter.
|
|
2921
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
3076
2922
|
- **indices** (Tensor) - The index to do mul operation whose data type must be int32 or int64.
|
|
3077
2923
|
The rank of indices must be at least 2 and `indices.shape[-1] <= len(shape)`.
|
|
3078
2924
|
- **updates** (Tensor) - The tensor to do the mul operation with `input_x`.
|
|
@@ -3137,7 +2983,7 @@ class ScatterNdDiv(_ScatterNdOp):
|
|
|
3137
2983
|
use_locking (bool, optional): Whether to protect the assignment by a lock. Default: ``False`` .
|
|
3138
2984
|
|
|
3139
2985
|
Inputs:
|
|
3140
|
-
- **input_x** (Parameter) - The target tensor, with data type of Parameter.
|
|
2986
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
3141
2987
|
- **indices** (Tensor) - The index to do div operation whose data type must be int32 or int64.
|
|
3142
2988
|
The rank of indices must be at least 2 and `indices.shape[-1] <= len(shape)`.
|
|
3143
2989
|
- **updates** (Tensor) - The tensor to do the div operation with `input_x`.
|
|
@@ -3191,7 +3037,7 @@ class ScatterNdDiv(_ScatterNdOp):
|
|
|
3191
3037
|
|
|
3192
3038
|
class ScatterNdMax(_ScatterNdOp):
|
|
3193
3039
|
r"""
|
|
3194
|
-
|
|
3040
|
+
Computes sparse maximum to individual values or slices in a tensor.
|
|
3195
3041
|
|
|
3196
3042
|
Using given values to update parameter value through the maximum operation, along with the input indices.
|
|
3197
3043
|
This operation outputs the `input_x` after the update is done, which makes it convenient to use the updated value.
|
|
@@ -3202,7 +3048,7 @@ class ScatterNdMax(_ScatterNdOp):
|
|
|
3202
3048
|
use_locking (bool, optional): Whether to protect the assignment by a lock. Default: ``False`` .
|
|
3203
3049
|
|
|
3204
3050
|
Inputs:
|
|
3205
|
-
- **input_x** (Parameter) -The target tensor, with data type of Parameter.
|
|
3051
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
3206
3052
|
- **indices** (Tensor) - The index to do maximum operation whose data type must be int32 or int64.
|
|
3207
3053
|
The rank of indices must be at least 2 and `indices.shape[-1] <= len(shape)`.
|
|
3208
3054
|
- **updates** (Tensor) - The tensor to do the max operation with `input_x`.
|
|
@@ -3269,7 +3115,7 @@ class ScatterNdMin(_ScatterNdOp):
|
|
|
3269
3115
|
use_locking (bool, optional): Whether to protect the assignment by a lock. Default: ``False`` .
|
|
3270
3116
|
|
|
3271
3117
|
Inputs:
|
|
3272
|
-
- **input_x** (Parameter) -The target tensor, with data type of Parameter.
|
|
3118
|
+
- **input_x** (Union[Parameter, Tensor]) - The target tensor, with data type of Parameter or Tensor.
|
|
3273
3119
|
- **indices** (Tensor) - The index to do minimum operation whose data type must be int32 or int64.
|
|
3274
3120
|
The rank of indices must be at least 2 and `indices.shape[-1] <= len(shape)`.
|
|
3275
3121
|
- **updates** (Tensor) - The tensor to do the max operation with `input_x`.
|
|
@@ -3735,117 +3581,13 @@ class BatchToSpaceNDV2(Primitive):
|
|
|
3735
3581
|
self.add_prim_attr('origin_format', 'NHWC')
|
|
3736
3582
|
|
|
3737
3583
|
|
|
3738
|
-
class Meshgrid(PrimitiveWithInfer):
|
|
3739
|
-
"""
|
|
3740
|
-
Generates coordinate matrices from given coordinate tensors.
|
|
3741
|
-
|
|
3742
|
-
Refer to :func:`mindspore.ops.meshgrid` for more details.
|
|
3743
|
-
|
|
3744
|
-
Args:
|
|
3745
|
-
indexing (str, optional): Cartesian ``'xy'`` or
|
|
3746
|
-
matrix ``'ij'`` indexing of output. In the 2-D case with
|
|
3747
|
-
inputs of length `M` and `N`, the outputs are of shape :math:`(N, M)`
|
|
3748
|
-
for ``'xy'`` indexing and :math:`(M, N)` for ``'ij'`` indexing. In the 3-D
|
|
3749
|
-
case with inputs of length `M`, `N` and `P`, outputs are of shape
|
|
3750
|
-
:math:`(N, M, P)` for ``'xy'`` indexing and :math:`(M, N, P)` for ``'ij'`` indexing.
|
|
3751
|
-
Default: ``'xy'``.
|
|
3752
|
-
|
|
3753
|
-
Inputs:
|
|
3754
|
-
- **input** (Union[tuple]) - A Tuple of N 1-D Tensor objects.
|
|
3755
|
-
The length of input should be greater than 1. The data type is Number.
|
|
3756
|
-
|
|
3757
|
-
Outputs:
|
|
3758
|
-
Tensors, A Tuple of N N-D Tensor objects. The data type is the same with the Inputs.
|
|
3759
|
-
|
|
3760
|
-
Supported Platforms:
|
|
3761
|
-
``Ascend`` ``GPU`` ``CPU``
|
|
3762
|
-
|
|
3763
|
-
Examples:
|
|
3764
|
-
>>> import numpy as np
|
|
3765
|
-
>>> from mindspore import Tensor, ops
|
|
3766
|
-
>>> x = Tensor(np.array([1, 2, 3, 4]).astype(np.int32))
|
|
3767
|
-
>>> y = Tensor(np.array([5, 6, 7]).astype(np.int32))
|
|
3768
|
-
>>> z = Tensor(np.array([8, 9, 0, 1, 2]).astype(np.int32))
|
|
3769
|
-
>>> inputs = (x, y, z)
|
|
3770
|
-
>>> meshgrid = ops.Meshgrid(indexing='xy')
|
|
3771
|
-
>>> output = meshgrid(inputs)
|
|
3772
|
-
>>> print(output)
|
|
3773
|
-
(Tensor(shape=[3, 4, 5], dtype=Int32, value=
|
|
3774
|
-
[[[1, 1, 1, 1, 1],
|
|
3775
|
-
[2, 2, 2, 2, 2],
|
|
3776
|
-
[3, 3, 3, 3, 3],
|
|
3777
|
-
[4, 4, 4, 4, 4]],
|
|
3778
|
-
[[1, 1, 1, 1, 1],
|
|
3779
|
-
[2, 2, 2, 2, 2],
|
|
3780
|
-
[3, 3, 3, 3, 3],
|
|
3781
|
-
[4, 4, 4, 4, 4]],
|
|
3782
|
-
[[1, 1, 1, 1, 1],
|
|
3783
|
-
[2, 2, 2, 2, 2],
|
|
3784
|
-
[3, 3, 3, 3, 3],
|
|
3785
|
-
[4, 4, 4, 4, 4]]]),
|
|
3786
|
-
Tensor(shape=[3, 4, 5], dtype=Int32, value=
|
|
3787
|
-
[[[5, 5, 5, 5, 5],
|
|
3788
|
-
[5, 5, 5, 5, 5],
|
|
3789
|
-
[5, 5, 5, 5, 5],
|
|
3790
|
-
[5, 5, 5, 5, 5]],
|
|
3791
|
-
[[6, 6, 6, 6, 6],
|
|
3792
|
-
[6, 6, 6, 6, 6],
|
|
3793
|
-
[6, 6, 6, 6, 6],
|
|
3794
|
-
[6, 6, 6, 6, 6]],
|
|
3795
|
-
[[7, 7, 7, 7, 7],
|
|
3796
|
-
[7, 7, 7, 7, 7],
|
|
3797
|
-
[7, 7, 7, 7, 7],
|
|
3798
|
-
[7, 7, 7, 7, 7]]]),
|
|
3799
|
-
Tensor(shape=[3, 4, 5], dtype=Int32, value=
|
|
3800
|
-
[[[8, 9, 0, 1, 2],
|
|
3801
|
-
[8, 9, 0, 1, 2],
|
|
3802
|
-
[8, 9, 0, 1, 2],
|
|
3803
|
-
[8, 9, 0, 1, 2]],
|
|
3804
|
-
[[8, 9, 0, 1, 2],
|
|
3805
|
-
[8, 9, 0, 1, 2],
|
|
3806
|
-
[8, 9, 0, 1, 2],
|
|
3807
|
-
[8, 9, 0, 1, 2]],
|
|
3808
|
-
[[8, 9, 0, 1, 2],
|
|
3809
|
-
[8, 9, 0, 1, 2],
|
|
3810
|
-
[8, 9, 0, 1, 2],
|
|
3811
|
-
[8, 9, 0, 1, 2]]]))
|
|
3812
|
-
"""
|
|
3813
|
-
|
|
3814
|
-
@prim_attr_register
|
|
3815
|
-
def __init__(self, indexing="xy"):
|
|
3816
|
-
"""Initialize Meshgrid."""
|
|
3817
|
-
validator.check_value_type("indexing", indexing, (str), self.name)
|
|
3818
|
-
validator.check_string(indexing.lower(), ["xy", "ij"], "indexing", self.name)
|
|
3819
|
-
self.indexing = indexing
|
|
3820
|
-
|
|
3821
|
-
def infer_shape(self, x_shape):
|
|
3822
|
-
validator.check_value_type("shape", x_shape, [tuple], self.name)
|
|
3823
|
-
validator.check_int(len(x_shape), 2, validator.GE, "len of input", self.name)
|
|
3824
|
-
n = len(x_shape)
|
|
3825
|
-
shape_0 = []
|
|
3826
|
-
for s in x_shape:
|
|
3827
|
-
validator.check_int(len(s), 1, validator.EQ, 'each input rank', self.name)
|
|
3828
|
-
shape_0.append(s[0])
|
|
3829
|
-
if self.indexing == "xy":
|
|
3830
|
-
shape_0[0], shape_0[1] = shape_0[1], shape_0[0]
|
|
3831
|
-
out_shape = tuple(tuple(shape_0) for _ in range(n))
|
|
3832
|
-
return out_shape
|
|
3833
|
-
|
|
3834
|
-
def infer_dtype(self, x_type):
|
|
3835
|
-
validator.check_subclass("input[0]", x_type[0], mstype.tensor_type, self.name)
|
|
3836
|
-
n = len(x_type)
|
|
3837
|
-
for i in range(1, n):
|
|
3838
|
-
validator.check('x_type[%d]' % i, x_type[i], 'base', x_type[0], validator.EQ, self.name, TypeError)
|
|
3839
|
-
return x_type
|
|
3840
|
-
|
|
3841
|
-
|
|
3842
3584
|
class ReverseSequence(PrimitiveWithInfer):
|
|
3843
3585
|
r"""
|
|
3844
3586
|
Reverses variable length slices.
|
|
3845
3587
|
|
|
3846
3588
|
Args:
|
|
3847
3589
|
seq_dim (int): The dimension where reversal is performed. Required.
|
|
3848
|
-
batch_dim (int): The input is sliced in this dimension. Default: ``0`` .
|
|
3590
|
+
batch_dim (int, optional): The input is sliced in this dimension. Default: ``0`` .
|
|
3849
3591
|
|
|
3850
3592
|
Inputs:
|
|
3851
3593
|
- **x** (Tensor) - The input to reverse, supporting all number types including bool.
|
|
@@ -4096,10 +3838,11 @@ class EmbeddingLookup(Primitive):
|
|
|
4096
3838
|
`offset`.
|
|
4097
3839
|
|
|
4098
3840
|
Inputs:
|
|
4099
|
-
- **input_params** (Tensor) -
|
|
4100
|
-
|
|
4101
|
-
- **input_indices** (Tensor) -
|
|
4102
|
-
|
|
3841
|
+
- **input_params** (Tensor) - a Tensor slice, the shape is :math:`(x_1, x_2, ..., x_R)`.
|
|
3842
|
+
Currently, the dimension is restricted to be 2.
|
|
3843
|
+
- **input_indices** (Tensor) - Specifies the indices of elements of the original Tensor.
|
|
3844
|
+
The shape is :math:`(y_1, y_2, ..., y_S)`.
|
|
3845
|
+
Values can be out of range of `input_params`,
|
|
4103
3846
|
and the exceeding part will be filled with 0 in the output. Values do not support negative and the result
|
|
4104
3847
|
is undefined if values are negative. The data type should be int32 or int64.
|
|
4105
3848
|
- **offset** (int) - Specifies the offset value of this `input_params` slice. Thus the real indices
|
|
@@ -4326,7 +4069,8 @@ class TensorScatterUpdate(_TensorScatterOp):
|
|
|
4326
4069
|
r"""
|
|
4327
4070
|
Creates a new tensor by updating the positions in `input_x` indicated by
|
|
4328
4071
|
`indices`, with values from `update`. This operation is almost equivalent to using
|
|
4329
|
-
|
|
4072
|
+
:class:`mindspore.ops.ScatterNdUpdate` , except that the updates are applied on output `Tensor`
|
|
4073
|
+
instead of `input_x`.
|
|
4330
4074
|
|
|
4331
4075
|
`indices` must have rank at least 2, the last axis is the depth of each index
|
|
4332
4076
|
vectors. For each index vector, there must be a corresponding value in `update`. If
|
|
@@ -4488,12 +4232,25 @@ class TensorScatterSub(Primitive):
|
|
|
4488
4232
|
r"""
|
|
4489
4233
|
Creates a new tensor by subtracting the values from the positions in `input_x` indicated by
|
|
4490
4234
|
`indices`, with values from `updates`. When multiple values are provided for the same
|
|
4491
|
-
index, the result of the update will
|
|
4235
|
+
index, the result of the update will subtract these values respectively. This operation is almost
|
|
4492
4236
|
equivalent to using :class:`mindspore.ops.ScatterNdSub` , except that the updates are applied on output `Tensor`
|
|
4493
4237
|
instead of input `Parameter`.
|
|
4494
4238
|
|
|
4495
|
-
..
|
|
4496
|
-
|
|
4239
|
+
.. code-block:: python
|
|
4240
|
+
|
|
4241
|
+
# Iterate through all index
|
|
4242
|
+
for i in range(indices.shape[0]):
|
|
4243
|
+
for j in range(indices.shape[1]):
|
|
4244
|
+
...
|
|
4245
|
+
for k in range(indices.shape[-2]): # The last dimension is coordinate dimension
|
|
4246
|
+
# Get current index combination
|
|
4247
|
+
index_tuple = (i, j, ..., k)
|
|
4248
|
+
# Get target position
|
|
4249
|
+
target_index = indices[index_tuple]
|
|
4250
|
+
# Get corresponding update value
|
|
4251
|
+
update_value = updates[index_tuple]
|
|
4252
|
+
# Perform subtraction operation
|
|
4253
|
+
output[target_index] -= update_value
|
|
4497
4254
|
|
|
4498
4255
|
Refer to :func:`mindspore.ops.tensor_scatter_sub` for more details.
|
|
4499
4256
|
|
|
@@ -5237,7 +4994,7 @@ class Tril(Primitive):
|
|
|
5237
4994
|
indicating the main diagonal.
|
|
5238
4995
|
|
|
5239
4996
|
Inputs:
|
|
5240
|
-
- **x** (Tensor) - The input tensor with shape :math:`(M, N
|
|
4997
|
+
- **x** (Tensor) - The input tensor with shape :math:`(*, M, N)`
|
|
5241
4998
|
where :math:`*` means any number of additional dimensions.
|
|
5242
4999
|
|
|
5243
5000
|
Outputs:
|
|
@@ -5387,7 +5144,7 @@ class IndexPut(Primitive):
|
|
|
5387
5144
|
>>> op = ops.IndexPut(accumulate = accumulate)
|
|
5388
5145
|
>>> output = op(x1, x2, indices)
|
|
5389
5146
|
>>> print(output)
|
|
5390
|
-
|
|
5147
|
+
[[4 5 3]
|
|
5391
5148
|
[4 5 6]]
|
|
5392
5149
|
"""
|
|
5393
5150
|
|
|
@@ -5780,7 +5537,7 @@ class AffineGrid(Primitive):
|
|
|
5780
5537
|
|
|
5781
5538
|
Args:
|
|
5782
5539
|
align_corners (bool, optional): Geometrically, each pixel of input is viewed as a squqre instead of dot.
|
|
5783
|
-
If True
|
|
5540
|
+
If ``True``, consider extremum -1 and 1 referring to the centers of the pixels rather than pixel corners.
|
|
5784
5541
|
The default value is ``False`` , extremum -1 and 1 refer to the corners of the pixels, so that sampling is
|
|
5785
5542
|
irrelevant to resolution of the image. Default: ``False`` .
|
|
5786
5543
|
|
|
@@ -5792,7 +5549,7 @@ class AffineGrid(Primitive):
|
|
|
5792
5549
|
or :math:`(N, C, D, H, W)` for 3D grid.
|
|
5793
5550
|
|
|
5794
5551
|
Outputs:
|
|
5795
|
-
Tensor, a tensor whose data type is same as
|
|
5552
|
+
Tensor, a tensor whose data type is same as `theta`, and the shape is :math:`(N, H, W, 2)` for 2D grid
|
|
5796
5553
|
or :math:`(N, D, H, W, 3)` for 3D grid.
|
|
5797
5554
|
|
|
5798
5555
|
Supported Platforms:
|
|
@@ -6001,7 +5758,7 @@ class TopK(Primitive):
|
|
|
6001
5758
|
- CPU: all numeric types.
|
|
6002
5759
|
|
|
6003
5760
|
- **k** (Union(Tensor, int)) - The number of top elements to be computed along the last dimension.
|
|
6004
|
-
|
|
5761
|
+
The supported dtype is int32 and it should be 0-D or 1-D Tensor with shape :math:`(1, )` .
|
|
6005
5762
|
|
|
6006
5763
|
Outputs:
|
|
6007
5764
|
A tuple consisting of `values` and `indexes`.
|