mindspore 1.10.0__cp37-cp37m-win_amd64.whl → 2.0.0rc1__cp37-cp37m-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mindspore might be problematic. Click here for more details.
- mindspore/.commit_id +1 -1
- mindspore/ConcurrencyCheck.dll +0 -0
- mindspore/CppBuildInsights.dll +0 -0
- mindspore/CppCoreCheck.dll +0 -0
- mindspore/EnumIndex.dll +0 -0
- mindspore/EspXEngine.dll +0 -0
- mindspore/HResultCheck.dll +0 -0
- mindspore/KernelTraceControl.dll +0 -0
- mindspore/LocalESPC.dll +0 -0
- mindspore/Microsoft.Diagnostics.Tracing.EventSource.dll +0 -0
- mindspore/Microsoft.VisualStudio.RemoteControl.dll +0 -0
- mindspore/Microsoft.VisualStudio.Telemetry.dll +0 -0
- mindspore/Microsoft.VisualStudio.Utilities.Internal.dll +0 -0
- mindspore/Newtonsoft.Json.dll +0 -0
- mindspore/System.Runtime.CompilerServices.Unsafe.dll +0 -0
- mindspore/VariantClear.dll +0 -0
- mindspore/__init__.py +9 -4
- mindspore/_c_dataengine.cp37-win_amd64.pyd +0 -0
- mindspore/_c_expression.cp37-win_amd64.pyd +0 -0
- mindspore/_c_mindrecord.cp37-win_amd64.pyd +0 -0
- mindspore/_check_jit_forbidden_api.py +102 -0
- mindspore/_checkparam.py +1066 -1001
- mindspore/_extends/builtin_operations.py +32 -4
- mindspore/_extends/graph_kernel/model/graph_split.py +66 -222
- mindspore/_extends/parallel_compile/akg_compiler/akg_process.py +12 -9
- mindspore/_extends/parallel_compile/akg_compiler/build_tbe_kernel.py +119 -26
- mindspore/_extends/parallel_compile/akg_compiler/tbe_topi.py +50 -50
- mindspore/_extends/parallel_compile/akg_compiler/util.py +9 -6
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_adapter.py +4 -25
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_helper.py +9 -4
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_job_manager.py +1 -27
- mindspore/_extends/parse/__init__.py +5 -3
- mindspore/_extends/parse/namespace.py +17 -2
- mindspore/_extends/parse/parser.py +193 -34
- mindspore/_extends/parse/resources.py +7 -8
- mindspore/_extends/parse/standard_method.py +1780 -435
- mindspore/_extends/parse/trope.py +3 -1
- mindspore/amp.py +53 -58
- mindspore/atlprov.dll +0 -0
- mindspore/boost/adasum.py +3 -2
- mindspore/boost/boost.py +2 -2
- mindspore/boost/boost_cell_wrapper.py +46 -26
- mindspore/boost/dim_reduce.py +6 -5
- mindspore/boost/grad_accumulation.py +2 -1
- mindspore/boost/group_loss_scale_manager.py +1 -1
- mindspore/c1.dll +0 -0
- mindspore/c1xx.dll +0 -0
- mindspore/c2.dll +0 -0
- mindspore/cfgpersist.dll +0 -0
- mindspore/clang_rt.asan_dbg_dynamic-x86_64.dll +0 -0
- mindspore/clang_rt.asan_dynamic-x86_64.dll +0 -0
- mindspore/common/__init__.py +11 -10
- mindspore/common/_decorator.py +2 -0
- mindspore/common/_register_for_adapter.py +55 -0
- mindspore/common/_stub_tensor.py +201 -0
- mindspore/common/_utils.py +57 -0
- mindspore/common/api.py +582 -297
- mindspore/common/dtype.py +66 -18
- mindspore/common/dump.py +2 -2
- mindspore/common/initializer.py +38 -1
- mindspore/common/jit_config.py +25 -13
- mindspore/common/mutable.py +53 -24
- mindspore/common/parameter.py +60 -37
- mindspore/common/seed.py +8 -24
- mindspore/common/sparse_tensor.py +927 -0
- mindspore/common/tensor.py +1627 -3900
- mindspore/communication/__init__.py +10 -5
- mindspore/communication/_comm_helper.py +78 -214
- mindspore/communication/_hccl_management.py +2 -1
- mindspore/communication/management.py +136 -47
- mindspore/config/op_info.config +501 -1008
- mindspore/context.py +291 -56
- mindspore/d3dcompiler_47.dll +0 -0
- mindspore/dataset/__init__.py +12 -8
- mindspore/dataset/audio/__init__.py +9 -9
- mindspore/dataset/audio/transforms.py +1090 -228
- mindspore/dataset/audio/utils.py +87 -39
- mindspore/dataset/audio/validators.py +223 -1
- mindspore/dataset/callback/ds_callback.py +17 -15
- mindspore/dataset/core/config.py +246 -17
- mindspore/dataset/core/py_util_helpers.py +4 -3
- mindspore/dataset/core/validator_helpers.py +10 -10
- mindspore/{parallel/nn/layers.py → dataset/debug/__init__.py} +7 -8
- mindspore/dataset/debug/debug_hook.py +65 -0
- mindspore/dataset/debug/pre_defined_hook.py +67 -0
- mindspore/dataset/engine/__init__.py +7 -3
- mindspore/dataset/engine/cache_client.py +9 -9
- mindspore/dataset/engine/datasets.py +648 -477
- mindspore/dataset/engine/datasets_audio.py +165 -167
- mindspore/dataset/engine/datasets_standard_format.py +93 -67
- mindspore/dataset/engine/datasets_text.py +492 -342
- mindspore/dataset/engine/datasets_user_defined.py +85 -50
- mindspore/dataset/engine/datasets_vision.py +1224 -699
- mindspore/dataset/engine/graphdata.py +134 -69
- mindspore/dataset/engine/iterators.py +50 -9
- mindspore/dataset/engine/offload.py +52 -31
- mindspore/dataset/engine/samplers.py +27 -24
- mindspore/dataset/engine/serializer_deserializer.py +14 -15
- mindspore/dataset/engine/validators.py +213 -52
- mindspore/dataset/text/__init__.py +10 -8
- mindspore/dataset/text/transforms.py +152 -57
- mindspore/dataset/text/utils.py +98 -49
- mindspore/dataset/text/validators.py +25 -0
- mindspore/dataset/transforms/__init__.py +4 -2
- mindspore/dataset/transforms/c_transforms.py +11 -13
- mindspore/dataset/transforms/py_transforms.py +2 -2
- mindspore/dataset/transforms/py_transforms_util.py +10 -0
- mindspore/dataset/transforms/transforms.py +13 -15
- mindspore/dataset/transforms/validators.py +7 -7
- mindspore/dataset/utils/__init__.py +2 -1
- mindspore/dataset/utils/browse_dataset.py +13 -13
- mindspore/dataset/utils/line_reader.py +121 -0
- mindspore/dataset/vision/__init__.py +8 -7
- mindspore/dataset/vision/c_transforms.py +125 -126
- mindspore/dataset/vision/py_transforms.py +37 -37
- mindspore/dataset/vision/py_transforms_util.py +23 -20
- mindspore/dataset/vision/transforms.py +316 -315
- mindspore/dataset/vision/utils.py +313 -17
- mindspore/dataset/vision/validators.py +6 -6
- mindspore/default_config.py +0 -1
- mindspore/dpcmi.dll +0 -0
- mindspore/{compression → experimental}/__init__.py +6 -5
- mindspore/experimental/map_parameter.py +275 -0
- mindspore/include/OWNERS +0 -1
- mindspore/include/api/callback/callback.h +9 -13
- mindspore/include/api/callback/ckpt_saver.h +2 -2
- mindspore/include/api/callback/loss_monitor.h +2 -2
- mindspore/include/api/callback/lr_scheduler.h +5 -5
- mindspore/include/api/callback/time_monitor.h +2 -2
- mindspore/include/api/callback/train_accuracy.h +4 -6
- mindspore/include/api/cfg.h +19 -6
- mindspore/include/api/context.h +70 -9
- mindspore/include/api/delegate.h +8 -1
- mindspore/include/api/dual_abi_helper.h +8 -24
- mindspore/include/api/metrics/accuracy.h +2 -2
- mindspore/include/api/metrics/metrics.h +4 -3
- mindspore/include/api/model.h +9 -4
- mindspore/include/api/model_group.h +68 -0
- mindspore/include/api/model_parallel_runner.h +17 -17
- mindspore/include/api/net.h +12 -11
- mindspore/include/api/serialization.h +20 -4
- mindspore/include/api/status.h +7 -1
- mindspore/include/api/types.h +25 -21
- mindspore/include/api/visible.h +4 -0
- mindspore/include/c_api/model_c.h +5 -0
- mindspore/include/c_api/status_c.h +1 -1
- mindspore/include/dataset/config.h +1 -1
- mindspore/include/dataset/constants.h +14 -0
- mindspore/include/dataset/text.h +59 -0
- mindspore/include/dataset/vision.h +56 -117
- mindspore/include/dataset/vision_lite.h +102 -0
- mindspore/jpeg62.dll +0 -0
- mindspore/log.py +28 -28
- mindspore/mindrecord/common/exceptions.py +2 -4
- mindspore/mindrecord/filereader.py +19 -1
- mindspore/mindrecord/filewriter.py +250 -88
- mindspore/mindrecord/mindpage.py +13 -13
- mindspore/mindrecord/shardheader.py +15 -15
- mindspore/mindrecord/shardreader.py +9 -0
- mindspore/mindrecord/shardwriter.py +29 -29
- mindspore/mindrecord/tools/cifar100_to_mr.py +9 -9
- mindspore/mindrecord/tools/cifar10_to_mr.py +9 -9
- mindspore/mindrecord/tools/csv_to_mr.py +4 -4
- mindspore/mindrecord/tools/imagenet_to_mr.py +70 -65
- mindspore/mindrecord/tools/mnist_to_mr.py +41 -41
- mindspore/mindrecord/tools/tfrecord_to_mr.py +6 -6
- mindspore/{libmindspore_backend.dll → mindspore_backend.dll} +0 -0
- mindspore/mindspore_common.dll +0 -0
- mindspore/mindspore_core.dll +0 -0
- mindspore/mindspore_glog.dll +0 -0
- mindspore/mindspore_shared_lib.dll +0 -0
- mindspore/msobj140.dll +0 -0
- mindspore/mspdb140.dll +0 -0
- mindspore/mspdbcore.dll +0 -0
- mindspore/mspdbst.dll +0 -0
- mindspore/mspft140.dll +0 -0
- mindspore/msvcdis140.dll +0 -0
- mindspore/msvcp140_1.dll +0 -0
- mindspore/msvcp140_2.dll +0 -0
- mindspore/msvcp140_atomic_wait.dll +0 -0
- mindspore/msvcp140_codecvt_ids.dll +0 -0
- mindspore/nn/__init__.py +1 -5
- mindspore/nn/cell.py +297 -234
- mindspore/nn/dynamic_lr.py +1 -1
- mindspore/nn/grad/cell_grad.py +17 -42
- mindspore/nn/layer/__init__.py +7 -4
- mindspore/nn/layer/activation.py +131 -88
- mindspore/nn/layer/basic.py +313 -613
- mindspore/nn/layer/channel_shuffle.py +103 -0
- mindspore/nn/layer/combined.py +1 -1
- mindspore/nn/layer/container.py +52 -6
- mindspore/nn/layer/conv.py +112 -43
- mindspore/nn/layer/dense.py +10 -9
- mindspore/nn/layer/embedding.py +36 -34
- mindspore/nn/layer/image.py +123 -27
- mindspore/nn/layer/math.py +108 -107
- mindspore/nn/layer/normalization.py +212 -366
- mindspore/nn/layer/padding.py +370 -42
- mindspore/nn/layer/pooling.py +1443 -219
- mindspore/nn/layer/rnn_cells.py +11 -16
- mindspore/nn/layer/rnns.py +38 -39
- mindspore/nn/layer/thor_layer.py +24 -25
- mindspore/nn/layer/timedistributed.py +5 -5
- mindspore/nn/layer/transformer.py +701 -0
- mindspore/nn/learning_rate_schedule.py +8 -8
- mindspore/nn/loss/__init__.py +9 -6
- mindspore/nn/loss/loss.py +678 -142
- mindspore/nn/metrics.py +53 -0
- mindspore/nn/optim/_dist_optimizer_registry.py +2 -2
- mindspore/nn/optim/ada_grad.py +8 -8
- mindspore/nn/optim/adadelta.py +2 -3
- mindspore/nn/optim/adafactor.py +18 -14
- mindspore/nn/optim/adam.py +429 -87
- mindspore/nn/optim/adamax.py +5 -6
- mindspore/nn/optim/adasum.py +10 -8
- mindspore/nn/optim/asgd.py +7 -7
- mindspore/nn/optim/ftrl.py +81 -11
- mindspore/nn/optim/lamb.py +7 -8
- mindspore/nn/optim/lars.py +4 -4
- mindspore/nn/optim/lazyadam.py +82 -7
- mindspore/nn/optim/momentum.py +8 -7
- mindspore/nn/optim/optimizer.py +19 -10
- mindspore/nn/optim/proximal_ada_grad.py +6 -5
- mindspore/nn/optim/rmsprop.py +3 -3
- mindspore/nn/optim/rprop.py +20 -16
- mindspore/nn/optim/sgd.py +21 -15
- mindspore/nn/optim/thor.py +23 -21
- mindspore/nn/probability/__init__.py +0 -2
- mindspore/nn/probability/bijector/bijector.py +7 -6
- mindspore/nn/probability/bijector/invert.py +4 -2
- mindspore/nn/probability/bijector/softplus.py +2 -2
- mindspore/nn/probability/bnn_layers/dense_variational.py +1 -1
- mindspore/nn/probability/bnn_layers/layer_distribution.py +2 -2
- mindspore/nn/probability/distribution/__init__.py +6 -0
- mindspore/nn/probability/distribution/_utils/custom_ops.py +3 -2
- mindspore/nn/probability/distribution/_utils/utils.py +11 -17
- mindspore/nn/probability/distribution/bernoulli.py +6 -6
- mindspore/nn/probability/distribution/beta.py +1 -1
- mindspore/nn/probability/distribution/categorical.py +9 -9
- mindspore/nn/probability/distribution/cauchy.py +8 -8
- mindspore/nn/probability/distribution/distribution.py +12 -6
- mindspore/nn/probability/distribution/exponential.py +5 -5
- mindspore/nn/probability/distribution/gamma.py +3 -3
- mindspore/nn/probability/distribution/geometric.py +6 -5
- mindspore/nn/probability/distribution/gumbel.py +5 -5
- mindspore/nn/probability/distribution/half_normal.py +133 -0
- mindspore/nn/probability/distribution/laplace.py +128 -0
- mindspore/nn/probability/distribution/log_normal.py +0 -1
- mindspore/nn/probability/distribution/logistic.py +4 -5
- mindspore/nn/probability/distribution/normal.py +11 -15
- mindspore/nn/probability/distribution/poisson.py +6 -2
- mindspore/nn/probability/distribution/student_t.py +150 -0
- mindspore/nn/probability/distribution/transformed_distribution.py +4 -4
- mindspore/nn/probability/distribution/uniform.py +5 -5
- mindspore/nn/reinforcement/_tensors_queue.py +3 -3
- mindspore/nn/reinforcement/tensor_array.py +2 -2
- mindspore/nn/sparse/sparse.py +8 -1
- mindspore/nn/wrap/cell_wrapper.py +55 -27
- mindspore/nn/wrap/grad_reducer.py +20 -11
- mindspore/nn/wrap/loss_scale.py +47 -30
- mindspore/numpy/array_creations.py +33 -22
- mindspore/numpy/array_ops.py +46 -42
- mindspore/numpy/logic_ops.py +6 -27
- mindspore/numpy/math_ops.py +26 -19
- mindspore/numpy/utils.py +1 -8
- mindspore/numpy/utils_const.py +112 -62
- mindspore/opencv_core452.dll +0 -0
- mindspore/opencv_imgcodecs452.dll +0 -0
- mindspore/opencv_imgproc452.dll +0 -0
- mindspore/ops/__init__.py +6 -3
- mindspore/ops/_constants.py +0 -6
- mindspore/ops/_grad/__init__.py +2 -1
- mindspore/ops/_grad/grad_array_ops.py +209 -152
- mindspore/ops/_grad/grad_base.py +55 -17
- mindspore/ops/_grad/grad_clip_ops.py +11 -3
- mindspore/ops/_grad/grad_comm_ops.py +58 -47
- mindspore/ops/_grad/grad_implementations.py +21 -61
- mindspore/ops/_grad/grad_inner_ops.py +48 -6
- mindspore/ops/_grad/grad_math_ops.py +306 -161
- mindspore/ops/_grad/grad_nn_ops.py +192 -181
- mindspore/ops/_grad/grad_other_ops.py +1 -1
- mindspore/ops/_grad/grad_quant_ops.py +5 -5
- mindspore/ops/_grad/grad_sequence_ops.py +296 -0
- mindspore/ops/_grad/grad_sparse.py +15 -9
- mindspore/ops/_grad_experimental/__init__.py +1 -0
- mindspore/ops/_grad_experimental/grad_array_ops.py +441 -55
- mindspore/ops/_grad_experimental/grad_image_ops.py +25 -7
- mindspore/ops/_grad_experimental/grad_inner_ops.py +3 -44
- mindspore/ops/_grad_experimental/grad_linalg_ops.py +16 -21
- mindspore/ops/_grad_experimental/grad_math_ops.py +979 -49
- mindspore/ops/_grad_experimental/grad_nn_ops.py +78 -8
- mindspore/ops/_grad_experimental/grad_scalar_ops.py +112 -0
- mindspore/ops/_grad_experimental/grad_sparse_ops.py +197 -13
- mindspore/ops/_op_impl/__init__.py +3 -3
- mindspore/ops/_op_impl/_custom_op/__init__.py +0 -1
- mindspore/ops/_op_impl/_custom_op/_basic.py +0 -1
- mindspore/ops/_op_impl/_custom_op/batch_matmul_impl.py +1 -1
- mindspore/ops/_op_impl/_custom_op/batchnorm_fold.py +4 -2
- mindspore/ops/_op_impl/_custom_op/batchnorm_fold2.py +2 -2
- mindspore/ops/_op_impl/_custom_op/batchnorm_fold2_grad.py +2 -2
- mindspore/ops/_op_impl/_custom_op/batchnorm_fold2_grad_reduce.py +5 -5
- mindspore/ops/_op_impl/_custom_op/batchnorm_fold_grad.py +3 -3
- mindspore/ops/_op_impl/_custom_op/cholesky_trsm_impl.py +1 -1
- mindspore/ops/_op_impl/_custom_op/correction_mul.py +3 -3
- mindspore/ops/_op_impl/_custom_op/correction_mul_grad.py +2 -2
- mindspore/ops/_op_impl/_custom_op/dsd_back_impl.py +4 -8
- mindspore/ops/_op_impl/_custom_op/dsd_impl.py +1 -1
- mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perchannel.py +2 -2
- mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perchannel_grad.py +2 -2
- mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perchannel_grad_reduce.py +2 -2
- mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perlayer.py +2 -2
- mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perlayer_grad.py +2 -2
- mindspore/ops/_op_impl/_custom_op/fake_learned_scale_quant_perlayer_grad_reduce.py +2 -2
- mindspore/ops/_op_impl/_custom_op/fake_quant_perchannel.py +2 -2
- mindspore/ops/_op_impl/_custom_op/fake_quant_perchannel_grad.py +2 -2
- mindspore/ops/_op_impl/_custom_op/fake_quant_perlayer.py +2 -2
- mindspore/ops/_op_impl/_custom_op/fake_quant_perlayer_grad.py +2 -2
- mindspore/ops/_op_impl/_custom_op/fused_abs_max1_impl.py +1 -1
- mindspore/ops/_op_impl/_custom_op/img2col_impl.py +1 -1
- mindspore/ops/_op_impl/_custom_op/matmul_cube_dense_left_impl.py +2 -2
- mindspore/ops/_op_impl/_custom_op/matmul_cube_dense_right_impl.py +1 -1
- mindspore/ops/_op_impl/_custom_op/matmul_cube_fracz_left_cast_impl.py +1 -1
- mindspore/ops/_op_impl/_custom_op/matmul_cube_fracz_right_mul_impl.py +1 -1
- mindspore/ops/_op_impl/_custom_op/matmul_cube_impl.py +2 -2
- mindspore/ops/_op_impl/_custom_op/matmul_dds_grad_impl.py +0 -1
- mindspore/ops/_op_impl/_custom_op/matmul_dds_impl.py +0 -1
- mindspore/ops/_op_impl/_custom_op/matrix_combine_impl.py +1 -1
- mindspore/ops/_op_impl/_custom_op/minmax_update_perchannel.py +2 -2
- mindspore/ops/_op_impl/_custom_op/minmax_update_perlayer.py +2 -2
- mindspore/ops/_op_impl/_custom_op/transpose02314_impl.py +1 -1
- mindspore/ops/_op_impl/aicpu/__init__.py +238 -3
- mindspore/ops/_op_impl/aicpu/abs.py +36 -0
- mindspore/ops/_op_impl/aicpu/adaptive_avg_pool_2d.py +34 -0
- mindspore/ops/_op_impl/aicpu/adaptive_avg_pool_2d_grad.py +34 -0
- mindspore/ops/_op_impl/aicpu/adaptive_avg_pool_3d.py +39 -0
- mindspore/ops/_op_impl/aicpu/adaptive_avg_pool_3d_grad.py +39 -0
- mindspore/ops/_op_impl/aicpu/adaptive_max_pool_2d_grad.py +37 -0
- mindspore/ops/_op_impl/aicpu/adaptive_max_pool_3d.py +42 -0
- mindspore/ops/_op_impl/aicpu/adaptive_max_pool_3d_grad.py +152 -0
- mindspore/ops/_op_impl/aicpu/add.py +43 -0
- mindspore/ops/_op_impl/aicpu/addcdiv.py +0 -32
- mindspore/ops/_op_impl/aicpu/addcmul.py +0 -84
- mindspore/ops/_op_impl/aicpu/affine_grid_grad.py +35 -0
- mindspore/ops/_op_impl/aicpu/arg_max.py +75 -0
- mindspore/ops/_op_impl/aicpu/arg_min.py +75 -0
- mindspore/ops/_op_impl/aicpu/argmin_with_value.py +43 -0
- mindspore/ops/_op_impl/aicpu/batch_matmul.py +43 -0
- mindspore/ops/_op_impl/aicpu/batch_norm_grad_grad.py +49 -0
- mindspore/ops/_op_impl/aicpu/bernoulli.py +48 -0
- mindspore/ops/_op_impl/aicpu/bessel_i0.py +31 -0
- mindspore/ops/_op_impl/aicpu/bias_add.py +44 -0
- mindspore/ops/_op_impl/aicpu/bias_add_grad.py +43 -0
- mindspore/ops/_op_impl/aicpu/bincount.py +33 -0
- mindspore/{nn/probability/infer/variational/__init__.py → ops/_op_impl/aicpu/cauchy.py} +17 -10
- mindspore/ops/_op_impl/aicpu/channel_shuffle.py +40 -0
- mindspore/ops/_op_impl/aicpu/cholesky.py +1 -1
- mindspore/ops/_op_impl/{cpu/bias_add.py → aicpu/choleskygrad.py} +9 -7
- mindspore/ops/_op_impl/aicpu/combined_non_max_suppression.py +42 -0
- mindspore/ops/_op_impl/aicpu/concat_offset.py +42 -0
- mindspore/ops/_op_impl/aicpu/concat_offset_v1.py +31 -0
- mindspore/ops/_op_impl/aicpu/conj.py +11 -0
- mindspore/ops/_op_impl/aicpu/crop_and_resize_grad_image.py +38 -0
- mindspore/ops/_op_impl/aicpu/cumulative_logsumexp.py +36 -0
- mindspore/ops/_op_impl/aicpu/deformable_offsets.py +38 -0
- mindspore/ops/_op_impl/aicpu/deformable_offsets_grad.py +2 -2
- mindspore/ops/_op_impl/aicpu/dense_to_sparse_set_operation.py +48 -0
- mindspore/ops/_op_impl/aicpu/diag.py +36 -0
- mindspore/ops/_op_impl/aicpu/diag_part.py +36 -0
- mindspore/ops/_op_impl/aicpu/diagonal.py +35 -0
- mindspore/ops/_op_impl/{cpu/bias_add_grad.py → aicpu/digamma.py} +9 -7
- mindspore/ops/_op_impl/aicpu/eig.py +35 -0
- mindspore/ops/_op_impl/aicpu/fft_with_size.py +41 -0
- mindspore/ops/_op_impl/aicpu/flatten.py +1 -0
- mindspore/ops/_op_impl/aicpu/fmax.py +36 -0
- mindspore/ops/_op_impl/aicpu/fmin.py +37 -0
- mindspore/ops/_op_impl/aicpu/fractional_max_pool3d_with_fixed_ksize.py +1 -1
- mindspore/ops/_op_impl/aicpu/fse_decode.py +43 -0
- mindspore/ops/_op_impl/aicpu/glu.py +33 -0
- mindspore/ops/_op_impl/aicpu/glu_grad.py +34 -0
- mindspore/ops/_op_impl/aicpu/greater.py +41 -0
- mindspore/ops/_op_impl/aicpu/greater_equal.py +41 -0
- mindspore/ops/_op_impl/aicpu/index_put.py +50 -0
- mindspore/ops/_op_impl/{tbe/scatter_add_ds.py → aicpu/inplace_index_add.py} +17 -21
- mindspore/ops/_op_impl/aicpu/instance_norm_v2.py +41 -0
- mindspore/ops/_op_impl/aicpu/instance_norm_v2_grad.py +44 -0
- mindspore/ops/_op_impl/aicpu/layer_norm_grad_grad.py +47 -0
- mindspore/ops/_op_impl/aicpu/less.py +41 -0
- mindspore/ops/_op_impl/aicpu/less_equal.py +41 -0
- mindspore/ops/_op_impl/aicpu/lgamma.py +32 -0
- mindspore/ops/_op_impl/aicpu/log_normal_reverse.py +33 -0
- mindspore/ops/_op_impl/aicpu/logit.py +33 -0
- mindspore/ops/_op_impl/aicpu/logit_grad.py +34 -0
- mindspore/ops/_op_impl/aicpu/masked_fill.py +42 -0
- mindspore/ops/_op_impl/aicpu/masked_scatter.py +39 -0
- mindspore/ops/_op_impl/aicpu/matmul.py +39 -0
- mindspore/ops/_op_impl/aicpu/matrix_logarithm.py +31 -0
- mindspore/ops/_op_impl/aicpu/matrix_power.py +32 -0
- mindspore/ops/_op_impl/aicpu/matrix_solve_ls.py +36 -0
- mindspore/ops/_op_impl/aicpu/matrix_triangular_solve.py +36 -0
- mindspore/ops/_op_impl/aicpu/mirror_pad.py +2 -0
- mindspore/ops/_op_impl/aicpu/mirror_pad_grad.py +0 -4
- mindspore/ops/_op_impl/aicpu/mul.py +3 -1
- mindspore/ops/_op_impl/aicpu/multinomial.py +14 -6
- mindspore/ops/_op_impl/aicpu/multinomial_with_replacement.py +35 -0
- mindspore/ops/_op_impl/aicpu/nan_to_num.py +34 -0
- mindspore/ops/_op_impl/aicpu/nllloss.py +38 -0
- mindspore/ops/_op_impl/aicpu/nllloss_grad.py +39 -0
- mindspore/ops/_op_impl/aicpu/ones_like.py +0 -2
- mindspore/ops/_op_impl/aicpu/polar.py +32 -0
- mindspore/ops/_op_impl/aicpu/polygamma.py +34 -0
- mindspore/ops/_op_impl/aicpu/qr.py +36 -0
- mindspore/ops/_op_impl/aicpu/quant_dtype_cast.py +40 -0
- mindspore/ops/_op_impl/aicpu/quantile.py +35 -0
- mindspore/ops/_op_impl/aicpu/ragged_tensor_to_sparse.py +73 -0
- mindspore/ops/_op_impl/aicpu/ragged_tensor_to_tensor.py +74 -0
- mindspore/ops/_op_impl/aicpu/random_shuffle.py +3 -0
- mindspore/ops/_op_impl/aicpu/randperm_v2.py +41 -0
- mindspore/ops/_op_impl/aicpu/range.py +36 -0
- mindspore/ops/_op_impl/aicpu/reciprocal.py +34 -0
- mindspore/ops/_op_impl/aicpu/reciprocal_grad.py +35 -0
- mindspore/ops/_op_impl/aicpu/reduce_sum.py +57 -0
- mindspore/ops/_op_impl/aicpu/resize_bicubic.py +2 -8
- mindspore/ops/_op_impl/aicpu/resize_bicubic_grad.py +1 -1
- mindspore/ops/_op_impl/aicpu/resize_v2.py +68 -0
- mindspore/ops/_op_impl/aicpu/resize_v2_grad.py +68 -0
- mindspore/ops/_op_impl/aicpu/scatter_elements.py +4 -0
- mindspore/ops/_op_impl/aicpu/scatter_nd_update.py +2 -0
- mindspore/ops/_op_impl/aicpu/search_sorted.py +12 -6
- mindspore/ops/_op_impl/aicpu/self_adjoint_eig.py +34 -0
- mindspore/ops/_op_impl/aicpu/sequence_add.py +34 -0
- mindspore/ops/_op_impl/aicpu/sequence_add_offset.py +34 -0
- mindspore/ops/_op_impl/aicpu/sequence_addn.py +38 -0
- mindspore/ops/_op_impl/aicpu/slice_grad.py +76 -0
- mindspore/ops/_op_impl/aicpu/smooth_l1_loss.py +35 -0
- mindspore/ops/_op_impl/aicpu/smooth_l1_loss_grad.py +37 -0
- mindspore/ops/_op_impl/aicpu/sort.py +39 -0
- mindspore/ops/_op_impl/aicpu/sparse_apply_adagrad_da.py +0 -24
- mindspore/ops/_op_impl/aicpu/sparse_cross.py +42 -0
- mindspore/ops/_op_impl/aicpu/sparse_fill_empty_rows.py +63 -0
- mindspore/ops/_op_impl/aicpu/sparse_fill_empty_rows_grad.py +45 -0
- mindspore/ops/_op_impl/aicpu/sparse_matrix_mat_mul.py +56 -0
- mindspore/ops/_op_impl/{tbe/slice_ds.py → aicpu/sparse_segment_sum.py} +16 -24
- mindspore/ops/_op_impl/aicpu/sparse_segment_sum_with_num_segments.py +68 -0
- mindspore/ops/_op_impl/aicpu/sparse_slice.py +63 -0
- mindspore/ops/_op_impl/aicpu/sparse_slice_grad.py +61 -0
- mindspore/ops/_op_impl/aicpu/squared_difference.py +2 -0
- mindspore/ops/_op_impl/aicpu/strided_slice_v2.py +93 -0
- mindspore/ops/_op_impl/aicpu/strided_slice_v2_grad.py +66 -0
- mindspore/ops/_op_impl/aicpu/tensor_scatter_update.py +59 -0
- mindspore/ops/_op_impl/{tbe/gather_v2.py → aicpu/tile.py} +24 -24
- mindspore/ops/_op_impl/aicpu/tridiagonal_solve.py +35 -0
- mindspore/ops/_op_impl/aicpu/tril_indices.py +34 -0
- mindspore/ops/_op_impl/aicpu/triu_indices.py +34 -0
- mindspore/ops/_op_impl/aicpu/uniform.py +34 -0
- mindspore/ops/_op_impl/aicpu/uniform_candidate_sampler.py +1 -0
- mindspore/ops/_op_impl/aicpu/unique_consecutive.py +10 -2
- mindspore/ops/_op_impl/cpu/__init__.py +1 -2
- mindspore/ops/_op_impl/cpu/dynamic_shape.py +5 -1
- mindspore/ops/_op_impl/cpu/maximum_grad.py +2 -0
- mindspore/{compression/common/__init__.py → ops/_op_impl/cpu/pyexecute.py} +13 -8
- mindspore/ops/_op_impl/cpu/reduce_sum.py +8 -0
- mindspore/ops/_op_impl/cpu/sparse_slice.py +62 -0
- mindspore/ops/_op_impl/cpu/sparse_slice_grad.py +60 -0
- mindspore/ops/_op_impl/cpu/tensor_shape.py +5 -1
- mindspore/ops/_op_impl/tbe/__init__.py +27 -608
- mindspore/ops/_op_impl/tbe/addcdiv_ds.py +42 -0
- mindspore/ops/_op_impl/tbe/addcmul_ds.py +44 -0
- mindspore/ops/_op_impl/tbe/assign_add_ds.py +1 -0
- mindspore/ops/_op_impl/tbe/atomic_addr_clean.py +1 -1
- mindspore/ops/_op_impl/tbe/avg_pool_3d_grad.py +1 -1
- mindspore/ops/_op_impl/tbe/basic_lstm_cell_c_state_grad_v2.py +0 -1
- mindspore/ops/_op_impl/tbe/batch_to_space.py +1 -1
- mindspore/ops/_op_impl/tbe/batch_to_space_nd.py +1 -1
- mindspore/ops/_op_impl/tbe/batch_to_space_nd_v2.py +41 -0
- mindspore/ops/_op_impl/tbe/bce_with_logits_loss.py +1 -0
- mindspore/ops/_op_impl/tbe/bias_add_grad.py +2 -0
- mindspore/ops/_op_impl/tbe/bn_infer_grad.py +4 -2
- mindspore/ops/_op_impl/tbe/bn_infer_grad_ds.py +40 -0
- mindspore/ops/_op_impl/tbe/bn_training_update.py +0 -1
- mindspore/ops/_op_impl/tbe/bn_training_update_ds.py +0 -1
- mindspore/ops/_op_impl/tbe/broadcast_to_ds.py +6 -4
- mindspore/ops/_op_impl/tbe/cast.py +0 -2
- mindspore/ops/_op_impl/tbe/cast_ds.py +3 -3
- mindspore/ops/_op_impl/tbe/ctc_loss_v2.py +0 -2
- mindspore/ops/_op_impl/tbe/ctc_loss_v2_grad.py +0 -2
- mindspore/ops/_op_impl/tbe/data_format_dim_map_ds.py +1 -0
- mindspore/ops/_op_impl/tbe/deformable_offsets.py +1 -0
- mindspore/ops/_op_impl/tbe/depthwise_conv2d.py +1 -1
- mindspore/ops/_op_impl/tbe/dynamic_atomic_addr_clean.py +1 -1
- mindspore/ops/_op_impl/tbe/gather_nd.py +1 -0
- mindspore/ops/_op_impl/tbe/greater.py +2 -0
- mindspore/ops/_op_impl/tbe/{index_add.py → inplace_index_add.py} +3 -6
- mindspore/ops/_op_impl/tbe/layer_norm_beta_gamma_backprop_v2.py +0 -1
- mindspore/ops/_op_impl/tbe/npu_clear_float_status_v2.py +35 -0
- mindspore/ops/_op_impl/tbe/npu_get_float_status_v2.py +35 -0
- mindspore/ops/_op_impl/tbe/one_hot_ds.py +0 -6
- mindspore/ops/_op_impl/tbe/{greater_ds.py → reduce_all_ds.py} +13 -16
- mindspore/ops/_op_impl/tbe/reduce_any_ds.py +39 -0
- mindspore/ops/_op_impl/tbe/roi_align_ds.py +44 -0
- mindspore/ops/_op_impl/tbe/roi_align_grad_ds.py +44 -0
- mindspore/ops/_op_impl/tbe/scatter_add.py +2 -0
- mindspore/ops/_op_impl/tbe/scatter_nd_add.py +2 -2
- mindspore/ops/_op_impl/tbe/slice.py +26 -15
- mindspore/ops/_op_impl/tbe/space_to_batch.py +1 -1
- mindspore/ops/_op_impl/tbe/space_to_batch_nd.py +1 -1
- mindspore/ops/_op_impl/tbe/strided_slice_grad_d.py +1 -0
- mindspore/ops/_op_impl/tbe/trans_data_ds.py +15 -5
- mindspore/ops/_op_impl/tbe/unsorted_segment_sum.py +1 -1
- mindspore/ops/_op_impl/tbe/unsorted_segment_sum_ds.py +2 -0
- mindspore/ops/_primitive_cache.py +3 -2
- mindspore/ops/_register_for_op.py +11 -0
- mindspore/ops/_utils/__init__.py +1 -1
- mindspore/ops/_utils/utils.py +20 -41
- mindspore/ops/_vmap/__init__.py +2 -2
- mindspore/ops/_vmap/vmap_array_ops.py +170 -78
- mindspore/ops/_vmap/vmap_base.py +24 -10
- mindspore/ops/_vmap/vmap_convolution_ops.py +7 -10
- mindspore/ops/_vmap/vmap_grad_math_ops.py +4 -4
- mindspore/ops/_vmap/vmap_grad_nn_ops.py +41 -9
- mindspore/ops/_vmap/vmap_image_ops.py +52 -0
- mindspore/ops/_vmap/vmap_math_ops.py +77 -6
- mindspore/ops/_vmap/vmap_nn_ops.py +78 -29
- mindspore/ops/_vmap/vmap_other_ops.py +3 -1
- mindspore/ops/_vmap/vmap_random_ops.py +55 -3
- mindspore/ops/_vmap/vmap_sparse_ops.py +1 -0
- 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 +18 -19
- mindspore/ops/bprop_mindir/Argmax_bprop.mindir +13 -12
- mindspore/ops/bprop_mindir/Argmin_bprop.mindir +14 -13
- mindspore/ops/bprop_mindir/AssignSub_bprop.mindir +17 -18
- mindspore/ops/bprop_mindir/Assign_bprop.mindir +16 -16
- mindspore/ops/bprop_mindir/AvgPool3D_bprop.mindir +150 -0
- mindspore/ops/bprop_mindir/AvgPool_bprop.mindir +66 -0
- mindspore/ops/bprop_mindir/BCEWithLogitsLoss_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/BNTrainingReduce_bprop.mindir +13 -12
- mindspore/ops/bprop_mindir/BatchNormGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/BatchToSpaceND_bprop.mindir +28 -0
- mindspore/ops/bprop_mindir/BiasAddGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/BinaryCrossEntropy_bprop.mindir +33 -0
- mindspore/ops/bprop_mindir/BroadcastTo_bprop.mindir +306 -0
- mindspore/ops/bprop_mindir/Broadcast_bprop.mindir +12 -8
- 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 +240 -0
- mindspore/ops/bprop_mindir/Conv2DBackpropInput_bprop.mindir +247 -0
- mindspore/ops/bprop_mindir/Conv2DTranspose_bprop.mindir +247 -0
- mindspore/ops/bprop_mindir/Conv3DTranspose_bprop.mindir +315 -0
- mindspore/ops/bprop_mindir/Conv3D_bprop.mindir +278 -0
- mindspore/ops/bprop_mindir/DType_bprop.mindir +12 -12
- mindspore/ops/bprop_mindir/DeformableOffsets_bprop.mindir +58 -0
- mindspore/ops/bprop_mindir/Depend_bprop.mindir +12 -13
- mindspore/ops/bprop_mindir/DepthToSpace_bprop.mindir +23 -0
- mindspore/ops/bprop_mindir/DepthwiseConv2dNative_bprop.mindir +138 -0
- mindspore/ops/bprop_mindir/DiagPart_bprop.mindir +15 -0
- 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 +22 -24
- mindspore/ops/bprop_mindir/DropoutGenMask_bprop.mindir +16 -14
- mindspore/ops/bprop_mindir/DropoutGrad_bprop.mindir +27 -0
- 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 +12 -12
- mindspore/ops/bprop_mindir/Elu_bprop.mindir +16 -0
- mindspore/ops/bprop_mindir/EmbeddingLookup_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Equal_bprop.mindir +18 -19
- mindspore/ops/bprop_mindir/ExpandDims_bprop.mindir +58 -0
- mindspore/ops/bprop_mindir/FastGeLU_bprop.mindir +16 -0
- mindspore/ops/bprop_mindir/Flatten_bprop.mindir +54 -0
- mindspore/ops/bprop_mindir/FloorDiv_bprop.mindir +18 -15
- mindspore/ops/bprop_mindir/GatherD_bprop.mindir +26 -0
- mindspore/ops/bprop_mindir/GatherNd_bprop.mindir +57 -0
- mindspore/ops/bprop_mindir/Gather_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/GreaterEqual_bprop.mindir +17 -18
- mindspore/ops/bprop_mindir/Greater_bprop.mindir +18 -19
- mindspore/ops/bprop_mindir/HSigmoid_bprop.mindir +16 -0
- mindspore/ops/bprop_mindir/HSwish_bprop.mindir +16 -0
- mindspore/ops/bprop_mindir/IOU_bprop.mindir +18 -19
- mindspore/ops/bprop_mindir/InstanceNorm_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/IsFinite_bprop.mindir +13 -12
- mindspore/ops/bprop_mindir/IsInf_bprop.mindir +13 -10
- mindspore/ops/bprop_mindir/IsNan_bprop.mindir +14 -11
- mindspore/ops/bprop_mindir/KLDivLoss_bprop.mindir +126 -0
- mindspore/ops/bprop_mindir/L2Loss_bprop.mindir +15 -0
- mindspore/ops/bprop_mindir/L2Normalize_bprop.mindir +30 -0
- mindspore/ops/bprop_mindir/LRN_bprop.mindir +43 -0
- mindspore/ops/bprop_mindir/LayerNormGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/LessEqual_bprop.mindir +18 -19
- mindspore/ops/bprop_mindir/Less_bprop.mindir +17 -18
- mindspore/ops/bprop_mindir/LinSpace_bprop.mindir +22 -19
- mindspore/ops/bprop_mindir/Load_bprop.mindir +12 -13
- mindspore/ops/bprop_mindir/LogSoftmax_bprop.mindir +23 -0
- mindspore/ops/bprop_mindir/LogicalAnd_bprop.mindir +17 -18
- mindspore/ops/bprop_mindir/LogicalNot_bprop.mindir +14 -13
- mindspore/ops/bprop_mindir/MaskedSelect_bprop.mindir +21 -0
- mindspore/ops/bprop_mindir/MaxPool3DGradGrad_bprop.mindir +74 -0
- mindspore/ops/bprop_mindir/MaxPool3DGrad_bprop.mindir +74 -0
- mindspore/ops/bprop_mindir/MaxPool3D_bprop.mindir +75 -0
- mindspore/ops/bprop_mindir/MaxPoolGradGrad_bprop.mindir +65 -0
- 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 +27 -0
- mindspore/ops/bprop_mindir/Mish_bprop.mindir +35 -0
- 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 +14 -0
- mindspore/ops/bprop_mindir/NotEqual_bprop.mindir +18 -19
- mindspore/ops/bprop_mindir/OneHot_bprop.mindir +25 -23
- mindspore/ops/bprop_mindir/OnesLike_bprop.mindir +13 -13
- 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 +29 -0
- mindspore/ops/bprop_mindir/ROIAlign_bprop.mindir +82 -0
- mindspore/ops/bprop_mindir/Range_bprop.mindir +21 -19
- mindspore/ops/bprop_mindir/Rank_bprop.mindir +11 -11
- mindspore/ops/bprop_mindir/ReLU6_bprop.mindir +16 -0
- mindspore/ops/bprop_mindir/ReLUV2_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/ReduceAll_bprop.mindir +18 -17
- mindspore/ops/bprop_mindir/ReduceAny_bprop.mindir +18 -17
- mindspore/ops/bprop_mindir/ReluGrad_bprop.mindir +19 -23
- mindspore/ops/bprop_mindir/Reshape_bprop.mindir +60 -0
- mindspore/ops/bprop_mindir/ResizeBilinear_bprop.mindir +29 -0
- mindspore/ops/bprop_mindir/ResizeNearestNeighbor_bprop.mindir +89 -0
- mindspore/ops/bprop_mindir/ReverseSequence_bprop.mindir +52 -0
- mindspore/ops/bprop_mindir/ReverseV2_bprop.mindir +22 -0
- mindspore/ops/bprop_mindir/Round_bprop.mindir +14 -13
- 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 +22 -0
- mindspore/ops/bprop_mindir/ScatterNd_bprop.mindir +24 -0
- mindspore/ops/bprop_mindir/ScatterNonAliasingAdd_bprop.mindir +22 -0
- mindspore/ops/bprop_mindir/ScatterUpdate_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/SeLU_bprop.mindir +21 -0
- mindspore/ops/bprop_mindir/Select_bprop.mindir +30 -34
- mindspore/ops/bprop_mindir/Shape_bprop.mindir +12 -12
- mindspore/ops/bprop_mindir/SigmoidCrossEntropyWithLogits_bprop.mindir +21 -0
- mindspore/ops/bprop_mindir/SigmoidGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Sigmoid_bprop.mindir +16 -0
- mindspore/ops/bprop_mindir/Sign_bprop.mindir +13 -12
- mindspore/ops/bprop_mindir/Slice_bprop.mindir +26 -0
- mindspore/ops/bprop_mindir/SmoothL1Loss_bprop.mindir +36 -0
- mindspore/ops/bprop_mindir/SoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Softplus_bprop.mindir +16 -0
- mindspore/ops/bprop_mindir/Softsign_bprop.mindir +33 -0
- mindspore/ops/bprop_mindir/Sort_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/SpaceToBatchND_bprop.mindir +28 -0
- mindspore/ops/bprop_mindir/SpaceToDepth_bprop.mindir +23 -0
- 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 +22 -0
- mindspore/ops/bprop_mindir/Squeeze_bprop.mindir +54 -0
- mindspore/ops/bprop_mindir/StridedSliceGrad_bprop.mindir +95 -0
- mindspore/ops/bprop_mindir/StridedSlice_bprop.mindir +98 -0
- mindspore/ops/bprop_mindir/Switch_bprop.mindir +28 -32
- mindspore/ops/bprop_mindir/TanhGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Tanh_bprop.mindir +66 -0
- mindspore/ops/bprop_mindir/TensorScatterAdd_bprop.mindir +22 -0
- mindspore/ops/bprop_mindir/TensorScatterUpdate_bprop.mindir +29 -0
- mindspore/ops/bprop_mindir/TensorShape_bprop.mindir +14 -0
- 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 +23 -0
- mindspore/ops/bprop_mindir/TruncateDiv_bprop.mindir +18 -15
- mindspore/ops/bprop_mindir/TupleGetItem_bprop.mindir +11 -13
- mindspore/ops/bprop_mindir/Unique_bprop.mindir +16 -0
- mindspore/ops/bprop_mindir/Unstack_bprop.mindir +22 -0
- mindspore/ops/bprop_mindir/UpsampleNearest3D_bprop.mindir +32 -0
- mindspore/ops/bprop_mindir/UpsampleTrilinear3D_bprop.mindir +38 -0
- mindspore/ops/bprop_mindir/ZerosLike_bprop.mindir +13 -12
- mindspore/ops/bprop_mindir/__init__.py +1 -4
- mindspore/ops/bprop_mindir/generate_mindir.py +32 -20
- mindspore/ops/composite/__init__.py +12 -13
- mindspore/ops/composite/base.py +261 -254
- mindspore/ops/composite/env_ops.py +41 -0
- mindspore/ops/composite/math_ops.py +197 -156
- mindspore/ops/composite/multitype_ops/_compile_utils.py +428 -176
- mindspore/ops/composite/multitype_ops/_constexpr_utils.py +188 -87
- mindspore/ops/composite/multitype_ops/add_impl.py +23 -1
- mindspore/ops/composite/multitype_ops/div_impl.py +3 -3
- mindspore/ops/composite/multitype_ops/equal_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/floordiv_impl.py +1 -1
- mindspore/ops/composite/multitype_ops/getitem_impl.py +52 -5
- mindspore/ops/composite/multitype_ops/greater_equal_impl.py +31 -0
- mindspore/ops/composite/multitype_ops/greater_impl.py +31 -0
- mindspore/ops/composite/multitype_ops/in_impl.py +15 -3
- mindspore/ops/composite/multitype_ops/less_equal_impl.py +33 -2
- mindspore/ops/composite/multitype_ops/less_impl.py +33 -0
- mindspore/ops/composite/multitype_ops/logical_and_impl.py +2 -2
- mindspore/ops/composite/multitype_ops/logical_or_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/mod_impl.py +1 -1
- mindspore/ops/composite/multitype_ops/mul_impl.py +21 -7
- mindspore/ops/composite/multitype_ops/not_in_impl.py +15 -3
- mindspore/ops/composite/multitype_ops/ones_like_impl.py +2 -4
- mindspore/ops/composite/multitype_ops/pow_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/setitem_impl.py +62 -70
- mindspore/ops/composite/multitype_ops/sub_impl.py +3 -3
- mindspore/ops/composite/multitype_ops/zeros_like_impl.py +41 -4
- mindspore/ops/function/__init__.py +323 -8
- mindspore/ops/function/array_func.py +3511 -780
- mindspore/ops/function/clip_func.py +329 -0
- mindspore/ops/function/debug_func.py +6 -6
- mindspore/ops/function/grad/__init__.py +5 -1
- mindspore/ops/function/grad/grad_func.py +736 -65
- mindspore/ops/function/image_func.py +270 -0
- mindspore/ops/function/linalg_func.py +268 -8
- mindspore/ops/function/math_func.py +8032 -3164
- mindspore/ops/function/nn_func.py +5619 -1855
- mindspore/ops/function/other_func.py +115 -0
- mindspore/ops/function/parameter_func.py +11 -10
- mindspore/ops/function/random_func.py +939 -77
- mindspore/ops/function/sparse_func.py +249 -84
- mindspore/ops/function/sparse_unary_func.py +2303 -0
- mindspore/ops/function/spectral_func.py +146 -0
- mindspore/ops/function/vmap_func.py +114 -0
- mindspore/ops/functional.py +182 -254
- mindspore/ops/op_info_register.py +79 -34
- mindspore/ops/operations/__init__.py +210 -118
- mindspore/ops/operations/_csr_ops.py +7 -7
- mindspore/ops/operations/_embedding_cache_ops.py +25 -15
- mindspore/ops/operations/_grad_ops.py +447 -322
- mindspore/ops/operations/_inner_ops.py +547 -176
- mindspore/ops/operations/_map_tensor_ops.py +112 -0
- mindspore/ops/operations/_ms_kernel.py +29 -27
- mindspore/ops/operations/_ocr_ops.py +11 -11
- mindspore/ops/operations/_opaque_predicate_registry.py +41 -0
- mindspore/ops/operations/_quant_ops.py +186 -101
- mindspore/ops/operations/_rl_inner_ops.py +122 -61
- mindspore/ops/operations/_scalar_ops.py +466 -0
- mindspore/ops/operations/_sequence_ops.py +1047 -0
- mindspore/ops/operations/_tensor_array.py +10 -11
- mindspore/ops/operations/_thor_ops.py +4 -4
- mindspore/ops/operations/array_ops.py +1428 -1226
- mindspore/ops/operations/comm_ops.py +180 -117
- mindspore/ops/operations/control_ops.py +4 -2
- mindspore/ops/operations/custom_ops.py +185 -98
- mindspore/ops/operations/debug_ops.py +92 -54
- mindspore/ops/operations/image_ops.py +406 -211
- mindspore/ops/operations/inner_ops.py +42 -53
- mindspore/ops/operations/linalg_ops.py +32 -29
- mindspore/ops/operations/math_ops.py +2076 -897
- mindspore/ops/operations/nn_ops.py +1282 -1252
- mindspore/ops/operations/other_ops.py +124 -278
- mindspore/ops/operations/random_ops.py +345 -178
- mindspore/ops/operations/rl_ops.py +8 -9
- mindspore/ops/operations/sparse_ops.py +502 -157
- mindspore/ops/operations/spectral_ops.py +107 -0
- mindspore/ops/primitive.py +192 -15
- mindspore/ops/vm_impl_registry.py +23 -2
- mindspore/parallel/__init__.py +6 -1
- mindspore/parallel/_auto_parallel_context.py +199 -92
- mindspore/parallel/_cell_wrapper.py +4 -2
- mindspore/parallel/_cost_model_context.py +3 -0
- mindspore/parallel/_dp_allreduce_fusion.py +2 -1
- mindspore/parallel/_offload_context.py +185 -0
- mindspore/parallel/_parallel_serialization.py +167 -28
- mindspore/parallel/_ps_context.py +9 -5
- mindspore/parallel/_recovery_context.py +1 -1
- mindspore/parallel/_tensor.py +9 -1
- mindspore/{nn/transformer → parallel/_transformer}/__init__.py +6 -6
- mindspore/{nn/transformer → parallel/_transformer}/layers.py +59 -37
- mindspore/{nn/transformer → parallel/_transformer}/loss.py +4 -7
- mindspore/{nn/transformer → parallel/_transformer}/moe.py +160 -35
- mindspore/{nn/transformer → parallel/_transformer}/op_parallel_config.py +3 -3
- mindspore/{nn/transformer → parallel/_transformer}/transformer.py +235 -196
- mindspore/parallel/_utils.py +47 -7
- mindspore/parallel/algo_parameter_config.py +5 -1
- mindspore/parallel/checkpoint_transform.py +329 -0
- mindspore/parallel/shard.py +229 -0
- mindspore/perf_msvcbuildinsights.dll +0 -0
- mindspore/pgodb140.dll +0 -0
- mindspore/pgort140.dll +0 -0
- mindspore/profiler/__init__.py +2 -1
- mindspore/profiler/common/util.py +4 -3
- mindspore/profiler/common/validator/validate_path.py +2 -2
- mindspore/profiler/envprofiling.py +249 -0
- mindspore/profiler/parser/aicpu_data_parser.py +38 -39
- mindspore/profiler/parser/ascend_timeline_generator.py +497 -0
- mindspore/profiler/parser/base_timeline_generator.py +471 -0
- mindspore/profiler/parser/cpu_gpu_timeline_generator.py +684 -0
- mindspore/profiler/parser/framework_parser.py +42 -16
- mindspore/profiler/parser/hccl_parser.py +158 -158
- mindspore/profiler/parser/hwts_log_parser.py +7 -6
- mindspore/profiler/parser/integrator.py +18 -1579
- mindspore/profiler/parser/minddata_analyzer.py +8 -8
- mindspore/profiler/parser/msadvisor_analyzer.py +14 -27
- mindspore/profiler/parser/msadvisor_parser.py +2 -4
- mindspore/profiler/parser/optime_parser.py +17 -18
- mindspore/profiler/parser/profiler_info.py +108 -0
- mindspore/profiler/parser/step_trace_parser.py +1 -1
- mindspore/profiler/profiling.py +396 -194
- mindspore/rewrite/__init__.py +6 -2
- mindspore/rewrite/api/node.py +51 -110
- mindspore/rewrite/api/node_type.py +10 -6
- mindspore/rewrite/api/pattern_engine.py +51 -7
- mindspore/rewrite/api/scoped_value.py +64 -53
- mindspore/rewrite/api/symbol_tree.py +108 -61
- mindspore/rewrite/api/tree_node_helper.py +2 -3
- mindspore/{compression/quant/__init__.py → rewrite/ast_creator_register.py} +20 -11
- mindspore/rewrite/ast_helpers/__init__.py +6 -3
- mindspore/rewrite/ast_helpers/ast_creator.py +115 -0
- mindspore/rewrite/ast_helpers/ast_finder.py +99 -1
- mindspore/rewrite/ast_helpers/ast_modifier.py +17 -4
- mindspore/rewrite/ast_helpers/ast_replacer.py +1 -1
- mindspore/rewrite/ast_transformers/__init__.py +0 -1
- mindspore/rewrite/ast_transformers/flatten_recursive_stmt.py +46 -5
- mindspore/rewrite/ast_transformers/remove_return_out_of_if.py +6 -3
- mindspore/rewrite/common/__init__.py +2 -0
- mindspore/rewrite/common/event.py +1 -1
- mindspore/rewrite/common/observable.py +1 -1
- mindspore/rewrite/common/observer.py +1 -1
- mindspore/rewrite/common/rewrite_elog.py +35 -0
- mindspore/rewrite/namer.py +2 -2
- mindspore/rewrite/namespace.py +14 -4
- mindspore/rewrite/node.py +161 -13
- mindspore/rewrite/parser.py +0 -1
- mindspore/rewrite/parser_register.py +0 -1
- mindspore/rewrite/parsers/arguments_parser.py +3 -2
- mindspore/rewrite/parsers/assign_parser.py +267 -67
- mindspore/rewrite/parsers/attribute_parser.py +56 -0
- mindspore/rewrite/parsers/class_def_parser.py +191 -108
- mindspore/rewrite/parsers/constant_parser.py +101 -0
- mindspore/rewrite/parsers/container_parser.py +88 -0
- mindspore/rewrite/parsers/for_parser.py +28 -15
- mindspore/rewrite/parsers/function_def_parser.py +21 -5
- mindspore/rewrite/parsers/if_parser.py +11 -28
- mindspore/rewrite/parsers/module_parser.py +9 -6
- mindspore/rewrite/parsers/return_parser.py +3 -2
- mindspore/rewrite/sparsify/__init__.py +0 -0
- mindspore/rewrite/sparsify/sparse_transformer.py +448 -0
- mindspore/rewrite/sparsify/sparsify.py +109 -0
- mindspore/rewrite/sparsify/utils.py +173 -0
- mindspore/rewrite/symbol_tree.py +322 -109
- mindspore/rewrite/symbol_tree_builder.py +45 -8
- mindspore/rewrite/symbol_tree_dumper.py +0 -1
- mindspore/rewrite/topological_manager.py +1 -2
- mindspore/run_check/_check_version.py +209 -112
- mindspore/run_check/run_check.py +2 -1
- mindspore/tbbmalloc.dll +0 -0
- mindspore/tinyxml2.dll +0 -0
- mindspore/train/__init__.py +6 -4
- mindspore/train/_utils.py +28 -5
- mindspore/train/amp.py +321 -50
- mindspore/train/callback/__init__.py +3 -1
- mindspore/train/callback/_backup_and_restore.py +120 -0
- mindspore/train/callback/_callback.py +8 -8
- mindspore/train/callback/_checkpoint.py +12 -9
- mindspore/train/callback/_early_stop.py +13 -7
- mindspore/train/callback/_history.py +8 -8
- mindspore/train/callback/_lambda_callback.py +6 -6
- mindspore/train/callback/_landscape.py +36 -38
- mindspore/train/callback/_loss_monitor.py +12 -6
- mindspore/train/callback/_lr_scheduler_callback.py +2 -4
- mindspore/train/callback/_on_request_exit.py +212 -0
- mindspore/train/callback/_reduce_lr_on_plateau.py +13 -7
- mindspore/train/callback/_summary_collector.py +27 -19
- mindspore/train/callback/_time_monitor.py +13 -7
- mindspore/train/checkpoint_pb2.py +68 -8
- mindspore/train/data_sink.py +122 -33
- mindspore/train/dataset_helper.py +28 -87
- mindspore/train/loss_scale_manager.py +4 -7
- mindspore/{nn → train}/metrics/__init__.py +20 -20
- mindspore/{nn → train}/metrics/accuracy.py +12 -10
- mindspore/{nn → train}/metrics/auc.py +4 -4
- mindspore/{nn → train}/metrics/bleu_score.py +4 -4
- mindspore/{nn → train}/metrics/confusion_matrix.py +10 -8
- mindspore/{nn → train}/metrics/cosine_similarity.py +4 -4
- mindspore/{nn → train}/metrics/dice.py +6 -5
- mindspore/{nn → train}/metrics/error.py +7 -5
- mindspore/{nn → train}/metrics/fbeta.py +9 -7
- mindspore/{nn → train}/metrics/hausdorff_distance.py +8 -6
- mindspore/{nn → train}/metrics/loss.py +4 -3
- mindspore/{nn → train}/metrics/mean_surface_distance.py +6 -5
- mindspore/{nn → train}/metrics/metric.py +6 -5
- mindspore/{nn → train}/metrics/occlusion_sensitivity.py +4 -3
- mindspore/{nn → train}/metrics/perplexity.py +5 -4
- mindspore/{nn → train}/metrics/precision.py +5 -4
- mindspore/{nn → train}/metrics/recall.py +5 -4
- mindspore/{nn → train}/metrics/roc.py +7 -6
- mindspore/{nn → train}/metrics/root_mean_square_surface_distance.py +6 -5
- mindspore/{nn → train}/metrics/topk.py +7 -5
- mindspore/train/mind_ir_pb2.py +339 -32
- mindspore/train/model.py +113 -84
- mindspore/train/serialization.py +547 -167
- mindspore/train/summary/_summary_adapter.py +1 -1
- mindspore/train/summary/summary_record.py +43 -12
- mindspore/train/train_thor/convert_utils.py +7 -1
- mindspore/train/train_thor/dataset_helper.py +3 -3
- mindspore/train/train_thor/model_thor.py +0 -4
- mindspore/turbojpeg.dll +0 -0
- mindspore/vcmeta.dll +0 -0
- mindspore/vcruntime140.dll +0 -0
- mindspore/vcruntime140_1.dll +0 -0
- mindspore/version.py +1 -1
- {mindspore-1.10.0.dist-info → mindspore-2.0.0rc1.dist-info}/METADATA +4 -3
- {mindspore-1.10.0.dist-info → mindspore-2.0.0rc1.dist-info}/RECORD +901 -660
- mindspore/compression/common/constant.py +0 -124
- mindspore/compression/export/__init__.py +0 -19
- mindspore/compression/export/quant_export.py +0 -514
- mindspore/compression/quant/qat.py +0 -636
- mindspore/compression/quant/quant_utils.py +0 -462
- mindspore/compression/quant/quantizer.py +0 -68
- mindspore/libatomic-1.dll +0 -0
- mindspore/libgcc_s_seh-1.dll +0 -0
- mindspore/libgfortran-4.dll +0 -0
- mindspore/libgomp-1.dll +0 -0
- mindspore/libjpeg-62.dll +0 -0
- mindspore/libmindspore.dll +0 -0
- mindspore/libmindspore_common.dll +0 -0
- mindspore/libmindspore_core.dll +0 -0
- mindspore/libmindspore_glog.dll +0 -0
- mindspore/libnnacl.dll +0 -0
- mindspore/libopencv_core452.dll +0 -0
- mindspore/libopencv_imgcodecs452.dll +0 -0
- mindspore/libopencv_imgproc452.dll +0 -0
- mindspore/libquadmath-0.dll +0 -0
- mindspore/libsqlite3.dll +0 -0
- mindspore/libssp-0.dll +0 -0
- mindspore/libstdc++-6.dll +0 -0
- mindspore/libtinyxml2.dll +0 -0
- mindspore/libturbojpeg.dll +0 -0
- mindspore/libwinpthread-1.dll +0 -0
- mindspore/nn/layer/quant.py +0 -1868
- mindspore/nn/layer/rnn_utils.py +0 -90
- mindspore/nn/probability/dpn/__init__.py +0 -22
- mindspore/nn/probability/dpn/vae/__init__.py +0 -25
- mindspore/nn/probability/dpn/vae/cvae.py +0 -138
- mindspore/nn/probability/dpn/vae/vae.py +0 -122
- mindspore/nn/probability/infer/__init__.py +0 -22
- mindspore/nn/probability/infer/variational/elbo.py +0 -70
- mindspore/nn/probability/infer/variational/svi.py +0 -84
- mindspore/nn/probability/toolbox/__init__.py +0 -22
- mindspore/nn/probability/toolbox/anomaly_detection.py +0 -99
- mindspore/nn/probability/toolbox/uncertainty_evaluation.py +0 -363
- mindspore/nn/probability/transforms/__init__.py +0 -22
- mindspore/nn/probability/transforms/transform_bnn.py +0 -262
- mindspore/nn/probability/zhusuan/__init__.py +0 -18
- mindspore/nn/probability/zhusuan/framework/__init__.py +0 -18
- mindspore/nn/probability/zhusuan/framework/bn.py +0 -95
- mindspore/nn/probability/zhusuan/variational/__init__.py +0 -18
- mindspore/nn/probability/zhusuan/variational/elbo.py +0 -46
- mindspore/ops/_op_impl/tbe/bias_add_grad_ds.py +0 -52
- mindspore/ops/_op_impl/tbe/scatter_nd_add_ds.py +0 -43
- mindspore/ops/bprop_mindir/AssignAdd_bprop.mindir +0 -20
- mindspore/ops/bprop_mindir/Identity_bprop.mindir +0 -9
- mindspore/ops/bprop_mindir/LogicalOr_bprop.mindir +0 -20
- mindspore/ops/bprop_mindir/ReLU_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/UpdateState_bprop.mindir +0 -17
- mindspore/ops/bprop_mindir/stop_gradient_bprop.mindir +0 -12
- mindspore/ops/composite/array_ops.py +0 -210
- mindspore/ops/composite/clip_ops.py +0 -238
- mindspore/ops/composite/random_ops.py +0 -426
- mindspore/ops/composite/vmap_ops.py +0 -38
- mindspore/ops/operations/sponge_ops.py +0 -3531
- mindspore/ops/operations/sponge_update_ops.py +0 -2546
- mindspore/parallel/nn/__init__.py +0 -42
- mindspore/parallel/nn/loss.py +0 -22
- mindspore/parallel/nn/moe.py +0 -21
- mindspore/parallel/nn/op_parallel_config.py +0 -22
- mindspore/parallel/nn/transformer.py +0 -31
- mindspore/run_check/_check_deps_version.py +0 -84
- {mindspore-1.10.0.dist-info → mindspore-2.0.0rc1.dist-info}/WHEEL +0 -0
- {mindspore-1.10.0.dist-info → mindspore-2.0.0rc1.dist-info}/entry_points.txt +0 -0
- {mindspore-1.10.0.dist-info → mindspore-2.0.0rc1.dist-info}/top_level.txt +0 -0
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
|
|
1
2
|
# Copyright 2020 Huawei Technologies Co., Ltd
|
|
2
3
|
#
|
|
3
4
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -20,14 +21,13 @@ from types import FunctionType, MethodType
|
|
|
20
21
|
|
|
21
22
|
from mindspore import log as logger
|
|
22
23
|
from mindspore.parallel._utils import _get_device_num, _get_gradients_mean,\
|
|
23
|
-
_get_parallel_mode, _get_enable_parallel_optimizer
|
|
24
|
+
_get_parallel_mode, _get_enable_parallel_optimizer, _is_pynative_parallel
|
|
24
25
|
from mindspore.context import ParallelMode
|
|
25
|
-
from mindspore
|
|
26
|
+
from mindspore import _checkparam as validator
|
|
26
27
|
from mindspore import ops, nn
|
|
27
28
|
from mindspore.common import dtype as mstype
|
|
28
|
-
from mindspore.common.api import is_pynative_parallel
|
|
29
29
|
from mindspore.common.parameter import Parameter, ParameterTuple
|
|
30
|
-
from mindspore.ops.primitive import
|
|
30
|
+
from mindspore.ops.primitive import _primexpr
|
|
31
31
|
from mindspore.ops import composite as C
|
|
32
32
|
from mindspore.ops import functional as F
|
|
33
33
|
from mindspore.ops import operations as P
|
|
@@ -110,7 +110,7 @@ class WithLossCell(Cell):
|
|
|
110
110
|
super(WithLossCell, self).__init__(auto_prefix=False)
|
|
111
111
|
self._backbone = backbone
|
|
112
112
|
self._loss_fn = loss_fn
|
|
113
|
-
if backbone.jit_config_dict:
|
|
113
|
+
if isinstance(backbone, Cell) and backbone.jit_config_dict:
|
|
114
114
|
self._jit_config_dict = backbone.jit_config_dict
|
|
115
115
|
|
|
116
116
|
def construct(self, data, label):
|
|
@@ -147,7 +147,7 @@ class WithGradCell(Cell):
|
|
|
147
147
|
output value. Default: None.
|
|
148
148
|
|
|
149
149
|
Inputs:
|
|
150
|
-
-
|
|
150
|
+
- **\*inputs** (Tuple(Tensor)) - Tuple of input tensors with shape :math:`(N, \ldots)`.
|
|
151
151
|
|
|
152
152
|
Outputs:
|
|
153
153
|
list, a list of Tensors with identical shapes as trainable weights.
|
|
@@ -182,6 +182,8 @@ class WithGradCell(Cell):
|
|
|
182
182
|
else:
|
|
183
183
|
self.network_with_loss = WithLossCell(self.network, self.loss_fn)
|
|
184
184
|
self.network_with_loss.set_train()
|
|
185
|
+
if isinstance(network, Cell) and network.jit_config_dict:
|
|
186
|
+
self._jit_config_dict = network.jit_config_dict
|
|
185
187
|
|
|
186
188
|
def construct(self, *inputs):
|
|
187
189
|
weights = self.weights
|
|
@@ -216,8 +218,8 @@ class ForwardValueAndGrad(Cell):
|
|
|
216
218
|
the input parameter.
|
|
217
219
|
|
|
218
220
|
Inputs:
|
|
219
|
-
-
|
|
220
|
-
- **
|
|
221
|
+
- **\*inputs** (Tuple(Tensor...)) - Tuple of inputs with shape :math:`(N, \ldots)`.
|
|
222
|
+
- **sens** - A sensitivity (gradient with respect to output) as the input of backpropagation.
|
|
221
223
|
If network has single output, the sens is a tensor.
|
|
222
224
|
If network has multiple outputs, the sens is the tuple(tensor).
|
|
223
225
|
|
|
@@ -282,6 +284,8 @@ class ForwardValueAndGrad(Cell):
|
|
|
282
284
|
self.get_by_list = get_by_list
|
|
283
285
|
self.sens_param = sens_param
|
|
284
286
|
self.grad = C.GradOperation(get_all=self.get_all, get_by_list=self.get_by_list, sens_param=self.sens_param)
|
|
287
|
+
if isinstance(network, Cell) and network.jit_config_dict:
|
|
288
|
+
self._jit_config_dict = network.jit_config_dict
|
|
285
289
|
|
|
286
290
|
def construct(self, *inputs):
|
|
287
291
|
grad_inputs = inputs
|
|
@@ -309,7 +313,7 @@ class TrainOneStepCell(Cell):
|
|
|
309
313
|
sens (numbers.Number): The scaling number to be filled as the input of backpropagation. Default value is 1.0.
|
|
310
314
|
|
|
311
315
|
Inputs:
|
|
312
|
-
-
|
|
316
|
+
- **\*inputs** (Tuple(Tensor)) - Tuple of input tensors with shape :math:`(N, \ldots)`.
|
|
313
317
|
|
|
314
318
|
Outputs:
|
|
315
319
|
Tensor, a tensor means the loss value, the shape of which is usually :math:`()`.
|
|
@@ -359,10 +363,12 @@ class TrainOneStepCell(Cell):
|
|
|
359
363
|
self.grad_reducer = F.identity
|
|
360
364
|
self.parallel_mode = _get_parallel_mode()
|
|
361
365
|
self.reducer_flag = self.parallel_mode in (ParallelMode.DATA_PARALLEL, ParallelMode.HYBRID_PARALLEL) or \
|
|
362
|
-
|
|
366
|
+
_is_pynative_parallel()
|
|
363
367
|
if self.reducer_flag:
|
|
364
368
|
self.mean = _get_gradients_mean()
|
|
365
369
|
self.degree = _get_device_num()
|
|
370
|
+
from mindspore.communication.management import GlobalComm
|
|
371
|
+
group = GlobalComm.WORLD_COMM_GROUP
|
|
366
372
|
if isinstance(self.optimizer, (nn.AdaSumByGradWrapCell, nn.AdaSumByDeltaWeightWrapCell)):
|
|
367
373
|
from mindspore.communication.management import get_group_size, create_group, get_rank
|
|
368
374
|
group_number = get_group_size() // 8
|
|
@@ -371,10 +377,10 @@ class TrainOneStepCell(Cell):
|
|
|
371
377
|
current_index = get_rank() // 8
|
|
372
378
|
server_group_name = "allreduce_" + str(current_index)
|
|
373
379
|
create_group(server_group_name, group_list[current_index])
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
380
|
+
group = server_group_name
|
|
381
|
+
self.grad_reducer = DistributedGradReducer(self.weights, self.mean, self.degree, group=group)
|
|
382
|
+
if isinstance(network, Cell) and network.jit_config_dict:
|
|
383
|
+
self._jit_config_dict = network.jit_config_dict
|
|
378
384
|
|
|
379
385
|
def construct(self, *inputs):
|
|
380
386
|
loss = self.network(*inputs)
|
|
@@ -453,19 +459,19 @@ class _VirtualDatasetCell(Cell):
|
|
|
453
459
|
super(_VirtualDatasetCell, self).__init__(auto_prefix=False)
|
|
454
460
|
self._backbone = backbone
|
|
455
461
|
self._virtual_dataset = _VirtualDataset()
|
|
462
|
+
if isinstance(backbone, Cell) and backbone.jit_config_dict:
|
|
463
|
+
self._jit_config_dict = backbone.jit_config_dict
|
|
456
464
|
|
|
457
465
|
def construct(self, *inputs):
|
|
458
466
|
output = self._virtual_dataset(*inputs)
|
|
459
467
|
return self._backbone(*output)
|
|
460
468
|
|
|
461
469
|
|
|
462
|
-
@
|
|
463
|
-
def _check_shape_value_on_axis_divided_by_target_value(input_shape,
|
|
464
|
-
if input_shape[
|
|
465
|
-
raise ValueError(f"For
|
|
466
|
-
f"
|
|
467
|
-
f"but got {input_shape[dim]}")
|
|
468
|
-
return True
|
|
470
|
+
@_primexpr
|
|
471
|
+
def _check_shape_value_on_axis_divided_by_target_value(input_shape, micro_size):
|
|
472
|
+
if input_shape[0] % micro_size != 0:
|
|
473
|
+
raise ValueError(f"For micro batch initialization, the 0th dimension shape of input({input_shape[0]}) must be "
|
|
474
|
+
f"divided by micro size({micro_size})")
|
|
469
475
|
|
|
470
476
|
|
|
471
477
|
class _MicroBatch(Cell):
|
|
@@ -486,8 +492,7 @@ class _MicroBatch(Cell):
|
|
|
486
492
|
micro_inputs = ()
|
|
487
493
|
for each_input in inputs:
|
|
488
494
|
input_shape = self.shape(each_input)
|
|
489
|
-
_check_shape_value_on_axis_divided_by_target_value(input_shape,
|
|
490
|
-
self.cls_name, self.micro_size)
|
|
495
|
+
_check_shape_value_on_axis_divided_by_target_value(input_shape, self.micro_size)
|
|
491
496
|
micro_batch_begin = i * input_shape[0] // self.micro_size
|
|
492
497
|
micro_batch_end = (i + 1) * input_shape[0] // self.micro_size
|
|
493
498
|
strided_slice_begin = (micro_batch_begin,)
|
|
@@ -504,18 +509,31 @@ class _MicroBatch(Cell):
|
|
|
504
509
|
|
|
505
510
|
class MicroBatchInterleaved(Cell):
|
|
506
511
|
"""
|
|
507
|
-
|
|
512
|
+
This function splits the input at the 0th into interleave_num pieces and then performs
|
|
513
|
+
the computation of the wrapped cell. Application scenario: When there is model parallelism in semi-automatic mode
|
|
514
|
+
and network, if the first slice data is calculating forward, the second slice data will execute the
|
|
515
|
+
communication operators at the same time, to achieve the performance acceleration of communication and computing
|
|
516
|
+
concurrency.
|
|
517
|
+
|
|
518
|
+
Note:
|
|
519
|
+
The output of the input network must be a single tensor.
|
|
508
520
|
|
|
509
521
|
Args:
|
|
510
522
|
network (Cell): The target network to wrap.
|
|
511
|
-
interleave_num (int): split num of batch size. Default: 2.
|
|
523
|
+
interleave_num (int, optional): split num of batch size. Default: 2.
|
|
524
|
+
|
|
525
|
+
Inputs:
|
|
526
|
+
tuple[Tensor]. It's the same with the input of the `network` .
|
|
527
|
+
|
|
528
|
+
Outputs:
|
|
529
|
+
Tensor. The output of the input `network` .
|
|
512
530
|
|
|
513
531
|
Supported Platforms:
|
|
514
532
|
``Ascend`` ``GPU``
|
|
515
533
|
|
|
516
534
|
Examples:
|
|
517
535
|
>>> net = Net()
|
|
518
|
-
>>> net = MicroBatchInterleaved(net,
|
|
536
|
+
>>> net = MicroBatchInterleaved(net, 2)
|
|
519
537
|
"""
|
|
520
538
|
def __init__(self, network, interleave_num=2):
|
|
521
539
|
super(MicroBatchInterleaved, self).__init__(auto_prefix=False)
|
|
@@ -534,6 +552,8 @@ class MicroBatchInterleaved(Cell):
|
|
|
534
552
|
interleave_data.strided_slice.add_prim_attr("strided_slice_flag", True)
|
|
535
553
|
interleave_data.strided_slice.add_prim_attr("interleave_num", interleave_num)
|
|
536
554
|
self.interleave_inputs.append(interleave_data)
|
|
555
|
+
if isinstance(network, Cell) and network.jit_config_dict:
|
|
556
|
+
self._jit_config_dict = network.jit_config_dict
|
|
537
557
|
|
|
538
558
|
def construct(self, *inputs):
|
|
539
559
|
output = 0.0
|
|
@@ -572,6 +592,8 @@ class PipelineCell(Cell):
|
|
|
572
592
|
self.micro_inputs.append(micro_input)
|
|
573
593
|
self.add = P.Add().add_prim_attr("pipeline_end", i)
|
|
574
594
|
self.add_list.append(self.add)
|
|
595
|
+
if isinstance(network, Cell) and network.jit_config_dict:
|
|
596
|
+
self._jit_config_dict = network.jit_config_dict
|
|
575
597
|
|
|
576
598
|
def construct(self, *inputs):
|
|
577
599
|
ret = None
|
|
@@ -600,6 +622,8 @@ class _TrainPipelineAccuStepCell(TrainOneStepCell):
|
|
|
600
622
|
self.accu_grads = self.weights.clone(prefix="accu_grads", init="zeros")
|
|
601
623
|
self.hyper_map = ops.HyperMap()
|
|
602
624
|
self.opt_shard = _get_enable_parallel_optimizer()
|
|
625
|
+
if isinstance(network, Cell) and network.jit_config_dict:
|
|
626
|
+
self._jit_config_dict = network.jit_config_dict
|
|
603
627
|
|
|
604
628
|
def construct(self, *inputs):
|
|
605
629
|
weights = self.weights
|
|
@@ -641,6 +665,8 @@ class VirtualDatasetCellTriple(Cell):
|
|
|
641
665
|
super(VirtualDatasetCellTriple, self).__init__(auto_prefix=False)
|
|
642
666
|
logger.warning("WARN_DEPRECATED: The usage of VirtualDatasetCellTriple is deprecated.")
|
|
643
667
|
self._backbone = backbone
|
|
668
|
+
if isinstance(backbone, Cell) and backbone.jit_config_dict:
|
|
669
|
+
self._jit_config_dict = backbone.jit_config_dict
|
|
644
670
|
|
|
645
671
|
def construct(self, a, b, c):
|
|
646
672
|
return self._backbone(a, b, c)
|
|
@@ -683,6 +709,8 @@ class WithEvalCell(Cell):
|
|
|
683
709
|
self._network = network
|
|
684
710
|
self._loss_fn = loss_fn
|
|
685
711
|
self.add_cast_fp32 = validator.check_value_type("add_cast_fp32", add_cast_fp32, [bool], self.cls_name)
|
|
712
|
+
if isinstance(network, Cell) and network.jit_config_dict:
|
|
713
|
+
self._jit_config_dict = network.jit_config_dict
|
|
686
714
|
|
|
687
715
|
def construct(self, data, label):
|
|
688
716
|
outputs = self._network(data)
|
|
@@ -706,7 +734,7 @@ class ParameterUpdate(Cell):
|
|
|
706
734
|
- **x** (Tensor) - A tensor whose shape and type are the same with `param`.
|
|
707
735
|
|
|
708
736
|
Outputs:
|
|
709
|
-
Tensor, the
|
|
737
|
+
Tensor, the updated value.
|
|
710
738
|
|
|
711
739
|
Raises:
|
|
712
740
|
KeyError: If parameter with the specified name does not exist.
|
|
@@ -19,13 +19,13 @@ from mindspore import context
|
|
|
19
19
|
from mindspore import log as logger
|
|
20
20
|
from mindspore.nn.cell import Cell
|
|
21
21
|
from mindspore.communication.management import GlobalComm, get_group_size
|
|
22
|
-
from mindspore.common.
|
|
22
|
+
from mindspore.common.sparse_tensor import RowTensorInner
|
|
23
23
|
from mindspore.ops import functional as F, composite as C
|
|
24
24
|
from mindspore.ops.operations.comm_ops import AllReduce, AllGather
|
|
25
25
|
from mindspore.parallel._auto_parallel_context import auto_parallel_context
|
|
26
26
|
import mindspore.common.dtype as mstype
|
|
27
|
-
from mindspore.common.
|
|
28
|
-
from mindspore.common.api import
|
|
27
|
+
from mindspore.common.sparse_tensor import Tensor
|
|
28
|
+
from mindspore.common.api import jit
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
reduce_opt = C.MultitypeFuncGraph("reduce_opt")
|
|
@@ -188,7 +188,7 @@ def _tensors_allreduce_with_sparse(degree, mean, allgather, allreduce, allreduce
|
|
|
188
188
|
dout = allgather(grad.values)
|
|
189
189
|
if mean:
|
|
190
190
|
dout = F.tensor_mul(dout, F.cast(degree, F.dtype(dout)))
|
|
191
|
-
grad =
|
|
191
|
+
grad = RowTensorInner(indices, dout, grad.dense_shape)
|
|
192
192
|
return grad
|
|
193
193
|
|
|
194
194
|
|
|
@@ -218,7 +218,7 @@ def _tensors_allreduce_with_sparse_ps(degree, mean, allgather, allreduce, allred
|
|
|
218
218
|
dout = allgather(grad.values)
|
|
219
219
|
if mean:
|
|
220
220
|
dout = F.tensor_mul(dout, F.cast(degree, F.dtype(dout)))
|
|
221
|
-
grad =
|
|
221
|
+
grad = RowTensorInner(indices, dout, grad.dense_shape)
|
|
222
222
|
return grad
|
|
223
223
|
|
|
224
224
|
|
|
@@ -284,7 +284,7 @@ def _tensors_cast_datatype_with_sparse(datatype, grad):
|
|
|
284
284
|
RowTensor, the gradient after operation.
|
|
285
285
|
"""
|
|
286
286
|
dout = F.cast(grad.values, datatype)
|
|
287
|
-
return
|
|
287
|
+
return RowTensorInner(grad.indices, dout, grad.dense_shape)
|
|
288
288
|
|
|
289
289
|
|
|
290
290
|
class DistributedGradReducer(Cell):
|
|
@@ -310,10 +310,19 @@ class DistributedGradReducer(Cell):
|
|
|
310
310
|
``Ascend`` ``GPU``
|
|
311
311
|
|
|
312
312
|
Examples:
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
313
|
+
.. note::
|
|
314
|
+
Before running the following examples, you need to configure the communication environment variables.
|
|
315
|
+
|
|
316
|
+
For the Ascend devices, users need to prepare the rank table, set rank_id and device_id.
|
|
317
|
+
Please see the `Ascend tutorial
|
|
318
|
+
<https://www.mindspore.cn/tutorials/experts/en/r2.0/parallel/train_ascend.html#preparations>`_
|
|
319
|
+
for more details.
|
|
320
|
+
|
|
321
|
+
For the GPU devices, users need to prepare the host file and mpi, please see the `GPU tutorial
|
|
322
|
+
<https://www.mindspore.cn/tutorials/experts/en/r2.0/parallel/train_gpu.html#preparation>`_ .
|
|
323
|
+
|
|
324
|
+
This example should be run with multiple devices.
|
|
325
|
+
|
|
317
326
|
>>> import numpy as np
|
|
318
327
|
>>> import mindspore as ms
|
|
319
328
|
>>> from mindspore.communication import init
|
|
@@ -416,7 +425,7 @@ class DistributedGradReducer(Cell):
|
|
|
416
425
|
self.mode = context.get_context("mode")
|
|
417
426
|
self.enable_tuple_broaden = True
|
|
418
427
|
|
|
419
|
-
@
|
|
428
|
+
@jit
|
|
420
429
|
def construct(self, grads):
|
|
421
430
|
"""
|
|
422
431
|
Under certain circumstances, the data precision of grads could be mixed with float16 and float32. Thus, the
|
mindspore/nn/wrap/loss_scale.py
CHANGED
|
@@ -20,13 +20,15 @@ from mindspore.context import ParallelMode
|
|
|
20
20
|
from mindspore.parallel._utils import _get_enable_parallel_optimizer
|
|
21
21
|
from mindspore.nn.wrap.cell_wrapper import TrainOneStepCell
|
|
22
22
|
from mindspore.nn.cell import Cell
|
|
23
|
-
from mindspore.common import Tensor
|
|
23
|
+
from mindspore.common import Tensor
|
|
24
|
+
from mindspore.common.sparse_tensor import RowTensorInner
|
|
24
25
|
from mindspore.common.parameter import Parameter
|
|
26
|
+
from mindspore.ops.operations.math_ops import NPUGetFloatStatusV2, NPUClearFloatStatusV2
|
|
25
27
|
from mindspore.ops import functional as F
|
|
26
28
|
from mindspore.ops import composite as C
|
|
27
29
|
from mindspore.ops import operations as P
|
|
28
30
|
from mindspore.common import dtype as mstype
|
|
29
|
-
from mindspore.common.api import
|
|
31
|
+
from mindspore.common.api import jit
|
|
30
32
|
|
|
31
33
|
_grad_scale = C.MultitypeFuncGraph("grad_scale")
|
|
32
34
|
reciprocal = P.Reciprocal()
|
|
@@ -39,9 +41,9 @@ def tensor_grad_scale(scale, grad):
|
|
|
39
41
|
|
|
40
42
|
@_grad_scale.register("Tensor", "RowTensor")
|
|
41
43
|
def tensor_grad_scale_row_tensor(scale, grad):
|
|
42
|
-
return
|
|
43
|
-
|
|
44
|
-
|
|
44
|
+
return RowTensorInner(grad.indices,
|
|
45
|
+
grad.values * F.cast(reciprocal(scale), F.dtype(grad.values)),
|
|
46
|
+
grad.dense_shape)
|
|
45
47
|
|
|
46
48
|
_grad_overflow = C.MultitypeFuncGraph("_grad_overflow")
|
|
47
49
|
grad_overflow = P.FloatStatus()
|
|
@@ -243,7 +245,7 @@ class TrainOneStepWithLossScaleCell(TrainOneStepCell):
|
|
|
243
245
|
the shape should be :math:`()` or :math:`(1,)`.
|
|
244
246
|
|
|
245
247
|
Inputs:
|
|
246
|
-
-
|
|
248
|
+
- **\*inputs** (Tuple(Tensor)) - Tuple of input tensors with shape :math:`(N, \ldots)`.
|
|
247
249
|
|
|
248
250
|
Outputs:
|
|
249
251
|
Tuple of 3 Tensor, the loss, overflow flag and current loss scale value.
|
|
@@ -254,7 +256,7 @@ class TrainOneStepWithLossScaleCell(TrainOneStepCell):
|
|
|
254
256
|
|
|
255
257
|
Raises:
|
|
256
258
|
TypeError: If `scale_sense` is neither Cell nor Tensor.
|
|
257
|
-
ValueError: If shape of `scale_sense` is neither (1,) nor ()
|
|
259
|
+
ValueError: If shape of `scale_sense` is neither :math:`(1,)` nor :math:`()`.
|
|
258
260
|
|
|
259
261
|
Supported Platforms:
|
|
260
262
|
``Ascend`` ``GPU``
|
|
@@ -308,8 +310,11 @@ class TrainOneStepWithLossScaleCell(TrainOneStepCell):
|
|
|
308
310
|
super(TrainOneStepWithLossScaleCell, self).__init__(network, optimizer, sens=None)
|
|
309
311
|
self.hyper_map = C.HyperMap()
|
|
310
312
|
self.base = Tensor(1, mstype.float32)
|
|
313
|
+
self.base0 = Tensor(0, mstype.int32)
|
|
311
314
|
self.reduce_sum = P.ReduceSum(keep_dims=False)
|
|
315
|
+
self.reduce_any = P.ReduceAny(keep_dims=False)
|
|
312
316
|
self.less_equal = P.LessEqual()
|
|
317
|
+
self.not_equal = P.NotEqual()
|
|
313
318
|
self.allreduce = P.AllReduce()
|
|
314
319
|
self.is_distributed = (self.parallel_mode != ParallelMode.STAND_ALONE)
|
|
315
320
|
self.gpu_target = (context.get_context("device_target") == "GPU")
|
|
@@ -384,22 +389,21 @@ class TrainOneStepWithLossScaleCell(TrainOneStepCell):
|
|
|
384
389
|
cleared before executing the computation.
|
|
385
390
|
|
|
386
391
|
Returns:
|
|
387
|
-
Tuple[object, object], the first
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
execution
|
|
392
|
+
Tuple[object, object], the first output is used to control the execution sequence. To ensure that the
|
|
393
|
+
`start_overflow_check` is executed before get_overflow_status after compilation optimization is performed.
|
|
394
|
+
This value should be used as the first input of get_overflow_status. The second output is the same as
|
|
395
|
+
the input of compute_input, used to control the execution sequence, and make ensure that the overflow flag
|
|
396
|
+
is cleaned up when the function returns.
|
|
391
397
|
"""
|
|
392
|
-
status =
|
|
398
|
+
status = Tensor([0] * 8, mstype.int32)
|
|
393
399
|
if not self.gpu_target:
|
|
394
|
-
# init overflow buffer
|
|
395
|
-
status = P.NPUAllocFloatStatus()()
|
|
396
400
|
status = F.depend(status, pre_cond)
|
|
397
401
|
# clear overflow buffer
|
|
398
|
-
clear_status =
|
|
402
|
+
clear_status = NPUClearFloatStatusV2()(status)
|
|
399
403
|
compute_input = F.depend(compute_input, clear_status)
|
|
400
404
|
return status, compute_input
|
|
401
405
|
|
|
402
|
-
@
|
|
406
|
+
@jit
|
|
403
407
|
def get_overflow_status(self, status, compute_output):
|
|
404
408
|
"""
|
|
405
409
|
Get floating-point overflow status.
|
|
@@ -408,32 +412,45 @@ class TrainOneStepWithLossScaleCell(TrainOneStepCell):
|
|
|
408
412
|
based on this class can also call this interface to process the overflow.
|
|
409
413
|
|
|
410
414
|
Args:
|
|
411
|
-
status (object):
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
computation.
|
|
415
|
+
status (object): To control the execution sequence with start_overflow_check, it should be set as the first
|
|
416
|
+
output of start_overflow_check.
|
|
417
|
+
compute_output: Overflow detection should be performed in a certain computation process. Set
|
|
418
|
+
`compute_output` as the output of the computation process.
|
|
415
419
|
|
|
416
420
|
Returns:
|
|
417
421
|
bool, whether the overflow occurs or not.
|
|
418
422
|
"""
|
|
419
423
|
if not self.gpu_target:
|
|
420
424
|
status = F.depend(status, compute_output)
|
|
421
|
-
get_status =
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
+
get_status = NPUGetFloatStatusV2()(status)
|
|
426
|
+
|
|
427
|
+
if self.is_distributed:
|
|
428
|
+
# sum overflow flag over devices
|
|
429
|
+
flag_reduce = self.allreduce(get_status)
|
|
430
|
+
# get_status not equal to [0]*8 means overflow
|
|
431
|
+
flag = self.not_equal(self.base0, flag_reduce)
|
|
432
|
+
status = F.depend(status, flag)
|
|
433
|
+
# distributed needs to skip allreduce to avoid its overflow affecting the next step
|
|
434
|
+
clear_status = NPUClearFloatStatusV2()(status)
|
|
435
|
+
flag = F.depend(flag, clear_status)
|
|
436
|
+
else:
|
|
437
|
+
status = F.depend(status, get_status)
|
|
438
|
+
clear_status = NPUClearFloatStatusV2()(status)
|
|
439
|
+
get_status = F.depend(get_status, clear_status)
|
|
440
|
+
flag = self.not_equal(self.base0, get_status)
|
|
441
|
+
overflow = self.reduce_any(flag)
|
|
425
442
|
else:
|
|
426
443
|
flag_sum = self.hyper_map(F.partial(_grad_overflow), compute_output)
|
|
427
444
|
flag_sum = P.AddN()(flag_sum)
|
|
428
445
|
# convert flag_sum to scalar
|
|
429
446
|
flag_sum = P.Reshape()(flag_sum, (()))
|
|
430
447
|
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
448
|
+
if self.is_distributed:
|
|
449
|
+
# sum overflow flag over devices
|
|
450
|
+
flag_reduce = self.allreduce(flag_sum)
|
|
451
|
+
overflow = self.less_equal(self.base, flag_reduce)
|
|
452
|
+
else:
|
|
453
|
+
overflow = self.less_equal(self.base, flag_sum)
|
|
437
454
|
return overflow
|
|
438
455
|
|
|
439
456
|
def process_loss_scale(self, overflow):
|
|
@@ -22,12 +22,14 @@ import operator
|
|
|
22
22
|
import numpy as onp
|
|
23
23
|
|
|
24
24
|
from mindspore import context
|
|
25
|
+
from mindspore import ops
|
|
25
26
|
from mindspore.common import Tensor
|
|
26
27
|
from mindspore.common import dtype as mstype
|
|
27
28
|
from mindspore.common.seed import get_seed
|
|
28
29
|
from mindspore.ops import operations as P
|
|
29
30
|
from mindspore.ops import functional as F
|
|
30
|
-
from mindspore.ops.primitive import constexpr
|
|
31
|
+
from mindspore.ops.primitive import constexpr, _primexpr
|
|
32
|
+
from mindspore.ops.function.random_func import _get_seed
|
|
31
33
|
from mindspore.nn.layer.basic import tril as nn_tril
|
|
32
34
|
from mindspore.nn.layer.basic import triu as nn_triu
|
|
33
35
|
from mindspore._c_expression import Tensor as Tensor_
|
|
@@ -454,7 +456,8 @@ def randn(*shape, dtype=mstype.float32):
|
|
|
454
456
|
size = _generate_shapes(shape)
|
|
455
457
|
seed = get_seed()
|
|
456
458
|
if seed is not None:
|
|
457
|
-
|
|
459
|
+
seed1, seed2 = _get_seed(seed, "StandardNormal")
|
|
460
|
+
stdnormal = P.StandardNormal(seed=seed1, seed2=seed2)
|
|
458
461
|
else:
|
|
459
462
|
stdnormal = P.StandardNormal()
|
|
460
463
|
return stdnormal(size).astype(dtype)
|
|
@@ -494,7 +497,8 @@ def rand(*shape, dtype=mstype.float32):
|
|
|
494
497
|
size = _generate_shapes(shape)
|
|
495
498
|
seed = get_seed()
|
|
496
499
|
if seed is not None:
|
|
497
|
-
|
|
500
|
+
seed1, seed2 = _get_seed(seed, "UniformReal")
|
|
501
|
+
uniformreal = P.UniformReal(seed=seed1, seed2=seed2)
|
|
498
502
|
else:
|
|
499
503
|
uniformreal = P.UniformReal()
|
|
500
504
|
return uniformreal(size).astype(dtype)
|
|
@@ -563,7 +567,8 @@ def randint(minval, maxval=None, shape=None, dtype=mstype.int32):
|
|
|
563
567
|
shape = _check_shape(shape)
|
|
564
568
|
seed = get_seed()
|
|
565
569
|
if seed is not None:
|
|
566
|
-
|
|
570
|
+
seed1, seed2 = _get_seed(seed, "UniformInt")
|
|
571
|
+
uniformint = P.UniformInt(seed=seed1, seed2=seed2)
|
|
567
572
|
else:
|
|
568
573
|
uniformint = P.UniformInt()
|
|
569
574
|
t_min = _type_convert(Tensor, minval).astype(dtype)
|
|
@@ -971,12 +976,10 @@ def empty(shape, dtype=mstype.float32):
|
|
|
971
976
|
>>> import mindspore.numpy as np
|
|
972
977
|
>>> output = np.empty((2, 3))
|
|
973
978
|
>>> print(output)
|
|
974
|
-
|
|
975
|
-
|
|
979
|
+
[[0. 0. 0.]
|
|
980
|
+
[0. 0. 0.]]
|
|
976
981
|
"""
|
|
977
|
-
|
|
978
|
-
dtype = _check_dtype(dtype)
|
|
979
|
-
return empty_compile(dtype, shape)
|
|
982
|
+
return ops.zeros(shape, dtype)
|
|
980
983
|
|
|
981
984
|
|
|
982
985
|
def _get_shape(array_like):
|
|
@@ -1042,8 +1045,10 @@ def empty_like(prototype, dtype=None, shape=None):
|
|
|
1042
1045
|
>>> a = np.ones((4,1,2))
|
|
1043
1046
|
>>> output = np.empty_like(a)
|
|
1044
1047
|
>>> print(output)
|
|
1045
|
-
|
|
1046
|
-
|
|
1048
|
+
[[[0. 0.]]
|
|
1049
|
+
[[0. 0.]]
|
|
1050
|
+
[[0. 0.]]
|
|
1051
|
+
[[0. 0.]]]
|
|
1047
1052
|
"""
|
|
1048
1053
|
return _x_like(prototype, dtype, shape, empty)
|
|
1049
1054
|
|
|
@@ -1240,6 +1245,13 @@ def tril(m, k=0):
|
|
|
1240
1245
|
m = asarray_const(m)
|
|
1241
1246
|
dtype = m.dtype
|
|
1242
1247
|
device_target = _device_target()
|
|
1248
|
+
# check rank
|
|
1249
|
+
rank = len(m.shape)
|
|
1250
|
+
if rank < 1:
|
|
1251
|
+
_raise_value_error("input m's rank should be larger than 0")
|
|
1252
|
+
elif rank == 1:
|
|
1253
|
+
mask = tri(m.shape[0], k=k, dtype=mstype.bool_)
|
|
1254
|
+
return where(mask, m, zeros(1, m.dtype))
|
|
1243
1255
|
# Only Ascend hardware will reduce accuracy
|
|
1244
1256
|
if device_target == "Ascend":
|
|
1245
1257
|
m = m.astype(mstype.float32)
|
|
@@ -1287,6 +1299,13 @@ def triu(m, k=0):
|
|
|
1287
1299
|
m = asarray_const(m)
|
|
1288
1300
|
dtype = m.dtype
|
|
1289
1301
|
device_target = _device_target()
|
|
1302
|
+
# check rank
|
|
1303
|
+
rank = len(m.shape)
|
|
1304
|
+
if rank < 1:
|
|
1305
|
+
_raise_value_error("input m's rank should be larger than 0")
|
|
1306
|
+
elif rank == 1:
|
|
1307
|
+
mask = tri(m.shape[0], k=k-1, dtype=mstype.bool_)
|
|
1308
|
+
return where(mask, zeros(1, m.dtype), m)
|
|
1290
1309
|
# Only Ascend hardware will reduce accuracy
|
|
1291
1310
|
if device_target == "Ascend":
|
|
1292
1311
|
m = m.astype(mstype.float32)
|
|
@@ -1403,14 +1422,6 @@ def trace(a, offset=0, axis1=0, axis2=1, dtype=None):
|
|
|
1403
1422
|
>>> output = np.trace(np.eye(3))
|
|
1404
1423
|
>>> print(output)
|
|
1405
1424
|
3.0
|
|
1406
|
-
>>> a = np.arange(8).reshape((2,2,2))
|
|
1407
|
-
>>> output = np.trace(a)
|
|
1408
|
-
>>> print(output)
|
|
1409
|
-
[6 8]
|
|
1410
|
-
>>> a = np.arange(24).reshape((2,2,2,3))
|
|
1411
|
-
>>> output = np.trace(a).shape
|
|
1412
|
-
>>> print(output)
|
|
1413
|
-
(2, 3)
|
|
1414
1425
|
"""
|
|
1415
1426
|
return a.trace(offset=offset, axis1=axis1, axis2=axis2, dtype=dtype)
|
|
1416
1427
|
|
|
@@ -1565,7 +1576,7 @@ class NdGrid:
|
|
|
1565
1576
|
if self.sparse:
|
|
1566
1577
|
return grids
|
|
1567
1578
|
|
|
1568
|
-
if isinstance(grids, Tensor_):
|
|
1579
|
+
if isinstance(grids, (Tensor, Tensor_)):
|
|
1569
1580
|
return grids
|
|
1570
1581
|
expanded = []
|
|
1571
1582
|
for grid in grids:
|
|
@@ -2564,13 +2575,13 @@ def _pad_func(arr, pad_width, func, **kwargs):
|
|
|
2564
2575
|
return arr
|
|
2565
2576
|
|
|
2566
2577
|
|
|
2567
|
-
@
|
|
2578
|
+
@_primexpr
|
|
2568
2579
|
def _make_stat_length(shape):
|
|
2569
2580
|
"""converts the stat_length values."""
|
|
2570
2581
|
return tuple((shape[i], shape[i]) for i, _ in enumerate(shape))
|
|
2571
2582
|
|
|
2572
2583
|
|
|
2573
|
-
@
|
|
2584
|
+
@_primexpr
|
|
2574
2585
|
def _limit_stat_length(stat_length, shape):
|
|
2575
2586
|
"""limits the stat_length to current array length along given dimension."""
|
|
2576
2587
|
return tuple((min(stat_pair[0], shape[i]), min(stat_pair[1], shape[i])) for i, stat_pair in enumerate(stat_length))
|