mindspore 1.10.0__cp39-cp39-win_amd64.whl → 2.0.0rc1__cp39-cp39-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.cp39-win_amd64.pyd +0 -0
- mindspore/_c_expression.cp39-win_amd64.pyd +0 -0
- mindspore/_c_mindrecord.cp39-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
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
# Copyright 2022 Huawei Technologies Co., Ltd
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
# ============================================================================
|
|
15
|
+
"""backup and restore related classes and functions."""
|
|
16
|
+
from __future__ import absolute_import
|
|
17
|
+
|
|
18
|
+
import os
|
|
19
|
+
import stat
|
|
20
|
+
|
|
21
|
+
from mindspore import log as logger
|
|
22
|
+
from mindspore.train.serialization import load_checkpoint, save_checkpoint
|
|
23
|
+
from mindspore.train.callback._callback import Callback
|
|
24
|
+
from mindspore.train._utils import _make_directory
|
|
25
|
+
from mindspore import _checkparam as Validator
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class BackupAndRestore(Callback):
|
|
29
|
+
"""
|
|
30
|
+
Callback to back up and restore the parameters during training.
|
|
31
|
+
|
|
32
|
+
Note:
|
|
33
|
+
This function can only use in training.
|
|
34
|
+
|
|
35
|
+
Args:
|
|
36
|
+
backup_dir (str): Path to store and load the checkpoint file.
|
|
37
|
+
save_freq(Union['epoch', int]): When set to 'epoch' the callback saves the checkpoint at the end of
|
|
38
|
+
each epoch. When set to an integer, the callback saves the checkpoint
|
|
39
|
+
every `save_freq` epoch. Default: 'epoch'.
|
|
40
|
+
delete_checkpoint(bool): If `delete_checkpoint=True`, the checkpoint will be deleted after
|
|
41
|
+
training is finished. Default: True.
|
|
42
|
+
|
|
43
|
+
Raises:
|
|
44
|
+
ValueError: If backup_dir is not str.
|
|
45
|
+
ValueError: If save_freq is not 'epoch' or int.
|
|
46
|
+
ValueError: If delete_checkpoint is not bool.
|
|
47
|
+
|
|
48
|
+
Examples:
|
|
49
|
+
.. note::
|
|
50
|
+
Before running the following example, you need to customize the network LeNet5 and
|
|
51
|
+
dataset preparation function create_dataset. Refer to
|
|
52
|
+
`Building a Network <https://www.mindspore.cn/tutorials/en/r2.0/beginner/model.html>`_
|
|
53
|
+
and `Dataset <https://www.mindspore.cn/tutorials/en/r2.0/beginner/dataset.html>`_ .
|
|
54
|
+
|
|
55
|
+
>>> from mindspore import nn
|
|
56
|
+
>>> from mindspore.train import Model, BackupAndRestore
|
|
57
|
+
>>>
|
|
58
|
+
>>> net = LeNet5()
|
|
59
|
+
>>> loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True, reduction='mean')
|
|
60
|
+
>>> optim = nn.Momentum(net.trainable_params(), 0.01, 0.9)
|
|
61
|
+
>>> model = Model(net, loss_fn=loss, optimizer=optim)
|
|
62
|
+
>>> data_path = './MNIST_Data'
|
|
63
|
+
>>> dataset = create_dataset(data_path)
|
|
64
|
+
>>> backup_ckpt = BackupAndRestore("backup")
|
|
65
|
+
>>> model.train(10, dataset, callbacks=backup_ckpt)
|
|
66
|
+
"""
|
|
67
|
+
def __init__(self, backup_dir, save_freq="epoch", delete_checkpoint=True):
|
|
68
|
+
super(BackupAndRestore, self).__init__()
|
|
69
|
+
ckpt_dir = _make_directory(backup_dir)
|
|
70
|
+
self.backup_file = os.path.join(ckpt_dir, 'backup.ckpt')
|
|
71
|
+
if save_freq != "epoch":
|
|
72
|
+
self.save_freq = Validator.check_positive_int(save_freq)
|
|
73
|
+
else:
|
|
74
|
+
self.save_freq = 1
|
|
75
|
+
self.delete_checkpoint = Validator.check_bool(delete_checkpoint)
|
|
76
|
+
|
|
77
|
+
def on_train_begin(self, run_context):
|
|
78
|
+
"""
|
|
79
|
+
Load the backup checkpoint file at the beginning of epoch.
|
|
80
|
+
|
|
81
|
+
Args:
|
|
82
|
+
run_context (RunContext): Context of the process running. For more details,
|
|
83
|
+
please refer to :class:`mindspore.train.RunContext`.
|
|
84
|
+
"""
|
|
85
|
+
if os.path.exists(self.backup_file):
|
|
86
|
+
cb_params = run_context.original_args()
|
|
87
|
+
train_net = cb_params.train_network
|
|
88
|
+
logger.info("Restore checkpoint file is {}, load checkpoint into train net.".format(self.backup_file))
|
|
89
|
+
load_checkpoint(self.backup_file, net=train_net)
|
|
90
|
+
|
|
91
|
+
def on_train_epoch_end(self, run_context):
|
|
92
|
+
"""
|
|
93
|
+
Backup checkpoint file at the end of train epoch.
|
|
94
|
+
|
|
95
|
+
Args:
|
|
96
|
+
run_context (RunContext): Context of the process running. For more details,
|
|
97
|
+
please refer to :class:`mindspore.train.RunContext`.
|
|
98
|
+
"""
|
|
99
|
+
cb_params = run_context.original_args()
|
|
100
|
+
cur_epoch_num = cb_params.cur_epoch_num
|
|
101
|
+
if cur_epoch_num % self.save_freq == 0:
|
|
102
|
+
train_net = cb_params.train_network
|
|
103
|
+
logger.info("Train task end, backup checkpoint file: {}.".format(self.backup_file))
|
|
104
|
+
save_checkpoint(train_net, self.backup_file)
|
|
105
|
+
|
|
106
|
+
def on_train_end(self, run_context):
|
|
107
|
+
"""
|
|
108
|
+
Deleted checkpoint file at the end of train.
|
|
109
|
+
|
|
110
|
+
Args:
|
|
111
|
+
run_context (RunContext): Context of the process running. For more details,
|
|
112
|
+
please refer to :class:`mindspore.train.RunContext`.
|
|
113
|
+
"""
|
|
114
|
+
run_context.original_args()
|
|
115
|
+
cb_params = run_context.original_args()
|
|
116
|
+
cur_epoch_num = cb_params.cur_epoch_num
|
|
117
|
+
if self.delete_checkpoint:
|
|
118
|
+
logger.info("Delete restore checkpoint file {} at {} epoch.".format(self.backup_file, cur_epoch_num))
|
|
119
|
+
os.chmod(self.backup_file, stat.S_IWRITE)
|
|
120
|
+
os.remove(self.backup_file)
|
|
@@ -93,14 +93,14 @@ class Callback:
|
|
|
93
93
|
recording current attributes. Users can add custimized attributes to the information.
|
|
94
94
|
Training process can also be stopped by calling `request_stop` method. For details
|
|
95
95
|
of custom Callback, please check
|
|
96
|
-
`Callback <https://www.mindspore.cn/tutorials/experts/en/
|
|
96
|
+
`Callback <https://www.mindspore.cn/tutorials/experts/en/r2.0/debug/custom_debug.html>`_.
|
|
97
97
|
|
|
98
98
|
Examples:
|
|
99
99
|
>>> import numpy as np
|
|
100
|
-
>>> import mindspore as ms
|
|
101
100
|
>>> from mindspore import nn
|
|
102
101
|
>>> from mindspore import dataset as ds
|
|
103
|
-
>>>
|
|
102
|
+
>>> from mindspore.train import Model, Callback
|
|
103
|
+
>>> class Print_info(Callback):
|
|
104
104
|
... def step_end(self, run_context):
|
|
105
105
|
... cb_params = run_context.original_args()
|
|
106
106
|
... print("step_num: ", cb_params.cur_step_num)
|
|
@@ -111,7 +111,7 @@ class Callback:
|
|
|
111
111
|
>>> net = nn.Dense(10, 5)
|
|
112
112
|
>>> loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True, reduction='mean')
|
|
113
113
|
>>> optim = nn.Momentum(net.trainable_params(), 0.01, 0.9)
|
|
114
|
-
>>> model =
|
|
114
|
+
>>> model = Model(net, loss_fn=loss, optimizer=optim)
|
|
115
115
|
>>> model.train(1, dataset, callbacks=print_cb)
|
|
116
116
|
step_num: 2
|
|
117
117
|
"""
|
|
@@ -433,11 +433,11 @@ class RunContext:
|
|
|
433
433
|
`RunContext` is mainly used to collect context-related information about the model during
|
|
434
434
|
training or eval and pass it into the Callback object as an input parameter to share information.
|
|
435
435
|
|
|
436
|
-
Callback objects not only can obtain the Model context information by
|
|
437
|
-
`RunContext.original_args()` and add
|
|
436
|
+
Callback objects not only can obtain the Model context information by calling by
|
|
437
|
+
`RunContext.original_args()` and add extra attributes to the information, but also can stop the
|
|
438
438
|
training process by calling `request_stop` method. For details of custom Callback,
|
|
439
439
|
please check
|
|
440
|
-
`Callback <:https//www.mindspore.cn/tutorials/experts/en/
|
|
440
|
+
`Callback <:https//www.mindspore.cn/tutorials/experts/en/r2.0/debug/custom_debug.html>`_.
|
|
441
441
|
|
|
442
442
|
`RunContext.original_args()` holds the model context information as a dictionary variable, and
|
|
443
443
|
different attributes of the dictionary are stored in training or eval process. Details are as follows:
|
|
@@ -509,7 +509,7 @@ class RunContext:
|
|
|
509
509
|
|
|
510
510
|
def request_stop(self):
|
|
511
511
|
"""
|
|
512
|
-
Set stop requirement during training.
|
|
512
|
+
Set stop requirement during training or eval.
|
|
513
513
|
|
|
514
514
|
Callbacks can use this function to request stop of iterations.
|
|
515
515
|
model.train() checks whether this is called or not.
|
|
@@ -23,10 +23,9 @@ import threading
|
|
|
23
23
|
import mindspore.context as context
|
|
24
24
|
from mindspore import log as logger
|
|
25
25
|
from mindspore import nn
|
|
26
|
-
from mindspore
|
|
26
|
+
from mindspore import _checkparam as Validator
|
|
27
27
|
from mindspore.train._utils import _make_directory
|
|
28
28
|
from mindspore.train.serialization import save_checkpoint, _save_graph
|
|
29
|
-
from mindspore.parallel._ps_context import _is_role_pserver, _get_ps_mode_rank, _enable_distributed_mindrt
|
|
30
29
|
from mindspore.parallel._cell_wrapper import destroy_allgather_cell
|
|
31
30
|
from mindspore.parallel._recovery_context import _set_recovery_context, _get_recovery_context
|
|
32
31
|
from mindspore.train.callback._callback import Callback, set_cur_net
|
|
@@ -98,16 +97,22 @@ class CheckpointConfig:
|
|
|
98
97
|
enc_key (Union[None, bytes]): Byte type key used for encryption. If the value is None, the encryption
|
|
99
98
|
is not required. Default: None.
|
|
100
99
|
enc_mode (str): This parameter is valid only when enc_key is not set to None. Specifies the encryption
|
|
101
|
-
mode, currently supports 'AES-GCM' and '
|
|
100
|
+
mode, currently supports 'AES-GCM', 'AES-CBC' and 'SM4-CBC'. Default: 'AES-GCM'.
|
|
102
101
|
exception_save (bool): Whether to save the current checkpoint when an exception occurs. Default: False.
|
|
103
102
|
|
|
104
103
|
Raises:
|
|
105
104
|
ValueError: If input parameter is not the correct type.
|
|
106
105
|
|
|
107
106
|
Examples:
|
|
108
|
-
|
|
107
|
+
.. note::
|
|
108
|
+
Before running the following example, you need to customize the network LeNet5 and
|
|
109
|
+
dataset preparation function create_dataset. Refer to
|
|
110
|
+
`Building a Network <https://www.mindspore.cn/tutorials/en/r2.0/beginner/model.html>`_
|
|
111
|
+
and `Dataset <https://www.mindspore.cn/tutorials/en/r2.0/beginner/dataset.html>`_ .
|
|
112
|
+
|
|
109
113
|
>>> from mindspore import nn
|
|
110
114
|
>>> from mindspore.common.initializer import Normal
|
|
115
|
+
>>> from mindspore.train import Model, CheckpointConfig, ModelCheckpoint
|
|
111
116
|
>>>
|
|
112
117
|
>>> class LeNet5(nn.Cell):
|
|
113
118
|
... def __init__(self, num_class=10, num_channel=1):
|
|
@@ -133,11 +138,11 @@ class CheckpointConfig:
|
|
|
133
138
|
>>> net = LeNet5()
|
|
134
139
|
>>> loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True, reduction='mean')
|
|
135
140
|
>>> optim = nn.Momentum(net.trainable_params(), 0.01, 0.9)
|
|
136
|
-
>>> model =
|
|
141
|
+
>>> model = Model(net, loss_fn=loss, optimizer=optim)
|
|
137
142
|
>>> data_path = './MNIST_Data'
|
|
138
143
|
>>> dataset = create_dataset(data_path)
|
|
139
|
-
>>> config =
|
|
140
|
-
>>> ckpoint_cb =
|
|
144
|
+
>>> config = CheckpointConfig(saved_network=net)
|
|
145
|
+
>>> ckpoint_cb = ModelCheckpoint(prefix='LeNet5', directory='./checkpoint', config=config)
|
|
141
146
|
>>> model.train(10, dataset, callbacks=ckpoint_cb)
|
|
142
147
|
"""
|
|
143
148
|
|
|
@@ -419,8 +424,6 @@ class ModelCheckpoint(Callback):
|
|
|
419
424
|
Args:
|
|
420
425
|
run_context (RunContext): Context of the train running.
|
|
421
426
|
"""
|
|
422
|
-
if _is_role_pserver() and not _enable_distributed_mindrt():
|
|
423
|
-
self._prefix = "PServer_" + str(_get_ps_mode_rank()) + "_" + self._prefix
|
|
424
427
|
cb_params = run_context.original_args()
|
|
425
428
|
|
|
426
429
|
# In disaster recovery scenario, the training process may be rolled back to the last step where
|
|
@@ -21,7 +21,7 @@ import numpy as np
|
|
|
21
21
|
|
|
22
22
|
from mindspore import ops, nn
|
|
23
23
|
from mindspore.common.tensor import Tensor
|
|
24
|
-
from mindspore
|
|
24
|
+
from mindspore import _checkparam as Validator
|
|
25
25
|
from mindspore.train.serialization import load_param_into_net
|
|
26
26
|
from mindspore import log as logger
|
|
27
27
|
from mindspore.ops import ReduceOp
|
|
@@ -82,8 +82,14 @@ class EarlyStopping(Callback):
|
|
|
82
82
|
ValueError: The monitor value is not a scalar.
|
|
83
83
|
|
|
84
84
|
Examples:
|
|
85
|
-
|
|
86
|
-
|
|
85
|
+
.. note::
|
|
86
|
+
Before running the following example, you need to customize the network LeNet5 and
|
|
87
|
+
dataset preparation function create_dataset. Refer to
|
|
88
|
+
`Building a Network <https://www.mindspore.cn/tutorials/en/r2.0/beginner/model.html>`_
|
|
89
|
+
and `Dataset <https://www.mindspore.cn/tutorials/en/r2.0/beginner/dataset.html>`_ .
|
|
90
|
+
|
|
91
|
+
>>> from mindspore import nn
|
|
92
|
+
>>> from mindspore.train import Model, EarlyStopping
|
|
87
93
|
>>> net = LeNet5()
|
|
88
94
|
>>> loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True, reduction='mean')
|
|
89
95
|
>>> optim = nn.Momentum(net.trainable_params(), 0.01, 0.9)
|
|
@@ -126,7 +132,7 @@ class EarlyStopping(Callback):
|
|
|
126
132
|
|
|
127
133
|
Args:
|
|
128
134
|
run_context (RunContext): Context information of the model. For more details,
|
|
129
|
-
please refer to :class:`mindspore.RunContext`.
|
|
135
|
+
please refer to :class:`mindspore.train.RunContext`.
|
|
130
136
|
"""
|
|
131
137
|
|
|
132
138
|
self.wait = 0
|
|
@@ -144,7 +150,7 @@ class EarlyStopping(Callback):
|
|
|
144
150
|
|
|
145
151
|
Args:
|
|
146
152
|
run_context (RunContext): Context information of the model. For more details,
|
|
147
|
-
please refer to :class:`mindspore.RunContext`.
|
|
153
|
+
please refer to :class:`mindspore.train.RunContext`.
|
|
148
154
|
"""
|
|
149
155
|
cb_params = run_context.original_args()
|
|
150
156
|
|
|
@@ -185,7 +191,7 @@ class EarlyStopping(Callback):
|
|
|
185
191
|
|
|
186
192
|
Args:
|
|
187
193
|
run_context (RunContext): Context information of the model. For more details,
|
|
188
|
-
please refer to :class:`mindspore.RunContext`.
|
|
194
|
+
please refer to :class:`mindspore.train.RunContext`.
|
|
189
195
|
"""
|
|
190
196
|
|
|
191
197
|
if self.stopped_epoch > 0 and self.verbose:
|
|
@@ -201,7 +207,7 @@ class EarlyStopping(Callback):
|
|
|
201
207
|
|
|
202
208
|
Args:
|
|
203
209
|
cb_params (dict): A dictionary stores context information of the model. For more details,
|
|
204
|
-
please refer to :class:`mindspore.RunContext`.
|
|
210
|
+
please refer to :class:`mindspore.train.RunContext`.
|
|
205
211
|
"""
|
|
206
212
|
monitor_candidates = {}
|
|
207
213
|
if self.monitor == "loss":
|
|
@@ -31,20 +31,20 @@ class History(Callback):
|
|
|
31
31
|
outputs will be recorded.
|
|
32
32
|
|
|
33
33
|
Note:
|
|
34
|
-
Normally used in `mindspore.Model.train` or `mindspore.Model.fit`.
|
|
34
|
+
Normally used in `mindspore.train.Model.train` or `mindspore.train.Model.fit`.
|
|
35
35
|
|
|
36
36
|
Examples:
|
|
37
37
|
>>> import numpy as np
|
|
38
|
-
>>> import mindspore as ms
|
|
39
38
|
>>> import mindspore.dataset as ds
|
|
40
39
|
>>> from mindspore import nn
|
|
40
|
+
>>> from mindspore.train import Model, History
|
|
41
41
|
>>> data = {"x": np.float32(np.random.rand(64, 10)), "y": np.random.randint(0, 5, (64,))}
|
|
42
42
|
>>> train_dataset = ds.NumpySlicesDataset(data=data).batch(32)
|
|
43
43
|
>>> net = nn.Dense(10, 5)
|
|
44
44
|
>>> crit = nn.SoftmaxCrossEntropyWithLogits(sparse=True, reduction='mean')
|
|
45
45
|
>>> opt = nn.Momentum(net.trainable_params(), 0.01, 0.9)
|
|
46
|
-
>>> history_cb =
|
|
47
|
-
>>> model =
|
|
46
|
+
>>> history_cb = History()
|
|
47
|
+
>>> model = Model(network=net, optimizer=opt, loss_fn=crit, metrics={"recall"})
|
|
48
48
|
>>> model.train(2, train_dataset, callbacks=[history_cb])
|
|
49
49
|
>>> print(history_cb.epoch)
|
|
50
50
|
>>> print(history_cb.history)
|
|
@@ -61,8 +61,8 @@ class History(Callback):
|
|
|
61
61
|
Initialize the `epoch` property at the begin of training.
|
|
62
62
|
|
|
63
63
|
Args:
|
|
64
|
-
run_context (RunContext): Context of the `mindspore.Model.{train | eval}`. For more details,
|
|
65
|
-
please refer to :class:`mindspore.RunContext`.
|
|
64
|
+
run_context (RunContext): Context of the `mindspore.train.Model.{train | eval}`. For more details,
|
|
65
|
+
please refer to :class:`mindspore.train.RunContext`.
|
|
66
66
|
"""
|
|
67
67
|
self.epoch = {"epoch": []}
|
|
68
68
|
|
|
@@ -71,8 +71,8 @@ class History(Callback):
|
|
|
71
71
|
Records the first element of network outputs and metrics information at the end of epoch.
|
|
72
72
|
|
|
73
73
|
Args:
|
|
74
|
-
run_context (RunContext): Context of the `mindspore.Model.{train | eval}`. For more details,
|
|
75
|
-
please refer to :class:`mindspore.RunContext`.
|
|
74
|
+
run_context (RunContext): Context of the `mindspore.train.Model.{train | eval}`. For more details,
|
|
75
|
+
please refer to :class:`mindspore.train.RunContext`.
|
|
76
76
|
"""
|
|
77
77
|
cb_params = run_context.original_args()
|
|
78
78
|
epoch = cb_params.get("cur_epoch_num", 1)
|
|
@@ -23,11 +23,11 @@ class LambdaCallback(Callback):
|
|
|
23
23
|
Callback for creating simple, custom callbacks.
|
|
24
24
|
|
|
25
25
|
This callback is constructed with anonymous functions that will be called
|
|
26
|
-
at the appropriate time (during `mindspore.Model.{train | eval | fit}`). Note that
|
|
26
|
+
at the appropriate time (during `mindspore.train.Model.{train | eval | fit}`). Note that
|
|
27
27
|
each stage of callbacks expects one positional arguments: `run_context`.
|
|
28
28
|
|
|
29
|
-
|
|
30
|
-
This is an experimental
|
|
29
|
+
.. warning::
|
|
30
|
+
This is an experimental API that is subject to change or deletion.
|
|
31
31
|
|
|
32
32
|
Args:
|
|
33
33
|
on_train_epoch_begin (Function): called at each train epoch begin.
|
|
@@ -45,17 +45,17 @@ class LambdaCallback(Callback):
|
|
|
45
45
|
|
|
46
46
|
Examples:
|
|
47
47
|
>>> import numpy as np
|
|
48
|
-
>>> import mindspore as ms
|
|
49
48
|
>>> import mindspore.dataset as ds
|
|
50
49
|
>>> from mindspore import nn
|
|
50
|
+
>>> from mindspore.train import Model, LambdaCallback
|
|
51
51
|
>>> data = {"x": np.float32(np.random.rand(64, 10)), "y": np.random.randint(0, 5, (64,))}
|
|
52
52
|
>>> train_dataset = ds.NumpySlicesDataset(data=data).batch(32)
|
|
53
53
|
>>> net = nn.Dense(10, 5)
|
|
54
54
|
>>> crit = nn.SoftmaxCrossEntropyWithLogits(sparse=True, reduction='mean')
|
|
55
55
|
>>> opt = nn.Momentum(net.trainable_params(), 0.01, 0.9)
|
|
56
|
-
>>> lambda_callback =
|
|
56
|
+
>>> lambda_callback = LambdaCallback(on_train_epoch_end=
|
|
57
57
|
... lambda run_context: print("loss: ", run_context.original_args().net_outputs))
|
|
58
|
-
>>> model =
|
|
58
|
+
>>> model = Model(network=net, optimizer=opt, loss_fn=crit, metrics={"recall"})
|
|
59
59
|
>>> model.train(2, train_dataset, callbacks=[lambda_callback])
|
|
60
60
|
loss: 1.6127687
|
|
61
61
|
loss: 1.6106578
|
|
@@ -38,7 +38,7 @@ from mindspore.train.summary.enums import PluginEnum
|
|
|
38
38
|
from mindspore.train.anf_ir_pb2 import DataType
|
|
39
39
|
from mindspore.train._utils import check_value_type, _make_directory
|
|
40
40
|
from mindspore.train.dataset_helper import DatasetHelper
|
|
41
|
-
from mindspore.
|
|
41
|
+
from mindspore.train.metrics import get_metrics
|
|
42
42
|
from mindspore import context
|
|
43
43
|
|
|
44
44
|
# if there is no path, you need to set to empty list
|
|
@@ -181,6 +181,7 @@ class SummaryLandscape:
|
|
|
181
181
|
>>> import mindspore as ms
|
|
182
182
|
>>> import mindspore.nn as nn
|
|
183
183
|
>>> from mindspore.nn import Loss, Accuracy
|
|
184
|
+
>>> from mindspore.train import Model, SummaryCollector, SummaryLandscape
|
|
184
185
|
>>>
|
|
185
186
|
>>> if __name__ == '__main__':
|
|
186
187
|
... # If the device_target is Ascend, set the device_target to "Ascend"
|
|
@@ -192,10 +193,10 @@ class SummaryLandscape:
|
|
|
192
193
|
... network = LeNet5(10)
|
|
193
194
|
... net_loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True, reduction="mean")
|
|
194
195
|
... net_opt = nn.Momentum(network.trainable_params(), 0.01, 0.9)
|
|
195
|
-
... model =
|
|
196
|
+
... model = Model(network, net_loss, net_opt, metrics={"Accuracy": Accuracy()})
|
|
196
197
|
... # Simple usage for collect landscape information:
|
|
197
198
|
... interval_1 = [1, 2, 3, 4, 5]
|
|
198
|
-
... summary_collector =
|
|
199
|
+
... summary_collector = SummaryCollector(summary_dir='./summary/lenet_interval_1',
|
|
199
200
|
... collect_specified_data={'collect_landscape':{"landscape_size": 4,
|
|
200
201
|
... "unit": "step",
|
|
201
202
|
... "create_landscape":{"train":True,
|
|
@@ -215,7 +216,7 @@ class SummaryLandscape:
|
|
|
215
216
|
... ds_eval = create_dataset(mnist_dataset_dir, 32)
|
|
216
217
|
... return model, network, ds_eval, metrics
|
|
217
218
|
...
|
|
218
|
-
... summary_landscape =
|
|
219
|
+
... summary_landscape = SummaryLandscape('./summary/lenet_interval_1')
|
|
219
220
|
... # parameters of collect_landscape can be modified or unchanged
|
|
220
221
|
... summary_landscape.gen_landscapes_with_multi_process(callback_fn,
|
|
221
222
|
... collect_landscape={"landscape_size": 4,
|
|
@@ -261,10 +262,10 @@ class SummaryLandscape:
|
|
|
261
262
|
callback_fn (python function): A python function object. User needs to write a function,
|
|
262
263
|
it has no input, and the return requirements are as follows.
|
|
263
264
|
|
|
264
|
-
- mindspore.Model: User's model object.
|
|
265
|
+
- mindspore.train.Model: User's model object.
|
|
265
266
|
- mindspore.nn.Cell: User's network object.
|
|
266
267
|
- mindspore.dataset: User's dataset object for create loss landscape.
|
|
267
|
-
- mindspore.
|
|
268
|
+
- mindspore.train.Metrics: User's metrics object.
|
|
268
269
|
collect_landscape (Union[dict, None]): The meaning of the parameters
|
|
269
270
|
when creating loss landscape is consistent with the fields
|
|
270
271
|
with the same name in SummaryCollector. The purpose of setting here
|
|
@@ -281,7 +282,7 @@ class SummaryLandscape:
|
|
|
281
282
|
For example, in image dataset, You can set num_samples is 2048,
|
|
282
283
|
which means that 2048 images are used to create loss landscape.
|
|
283
284
|
Default: 2048.
|
|
284
|
-
- intervals (List[List[int]): Specifies the interval
|
|
285
|
+
- intervals (List[List[int]]): Specifies the interval
|
|
285
286
|
in which the loss landscape. For example: If the user wants to
|
|
286
287
|
create loss landscape of two training processes, they are 1-5 epoch
|
|
287
288
|
and 6-10 epoch respectively. They can set [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]].
|
|
@@ -293,6 +294,12 @@ class SummaryLandscape:
|
|
|
293
294
|
Default: None. The default save path is the same as the summary file.
|
|
294
295
|
"""
|
|
295
296
|
|
|
297
|
+
executor = None
|
|
298
|
+
if len(device_ids) > 1:
|
|
299
|
+
executor = ProcessPoolExecutor(len(device_ids))
|
|
300
|
+
futures = [executor.submit(self._set_context, i) for i in device_ids]
|
|
301
|
+
wait(futures, return_when=ALL_COMPLETED)
|
|
302
|
+
|
|
296
303
|
output_path = os.path.realpath(output) if output is not None else self._summary_dir
|
|
297
304
|
summary_record = SummaryRecord(output_path)
|
|
298
305
|
self._check_device_ids(device_ids)
|
|
@@ -320,13 +327,14 @@ class SummaryLandscape:
|
|
|
320
327
|
json.dump(data, file)
|
|
321
328
|
os.chmod(json_path, stat.S_IRUSR)
|
|
322
329
|
|
|
323
|
-
for interval, landscape in self._list_landscapes(callback_fn=callback_fn,
|
|
330
|
+
for interval, landscape in self._list_landscapes(callback_fn=callback_fn, executor=executor,
|
|
331
|
+
device_ids=device_ids):
|
|
324
332
|
summary_record.add_value(PluginEnum.LANDSCAPE.value, f'landscape_{str(interval)}', landscape)
|
|
325
333
|
summary_record.record(0)
|
|
326
334
|
summary_record.flush()
|
|
327
335
|
summary_record.close()
|
|
328
336
|
|
|
329
|
-
def _list_landscapes(self, callback_fn, device_ids=None):
|
|
337
|
+
def _list_landscapes(self, callback_fn, executor=None, device_ids=None):
|
|
330
338
|
"""Create landscape with single device and list all landscape."""
|
|
331
339
|
|
|
332
340
|
if not os.path.exists(os.path.join(self._ckpt_dir, 'train_metadata.json')):
|
|
@@ -342,39 +350,30 @@ class SummaryLandscape:
|
|
|
342
350
|
kwargs = dict(proz=0.2, landscape_size=data['landscape_size'], device_ids=device_ids, callback_fn=callback_fn)
|
|
343
351
|
|
|
344
352
|
start = time.time()
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
futures.append(future)
|
|
351
|
-
wait(futures, return_when=ALL_COMPLETED)
|
|
352
|
-
|
|
353
|
-
kwargs['executor'] = executor if len(device_ids) > 1 else None
|
|
354
|
-
|
|
355
|
-
if data['create_landscape']['train']:
|
|
356
|
-
for i, epochs in enumerate(self._epoch_group.values()):
|
|
357
|
-
self._log_message(data['create_landscape'], index=i, interval=epochs)
|
|
358
|
-
kwargs['epochs'] = epochs
|
|
359
|
-
mid_time = time.time()
|
|
360
|
-
landscape_data = self._create_landscape_by_pca(**kwargs)
|
|
361
|
-
logger.info("Create landscape end, use time: %s s." % (round(time.time() - mid_time, 6)))
|
|
362
|
-
landscape_data.unit = data['unit']
|
|
363
|
-
landscape_data.step_per_epoch = data['step_per_epoch']
|
|
364
|
-
landscape_data.num_samples = data['num_samples']
|
|
365
|
-
yield [epochs[0], epochs[-1]], landscape_data.transform_to_loss_landscape_msg(landscape_data)
|
|
366
|
-
|
|
367
|
-
if data['create_landscape']['result']:
|
|
368
|
-
final_epochs = [list(self._epoch_group.values())[-1][-1]]
|
|
369
|
-
self._log_message(data['create_landscape'], final_epochs=final_epochs)
|
|
370
|
-
kwargs['epochs'] = final_epochs
|
|
353
|
+
kwargs['executor'] = executor
|
|
354
|
+
if data['create_landscape']['train']:
|
|
355
|
+
for i, epochs in enumerate(self._epoch_group.values()):
|
|
356
|
+
self._log_message(data['create_landscape'], index=i, interval=epochs)
|
|
357
|
+
kwargs['epochs'] = epochs
|
|
371
358
|
mid_time = time.time()
|
|
372
|
-
landscape_data = self.
|
|
359
|
+
landscape_data = self._create_landscape_by_pca(**kwargs)
|
|
373
360
|
logger.info("Create landscape end, use time: %s s." % (round(time.time() - mid_time, 6)))
|
|
374
361
|
landscape_data.unit = data['unit']
|
|
375
362
|
landscape_data.step_per_epoch = data['step_per_epoch']
|
|
376
363
|
landscape_data.num_samples = data['num_samples']
|
|
377
|
-
yield
|
|
364
|
+
yield [epochs[0], epochs[-1]], landscape_data.transform_to_loss_landscape_msg(landscape_data)
|
|
365
|
+
|
|
366
|
+
if data['create_landscape']['result']:
|
|
367
|
+
final_epochs = [list(self._epoch_group.values())[-1][-1]]
|
|
368
|
+
self._log_message(data['create_landscape'], final_epochs=final_epochs)
|
|
369
|
+
kwargs['epochs'] = final_epochs
|
|
370
|
+
mid_time = time.time()
|
|
371
|
+
landscape_data = self._create_landscape_by_random(**kwargs)
|
|
372
|
+
logger.info("Create landscape end, use time: %s s." % (round(time.time() - mid_time, 6)))
|
|
373
|
+
landscape_data.unit = data['unit']
|
|
374
|
+
landscape_data.step_per_epoch = data['step_per_epoch']
|
|
375
|
+
landscape_data.num_samples = data['num_samples']
|
|
376
|
+
yield final_epochs, landscape_data.transform_to_loss_landscape_msg(landscape_data)
|
|
378
377
|
logger.info("Total use time: %s s." % (round(time.time() - start, 6)))
|
|
379
378
|
|
|
380
379
|
def _log_message(self, create_landscape, index=None, interval=None, final_epochs=None):
|
|
@@ -815,7 +814,6 @@ class SummaryLandscape:
|
|
|
815
814
|
raise ValueError(f'For "{self.__class__.__name__}.gen_landscapes_with_multi_process", the parameter '
|
|
816
815
|
f'"device_ids" should be between 0 and 7,but got {i}.')
|
|
817
816
|
|
|
818
|
-
|
|
819
817
|
def _check_collect_landscape_data(self, collect_landscape):
|
|
820
818
|
"""Check collect landscape data type and value."""
|
|
821
819
|
for param in collect_landscape.keys():
|
|
@@ -17,7 +17,7 @@ from __future__ import absolute_import
|
|
|
17
17
|
|
|
18
18
|
import numpy as np
|
|
19
19
|
|
|
20
|
-
from mindspore
|
|
20
|
+
from mindspore import _checkparam as Validator
|
|
21
21
|
from mindspore.train.callback._callback import Callback, _handle_loss
|
|
22
22
|
|
|
23
23
|
|
|
@@ -38,13 +38,19 @@ class LossMonitor(Callback):
|
|
|
38
38
|
ValueError: If per_print_times is not an integer or less than zero.
|
|
39
39
|
|
|
40
40
|
Examples:
|
|
41
|
-
|
|
41
|
+
.. note::
|
|
42
|
+
Before running the following example, you need to customize the network LeNet5 and
|
|
43
|
+
dataset preparation function create_dataset. Refer to
|
|
44
|
+
`Building a Network <https://www.mindspore.cn/tutorials/en/r2.0/beginner/model.html>`_
|
|
45
|
+
and `Dataset <https://www.mindspore.cn/tutorials/en/r2.0/beginner/dataset.html>`_ .
|
|
46
|
+
|
|
42
47
|
>>> from mindspore import nn
|
|
48
|
+
>>> from mindspore.train import Model, LossMonitor
|
|
43
49
|
>>>
|
|
44
50
|
>>> net = LeNet5()
|
|
45
51
|
>>> loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True, reduction='mean')
|
|
46
52
|
>>> optim = nn.Momentum(net.trainable_params(), 0.01, 0.9)
|
|
47
|
-
>>> model =
|
|
53
|
+
>>> model = Model(net, loss_fn=loss, optimizer=optim)
|
|
48
54
|
>>> data_path = './MNIST_Data'
|
|
49
55
|
>>> dataset = create_dataset(data_path)
|
|
50
56
|
>>> loss_monitor = LossMonitor()
|
|
@@ -63,7 +69,7 @@ class LossMonitor(Callback):
|
|
|
63
69
|
|
|
64
70
|
Args:
|
|
65
71
|
run_context (RunContext): Include some information of the model. For more details,
|
|
66
|
-
please refer to :class:`mindspore.RunContext`.
|
|
72
|
+
please refer to :class:`mindspore.train.RunContext`.
|
|
67
73
|
"""
|
|
68
74
|
cb_params = run_context.original_args()
|
|
69
75
|
|
|
@@ -89,12 +95,12 @@ class LossMonitor(Callback):
|
|
|
89
95
|
|
|
90
96
|
def on_train_epoch_end(self, run_context):
|
|
91
97
|
"""
|
|
92
|
-
When
|
|
98
|
+
When LossMonitor used in `model.fit`, print eval metrics at the end of epoch if current epoch
|
|
93
99
|
should do evaluation.
|
|
94
100
|
|
|
95
101
|
Args:
|
|
96
102
|
run_context (RunContext): Include some information of the model. For more details,
|
|
97
|
-
please refer to :class:`mindspore.RunContext`.
|
|
103
|
+
please refer to :class:`mindspore.train.RunContext`.
|
|
98
104
|
"""
|
|
99
105
|
cb_params = run_context.original_args()
|
|
100
106
|
metrics = cb_params.get("metrics")
|
|
@@ -34,10 +34,8 @@ class LearningRateScheduler(Callback):
|
|
|
34
34
|
|
|
35
35
|
Examples:
|
|
36
36
|
>>> import numpy as np
|
|
37
|
-
>>> import mindspore as ms
|
|
38
37
|
>>> from mindspore import nn
|
|
39
|
-
>>> from mindspore import LearningRateScheduler
|
|
40
|
-
>>> import mindspore.nn as nn
|
|
38
|
+
>>> from mindspore.train import Model, LearningRateScheduler
|
|
41
39
|
>>> from mindspore import dataset as ds
|
|
42
40
|
...
|
|
43
41
|
>>> def learning_rate_function(lr, cur_step_num):
|
|
@@ -50,7 +48,7 @@ class LearningRateScheduler(Callback):
|
|
|
50
48
|
>>> net = nn.Dense(10, 5)
|
|
51
49
|
>>> loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True, reduction='mean')
|
|
52
50
|
>>> optim = nn.Momentum(net.trainable_params(), learning_rate=lr, momentum=momentum)
|
|
53
|
-
>>> model =
|
|
51
|
+
>>> model = Model(net, loss_fn=loss, optimizer=optim)
|
|
54
52
|
...
|
|
55
53
|
>>> data = {"x": np.float32(np.random.rand(64, 10)), "y": np.random.randint(0, 5, (64,))}
|
|
56
54
|
>>> dataset = ds.NumpySlicesDataset(data=data).batch(32)
|