mindspore 2.0.0rc1__cp38-none-any.whl → 2.2.0__cp38-none-any.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/Third_Party_Open_Source_Software_Notice +2 -2
- mindspore/__init__.py +5 -2
- mindspore/_akg/akg/build_module.py +5 -6
- mindspore/_akg/akg/composite/build_module.py +49 -16
- mindspore/_akg/akg/composite/split_stitch.py +10 -11
- mindspore/_akg/akg/config/repository.json +195 -0
- mindspore/_akg/akg/global_configs.py +5 -1
- mindspore/_akg/akg/ms/info_version_adapt.py +67 -1
- mindspore/_akg/akg/tvm/api.py +4 -3
- mindspore/_akg/akg/tvm/autotvm/__init__.py +1 -2
- mindspore/_akg/akg/tvm/autotvm/graph_tuner/base_graph_tuner.py +1 -5
- mindspore/_akg/akg/tvm/autotvm/measure/__init__.py +1 -1
- mindspore/_akg/akg/tvm/autotvm/measure/measure.py +1 -10
- mindspore/_akg/akg/tvm/autotvm/measure/measure_methods.py +1 -372
- mindspore/_akg/akg/tvm/build_module.py +16 -1
- mindspore/_akg/akg/tvm/contrib/graph_runtime.py +0 -53
- mindspore/_akg/akg/tvm/hybrid/parser.py +7 -6
- mindspore/_akg/akg/tvm/ir_builder.py +1 -1
- mindspore/_akg/akg/tvm/module.py +1 -2
- mindspore/_akg/akg/tvm/stmt.py +2 -2
- mindspore/_akg/akg/utils/composite_op_helper.py +9 -10
- mindspore/_akg/akg/utils/kernel_exec.py +58 -260
- mindspore/_akg/akg/utils/op_dsl.py +17 -1
- mindspore/_akg/akg/utils/result_analysis.py +4 -24
- mindspore/_akg/akg/utils/tbe_codegen_utils.py +198 -0
- mindspore/_c_dataengine.cpython-38-aarch64-linux-gnu.so +0 -0
- mindspore/_c_expression.cpython-38-aarch64-linux-gnu.so +0 -0
- mindspore/_c_mindrecord.cpython-38-aarch64-linux-gnu.so +0 -0
- mindspore/_check_jit_forbidden_api.py +5 -1
- mindspore/_checkparam.py +79 -62
- mindspore/_extends/graph_kernel/__init__.py +0 -1
- mindspore/_extends/graph_kernel/model/graph_split.py +2 -0
- mindspore/_extends/graph_kernel/model/model_builder.py +9 -50
- mindspore/_extends/graph_kernel/splitter.py +1 -9
- mindspore/_extends/parallel_compile/akg_compiler/akg_process.py +128 -21
- mindspore/_extends/parallel_compile/akg_compiler/build_tbe_kernel.py +2 -2
- mindspore/_extends/parallel_compile/akg_compiler/tbe_topi.py +4 -2
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_adapter.py +18 -13
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_helper.py +13 -9
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_job.py +1 -1
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_job_manager.py +1 -1
- mindspore/_extends/parse/__init__.py +19 -17
- mindspore/_extends/parse/namespace.py +7 -36
- mindspore/_extends/parse/parser.py +375 -189
- mindspore/_extends/parse/resources.py +36 -41
- mindspore/_extends/parse/standard_method.py +350 -245
- mindspore/_extends/parse/trope.py +2 -12
- mindspore/_extends/remote/kernel_build_server.py +24 -7
- mindspore/_extends/remote/kernel_build_server_akg_v2.py +55 -0
- mindspore/_install_custom.py +43 -0
- mindspore/_mindspore_offline_debug.cpython-38-aarch64-linux-gnu.so +0 -0
- mindspore/amp.py +85 -19
- mindspore/bin/cache_admin +0 -0
- mindspore/bin/cache_server +0 -0
- mindspore/boost/base.py +2 -2
- mindspore/boost/boost.py +27 -32
- mindspore/boost/boost_cell_wrapper.py +37 -13
- mindspore/boost/grad_accumulation.py +1 -1
- mindspore/boost/grad_freeze.py +34 -6
- mindspore/boost/group_loss_scale_manager.py +15 -14
- mindspore/boost/less_batch_normalization.py +28 -3
- mindspore/common/__init__.py +15 -11
- mindspore/common/_auto_dynamic.py +68 -0
- mindspore/common/_jit_fallback_utils.py +111 -0
- mindspore/common/_register_for_adapter.py +17 -5
- mindspore/common/_register_for_tensor.py +2 -2
- mindspore/common/_stub_tensor.py +18 -15
- mindspore/common/_utils.py +31 -7
- mindspore/common/api.py +269 -101
- mindspore/common/auto_dynamic_shape.py +498 -0
- mindspore/common/dtype.py +61 -21
- mindspore/common/dump.py +9 -7
- mindspore/common/initializer.py +106 -76
- mindspore/common/jit_config.py +35 -14
- mindspore/common/lazy_inline.py +187 -0
- mindspore/common/mindir_util.py +101 -0
- mindspore/common/mutable.py +10 -13
- mindspore/common/parameter.py +246 -55
- mindspore/common/seed.py +13 -7
- mindspore/common/sparse_tensor.py +29 -33
- mindspore/common/tensor.py +907 -251
- mindspore/communication/__init__.py +7 -4
- mindspore/communication/_comm_helper.py +84 -4
- mindspore/communication/management.py +160 -88
- mindspore/config/op_info.config +99 -75
- mindspore/config/super_bar_config.json +36 -4
- mindspore/context.py +526 -219
- mindspore/dataset/__init__.py +9 -46
- mindspore/dataset/audio/__init__.py +4 -19
- mindspore/dataset/audio/transforms.py +545 -233
- mindspore/dataset/audio/utils.py +21 -18
- mindspore/dataset/callback/ds_callback.py +42 -13
- mindspore/dataset/core/config.py +158 -100
- mindspore/dataset/core/validator_helpers.py +1 -63
- mindspore/dataset/debug/debug_hook.py +45 -13
- mindspore/dataset/debug/pre_defined_hook.py +5 -5
- mindspore/dataset/engine/__init__.py +0 -5
- mindspore/dataset/engine/cache_client.py +38 -15
- mindspore/dataset/engine/datasets.py +615 -278
- mindspore/dataset/engine/datasets_audio.py +154 -283
- mindspore/dataset/engine/datasets_standard_format.py +104 -116
- mindspore/dataset/engine/datasets_text.py +443 -326
- mindspore/dataset/engine/datasets_user_defined.py +251 -164
- mindspore/dataset/engine/datasets_vision.py +839 -1443
- mindspore/dataset/engine/iterators.py +11 -4
- mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +7 -3
- mindspore/dataset/engine/obs/util.py +3 -0
- mindspore/dataset/engine/offload.py +6 -6
- mindspore/dataset/engine/queue.py +15 -14
- mindspore/dataset/engine/samplers.py +39 -23
- mindspore/dataset/engine/serializer_deserializer.py +22 -6
- mindspore/dataset/engine/validators.py +21 -331
- mindspore/dataset/text/__init__.py +5 -33
- mindspore/dataset/text/transforms.py +334 -165
- mindspore/dataset/text/utils.py +215 -145
- mindspore/dataset/transforms/__init__.py +1 -1
- mindspore/dataset/transforms/c_transforms.py +3 -2
- mindspore/dataset/transforms/py_transforms_util.py +40 -12
- mindspore/dataset/transforms/transforms.py +174 -71
- mindspore/dataset/utils/browse_dataset.py +25 -17
- mindspore/dataset/utils/line_reader.py +24 -21
- mindspore/dataset/vision/__init__.py +5 -26
- mindspore/dataset/vision/c_transforms.py +177 -165
- mindspore/dataset/vision/py_transforms.py +114 -119
- mindspore/dataset/vision/py_transforms_util.py +54 -51
- mindspore/dataset/vision/transforms.py +1127 -381
- mindspore/dataset/vision/utils.py +54 -38
- mindspore/dataset/vision/validators.py +12 -2
- mindspore/experimental/map_parameter.py +38 -4
- mindspore/{dataset/datapreprocess → experimental/optim}/__init__.py +14 -4
- mindspore/experimental/optim/adam.py +192 -0
- mindspore/experimental/optim/adamw.py +181 -0
- mindspore/experimental/optim/lr_scheduler.py +1427 -0
- mindspore/experimental/optim/optimizer.py +252 -0
- mindspore/experimental/optim/sgd.py +147 -0
- mindspore/gen_ops.py +273 -0
- mindspore/include/OWNERS +1 -2
- mindspore/include/api/context.h +21 -1
- mindspore/include/api/data_type.h +2 -1
- mindspore/include/api/graph.h +0 -15
- mindspore/include/api/kernel.h +2 -0
- mindspore/include/api/kernel_api.h +37 -12
- mindspore/include/api/model.h +29 -42
- mindspore/include/api/model_group.h +14 -3
- mindspore/include/api/model_parallel_runner.h +18 -2
- mindspore/include/api/serialization.h +26 -0
- mindspore/include/api/status.h +1 -0
- mindspore/include/api/types.h +38 -4
- mindspore/include/c_api/ms/abstract.h +67 -0
- mindspore/include/c_api/ms/attribute.h +197 -0
- mindspore/include/c_api/ms/base/handle_types.h +43 -0
- mindspore/include/c_api/ms/base/macros.h +32 -0
- mindspore/include/c_api/ms/base/status.h +33 -0
- mindspore/include/c_api/ms/base/types.h +282 -0
- mindspore/include/c_api/ms/context.h +102 -0
- mindspore/include/c_api/ms/graph.h +160 -0
- mindspore/include/c_api/ms/node.h +606 -0
- mindspore/include/c_api/ms/tensor.h +161 -0
- mindspore/include/c_api/ms/value.h +84 -0
- mindspore/include/c_api/status_c.h +3 -0
- mindspore/include/dataset/constants.h +6 -12
- mindspore/include/dataset/execute.h +23 -13
- mindspore/include/dataset/text.h +26 -26
- mindspore/include/dataset/transforms.h +25 -31
- mindspore/include/dataset/vision.h +60 -60
- mindspore/include/dataset/vision_ascend.h +5 -6
- mindspore/include/dataset/vision_lite.h +17 -17
- mindspore/include/mindapi/base/format.h +0 -1
- mindspore/include/mindapi/base/type_id.h +2 -1
- mindspore/include/mindapi/base/types.h +5 -1
- mindspore/lib/libdnnl.so.2 +0 -0
- mindspore/lib/libjemalloc.so.2 +0 -0
- mindspore/lib/libmindspore.so +0 -0
- mindspore/lib/libmindspore_backend.so +0 -0
- mindspore/lib/libmindspore_common.so +0 -0
- mindspore/lib/libmindspore_core.so +0 -0
- mindspore/lib/libmindspore_glog.so.0 +0 -0
- mindspore/lib/libmindspore_gpr.so.15 +0 -0
- mindspore/lib/libmindspore_grpc++.so.1 +0 -0
- mindspore/lib/libmindspore_grpc.so.15 +0 -0
- mindspore/lib/libmindspore_shared_lib.so +0 -0
- mindspore/lib/libmpi_adapter.so +0 -0
- mindspore/lib/libnnacl.so +0 -0
- mindspore/lib/libopencv_core.so.4.5 +0 -0
- mindspore/lib/libopencv_imgcodecs.so.4.5 +0 -0
- mindspore/lib/libopencv_imgproc.so.4.5 +0 -0
- mindspore/lib/libps_cache.so +0 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_aicpu_kernels.so +0 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_cpu_kernels.so +0 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/config/cust_aicpu_kernel.json +9000 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_proto/libcust_op_proto.so +0 -0
- mindspore/lib/plugin/ascend/libakg.so +0 -0
- mindspore/lib/plugin/ascend/libascend_collective.so +0 -0
- mindspore/lib/plugin/ascend/libdvpp_utils.so +0 -0
- mindspore/lib/plugin/ascend/libhccl_plugin.so +0 -0
- mindspore/lib/plugin/ascend/libmindspore_aicpu_kernels.so +0 -0
- mindspore/lib/plugin/ascend/libmindspore_cpu_kernels.so +0 -0
- mindspore/lib/plugin/cpu/libakg.so +0 -0
- mindspore/lib/plugin/libmindspore_ascend.so.1 +0 -0
- mindspore/lib/plugin/libmindspore_ascend.so.2 +0 -0
- mindspore/log.py +9 -6
- mindspore/mindrecord/filereader.py +33 -4
- mindspore/mindrecord/filewriter.py +70 -35
- mindspore/mindrecord/mindpage.py +40 -34
- mindspore/mindrecord/shardreader.py +1 -1
- mindspore/mindrecord/shardsegment.py +1 -1
- mindspore/mindrecord/tools/cifar100_to_mr.py +25 -18
- mindspore/mindrecord/tools/cifar10_to_mr.py +25 -18
- mindspore/mindrecord/tools/csv_to_mr.py +29 -13
- mindspore/mindrecord/tools/imagenet_to_mr.py +24 -10
- mindspore/mindrecord/tools/mnist_to_mr.py +24 -11
- mindspore/mindrecord/tools/tfrecord_to_mr.py +31 -26
- mindspore/nn/cell.py +463 -169
- mindspore/nn/dynamic_lr.py +47 -43
- mindspore/nn/layer/activation.py +225 -82
- mindspore/nn/layer/basic.py +121 -79
- mindspore/nn/layer/channel_shuffle.py +21 -21
- mindspore/nn/layer/combined.py +33 -26
- mindspore/nn/layer/container.py +277 -22
- mindspore/nn/layer/conv.py +441 -304
- mindspore/nn/layer/dense.py +19 -13
- mindspore/nn/layer/embedding.py +62 -49
- mindspore/nn/layer/flash_attention.py +264 -0
- mindspore/nn/layer/image.py +50 -39
- mindspore/nn/layer/math.py +62 -51
- mindspore/nn/layer/normalization.py +219 -167
- mindspore/nn/layer/padding.py +58 -70
- mindspore/nn/layer/pooling.py +334 -287
- mindspore/nn/layer/rnn_cells.py +53 -38
- mindspore/nn/layer/rnns.py +59 -56
- mindspore/nn/layer/thor_layer.py +52 -44
- mindspore/nn/layer/timedistributed.py +6 -4
- mindspore/nn/layer/transformer.py +284 -164
- mindspore/nn/learning_rate_schedule.py +34 -25
- mindspore/nn/loss/__init__.py +3 -2
- mindspore/nn/loss/loss.py +554 -311
- mindspore/nn/optim/ada_grad.py +12 -9
- mindspore/nn/optim/adadelta.py +14 -11
- mindspore/nn/optim/adafactor.py +19 -16
- mindspore/nn/optim/adam.py +62 -47
- mindspore/nn/optim/adamax.py +13 -10
- mindspore/nn/optim/adasum.py +12 -8
- mindspore/nn/optim/asgd.py +10 -9
- mindspore/nn/optim/ftrl.py +20 -17
- mindspore/nn/optim/lamb.py +16 -12
- mindspore/nn/optim/lars.py +8 -6
- mindspore/nn/optim/lazyadam.py +25 -20
- mindspore/nn/optim/momentum.py +10 -7
- mindspore/nn/optim/optimizer.py +61 -9
- mindspore/nn/optim/proximal_ada_grad.py +14 -13
- mindspore/nn/optim/rmsprop.py +17 -13
- mindspore/nn/optim/rprop.py +30 -17
- mindspore/nn/optim/sgd.py +40 -23
- mindspore/nn/optim/thor.py +24 -26
- mindspore/nn/probability/bijector/bijector.py +11 -11
- mindspore/nn/probability/bijector/exp.py +1 -1
- mindspore/nn/probability/bijector/gumbel_cdf.py +3 -3
- mindspore/nn/probability/bijector/invert.py +1 -1
- mindspore/nn/probability/bijector/power_transform.py +29 -29
- mindspore/nn/probability/bijector/scalar_affine.py +3 -3
- mindspore/nn/probability/bijector/softplus.py +5 -5
- mindspore/nn/probability/bnn_layers/bnn_cell_wrapper.py +4 -2
- mindspore/nn/probability/bnn_layers/conv_variational.py +13 -13
- mindspore/nn/probability/bnn_layers/dense_variational.py +12 -12
- mindspore/nn/probability/bnn_layers/layer_distribution.py +9 -8
- mindspore/nn/probability/distribution/_utils/custom_ops.py +19 -3
- mindspore/nn/probability/distribution/_utils/utils.py +1 -1
- mindspore/nn/probability/distribution/bernoulli.py +9 -9
- mindspore/nn/probability/distribution/beta.py +8 -8
- mindspore/nn/probability/distribution/categorical.py +23 -15
- mindspore/nn/probability/distribution/cauchy.py +5 -6
- mindspore/nn/probability/distribution/distribution.py +3 -3
- mindspore/nn/probability/distribution/exponential.py +4 -4
- mindspore/nn/probability/distribution/gamma.py +10 -10
- mindspore/nn/probability/distribution/geometric.py +8 -8
- mindspore/nn/probability/distribution/gumbel.py +8 -9
- mindspore/nn/probability/distribution/half_normal.py +5 -5
- mindspore/nn/probability/distribution/laplace.py +5 -5
- mindspore/nn/probability/distribution/log_normal.py +12 -11
- mindspore/nn/probability/distribution/logistic.py +8 -8
- mindspore/nn/probability/distribution/normal.py +6 -5
- mindspore/nn/probability/distribution/poisson.py +10 -11
- mindspore/nn/probability/distribution/student_t.py +8 -9
- mindspore/nn/probability/distribution/transformed_distribution.py +5 -5
- mindspore/nn/probability/distribution/uniform.py +11 -11
- mindspore/nn/reinforcement/tensor_array.py +2 -2
- mindspore/nn/sparse/sparse.py +9 -9
- mindspore/nn/wrap/cell_wrapper.py +188 -63
- mindspore/nn/wrap/grad_reducer.py +21 -12
- mindspore/nn/wrap/loss_scale.py +136 -49
- mindspore/numpy/__init__.py +4 -4
- mindspore/numpy/array_creations.py +55 -56
- mindspore/numpy/array_ops.py +134 -35
- mindspore/numpy/logic_ops.py +66 -20
- mindspore/numpy/math_ops.py +142 -139
- mindspore/numpy/utils_const.py +2 -2
- mindspore/offline_debug/convert_async.py +2 -2
- mindspore/ops/_grad_experimental/__init__.py +7 -5
- mindspore/ops/_grad_experimental/grad_array_ops.py +231 -348
- mindspore/ops/{_grad → _grad_experimental}/grad_base.py +1 -33
- mindspore/ops/{_grad → _grad_experimental}/grad_comm_ops.py +25 -13
- mindspore/ops/{_grad/__init__.py → _grad_experimental/grad_debug_ops.py} +15 -7
- mindspore/ops/{_grad → _grad_experimental}/grad_implementations.py +17 -11
- mindspore/ops/_grad_experimental/grad_inner_ops.py +33 -52
- mindspore/ops/_grad_experimental/grad_math_ops.py +151 -1224
- mindspore/ops/_grad_experimental/grad_nn_ops.py +141 -414
- mindspore/ops/{_grad → _grad_experimental}/grad_quant_ops.py +10 -6
- mindspore/ops/_grad_experimental/grad_sparse.py +317 -2
- mindspore/ops/_grad_experimental/grad_sparse_ops.py +3 -13
- mindspore/ops/{_grad → _grad_experimental}/taylor_rule.py +1 -1
- mindspore/ops/_op_impl/_custom_op/dsd_back_impl.py +1 -1
- mindspore/ops/_op_impl/_custom_op/flash_attention/__init__.py +0 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/attention.py +406 -0
- mindspore/{_extends/graph_kernel/expanders/complex/__init__.py → ops/_op_impl/_custom_op/flash_attention/constants.py} +27 -8
- mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_bwd.py +467 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_fwd.py +563 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_impl.py +193 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/tik_ops_utils.py +435 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/__init__.py +0 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/sparse_tiling.py +45 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/strategy.py +67 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/wukong_tiling.py +62 -0
- mindspore/ops/_op_impl/_custom_op/matmul_cube_dense_left_impl.py +2 -2
- mindspore/ops/_op_impl/aicpu/__init__.py +41 -1
- mindspore/ops/_op_impl/aicpu/adaptive_max_pool_2d.py +37 -0
- mindspore/ops/_op_impl/aicpu/bias_add_grad.py +0 -1
- mindspore/ops/_op_impl/aicpu/cast.py +52 -0
- mindspore/ops/_op_impl/aicpu/coalesce.py +2 -0
- mindspore/ops/_op_impl/aicpu/col2im.py +3 -1
- mindspore/ops/_op_impl/aicpu/count_nonzero.py +43 -0
- mindspore/ops/_op_impl/aicpu/dropout_genmask.py +6 -0
- mindspore/ops/_op_impl/aicpu/eps.py +32 -0
- mindspore/ops/_op_impl/aicpu/eye.py +4 -4
- mindspore/ops/_op_impl/aicpu/fft_with_size.py +6 -0
- mindspore/ops/_op_impl/aicpu/fill_diagonal.py +5 -0
- mindspore/ops/_op_impl/aicpu/gamma.py +2 -2
- mindspore/ops/_op_impl/aicpu/im2col.py +3 -5
- mindspore/ops/_op_impl/aicpu/lgamma.py +1 -0
- mindspore/ops/_op_impl/aicpu/log_uniform_candidate_sampler.py +6 -3
- mindspore/ops/_op_impl/aicpu/lu.py +39 -0
- mindspore/ops/_op_impl/aicpu/lu_unpack_grad.py +0 -1
- mindspore/ops/_op_impl/aicpu/masked_scatter.py +1 -0
- mindspore/ops/_op_impl/aicpu/masked_select_grad.py +3 -0
- mindspore/ops/_op_impl/aicpu/matrix_band_part.py +59 -0
- mindspore/ops/_op_impl/aicpu/matrix_power.py +6 -1
- mindspore/ops/_op_impl/aicpu/median.py +1 -0
- mindspore/ops/_op_impl/aicpu/multinomial.py +9 -9
- mindspore/ops/_op_impl/aicpu/not_equal.py +0 -5
- mindspore/ops/_op_impl/aicpu/pad_v3.py +3 -1
- mindspore/ops/_op_impl/aicpu/pad_v3_grad.py +2 -0
- mindspore/ops/_op_impl/aicpu/parameterized_truncated_normal.py +15 -7
- mindspore/ops/_op_impl/aicpu/random_categorical.py +39 -19
- mindspore/ops/_op_impl/aicpu/random_choice_with_mask.py +5 -2
- mindspore/ops/_op_impl/aicpu/random_poisson.py +103 -52
- mindspore/ops/_op_impl/aicpu/random_shuffle.py +17 -15
- mindspore/ops/_op_impl/aicpu/resize_bilinear_grad.py +0 -1
- mindspore/ops/_op_impl/aicpu/resize_nearest_neighbor_v2.py +0 -6
- mindspore/ops/_op_impl/aicpu/resize_nearest_neighbor_v2_grad.py +0 -7
- mindspore/ops/_op_impl/aicpu/scatter_nd.py +2 -0
- mindspore/ops/_op_impl/aicpu/sequence_concat.py +40 -0
- mindspore/ops/_op_impl/aicpu/sequence_stack.py +40 -0
- mindspore/ops/_op_impl/aicpu/{sparseaddmm.py → sparse_addmm.py} +2 -2
- mindspore/ops/_op_impl/aicpu/{sparsesparsemaximum.py → sparse_sparse_maximum.py} +4 -4
- mindspore/ops/_op_impl/aicpu/standard_laplace.py +5 -4
- mindspore/ops/_op_impl/aicpu/standard_normal.py +5 -4
- mindspore/ops/_op_impl/aicpu/truncated_normal.py +9 -7
- mindspore/ops/_op_impl/aicpu/uniform.py +5 -3
- mindspore/ops/_op_impl/aicpu/uniform_candidate_sampler.py +8 -4
- mindspore/ops/_op_impl/aicpu/uniform_int.py +5 -5
- mindspore/ops/_op_impl/aicpu/uniform_real.py +4 -4
- mindspore/ops/_op_impl/aicpu/upsample_nearest_3d.py +14 -6
- mindspore/ops/_op_impl/aicpu/upsample_nearest_3d_grad.py +22 -8
- mindspore/ops/_op_impl/aicpu/upsample_trilinear_3d.py +11 -6
- mindspore/ops/_op_impl/aicpu/upsample_trilinear_3d_grad.py +21 -10
- mindspore/ops/_op_impl/tbe/__init__.py +6 -4
- mindspore/ops/_op_impl/tbe/atomic_addr_clean.py +1 -1
- mindspore/ops/_op_impl/tbe/avg_pool.py +2 -2
- mindspore/ops/_op_impl/tbe/avg_pool_3d.py +3 -3
- mindspore/ops/_op_impl/tbe/avg_pool_3d_grad.py +4 -4
- mindspore/ops/_op_impl/tbe/avg_pool_ds.py +2 -2
- mindspore/ops/_op_impl/tbe/avg_pool_grad.py +3 -3
- mindspore/ops/_op_impl/tbe/avg_pool_grad_vm.py +3 -3
- mindspore/ops/_op_impl/tbe/batch_to_space.py +1 -1
- mindspore/ops/_op_impl/tbe/batch_to_space_nd.py +2 -2
- mindspore/ops/_op_impl/tbe/bn_infer.py +2 -2
- mindspore/ops/_op_impl/tbe/bn_infer_ds.py +3 -2
- mindspore/ops/_op_impl/tbe/broadcast_to.py +1 -1
- mindspore/ops/_op_impl/tbe/depthwise_conv2d.py +3 -3
- mindspore/ops/_op_impl/tbe/expand_dims.py +1 -1
- mindspore/ops/_op_impl/tbe/gather_v2.py +56 -0
- mindspore/ops/_op_impl/tbe/im2col.py +4 -4
- mindspore/ops/_op_impl/tbe/inplace_index_add.py +7 -3
- mindspore/ops/_op_impl/tbe/mem_set.py +38 -0
- mindspore/ops/_op_impl/tbe/scatter_nd_add.py +3 -0
- mindspore/ops/_op_impl/tbe/scatter_nd_d.py +1 -1
- mindspore/ops/_op_impl/tbe/space_to_batch.py +1 -1
- mindspore/ops/_op_impl/tbe/space_to_batch_nd.py +2 -2
- mindspore/ops/_op_impl/tbe/trans_data_ds.py +2 -0
- mindspore/ops/_primitive_cache.py +1 -1
- mindspore/ops/_tracefunc.py +241 -0
- mindspore/ops/_utils/utils.py +10 -2
- mindspore/ops/_vmap/vmap_array_ops.py +5 -3
- mindspore/ops/_vmap/vmap_base.py +5 -4
- mindspore/ops/_vmap/vmap_convolution_ops.py +1 -1
- mindspore/ops/_vmap/vmap_grad_math_ops.py +6 -4
- mindspore/ops/_vmap/vmap_grad_nn_ops.py +11 -6
- mindspore/ops/_vmap/vmap_math_ops.py +5 -2
- mindspore/ops/_vmap/vmap_nn_ops.py +135 -11
- mindspore/ops/arg_dtype_cast.py +54 -0
- mindspore/ops/composite/__init__.py +7 -5
- mindspore/ops/composite/base.py +78 -34
- mindspore/ops/composite/math_ops.py +5 -695
- mindspore/ops/composite/multitype_ops/_compile_utils.py +403 -97
- mindspore/ops/composite/multitype_ops/_constexpr_utils.py +28 -22
- mindspore/ops/composite/multitype_ops/add_impl.py +69 -7
- 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 -0
- mindspore/ops/composite/multitype_ops/div_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/floordiv_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/getitem_impl.py +48 -10
- mindspore/ops/composite/multitype_ops/greater_equal_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/greater_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/left_shift_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/less_equal_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/less_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/logic_not_impl.py +2 -2
- mindspore/ops/composite/multitype_ops/mod_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/mul_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/negative_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/not_in_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/ones_like_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/pow_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/right_shift_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/setitem_impl.py +10 -7
- mindspore/ops/composite/multitype_ops/sub_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/uadd_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/zeros_like_impl.py +9 -0
- mindspore/ops/deprecated.py +304 -0
- mindspore/ops/function/__init__.py +41 -4
- mindspore/ops/function/array_func.py +1108 -467
- mindspore/ops/function/clip_func.py +94 -27
- mindspore/ops/function/debug_func.py +3 -1
- mindspore/ops/function/grad/grad_func.py +82 -73
- mindspore/ops/function/image_func.py +28 -12
- mindspore/ops/function/linalg_func.py +135 -39
- mindspore/ops/function/math_func.py +3779 -894
- mindspore/ops/function/nn_func.py +1584 -657
- mindspore/ops/function/parameter_func.py +13 -3
- mindspore/ops/function/random_func.py +247 -153
- mindspore/ops/function/sparse_func.py +14 -11
- mindspore/ops/function/sparse_unary_func.py +173 -47
- mindspore/ops/function/spectral_func.py +8 -4
- mindspore/ops/function/vmap_func.py +8 -7
- mindspore/ops/functional.py +47 -16
- mindspore/ops/op_info_register.py +346 -86
- mindspore/ops/operations/__init__.py +38 -22
- mindspore/ops/operations/_grad_ops.py +145 -149
- mindspore/ops/operations/_inner_ops.py +298 -56
- mindspore/ops/operations/_ms_kernel.py +3 -3
- mindspore/ops/operations/_quant_ops.py +24 -28
- mindspore/ops/operations/_rl_inner_ops.py +9 -7
- mindspore/ops/operations/_scalar_ops.py +115 -0
- mindspore/ops/operations/_sequence_ops.py +148 -10
- mindspore/ops/operations/_tensor_array.py +1 -1
- mindspore/ops/operations/_thor_ops.py +2 -2
- mindspore/ops/operations/array_ops.py +1239 -561
- mindspore/ops/operations/comm_ops.py +166 -90
- mindspore/ops/operations/control_ops.py +3 -3
- mindspore/ops/operations/custom_ops.py +124 -102
- mindspore/ops/operations/debug_ops.py +24 -11
- mindspore/ops/operations/image_ops.py +86 -71
- mindspore/ops/operations/inner_ops.py +18 -13
- mindspore/ops/operations/linalg_ops.py +30 -11
- mindspore/ops/operations/math_ops.py +1730 -435
- mindspore/ops/operations/nn_ops.py +1953 -943
- mindspore/ops/operations/other_ops.py +65 -43
- mindspore/ops/operations/random_ops.py +258 -98
- mindspore/ops/operations/rl_ops.py +4 -36
- mindspore/ops/operations/sparse_ops.py +38 -33
- mindspore/ops/operations/spectral_ops.py +8 -4
- mindspore/ops/primitive.py +66 -44
- mindspore/ops/signature.py +5 -5
- mindspore/parallel/_auto_parallel_context.py +80 -19
- mindspore/parallel/_cost_model_context.py +42 -0
- mindspore/parallel/_offload_context.py +162 -72
- mindspore/parallel/_parallel_serialization.py +2 -2
- mindspore/parallel/_ps_context.py +16 -4
- mindspore/parallel/_recovery_context.py +2 -1
- mindspore/parallel/_tensor.py +15 -13
- mindspore/parallel/_transformer/layers.py +8 -6
- mindspore/parallel/_transformer/loss.py +1 -0
- mindspore/parallel/_transformer/moe.py +7 -7
- mindspore/parallel/_transformer/op_parallel_config.py +12 -1
- mindspore/parallel/_transformer/transformer.py +34 -14
- mindspore/parallel/_utils.py +36 -14
- mindspore/parallel/algo_parameter_config.py +114 -20
- mindspore/parallel/checkpoint_transform.py +16 -18
- mindspore/parallel/shard.py +16 -13
- mindspore/profiler/__init__.py +1 -1
- mindspore/profiler/common/struct_type.py +3 -3
- mindspore/profiler/common/util.py +3 -2
- mindspore/profiler/envprofiling.py +11 -4
- mindspore/profiler/parser/aicpu_data_parser.py +5 -3
- mindspore/profiler/parser/ascend_flops_generator.py +94 -0
- mindspore/profiler/parser/ascend_fpbp_generator.py +76 -0
- mindspore/profiler/parser/ascend_hccl_generator.py +288 -0
- mindspore/profiler/parser/ascend_msprof_exporter.py +213 -0
- mindspore/profiler/parser/ascend_msprof_generator.py +199 -0
- mindspore/profiler/parser/ascend_op_generator.py +276 -0
- mindspore/profiler/parser/ascend_steptrace_generator.py +94 -0
- mindspore/profiler/parser/ascend_timeline_generator.py +110 -54
- mindspore/profiler/parser/base_timeline_generator.py +11 -7
- mindspore/profiler/parser/cpu_gpu_timeline_generator.py +45 -46
- mindspore/profiler/parser/flops_parser.py +15 -11
- mindspore/profiler/parser/framework_parser.py +92 -73
- mindspore/profiler/parser/hccl_parser.py +16 -12
- mindspore/profiler/parser/integrator.py +22 -11
- mindspore/profiler/parser/memory_usage_parser.py +36 -11
- mindspore/profiler/parser/minddata_analyzer.py +12 -14
- mindspore/profiler/parser/minddata_pipeline_parser.py +1 -1
- mindspore/profiler/parser/msadvisor_parser.py +8 -4
- mindspore/profiler/parser/op_intermediate_parser.py +5 -2
- mindspore/profiler/parser/optime_parser.py +1 -1
- mindspore/profiler/parser/profiler_info.py +4 -5
- mindspore/profiler/parser/step_trace_parser.py +11 -14
- mindspore/profiler/profiling.py +678 -377
- mindspore/rewrite/api/node.py +211 -54
- mindspore/rewrite/api/node_type.py +5 -0
- mindspore/rewrite/api/pattern_engine.py +22 -23
- mindspore/rewrite/api/scoped_value.py +20 -17
- mindspore/rewrite/api/symbol_tree.py +252 -106
- mindspore/rewrite/api/tree_node_helper.py +3 -0
- mindspore/rewrite/ast_helpers/__init__.py +2 -1
- mindspore/rewrite/ast_helpers/ast_finder.py +129 -0
- mindspore/rewrite/ast_helpers/ast_modifier.py +116 -104
- mindspore/rewrite/ast_transformers/flatten_recursive_stmt.py +97 -46
- mindspore/rewrite/common/rewrite_elog.py +5 -1
- mindspore/rewrite/namer.py +51 -51
- mindspore/rewrite/namespace.py +14 -5
- mindspore/{ops/bprop_mindir → rewrite/node}/__init__.py +9 -4
- mindspore/rewrite/node/call_function.py +79 -0
- mindspore/rewrite/node/cell_container.py +135 -0
- mindspore/rewrite/node/control_flow.py +88 -0
- mindspore/rewrite/{node.py → node/node.py} +313 -247
- mindspore/rewrite/node/node_manager.py +254 -0
- mindspore/rewrite/node/node_topological_manager.py +243 -0
- mindspore/rewrite/parsers/arguments_parser.py +22 -21
- mindspore/rewrite/parsers/assign_parser.py +225 -239
- mindspore/rewrite/parsers/attribute_parser.py +9 -7
- mindspore/rewrite/parsers/class_def_parser.py +179 -218
- mindspore/rewrite/parsers/constant_parser.py +9 -6
- mindspore/rewrite/parsers/container_parser.py +9 -7
- mindspore/rewrite/parsers/for_parser.py +36 -15
- mindspore/rewrite/parsers/function_def_parser.py +23 -20
- mindspore/rewrite/parsers/if_parser.py +28 -24
- mindspore/rewrite/parsers/module_parser.py +202 -25
- mindspore/rewrite/{parser.py → parsers/parser.py} +4 -2
- mindspore/rewrite/{parser_register.py → parsers/parser_register.py} +1 -1
- mindspore/rewrite/parsers/return_parser.py +6 -6
- mindspore/rewrite/sparsify/sparse_transformer.py +12 -3
- mindspore/rewrite/sparsify/sparsify.py +4 -1
- mindspore/rewrite/sparsify/utils.py +11 -5
- mindspore/rewrite/symbol_tree.py +577 -732
- mindspore/rewrite/symbol_tree_builder.py +9 -175
- mindspore/rewrite/symbol_tree_dumper.py +2 -2
- mindspore/run_check/_check_version.py +46 -39
- mindspore/run_check/run_check.py +3 -2
- mindspore/{scipy/sparse → safeguard}/__init__.py +4 -5
- mindspore/safeguard/rewrite_obfuscation.py +517 -0
- mindspore/scipy/__init__.py +1 -1
- mindspore/scipy/linalg.py +67 -61
- mindspore/scipy/ops.py +5 -41
- mindspore/scipy/ops_grad.py +3 -2
- mindspore/scipy/ops_wrapper.py +5 -5
- mindspore/scipy/optimize/line_search.py +8 -8
- mindspore/scipy/optimize/linear_sum_assignment.py +4 -4
- mindspore/scipy/optimize/minimize.py +16 -12
- mindspore/scipy/utils.py +1 -52
- mindspore/scipy/utils_const.py +4 -4
- mindspore/train/__init__.py +4 -4
- mindspore/train/_utils.py +13 -5
- mindspore/train/amp.py +410 -148
- mindspore/train/anf_ir_pb2.py +16 -4
- mindspore/train/callback/_backup_and_restore.py +8 -11
- mindspore/train/callback/_callback.py +80 -3
- mindspore/train/callback/_checkpoint.py +82 -51
- mindspore/train/callback/_early_stop.py +12 -15
- mindspore/train/callback/_history.py +1 -1
- mindspore/train/callback/_lambda_callback.py +13 -13
- mindspore/train/callback/_landscape.py +21 -17
- mindspore/train/callback/_loss_monitor.py +9 -10
- mindspore/train/callback/_on_request_exit.py +16 -33
- mindspore/train/callback/_reduce_lr_on_plateau.py +21 -24
- mindspore/train/callback/_summary_collector.py +44 -30
- mindspore/train/callback/_time_monitor.py +62 -12
- mindspore/train/data_sink.py +10 -16
- mindspore/train/dataset_helper.py +154 -86
- mindspore/train/loss_scale_manager.py +14 -9
- mindspore/train/metrics/__init__.py +10 -2
- mindspore/train/metrics/accuracy.py +1 -1
- mindspore/train/metrics/auc.py +1 -1
- mindspore/train/metrics/bleu_score.py +2 -2
- mindspore/train/metrics/confusion_matrix.py +14 -14
- mindspore/train/metrics/cosine_similarity.py +3 -3
- mindspore/train/metrics/dice.py +1 -1
- mindspore/train/metrics/fbeta.py +1 -1
- mindspore/train/metrics/hausdorff_distance.py +8 -6
- mindspore/train/metrics/mean_surface_distance.py +5 -4
- mindspore/train/metrics/metric.py +49 -17
- mindspore/train/metrics/occlusion_sensitivity.py +4 -4
- mindspore/train/metrics/perplexity.py +1 -1
- mindspore/train/metrics/precision.py +2 -2
- mindspore/train/metrics/recall.py +2 -3
- mindspore/train/metrics/roc.py +7 -7
- mindspore/train/metrics/root_mean_square_surface_distance.py +5 -4
- mindspore/train/metrics/topk.py +7 -4
- mindspore/train/mind_ir_pb2.py +193 -48
- mindspore/train/model.py +377 -133
- mindspore/train/serialization.py +697 -245
- mindspore/train/summary/_summary_adapter.py +5 -2
- mindspore/train/summary/_writer_pool.py +4 -3
- mindspore/train/summary/summary_record.py +25 -23
- mindspore/train/train_thor/convert_utils.py +39 -23
- mindspore/train/train_thor/dataset_helper.py +4 -3
- mindspore/train/train_thor/model_thor.py +8 -8
- mindspore/version.py +1 -1
- {mindspore-2.0.0rc1.dist-info → mindspore-2.2.0.dist-info}/METADATA +7 -8
- {mindspore-2.0.0rc1.dist-info → mindspore-2.2.0.dist-info}/RECORD +633 -804
- {mindspore-2.0.0rc1.dist-info → mindspore-2.2.0.dist-info}/entry_points.txt +0 -1
- mindspore/_akg/akg/tvm/contrib/debugger/__init__.py +0 -16
- mindspore/_akg/akg/tvm/contrib/debugger/debug_result.py +0 -274
- mindspore/_akg/akg/tvm/contrib/debugger/debug_runtime.py +0 -259
- mindspore/_akg/akg/tvm/contrib/peak.py +0 -341
- mindspore/_akg/akg/tvm/contrib/rpc.py +0 -25
- mindspore/_akg/akg/tvm/contrib/xcode.py +0 -257
- mindspore/_akg/akg/tvm/exec/__init__.py +0 -17
- mindspore/_akg/akg/tvm/exec/autotvm_log_editor.py +0 -60
- mindspore/_akg/akg/tvm/exec/measure_peak.py +0 -48
- mindspore/_akg/akg/tvm/exec/query_rpc_tracker.py +0 -48
- mindspore/_akg/akg/tvm/exec/rpc_proxy.py +0 -98
- mindspore/_akg/akg/tvm/exec/rpc_server.py +0 -88
- mindspore/_akg/akg/tvm/exec/rpc_tracker.py +0 -62
- mindspore/_akg/akg/tvm/rpc/__init__.py +0 -29
- mindspore/_akg/akg/tvm/rpc/base.py +0 -182
- mindspore/_akg/akg/tvm/rpc/client.py +0 -436
- mindspore/_akg/akg/tvm/rpc/proxy.py +0 -595
- mindspore/_akg/akg/tvm/rpc/server.py +0 -413
- mindspore/_akg/akg/tvm/rpc/tornado_util.py +0 -121
- mindspore/_akg/akg/tvm/rpc/tracker.py +0 -431
- mindspore/_extends/graph_kernel/expander.py +0 -80
- mindspore/_extends/graph_kernel/expanders/__init__.py +0 -57
- mindspore/_extends/graph_kernel/expanders/_utils.py +0 -269
- mindspore/_extends/graph_kernel/expanders/addn.py +0 -33
- mindspore/_extends/graph_kernel/expanders/batchnorm.py +0 -152
- mindspore/_extends/graph_kernel/expanders/batchnorm_grad.py +0 -105
- mindspore/_extends/graph_kernel/expanders/bias_add_grad.py +0 -49
- mindspore/_extends/graph_kernel/expanders/clip_by_norm_no_div_sum.py +0 -33
- mindspore/_extends/graph_kernel/expanders/complex/abs.py +0 -30
- mindspore/_extends/graph_kernel/expanders/complex/add.py +0 -44
- mindspore/_extends/graph_kernel/expanders/complex/div.py +0 -62
- mindspore/_extends/graph_kernel/expanders/complex/mul.py +0 -52
- mindspore/_extends/graph_kernel/expanders/complex/real_div.py +0 -62
- mindspore/_extends/graph_kernel/expanders/complex/sub.py +0 -45
- mindspore/_extends/graph_kernel/expanders/conv2d.py +0 -200
- mindspore/_extends/graph_kernel/expanders/dropout_grad.py +0 -30
- mindspore/_extends/graph_kernel/expanders/equal_count.py +0 -50
- mindspore/_extends/graph_kernel/expanders/erfc.py +0 -35
- mindspore/_extends/graph_kernel/expanders/expand_dims.py +0 -50
- mindspore/_extends/graph_kernel/expanders/fused_adam.py +0 -44
- mindspore/_extends/graph_kernel/expanders/fused_adam_weight_decay.py +0 -47
- mindspore/_extends/graph_kernel/expanders/fused_mul_add.py +0 -28
- mindspore/_extends/graph_kernel/expanders/gather.py +0 -43
- mindspore/_extends/graph_kernel/expanders/gelu_grad.py +0 -70
- mindspore/_extends/graph_kernel/expanders/gkdropout.py +0 -40
- mindspore/_extends/graph_kernel/expanders/identity.py +0 -25
- mindspore/_extends/graph_kernel/expanders/layernorm.py +0 -93
- mindspore/_extends/graph_kernel/expanders/layernorm_grad.py +0 -113
- mindspore/_extends/graph_kernel/expanders/logsoftmax.py +0 -46
- mindspore/_extends/graph_kernel/expanders/logsoftmax_grad.py +0 -36
- mindspore/_extends/graph_kernel/expanders/matmul.py +0 -80
- mindspore/_extends/graph_kernel/expanders/maximum_grad.py +0 -59
- mindspore/_extends/graph_kernel/expanders/minimum_grad.py +0 -80
- mindspore/_extends/graph_kernel/expanders/oneslike.py +0 -26
- mindspore/_extends/graph_kernel/expanders/reduce_mean.py +0 -43
- mindspore/_extends/graph_kernel/expanders/relu_grad.py +0 -32
- mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits.py +0 -41
- mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits_grad.py +0 -35
- mindspore/_extends/graph_kernel/expanders/sigmoid_grad.py +0 -31
- mindspore/_extends/graph_kernel/expanders/slice.py +0 -35
- mindspore/_extends/graph_kernel/expanders/softmax_cross_entropy_with_logits.py +0 -42
- mindspore/_extends/graph_kernel/expanders/softmax_grad_ext.py +0 -41
- mindspore/_extends/graph_kernel/expanders/softsign.py +0 -28
- mindspore/_extends/graph_kernel/expanders/sqrt_grad.py +0 -29
- mindspore/_extends/graph_kernel/expanders/square_sum_all.py +0 -44
- mindspore/_extends/graph_kernel/expanders/square_sum_v1.py +0 -37
- mindspore/_extends/graph_kernel/expanders/squared_difference.py +0 -43
- mindspore/_extends/graph_kernel/expanders/tanh_grad.py +0 -31
- mindspore/_extends/graph_kernel/expanders/tile.py +0 -54
- mindspore/_extends/graph_kernel/model/op_infer.py +0 -506
- mindspore/_extends/parse/jit_fallback_modules.py +0 -51
- mindspore/dataset/datapreprocess/preprocess_imagenet_validate_dataset.py +0 -54
- mindspore/dataset/engine/graphdata.py +0 -1586
- mindspore/include/api/net.h +0 -142
- mindspore/ops/_grad/grad_array_ops.py +0 -1347
- mindspore/ops/_grad/grad_clip_ops.py +0 -84
- mindspore/ops/_grad/grad_debug_ops.py +0 -68
- mindspore/ops/_grad/grad_inner_ops.py +0 -235
- mindspore/ops/_grad/grad_math_ops.py +0 -1684
- mindspore/ops/_grad/grad_nn_ops.py +0 -1529
- mindspore/ops/_grad/grad_other_ops.py +0 -89
- mindspore/ops/_grad/grad_sequence_ops.py +0 -296
- mindspore/ops/_grad/grad_sparse.py +0 -323
- mindspore/ops/_grad_experimental/grad_image_ops.py +0 -249
- mindspore/ops/_grad_experimental/grad_linalg_ops.py +0 -195
- mindspore/ops/_grad_experimental/grad_scalar_ops.py +0 -112
- mindspore/ops/bprop_mindir/AdaptiveAvgPool2D_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/AdaptiveMaxPool2D_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/ApproximateEqual_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/Argmax_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/Argmin_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/AssignSub_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/Assign_bprop.mindir +0 -17
- mindspore/ops/bprop_mindir/AvgPool3D_bprop.mindir +0 -150
- mindspore/ops/bprop_mindir/AvgPool_bprop.mindir +0 -66
- mindspore/ops/bprop_mindir/BCEWithLogitsLoss_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/BNTrainingReduce_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/BatchNormGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/BatchToSpaceND_bprop.mindir +0 -28
- mindspore/ops/bprop_mindir/BiasAddGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/BinaryCrossEntropy_bprop.mindir +0 -33
- mindspore/ops/bprop_mindir/BroadcastTo_bprop.mindir +0 -306
- mindspore/ops/bprop_mindir/Broadcast_bprop.mindir +0 -13
- mindspore/ops/bprop_mindir/CTCLoss_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Concat_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Conv2DBackpropFilter_bprop.mindir +0 -240
- mindspore/ops/bprop_mindir/Conv2DBackpropInput_bprop.mindir +0 -247
- mindspore/ops/bprop_mindir/Conv2DTranspose_bprop.mindir +0 -247
- mindspore/ops/bprop_mindir/Conv3DTranspose_bprop.mindir +0 -315
- mindspore/ops/bprop_mindir/Conv3D_bprop.mindir +0 -278
- mindspore/ops/bprop_mindir/DType_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/DeformableOffsets_bprop.mindir +0 -58
- mindspore/ops/bprop_mindir/Depend_bprop.mindir +0 -13
- mindspore/ops/bprop_mindir/DepthToSpace_bprop.mindir +0 -23
- mindspore/ops/bprop_mindir/DepthwiseConv2dNative_bprop.mindir +0 -138
- mindspore/ops/bprop_mindir/DiagPart_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/Dropout2D_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Dropout3D_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/DropoutDoMask_bprop.mindir +0 -25
- mindspore/ops/bprop_mindir/DropoutGenMask_bprop.mindir +0 -18
- mindspore/ops/bprop_mindir/DropoutGrad_bprop.mindir +0 -27
- mindspore/ops/bprop_mindir/Dropout_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/DynamicGRUV2_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/DynamicRNN_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/DynamicShape_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/Elu_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/EmbeddingLookup_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Equal_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/ExpandDims_bprop.mindir +0 -58
- mindspore/ops/bprop_mindir/FastGeLU_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/Flatten_bprop.mindir +0 -54
- mindspore/ops/bprop_mindir/FloorDiv_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/GatherD_bprop.mindir +0 -26
- mindspore/ops/bprop_mindir/GatherNd_bprop.mindir +0 -57
- mindspore/ops/bprop_mindir/Gather_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/GreaterEqual_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/Greater_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/HSigmoid_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/HSwish_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/IOU_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/InstanceNorm_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/IsFinite_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/IsInf_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/IsNan_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/KLDivLoss_bprop.mindir +0 -126
- mindspore/ops/bprop_mindir/L2Loss_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/L2Normalize_bprop.mindir +0 -30
- mindspore/ops/bprop_mindir/LRN_bprop.mindir +0 -43
- mindspore/ops/bprop_mindir/LayerNormGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/LessEqual_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/Less_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/LinSpace_bprop.mindir +0 -23
- mindspore/ops/bprop_mindir/Load_bprop.mindir +0 -13
- mindspore/ops/bprop_mindir/LogSoftmax_bprop.mindir +0 -23
- mindspore/ops/bprop_mindir/LogicalAnd_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/LogicalNot_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/MaskedSelect_bprop.mindir +0 -21
- mindspore/ops/bprop_mindir/MaxPool3DGradGrad_bprop.mindir +0 -74
- mindspore/ops/bprop_mindir/MaxPool3DGrad_bprop.mindir +0 -74
- mindspore/ops/bprop_mindir/MaxPool3D_bprop.mindir +0 -75
- mindspore/ops/bprop_mindir/MaxPoolGradGrad_bprop.mindir +0 -65
- mindspore/ops/bprop_mindir/MaxPoolWithArgmax_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Maximum_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Minimum_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/MirrorPad_bprop.mindir +0 -27
- mindspore/ops/bprop_mindir/Mish_bprop.mindir +0 -35
- mindspore/ops/bprop_mindir/MulNoNan_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/NLLLoss_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/NonZero_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/NotEqual_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/OneHot_bprop.mindir +0 -26
- mindspore/ops/bprop_mindir/OnesLike_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/PReLU_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Pad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Padding_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/RNNTLoss_bprop.mindir +0 -29
- mindspore/ops/bprop_mindir/ROIAlign_bprop.mindir +0 -82
- mindspore/ops/bprop_mindir/Range_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/Rank_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/ReLU6_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/ReLUV2_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/ReduceAll_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/ReduceAny_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/ReluGrad_bprop.mindir +0 -20
- mindspore/ops/bprop_mindir/Reshape_bprop.mindir +0 -60
- mindspore/ops/bprop_mindir/ResizeBilinear_bprop.mindir +0 -29
- mindspore/ops/bprop_mindir/ResizeNearestNeighbor_bprop.mindir +0 -89
- mindspore/ops/bprop_mindir/ReverseSequence_bprop.mindir +0 -52
- mindspore/ops/bprop_mindir/ReverseV2_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/Round_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/ScatterMax_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/ScatterMin_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/ScatterNdUpdate_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/ScatterNd_bprop.mindir +0 -24
- mindspore/ops/bprop_mindir/ScatterNonAliasingAdd_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/ScatterUpdate_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/SeLU_bprop.mindir +0 -21
- mindspore/ops/bprop_mindir/Select_bprop.mindir +0 -31
- mindspore/ops/bprop_mindir/Shape_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/SigmoidCrossEntropyWithLogits_bprop.mindir +0 -21
- mindspore/ops/bprop_mindir/SigmoidGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Sigmoid_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/Sign_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/Slice_bprop.mindir +0 -26
- mindspore/ops/bprop_mindir/SmoothL1Loss_bprop.mindir +0 -36
- mindspore/ops/bprop_mindir/SoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Softplus_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/Softsign_bprop.mindir +0 -33
- mindspore/ops/bprop_mindir/Sort_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/SpaceToBatchND_bprop.mindir +0 -28
- mindspore/ops/bprop_mindir/SpaceToDepth_bprop.mindir +0 -23
- mindspore/ops/bprop_mindir/SparseGatherV2_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/SparseSoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Split_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/Squeeze_bprop.mindir +0 -54
- mindspore/ops/bprop_mindir/StridedSliceGrad_bprop.mindir +0 -95
- mindspore/ops/bprop_mindir/StridedSlice_bprop.mindir +0 -98
- mindspore/ops/bprop_mindir/Switch_bprop.mindir +0 -29
- mindspore/ops/bprop_mindir/TanhGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Tanh_bprop.mindir +0 -66
- mindspore/ops/bprop_mindir/TensorScatterAdd_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/TensorScatterUpdate_bprop.mindir +0 -29
- mindspore/ops/bprop_mindir/TensorShape_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/Tile_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/TopK_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/TransShape_bprop.mindir +0 -23
- mindspore/ops/bprop_mindir/TruncateDiv_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/TupleGetItem_bprop.mindir +0 -20
- mindspore/ops/bprop_mindir/Unique_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/Unstack_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/UpsampleNearest3D_bprop.mindir +0 -32
- mindspore/ops/bprop_mindir/UpsampleTrilinear3D_bprop.mindir +0 -38
- mindspore/ops/bprop_mindir/ZerosLike_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/generate_mindir.py +0 -114
- mindspore/rewrite/node_visitor.py +0 -44
- mindspore/rewrite/topological_manager.py +0 -203
- mindspore/scipy/sparse/linalg.py +0 -192
- {mindspore-2.0.0rc1.dist-info → mindspore-2.2.0.dist-info}/WHEEL +0 -0
- {mindspore-2.0.0rc1.dist-info → mindspore-2.2.0.dist-info}/top_level.txt +0 -0
mindspore/scipy/linalg.py
CHANGED
|
@@ -14,7 +14,6 @@
|
|
|
14
14
|
# ============================================================================
|
|
15
15
|
"""Linear algebra submodule"""
|
|
16
16
|
from __future__ import absolute_import
|
|
17
|
-
from .ops import Eigh
|
|
18
17
|
from .ops import LU
|
|
19
18
|
from .ops import SolveTriangular
|
|
20
19
|
from .utils import _nd_transpose, _value_check, _type_check, _dtype_check, _mstype_check, _square_check, _solve_check
|
|
@@ -23,6 +22,7 @@ from .. import numpy as mnp
|
|
|
23
22
|
from .. import ops
|
|
24
23
|
from ..common import dtype as mstype
|
|
25
24
|
from ..ops.operations.math_ops import Cholesky
|
|
25
|
+
from ..ops.operations.linalg_ops import Eigh
|
|
26
26
|
from ..ops import functional as F
|
|
27
27
|
from ..ops import operations as P
|
|
28
28
|
|
|
@@ -60,7 +60,7 @@ def block_diag(*arrs):
|
|
|
60
60
|
|
|
61
61
|
Examples:
|
|
62
62
|
>>> import numpy as onp
|
|
63
|
-
>>> from mindspore
|
|
63
|
+
>>> from mindspore import Tensor
|
|
64
64
|
>>> from mindspore.scipy.linalg import block_diag
|
|
65
65
|
>>> A = Tensor(onp.array([[1, 0], [0, 1]]))
|
|
66
66
|
>>> B = Tensor(onp.array([[3, 4, 5], [6, 7, 8]]))
|
|
@@ -107,10 +107,10 @@ def inv(a, overwrite_a=False, check_finite=True):
|
|
|
107
107
|
|
|
108
108
|
Args:
|
|
109
109
|
a (Tensor): Square matrix to be inverted.
|
|
110
|
-
overwrite_a (bool, optional): Discard data in `a` (may improve performance). Default: False.
|
|
110
|
+
overwrite_a (bool, optional): Discard data in `a` (may improve performance). Default: ``False`` .
|
|
111
111
|
check_finite (bool, optional): Whether to check that the input matrix contains only finite numbers.
|
|
112
112
|
Disabling may give a performance gain, but may result in problems (crashes, non-termination)
|
|
113
|
-
if the inputs do contain infinities or NaNs. Default: True.
|
|
113
|
+
if the inputs do contain infinities or NaNs. Default: ``True`` .
|
|
114
114
|
|
|
115
115
|
Returns:
|
|
116
116
|
Tensor, inverse of the matrix `a`.
|
|
@@ -124,7 +124,7 @@ def inv(a, overwrite_a=False, check_finite=True):
|
|
|
124
124
|
|
|
125
125
|
Examples:
|
|
126
126
|
>>> import numpy as onp
|
|
127
|
-
>>> from mindspore
|
|
127
|
+
>>> from mindspore import Tensor
|
|
128
128
|
>>> import mindspore.numpy as mnp
|
|
129
129
|
>>> from mindspore.scipy.linalg import inv
|
|
130
130
|
>>> a = Tensor(onp.array([[1., 2.], [3., 4.]]))
|
|
@@ -138,7 +138,7 @@ def inv(a, overwrite_a=False, check_finite=True):
|
|
|
138
138
|
func_name = "inv"
|
|
139
139
|
_type_check(func_name, overwrite_a, bool, 'overwrite_a')
|
|
140
140
|
_type_check(func_name, check_finite, bool, 'check_finite')
|
|
141
|
-
_mstype_check(func_name, a, mstype.
|
|
141
|
+
_mstype_check(func_name, a, mstype.TensorType)
|
|
142
142
|
_square_check(func_name, a)
|
|
143
143
|
_dtype_check(func_name, a, [mstype.int32, mstype.int64, mstype.float32, mstype.float64])
|
|
144
144
|
|
|
@@ -150,11 +150,11 @@ def inv(a, overwrite_a=False, check_finite=True):
|
|
|
150
150
|
|
|
151
151
|
def cho_factor(a, lower=False, overwrite_a=False, check_finite=True):
|
|
152
152
|
"""
|
|
153
|
-
Compute the cholesky decomposition of a matrix, to use in cho_solve
|
|
153
|
+
Compute the cholesky decomposition of a matrix, to use in :func:`mindspore.scipy.linalg.cho_solve`.
|
|
154
154
|
|
|
155
155
|
Returns a matrix containing the cholesky decomposition,
|
|
156
156
|
:math:`a = l l*` or :math:`a = u* u` of a Hermitian positive-definite matrix `a`.
|
|
157
|
-
The return value can be directly used as the first parameter to
|
|
157
|
+
The return value can be directly used as the first parameter to :func:`mindspore.scipy.linalg.cho_solve`.
|
|
158
158
|
|
|
159
159
|
Note:
|
|
160
160
|
- `cho_factor` is not supported on Windows platform yet.
|
|
@@ -168,12 +168,13 @@ def cho_factor(a, lower=False, overwrite_a=False, check_finite=True):
|
|
|
168
168
|
|
|
169
169
|
Args:
|
|
170
170
|
a (Tensor): square Matrix of (M, M) to be decomposed.
|
|
171
|
-
lower (bool, optional): Whether to compute the upper or lower triangular cholesky factorization.
|
|
172
|
-
|
|
171
|
+
lower (bool, optional): Whether to compute the upper or lower triangular cholesky factorization.
|
|
172
|
+
Default: ``False`` .
|
|
173
|
+
overwrite_a(bool, optional): Whether to overwrite data in a (may improve performance). Default: ``False`` .
|
|
173
174
|
in mindspore, this arg does not work right now.
|
|
174
175
|
check_finite(bool, optional): Whether to check that the input matrix contains only finite numbers.
|
|
175
176
|
Disabling may give a performance gain, but may result in problems
|
|
176
|
-
(crashes, non-termination) if the inputs do contain infinities or NaNs. Default: True.
|
|
177
|
+
(crashes, non-termination) if the inputs do contain infinities or NaNs. Default: ``True`` .
|
|
177
178
|
in mindspore, this arg does not work right now.
|
|
178
179
|
|
|
179
180
|
Returns:
|
|
@@ -189,7 +190,7 @@ def cho_factor(a, lower=False, overwrite_a=False, check_finite=True):
|
|
|
189
190
|
|
|
190
191
|
Examples:
|
|
191
192
|
>>> import numpy as onp
|
|
192
|
-
>>> from mindspore
|
|
193
|
+
>>> from mindspore import Tensor
|
|
193
194
|
>>> from mindspore.scipy.linalg import cho_factor
|
|
194
195
|
>>> a = Tensor(onp.array([[9, 3, 1, 5], [3, 7, 5, 1], [1, 5, 9, 2], [5, 1, 2, 6]]).astype(onp.float32))
|
|
195
196
|
>>> c, low = cho_factor(a)
|
|
@@ -203,7 +204,7 @@ def cho_factor(a, lower=False, overwrite_a=False, check_finite=True):
|
|
|
203
204
|
_type_check(func_name, overwrite_a, bool, 'overwrite_a')
|
|
204
205
|
_type_check(func_name, check_finite, bool, 'check_finite')
|
|
205
206
|
_type_check(func_name, lower, bool, 'lower')
|
|
206
|
-
_mstype_check(func_name, a, mstype.
|
|
207
|
+
_mstype_check(func_name, a, mstype.TensorType)
|
|
207
208
|
_dtype_check(func_name, a, [mstype.int32, mstype.int64, mstype.float32, mstype.float64])
|
|
208
209
|
_square_check(func_name, a)
|
|
209
210
|
|
|
@@ -231,12 +232,12 @@ def cholesky(a, lower=False, overwrite_a=False, check_finite=True):
|
|
|
231
232
|
Args:
|
|
232
233
|
a (Tensor): square Matrix of (M, M) to be decomposed.
|
|
233
234
|
lower (bool, optional): Whether to compute the upper- or lower-triangular cholesky
|
|
234
|
-
factorization. Default: False.
|
|
235
|
-
overwrite_a (bool, optional): Whether to overwrite data in `a` (may improve performance). Default: False.
|
|
235
|
+
factorization. Default: ``False`` .
|
|
236
|
+
overwrite_a (bool, optional): Whether to overwrite data in `a` (may improve performance). Default: ``False`` .
|
|
236
237
|
in mindspore, this arg does not work right now.
|
|
237
238
|
check_finite (bool, optional): Whether to check that the input matrix contains only finite numbers.
|
|
238
239
|
Disabling may give a performance gain, but may result in problems
|
|
239
|
-
(crashes, non-termination) if the inputs do contain infinities or NaNs. Default: True.
|
|
240
|
+
(crashes, non-termination) if the inputs do contain infinities or NaNs. Default: ``True`` .
|
|
240
241
|
in mindspore, this arg does not work right now.
|
|
241
242
|
|
|
242
243
|
Returns:
|
|
@@ -250,7 +251,7 @@ def cholesky(a, lower=False, overwrite_a=False, check_finite=True):
|
|
|
250
251
|
|
|
251
252
|
Examples:
|
|
252
253
|
>>> import numpy as onp
|
|
253
|
-
>>> from mindspore
|
|
254
|
+
>>> from mindspore import Tensor
|
|
254
255
|
>>> from mindspore.scipy.linalg import cholesky
|
|
255
256
|
>>> a = Tensor(onp.array([[1, 2],[2, 5]]).astype(onp.float32))
|
|
256
257
|
>>> L = cholesky(a, lower=True)
|
|
@@ -262,7 +263,7 @@ def cholesky(a, lower=False, overwrite_a=False, check_finite=True):
|
|
|
262
263
|
_type_check(func_name, overwrite_a, bool, 'overwrite_a')
|
|
263
264
|
_type_check(func_name, check_finite, bool, 'check_finite')
|
|
264
265
|
_type_check(func_name, lower, bool, 'lower')
|
|
265
|
-
_mstype_check(func_name, a, mstype.
|
|
266
|
+
_mstype_check(func_name, a, mstype.TensorType)
|
|
266
267
|
_dtype_check(func_name, a, [mstype.int32, mstype.int64, mstype.float32, mstype.float64])
|
|
267
268
|
_square_check(func_name, a)
|
|
268
269
|
|
|
@@ -276,38 +277,40 @@ def cholesky(a, lower=False, overwrite_a=False, check_finite=True):
|
|
|
276
277
|
|
|
277
278
|
|
|
278
279
|
def cho_solve(c_and_lower, b, overwrite_b=False, check_finite=True):
|
|
279
|
-
"""
|
|
280
|
+
"""
|
|
281
|
+
Given the cholesky factorization of a, solve the linear equation
|
|
280
282
|
|
|
281
283
|
.. math::
|
|
282
284
|
a x = b
|
|
283
285
|
|
|
284
286
|
Note:
|
|
285
287
|
- `cho_solve` is not supported on Windows platform yet.
|
|
286
|
-
- Only `float32`, `float64`, `int32`, `int64`
|
|
288
|
+
- Only `float32`, `float64`, `int32`, `int64` support Tensor dtypes. If Tensor with dtype `int32` or
|
|
287
289
|
`int64` is passed, it will be cast to :class:`mstype.float64`.
|
|
288
290
|
|
|
289
291
|
Args:
|
|
290
|
-
c_and_lower ((Tensor, bool)): cholesky factorization of a
|
|
292
|
+
c_and_lower ((Tensor, bool)): cholesky factorization of :math:`a`,
|
|
293
|
+
as given by :func:`mindspore.scipy.linalg.cho_factor`.
|
|
291
294
|
b (Tensor): Right-hand side.
|
|
292
|
-
overwrite_b (bool, optional): Whether to overwrite data in b (may improve performance).
|
|
295
|
+
overwrite_b (bool, optional): Whether to overwrite data in :math:`b` (may improve performance).
|
|
296
|
+
Default: ``False``.
|
|
293
297
|
check_finite (bool, optional): Whether to check that the input matrices contain only finite numbers.
|
|
294
298
|
Disabling may give a performance gain, but may result in problems
|
|
295
|
-
(crashes, non-termination) if the inputs do contain infinities or NaNs. Default: True
|
|
299
|
+
(crashes, non-termination) if the inputs do contain infinities or NaNs. Default: ``True``.
|
|
296
300
|
|
|
297
301
|
Returns:
|
|
298
|
-
Tensor, the solution to the system a x = b
|
|
302
|
+
Tensor, the solution to the system a x = b.
|
|
299
303
|
|
|
300
304
|
Supported Platforms:
|
|
301
305
|
``GPU`` ``CPU``
|
|
302
306
|
|
|
303
307
|
Examples:
|
|
304
308
|
>>> import numpy as onp
|
|
305
|
-
>>>
|
|
306
|
-
>>>
|
|
307
|
-
>>>
|
|
308
|
-
>>>
|
|
309
|
-
>>> c, low
|
|
310
|
-
>>> x = cho_solve((c, low), b)
|
|
309
|
+
>>> import mindspore as ms
|
|
310
|
+
>>> a = ms.Tensor(onp.array([[9, 3, 1, 5], [3, 7, 5, 1], [1, 5, 9, 2], [5, 1, 2, 6]]).astype(onp.float32))
|
|
311
|
+
>>> b = ms.Tensor(onp.array([1, 1, 1, 1]).astype(onp.float32))
|
|
312
|
+
>>> c, low = ms.scipy.linalg.cho_factor(a)
|
|
313
|
+
>>> x = ms.scipy.linalg.cho_solve((c, low), b)
|
|
311
314
|
>>> print(x)
|
|
312
315
|
[-0.01749266 0.11953348 0.01166185 0.15743434]
|
|
313
316
|
"""
|
|
@@ -316,8 +319,8 @@ def cho_solve(c_and_lower, b, overwrite_b=False, check_finite=True):
|
|
|
316
319
|
_type_check(func_name, overwrite_b, bool, 'overwrite_b')
|
|
317
320
|
_type_check(func_name, check_finite, bool, 'check_finite')
|
|
318
321
|
_type_check(func_name, lower, bool, 'lower')
|
|
319
|
-
_mstype_check(func_name, c, mstype.
|
|
320
|
-
_mstype_check(func_name, b, mstype.
|
|
322
|
+
_mstype_check(func_name, c, mstype.TensorType, 'c')
|
|
323
|
+
_mstype_check(func_name, b, mstype.TensorType, 'b')
|
|
321
324
|
_dtype_check(func_name, c, [mstype.int32, mstype.int64, mstype.float32, mstype.float64], 'c')
|
|
322
325
|
_dtype_check(func_name, b, [mstype.int32, mstype.int64, mstype.float32, mstype.float64], 'b')
|
|
323
326
|
_solve_check(func_name, c, b, 'c', 'b')
|
|
@@ -355,17 +358,17 @@ def eigh(a, b=None, lower=True, eigvals_only=False, overwrite_a=False,
|
|
|
355
358
|
Note:
|
|
356
359
|
- `eigh` is not supported on Windows platform yet.
|
|
357
360
|
- Only `float32`, `float64`, `int32`, `int64` are supported Tensor dtypes. If Tensor with dtype `int32` or
|
|
358
|
-
`int64` is passed, it will be cast to
|
|
361
|
+
`int64` is passed, it will be cast to `mstype.float64`.
|
|
359
362
|
|
|
360
363
|
Args:
|
|
361
364
|
a (Tensor): A :math:`(M, M)` complex Hermitian or real symmetric matrix whose eigenvalues and
|
|
362
365
|
eigenvectors will be computed.
|
|
363
366
|
b (Tensor, optional): A :math:`(M, M)` complex Hermitian or real symmetric definite positive matrix in.
|
|
364
|
-
If omitted, identity matrix is assumed. Default: None
|
|
367
|
+
If omitted, identity matrix is assumed. Default: ``None``.
|
|
365
368
|
lower (bool, optional): Whether the pertinent Tensor data is taken from the lower or upper
|
|
366
|
-
triangle of `a` and, if applicable, `b`. Default: True
|
|
369
|
+
triangle of `a` and, if applicable, `b`. Default: ``True``.
|
|
367
370
|
eigvals_only (bool, optional): Whether to calculate only eigenvalues and no eigenvectors.
|
|
368
|
-
Default: False.
|
|
371
|
+
Default: ``False`` .
|
|
369
372
|
type (int, optional): For the generalized problems, this keyword specifies the problem type
|
|
370
373
|
to be solved for `w` and `v` (only takes 1, 2, 3 as possible inputs)::
|
|
371
374
|
|
|
@@ -373,24 +376,24 @@ def eigh(a, b=None, lower=True, eigvals_only=False, overwrite_a=False,
|
|
|
373
376
|
2 => a @ b @ v = w @ v
|
|
374
377
|
3 => b @ a @ v = w @ v
|
|
375
378
|
|
|
376
|
-
This keyword is ignored for standard problems. Default: 1.
|
|
377
|
-
overwrite_a (bool, optional): Whether to overwrite data in `a` (may improve performance). Default: False.
|
|
378
|
-
overwrite_b (bool, optional): Whether to overwrite data in `b` (may improve performance). Default: False.
|
|
379
|
+
This keyword is ignored for standard problems. Default: ``1`` .
|
|
380
|
+
overwrite_a (bool, optional): Whether to overwrite data in `a` (may improve performance). Default: ``False`` .
|
|
381
|
+
overwrite_b (bool, optional): Whether to overwrite data in `b` (may improve performance). Default: ``False`` .
|
|
379
382
|
check_finite (bool, optional): Whether to check that the input matrices contain only finite numbers.
|
|
380
383
|
Disabling may give a performance gain, but may result in problems (crashes, non-termination)
|
|
381
|
-
if the inputs do contain infinities or NaNs. Default: True.
|
|
384
|
+
if the inputs do contain infinities or NaNs. Default: ``True`` .
|
|
382
385
|
turbo (bool, optional): use divide and conquer algorithm (faster but expensive in memory, only
|
|
383
386
|
for generalized eigenvalue problem and if full set of eigenvalues are requested.).
|
|
384
|
-
Has no significant effect if eigenvectors are not requested. Default: True.
|
|
387
|
+
Has no significant effect if eigenvectors are not requested. Default: ``True`` .
|
|
385
388
|
eigvals (tuple, optional): Indexes of the smallest and largest (in ascending order) eigenvalues
|
|
386
389
|
and corresponding eigenvectors to be returned: :math:`0 <= lo <= hi <= M-1`. If omitted, all eigenvalues
|
|
387
|
-
and eigenvectors are returned. Default: None.
|
|
390
|
+
and eigenvectors are returned. Default: ``None`` .
|
|
388
391
|
|
|
389
392
|
Returns:
|
|
390
393
|
- Tensor with shape :math:`(N,)`, the :math:`N (1<=N<=M)` selected eigenvalues, in ascending order,
|
|
391
394
|
each repeated according to its multiplicity.
|
|
392
395
|
|
|
393
|
-
- Tensor with shape :math:`(M, N)`,
|
|
396
|
+
- Tensor with shape :math:`(M, N)`, if `eigvals_only == False`.
|
|
394
397
|
|
|
395
398
|
Raises:
|
|
396
399
|
RuntimeError: If eigenvalue computation does not converge, an error occurred, or b matrix is not
|
|
@@ -413,7 +416,7 @@ def eigh(a, b=None, lower=True, eigvals_only=False, overwrite_a=False,
|
|
|
413
416
|
Examples:
|
|
414
417
|
>>> import numpy as onp
|
|
415
418
|
>>> import mindspore.numpy as mnp
|
|
416
|
-
>>> from mindspore
|
|
419
|
+
>>> from mindspore import Tensor, dtype
|
|
417
420
|
>>> from mindspore.scipy.linalg import eigh
|
|
418
421
|
>>> a = Tensor([[6, 3, 1, 5], [3, 0, 5, 1], [1, 5, 6, 2], [5, 1, 2, 2]], dtype.float64)
|
|
419
422
|
>>> w, v = eigh(a)
|
|
@@ -431,7 +434,7 @@ def eigh(a, b=None, lower=True, eigvals_only=False, overwrite_a=False,
|
|
|
431
434
|
eigh_type_check(turbo, bool, 'turbo')
|
|
432
435
|
eigh_type_check(type, int, 'type')
|
|
433
436
|
eigh_type_check(check_finite, bool, 'check_finite')
|
|
434
|
-
_mstype_check(func_name, a, mstype.
|
|
437
|
+
_mstype_check(func_name, a, mstype.TensorType)
|
|
435
438
|
_dtype_check(func_name, a,
|
|
436
439
|
[mstype.int32, mstype.int64, mstype.float32, mstype.float64, mstype.complex64, mstype.complex128])
|
|
437
440
|
_square_check(func_name, a)
|
|
@@ -458,8 +461,8 @@ def lu_pivots_to_permutation(pivots, permutation_size: int):
|
|
|
458
461
|
loc = mnp.ix_(*(mnp.arange(0, b) for b in batch_dims))
|
|
459
462
|
x = permutation[..., i]
|
|
460
463
|
y = permutation[loc + (j,)]
|
|
461
|
-
permutation[..., i] = y
|
|
462
464
|
permutation[loc + (j,)] = x
|
|
465
|
+
permutation[..., i] = y
|
|
463
466
|
return permutation
|
|
464
467
|
|
|
465
468
|
|
|
@@ -483,10 +486,11 @@ def lu_factor(a, overwrite_a=False, check_finite=True):
|
|
|
483
486
|
Args:
|
|
484
487
|
a (Tensor): square matrix of :math:`(M, M)` to decompose. Note that if the input tensor is not a `float`,
|
|
485
488
|
then it will be cast to :class:'mstype.float32'.
|
|
486
|
-
overwrite_a (bool, optional): Whether to overwrite data in :math:`a` (may increase performance).
|
|
489
|
+
overwrite_a (bool, optional): Whether to overwrite data in :math:`a` (may increase performance).
|
|
490
|
+
Default: ``False`` .
|
|
487
491
|
check_finite (bool, optional): Whether to check that the input matrix contains only finite numbers.
|
|
488
492
|
Disabling may give a performance gain, but may result in problems
|
|
489
|
-
(crashes, non-termination) if the inputs do contain infinities or NaNs. Default: True.
|
|
493
|
+
(crashes, non-termination) if the inputs do contain infinities or NaNs. Default: ``True`` .
|
|
490
494
|
|
|
491
495
|
Returns:
|
|
492
496
|
- Tensor, a square matrix of :math:`(N, N)` containing `U` in its upper triangle, and `L` in its lower triangle.
|
|
@@ -503,7 +507,7 @@ def lu_factor(a, overwrite_a=False, check_finite=True):
|
|
|
503
507
|
|
|
504
508
|
Examples:
|
|
505
509
|
>>> import numpy as onp
|
|
506
|
-
>>> from mindspore
|
|
510
|
+
>>> from mindspore import Tensor
|
|
507
511
|
>>> from mindspore.scipy.linalg import lu_factor
|
|
508
512
|
>>> a = Tensor(onp.array([[2, 5, 8, 7], [5, 2, 2, 8], [7, 5, 6, 6], [5, 4, 4, 8]]).astype(onp.float64))
|
|
509
513
|
>>> lu, piv = lu_factor(a)
|
|
@@ -518,7 +522,7 @@ def lu_factor(a, overwrite_a=False, check_finite=True):
|
|
|
518
522
|
func_name = "lu_factor"
|
|
519
523
|
_type_check(func_name, overwrite_a, bool, 'overwrite_a')
|
|
520
524
|
_type_check(func_name, check_finite, bool, 'check_finite')
|
|
521
|
-
_mstype_check(func_name, a, mstype.
|
|
525
|
+
_mstype_check(func_name, a, mstype.TensorType)
|
|
522
526
|
_dtype_check(func_name, a, [mstype.int32, mstype.int64, mstype.float32, mstype.float64])
|
|
523
527
|
_square_check(func_name, a)
|
|
524
528
|
|
|
@@ -549,11 +553,13 @@ def lu(a, permute_l=False, overwrite_a=False, check_finite=True):
|
|
|
549
553
|
Args:
|
|
550
554
|
a (Tensor): a :math:`(M, N)` matrix to decompose. Note that if the input tensor is not a `float`,
|
|
551
555
|
then it will be cast to :class:'mstype.float32'.
|
|
552
|
-
permute_l (bool, optional): Perform the multiplication :math:`P L` (Default: do not permute).
|
|
553
|
-
|
|
556
|
+
permute_l (bool, optional): Perform the multiplication :math:`P L` (Default: do not permute).
|
|
557
|
+
Default: ``False`` .
|
|
558
|
+
overwrite_a (bool, optional): Whether to overwrite data in :math:`a` (may improve performance).
|
|
559
|
+
Default: ``False`` .
|
|
554
560
|
check_finite (bool, optional): Whether to check that the input matrix contains
|
|
555
561
|
only finite numbers. Disabling may give a performance gain, but may result
|
|
556
|
-
in problems (crashes, non-termination) if the inputs do contain infinities or NaNs. Default: True.
|
|
562
|
+
in problems (crashes, non-termination) if the inputs do contain infinities or NaNs. Default: ``True`` .
|
|
557
563
|
|
|
558
564
|
Returns:
|
|
559
565
|
**If permute_l == False**
|
|
@@ -572,7 +578,7 @@ def lu(a, permute_l=False, overwrite_a=False, check_finite=True):
|
|
|
572
578
|
|
|
573
579
|
Examples:
|
|
574
580
|
>>> import numpy as onp
|
|
575
|
-
>>> from mindspore
|
|
581
|
+
>>> from mindspore import Tensor
|
|
576
582
|
>>> from mindspore.scipy.linalg import lu
|
|
577
583
|
>>> a = Tensor(onp.array([[2, 5, 8, 7], [5, 2, 2, 8], [7, 5, 6, 6], [5, 4, 4, 8]]).astype(onp.float64))
|
|
578
584
|
>>> p, l, u = lu(a)
|
|
@@ -596,7 +602,7 @@ def lu(a, permute_l=False, overwrite_a=False, check_finite=True):
|
|
|
596
602
|
_type_check(func_name, permute_l, bool, 'permute_l')
|
|
597
603
|
_type_check(func_name, overwrite_a, bool, 'overwrite_a')
|
|
598
604
|
_type_check(func_name, check_finite, bool, 'check_finite')
|
|
599
|
-
_mstype_check(func_name, a, mstype.
|
|
605
|
+
_mstype_check(func_name, a, mstype.TensorType)
|
|
600
606
|
_dtype_check(func_name, a, [mstype.int32, mstype.int64, mstype.float32, mstype.float64])
|
|
601
607
|
_value_check(func_name, a.ndim, 2, 'a', 'dimension')
|
|
602
608
|
|
|
@@ -650,7 +656,7 @@ def lu_solve(lu_and_piv, b, trans=0, overwrite_b=False, check_finite=True):
|
|
|
650
656
|
|
|
651
657
|
Examples:
|
|
652
658
|
>>> import numpy as onp
|
|
653
|
-
>>> from mindspore
|
|
659
|
+
>>> from mindspore import Tensor
|
|
654
660
|
>>> from mindspore.scipy.linalg import lu_factor, lu_solve
|
|
655
661
|
>>> a = Tensor(onp.array([[2, 5, 8, 7], [5, 2, 2, 8], [7, 5, 6, 6], [5, 4, 4, 8]]).astype(onp.float64))
|
|
656
662
|
>>> b = Tensor(onp.array([1, 1, 1, 1]).astype(onp.float64))
|
|
@@ -662,9 +668,9 @@ def lu_solve(lu_and_piv, b, trans=0, overwrite_b=False, check_finite=True):
|
|
|
662
668
|
lu_matrix, pivot = lu_and_piv
|
|
663
669
|
_type_check(func_name, overwrite_b, bool, 'overwrite_b')
|
|
664
670
|
_type_check(func_name, check_finite, bool, 'check_finite')
|
|
665
|
-
_mstype_check(func_name, lu_matrix, mstype.
|
|
666
|
-
_mstype_check(func_name, b, mstype.
|
|
667
|
-
_mstype_check(func_name, pivot, mstype.
|
|
671
|
+
_mstype_check(func_name, lu_matrix, mstype.TensorType, 'lu_matrix')
|
|
672
|
+
_mstype_check(func_name, b, mstype.TensorType, 'b')
|
|
673
|
+
_mstype_check(func_name, pivot, mstype.TensorType, 'pivot')
|
|
668
674
|
_dtype_check(func_name, lu_matrix, [mstype.int32, mstype.int64, mstype.float32, mstype.float64], 'lu_matrix')
|
|
669
675
|
_dtype_check(func_name, b, [mstype.int32, mstype.int64, mstype.float32, mstype.float64], 'b')
|
|
670
676
|
_dtype_check(func_name, pivot, [mstype.int32], 'pivot')
|
|
@@ -741,7 +747,7 @@ def det(a, overwrite_a=False, check_finite=True):
|
|
|
741
747
|
|
|
742
748
|
Examples:
|
|
743
749
|
>>> import numpy as onp
|
|
744
|
-
>>> from mindspore
|
|
750
|
+
>>> from mindspore import Tensor
|
|
745
751
|
>>> from mindspore.scipy.linalg import det
|
|
746
752
|
>>> a = Tensor(onp.array([[0, 2, 3], [4, 5, 6], [7, 8, 9]])).astype(onp.float64)
|
|
747
753
|
>>> print(det(a))
|
|
@@ -750,7 +756,7 @@ def det(a, overwrite_a=False, check_finite=True):
|
|
|
750
756
|
func_name = "det"
|
|
751
757
|
_type_check(func_name, overwrite_a, bool, 'overwrite_a')
|
|
752
758
|
_type_check(func_name, check_finite, bool, 'check_finite')
|
|
753
|
-
_mstype_check(func_name, a, mstype.
|
|
759
|
+
_mstype_check(func_name, a, mstype.TensorType)
|
|
754
760
|
_square_check(func_name, a)
|
|
755
761
|
_dtype_check(func_name, a, [mstype.int32, mstype.int64, mstype.float32, mstype.float64])
|
|
756
762
|
|
mindspore/scipy/ops.py
CHANGED
|
@@ -61,7 +61,7 @@ class SolveTriangular(Primitive):
|
|
|
61
61
|
[1 1 1 1] [2]
|
|
62
62
|
|
|
63
63
|
>>> import numpy as onp
|
|
64
|
-
>>> from mindspore
|
|
64
|
+
>>> from mindspore import Tensor
|
|
65
65
|
>>> import mindspore.numpy as mnp
|
|
66
66
|
>>> from mindspore.scipy.ops import SolveTriangular
|
|
67
67
|
>>> a = Tensor(onp.array([[3, 0, 0, 0], [2, 1, 0, 0], [1, 0, 1, 0], [1, 1, 1, 1]], onp.float64))
|
|
@@ -88,42 +88,6 @@ class SolveTriangular(Primitive):
|
|
|
88
88
|
self.init_prim_io_names(inputs=['a', 'b'], outputs=['output'])
|
|
89
89
|
|
|
90
90
|
|
|
91
|
-
class Eigh(PrimitiveWithInfer):
|
|
92
|
-
"""
|
|
93
|
-
Eigh decomposition(Symmetric matrix)
|
|
94
|
-
Ax = lambda * x
|
|
95
|
-
"""
|
|
96
|
-
|
|
97
|
-
@prim_attr_register
|
|
98
|
-
def __init__(self, compute_eigenvectors=True, lower=True):
|
|
99
|
-
super().__init__(name="Eigh")
|
|
100
|
-
self.init_prim_io_names(inputs=['A'], outputs=['output_w', 'output_v'])
|
|
101
|
-
self.compute_eigenvectors = validator.check_value_type(
|
|
102
|
-
"compute_eigenvectors", compute_eigenvectors, [bool], self.name)
|
|
103
|
-
self.lower = validator.check_value_type("lower", lower, [bool], self.lower)
|
|
104
|
-
self.add_prim_attr('lower', self.lower)
|
|
105
|
-
self.add_prim_attr('compute_eigenvectors', self.compute_eigenvectors)
|
|
106
|
-
|
|
107
|
-
def __infer__(self, A):
|
|
108
|
-
validator.check_scalar_or_tensor_types_same({"A_dtype": A['dtype']},
|
|
109
|
-
[mstype.float32, mstype.float64, mstype.complex64,
|
|
110
|
-
mstype.complex128], self.name, True)
|
|
111
|
-
output = None
|
|
112
|
-
if self.compute_eigenvectors:
|
|
113
|
-
output = {
|
|
114
|
-
'shape': ((A['shape'][0],), (A['shape'][0], A['shape'][0])),
|
|
115
|
-
'dtype': (A['dtype'], A['dtype']),
|
|
116
|
-
'value': None
|
|
117
|
-
}
|
|
118
|
-
else:
|
|
119
|
-
output = {
|
|
120
|
-
'shape': (A['shape'][0],),
|
|
121
|
-
'dtype': A['dtype'],
|
|
122
|
-
'value': None
|
|
123
|
-
}
|
|
124
|
-
return output
|
|
125
|
-
|
|
126
|
-
|
|
127
91
|
class Eig(PrimitiveWithInfer):
|
|
128
92
|
"""
|
|
129
93
|
Eig decomposition,(generic matrix)
|
|
@@ -137,10 +101,10 @@ class Eig(PrimitiveWithInfer):
|
|
|
137
101
|
self.compute_v = validator.check_value_type("compute_v", compute_v, [bool], self.name)
|
|
138
102
|
self.add_prim_attr('compute_v', self.compute_v)
|
|
139
103
|
self.io_table = {
|
|
140
|
-
mstype.
|
|
141
|
-
mstype.
|
|
142
|
-
mstype.
|
|
143
|
-
mstype.
|
|
104
|
+
mstype.TensorType(mstype.float32): mstype.complex64,
|
|
105
|
+
mstype.TensorType(mstype.complex64): mstype.complex64,
|
|
106
|
+
mstype.TensorType(mstype.float64): mstype.complex128,
|
|
107
|
+
mstype.TensorType(mstype.complex128): mstype.complex128
|
|
144
108
|
}
|
|
145
109
|
|
|
146
110
|
def __infer__(self, a):
|
mindspore/scipy/ops_grad.py
CHANGED
|
@@ -14,12 +14,13 @@
|
|
|
14
14
|
# ============================================================================
|
|
15
15
|
"""Grad implementation of operators for scipy submodule"""
|
|
16
16
|
from .. import numpy as mnp
|
|
17
|
-
from .ops import
|
|
17
|
+
from .ops import Eig, SolveTriangular
|
|
18
18
|
from .utils_const import _raise_type_error
|
|
19
19
|
from .ops_wrapper import matrix_set_diag
|
|
20
20
|
from ..ops import operations as P
|
|
21
21
|
from ..ops import functional as F
|
|
22
|
-
from ..ops.
|
|
22
|
+
from ..ops.operations.linalg_ops import Eigh
|
|
23
|
+
from ..ops._grad_experimental.grad_base import bprop_getters
|
|
23
24
|
from ..common import dtype as mstype
|
|
24
25
|
|
|
25
26
|
_matmul = P.MatMul(False, False)
|
mindspore/scipy/ops_wrapper.py
CHANGED
|
@@ -29,12 +29,12 @@ def matrix_set_diag(input_x, diagonal, k=0, alignment="RIGHT_LEFT"):
|
|
|
29
29
|
diagonal (Tensor): a :math`(..., max_diag_len)`, or `(..., num_diags, max_diag_len)` vector to be placed to
|
|
30
30
|
output's diags.
|
|
31
31
|
k (Tensor): a scalar or 1D list. it's max length is to which indicates the diag's lower index and upper index.
|
|
32
|
-
(k[0], k[1]).
|
|
32
|
+
(k[0], k[1]). Default: ``0``.
|
|
33
33
|
alignment (str): Some diagonals are shorter than `max_diag_len` and need to be padded.
|
|
34
34
|
`align` is a string specifying how superdiagonals and subdiagonals should be aligned,
|
|
35
|
-
respectively. There are four possible alignments: "RIGHT_LEFT"
|
|
36
|
-
"
|
|
37
|
-
|
|
35
|
+
respectively. There are four possible alignments: "RIGHT_LEFT", "LEFT_RIGHT",
|
|
36
|
+
"LEFT_LEFT", and "RIGHT_RIGHT". "RIGHT_LEFT" aligns superdiagonals to the right (left-pads the row)
|
|
37
|
+
and subdiagonals to the left (right-pads the row). Default: ``"RIGHT_LEFT"``.
|
|
38
38
|
|
|
39
39
|
Returns:
|
|
40
40
|
- Tensor, :math:`(...,M, N)`. a batched matrix with the same shape and values as `input`,
|
|
@@ -45,7 +45,7 @@ def matrix_set_diag(input_x, diagonal, k=0, alignment="RIGHT_LEFT"):
|
|
|
45
45
|
|
|
46
46
|
Examples:
|
|
47
47
|
>>> import numpy as onp
|
|
48
|
-
>>> from mindspore
|
|
48
|
+
>>> from mindspore import Tensor
|
|
49
49
|
>>> from mindspore.scipy.ops_wrapper import matrix_set_diag
|
|
50
50
|
>>> input_x = Tensor(
|
|
51
51
|
>>> onp.array([[[7, 7, 7, 7],[7, 7, 7, 7], [7, 7, 7, 7]],
|
|
@@ -316,12 +316,12 @@ def line_search(f, xk, pk, jac=None, gfk=None, old_fval=None, old_old_fval=None,
|
|
|
316
316
|
The function can be None if you want to use automatic credits.
|
|
317
317
|
xk (Tensor): initial guess.
|
|
318
318
|
pk (Tensor): direction to search in. Assumes the direction is a descent direction.
|
|
319
|
-
gfk (Tensor): initial value of value_and_gradient as position. Default: None.
|
|
320
|
-
old_fval (Tensor): The same as `gfk`. Default: None.
|
|
321
|
-
old_old_fval (Tensor): unused argument, only for scipy API compliance. Default: None.
|
|
322
|
-
c1 (float): Wolfe criteria constant, see ref. Default: 1e-4.
|
|
323
|
-
c2 (float): The same as `c1`. Default: 0.9.
|
|
324
|
-
maxiter (int): maximum number of iterations to search. Default: 20.
|
|
319
|
+
gfk (Tensor): initial value of value_and_gradient as position. Default: ``None`` .
|
|
320
|
+
old_fval (Tensor): The same as `gfk`. Default: ``None`` .
|
|
321
|
+
old_old_fval (Tensor): unused argument, only for scipy API compliance. Default: ``None`` .
|
|
322
|
+
c1 (float): Wolfe criteria constant, see ref. Default: ``1e-4`` .
|
|
323
|
+
c2 (float): The same as `c1`. Default: ``0.9`` .
|
|
324
|
+
maxiter (int): maximum number of iterations to search. Default: ``20`` .
|
|
325
325
|
|
|
326
326
|
Returns:
|
|
327
327
|
LineSearchResults, results of line search results.
|
|
@@ -332,11 +332,11 @@ def line_search(f, xk, pk, jac=None, gfk=None, old_fval=None, old_old_fval=None,
|
|
|
332
332
|
Examples:
|
|
333
333
|
>>> import numpy as onp
|
|
334
334
|
>>> from mindspore.scipy.optimize import line_search
|
|
335
|
-
>>> from mindspore
|
|
335
|
+
>>> from mindspore import Tensor
|
|
336
336
|
>>> x0 = Tensor(onp.ones(2).astype(onp.float32))
|
|
337
337
|
>>> p0 = Tensor(onp.array([-1, -1]).astype(onp.float32))
|
|
338
338
|
>>> def func(x):
|
|
339
|
-
|
|
339
|
+
... return x[0] ** 2 - x[1] ** 3
|
|
340
340
|
>>> res = line_search(func, x0, p0)
|
|
341
341
|
>>> print(res.a_k)
|
|
342
342
|
1.0
|
|
@@ -44,7 +44,7 @@ def _linear_sum_assignment(cost_matrix, maximize, dimension_limit=Tensor(sys.max
|
|
|
44
44
|
Examples:
|
|
45
45
|
>>> import mindspore as ms
|
|
46
46
|
>>> import numpy as np
|
|
47
|
-
>>> from mindspore
|
|
47
|
+
>>> from mindspore import Tensor
|
|
48
48
|
>>> from mindspore.scipy.optimize.linear_sum_assignment import _linear_sum_assignment as lsap
|
|
49
49
|
>>> cost_matrix = Tensor(np.array([[2, 3, 3], [3, 2, 3], [3, 3, 2]])).astype("float64")
|
|
50
50
|
>>> dimension_limit = Tensor(2)
|
|
@@ -61,10 +61,10 @@ def _linear_sum_assignment(cost_matrix, maximize, dimension_limit=Tensor(sys.max
|
|
|
61
61
|
[[0 1 2]]
|
|
62
62
|
"""
|
|
63
63
|
func_name = 'linear_sum_assignment'
|
|
64
|
-
_mstype_check(func_name, cost_matrix, mstype.
|
|
64
|
+
_mstype_check(func_name, cost_matrix, mstype.TensorType, 'cost_matrix')
|
|
65
65
|
_mstype_check(func_name, dimension_limit,
|
|
66
|
-
mstype.
|
|
67
|
-
_mstype_check(func_name, maximize, mstype.
|
|
66
|
+
mstype.TensorType, 'dimension_limit')
|
|
67
|
+
_mstype_check(func_name, maximize, mstype.TensorType, 'maximize')
|
|
68
68
|
_dtype_check(func_name, cost_matrix, [mstype.float32, mstype.float64])
|
|
69
69
|
_dtype_check(func_name, dimension_limit, [mstype.int64])
|
|
70
70
|
_dtype_check(func_name, maximize, [mstype.bool_])
|
|
@@ -92,26 +92,30 @@ def minimize(func, x0, args=(), method=None, jac=None, hess=None, hessp=None, bo
|
|
|
92
92
|
`fun` must support differentiation if jac is None.
|
|
93
93
|
x0 (Tensor): initial guess. Array of real elements of size :math:`(n,)`, where `n` is
|
|
94
94
|
the number of independent variables.
|
|
95
|
-
args (Tuple): extra arguments passed to the objective function. Default: ().
|
|
95
|
+
args (Tuple): extra arguments passed to the objective function. Default: ``()`` .
|
|
96
96
|
method (str): solver type. Should be one of `"BFGS"` and `"LBFGS"`, `"LAGRANGE"`.
|
|
97
97
|
jac (Callable, optional): method for computing the gradient vector. Only for `"BFGS"` and `"LBFGS"`.
|
|
98
98
|
if it is None, the gradient will be estimated with gradient of ``func``.
|
|
99
99
|
if it is a callable, it should be a function that returns the gradient vector:
|
|
100
100
|
:math:`jac(x, *args) -> array\_like, shape (n,)`
|
|
101
101
|
where x is an array with shape :math:`(n,)` and args is a tuple with the fixed parameters.
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
102
|
+
hess (Callable, optional): Method for calculating the Hessian Matrix. Not implemented yet.
|
|
103
|
+
hessp (Callable, optional): Hessian of objective function times an arbitrary vector `p`. Not implemented yet.
|
|
104
|
+
bounds (Sequence, optional): Sequence of `(min, max)` pairs for each element in `x`. Not implemented yet.
|
|
105
|
+
constraints (Callable, optional): representing the inequality constrains, each function in constrains indicates
|
|
105
106
|
the function < 0 as an inequality constrain.
|
|
107
|
+
tol (float, optional): tolerance for termination. For detailed control, use solver-specific
|
|
108
|
+
options. Default: ``None`` .
|
|
109
|
+
callback (Callable, optional): A callable called after each iteration. Not implemented yet.
|
|
106
110
|
options (Mapping[str, Any], optional): a dictionary of solver options. All methods accept the following
|
|
107
|
-
generic options
|
|
111
|
+
generic options. Default: ``None`` .
|
|
108
112
|
|
|
109
113
|
- history_size (int): size of buffer used to help to update inv hessian, only used with method="LBFGS".
|
|
110
|
-
Default: 20.
|
|
114
|
+
Default: ``20`` .
|
|
111
115
|
- maxiter (int): Maximum number of iterations to perform. Depending on the
|
|
112
116
|
method each iteration may use several function evaluations.
|
|
113
117
|
|
|
114
|
-
|
|
118
|
+
The follow options are exclusive to Lagrange method:
|
|
115
119
|
|
|
116
120
|
- save_tol (list): list of saving tolerance, with the same length with 'constrains'.
|
|
117
121
|
- obj_weight (float): weight for objective function, usually between 1.0 - 100000.0.
|
|
@@ -133,16 +137,16 @@ def minimize(func, x0, args=(), method=None, jac=None, hess=None, hessp=None, bo
|
|
|
133
137
|
Examples:
|
|
134
138
|
>>> import numpy as onp
|
|
135
139
|
>>> from mindspore.scipy.optimize import minimize
|
|
136
|
-
>>> from mindspore
|
|
140
|
+
>>> from mindspore import Tensor
|
|
137
141
|
>>> x0 = Tensor(onp.zeros(2).astype(onp.float32))
|
|
138
142
|
>>> def func(p):
|
|
139
|
-
|
|
140
|
-
|
|
143
|
+
... x, y = p
|
|
144
|
+
... return (x ** 2 + y - 11.) ** 2 + (x + y ** 2 - 7.) ** 2
|
|
141
145
|
>>> res = minimize(func, x0, method='BFGS', options=dict(maxiter=None, gtol=1e-6))
|
|
142
146
|
>>> print(res.x)
|
|
143
|
-
>>> l_res = minimize(func, x0, method='LBFGS', options=dict(maxiter=None, gtol=1e-6))
|
|
144
|
-
>>> print(res.x)
|
|
145
147
|
[3. 2.]
|
|
148
|
+
>>> l_res = minimize(func, x0, method='LBFGS', options=dict(maxiter=None, gtol=1e-6))
|
|
149
|
+
>>> print(l_res.x)
|
|
146
150
|
[3. 2.]
|
|
147
151
|
"""
|
|
148
152
|
if method is None:
|