mindspore 2.1.0__cp38-cp38-manylinux1_x86_64.whl → 2.2.0__cp38-cp38-manylinux1_x86_64.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/__init__.py +4 -1
- mindspore/_akg/akg/build_module.py +5 -6
- mindspore/_akg/akg/composite/build_module.py +49 -16
- mindspore/_akg/akg/composite/split_stitch.py +10 -11
- mindspore/_akg/akg/ms/info_version_adapt.py +67 -1
- mindspore/_akg/akg/tvm/api.py +4 -3
- mindspore/_akg/akg/tvm/autotvm/__init__.py +1 -2
- mindspore/_akg/akg/tvm/autotvm/graph_tuner/base_graph_tuner.py +1 -5
- mindspore/_akg/akg/tvm/autotvm/measure/__init__.py +1 -1
- mindspore/_akg/akg/tvm/autotvm/measure/measure.py +1 -10
- mindspore/_akg/akg/tvm/autotvm/measure/measure_methods.py +1 -372
- mindspore/_akg/akg/tvm/build_module.py +16 -1
- mindspore/_akg/akg/tvm/contrib/graph_runtime.py +0 -53
- mindspore/_akg/akg/tvm/hybrid/parser.py +7 -6
- mindspore/_akg/akg/tvm/ir_builder.py +1 -1
- mindspore/_akg/akg/tvm/module.py +1 -2
- mindspore/_akg/akg/tvm/stmt.py +2 -2
- mindspore/_akg/akg/utils/composite_op_helper.py +9 -10
- mindspore/_akg/akg/utils/kernel_exec.py +58 -260
- mindspore/_akg/akg/utils/result_analysis.py +4 -24
- mindspore/_akg/akg/utils/tbe_codegen_utils.py +198 -0
- mindspore/_c_dataengine.cpython-38-x86_64-linux-gnu.so +0 -0
- mindspore/_c_expression.cpython-38-x86_64-linux-gnu.so +0 -0
- mindspore/_c_mindrecord.cpython-38-x86_64-linux-gnu.so +0 -0
- mindspore/_check_jit_forbidden_api.py +3 -1
- mindspore/_checkparam.py +26 -32
- mindspore/_extends/graph_kernel/__init__.py +0 -1
- mindspore/_extends/graph_kernel/model/model_builder.py +9 -50
- mindspore/_extends/graph_kernel/splitter.py +1 -9
- mindspore/_extends/parallel_compile/akg_compiler/akg_process.py +122 -15
- mindspore/_extends/parallel_compile/akg_compiler/build_tbe_kernel.py +2 -2
- mindspore/_extends/parallel_compile/akg_compiler/tbe_topi.py +4 -2
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_adapter.py +2 -2
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_helper.py +4 -4
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_job.py +1 -1
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_job_manager.py +1 -1
- mindspore/_extends/parse/__init__.py +12 -15
- mindspore/_extends/parse/namespace.py +7 -33
- mindspore/_extends/parse/parser.py +61 -71
- mindspore/_extends/parse/resources.py +1 -1
- mindspore/_extends/parse/standard_method.py +72 -95
- mindspore/_extends/parse/trope.py +1 -1
- mindspore/_extends/remote/kernel_build_server.py +24 -7
- mindspore/_extends/remote/kernel_build_server_akg_v2.py +55 -0
- mindspore/_install_custom.py +43 -0
- mindspore/_mindspore_offline_debug.cpython-38-x86_64-linux-gnu.so +0 -0
- mindspore/amp.py +47 -11
- mindspore/bin/cache_admin +0 -0
- mindspore/bin/cache_server +0 -0
- mindspore/boost/boost.py +1 -8
- mindspore/boost/boost_cell_wrapper.py +3 -2
- mindspore/boost/grad_accumulation.py +1 -1
- mindspore/boost/group_loss_scale_manager.py +8 -7
- mindspore/common/__init__.py +5 -3
- mindspore/common/_jit_fallback_utils.py +6 -0
- mindspore/common/_register_for_adapter.py +2 -0
- mindspore/common/_register_for_tensor.py +2 -2
- mindspore/common/_stub_tensor.py +13 -0
- mindspore/common/_utils.py +13 -0
- mindspore/common/api.py +173 -258
- mindspore/common/auto_dynamic_shape.py +498 -0
- mindspore/common/dtype.py +18 -11
- mindspore/common/dump.py +6 -4
- mindspore/common/initializer.py +14 -14
- mindspore/common/jit_config.py +33 -15
- mindspore/common/lazy_inline.py +126 -7
- mindspore/common/mindir_util.py +101 -0
- mindspore/common/parameter.py +51 -41
- mindspore/common/seed.py +4 -4
- mindspore/common/sparse_tensor.py +13 -14
- mindspore/common/tensor.py +240 -145
- mindspore/communication/__init__.py +7 -4
- mindspore/communication/_comm_helper.py +83 -4
- mindspore/communication/management.py +152 -84
- mindspore/config/op_info.config +13 -2
- mindspore/config/super_bar_config.json +4 -2
- mindspore/context.py +143 -59
- mindspore/dataset/__init__.py +5 -5
- mindspore/dataset/audio/__init__.py +2 -2
- mindspore/dataset/audio/transforms.py +52 -52
- mindspore/dataset/callback/ds_callback.py +16 -2
- mindspore/dataset/core/config.py +68 -51
- mindspore/dataset/engine/cache_client.py +28 -5
- mindspore/dataset/engine/datasets.py +250 -112
- mindspore/dataset/engine/datasets_audio.py +43 -211
- mindspore/dataset/engine/datasets_standard_format.py +11 -35
- mindspore/dataset/engine/datasets_text.py +43 -67
- mindspore/dataset/engine/datasets_user_defined.py +86 -100
- mindspore/dataset/engine/datasets_vision.py +219 -1029
- mindspore/dataset/engine/iterators.py +11 -4
- mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +4 -0
- mindspore/dataset/engine/obs/util.py +3 -0
- mindspore/dataset/engine/samplers.py +1 -1
- mindspore/dataset/engine/validators.py +19 -5
- mindspore/dataset/text/__init__.py +3 -3
- mindspore/dataset/text/transforms.py +101 -127
- mindspore/dataset/text/utils.py +205 -138
- mindspore/dataset/transforms/__init__.py +1 -1
- mindspore/dataset/transforms/py_transforms_util.py +40 -12
- mindspore/dataset/transforms/transforms.py +95 -40
- mindspore/dataset/utils/browse_dataset.py +8 -2
- mindspore/dataset/utils/line_reader.py +17 -19
- mindspore/dataset/vision/__init__.py +3 -3
- mindspore/dataset/vision/c_transforms.py +6 -3
- mindspore/dataset/vision/transforms.py +409 -287
- mindspore/dataset/vision/utils.py +13 -14
- mindspore/dataset/vision/validators.py +11 -1
- mindspore/experimental/map_parameter.py +14 -0
- mindspore/{nn/optim_ex → experimental/optim}/__init__.py +30 -29
- mindspore/{nn/optim_ex → experimental/optim}/adam.py +59 -66
- mindspore/{nn/optim_ex → experimental/optim}/adamw.py +181 -203
- mindspore/experimental/optim/lr_scheduler.py +1427 -0
- mindspore/{nn/optim_ex → experimental/optim}/optimizer.py +252 -259
- mindspore/{nn/optim_ex → experimental/optim}/sgd.py +147 -152
- mindspore/gen_ops.py +273 -0
- mindspore/include/OWNERS +0 -1
- mindspore/include/api/data_type.h +2 -1
- mindspore/include/api/graph.h +0 -15
- mindspore/include/api/kernel.h +2 -0
- mindspore/include/api/kernel_api.h +37 -12
- mindspore/include/api/model.h +0 -14
- mindspore/include/api/types.h +37 -4
- mindspore/include/c_api/ms/abstract.h +67 -0
- mindspore/include/c_api/ms/attribute.h +197 -0
- mindspore/include/c_api/ms/base/handle_types.h +43 -0
- mindspore/include/c_api/ms/base/macros.h +32 -0
- mindspore/include/c_api/ms/base/status.h +33 -0
- mindspore/include/c_api/ms/base/types.h +282 -0
- mindspore/include/c_api/ms/context.h +102 -0
- mindspore/include/c_api/ms/graph.h +160 -0
- mindspore/include/c_api/ms/node.h +606 -0
- mindspore/include/c_api/ms/tensor.h +161 -0
- mindspore/include/c_api/ms/value.h +84 -0
- mindspore/include/dataset/constants.h +6 -5
- mindspore/include/dataset/execute.h +23 -13
- mindspore/include/dataset/text.h +26 -26
- mindspore/include/dataset/transforms.h +13 -13
- mindspore/include/dataset/vision.h +60 -60
- mindspore/include/dataset/vision_ascend.h +5 -6
- mindspore/include/dataset/vision_lite.h +17 -17
- mindspore/include/mindapi/base/type_id.h +1 -0
- mindspore/include/mindapi/base/types.h +1 -0
- mindspore/lib/libdnnl.so.2 +0 -0
- mindspore/lib/libjemalloc.so.2 +0 -0
- mindspore/lib/libmindspore.so +0 -0
- mindspore/lib/libmindspore_backend.so +0 -0
- mindspore/lib/libmindspore_common.so +0 -0
- mindspore/lib/libmindspore_core.so +0 -0
- mindspore/lib/libmindspore_glog.so.0 +0 -0
- mindspore/lib/libmindspore_gpr.so.15 +0 -0
- mindspore/lib/libmindspore_grpc++.so.1 +0 -0
- mindspore/lib/libmindspore_grpc.so.15 +0 -0
- mindspore/lib/libmindspore_shared_lib.so +0 -0
- mindspore/lib/libnnacl.so +0 -0
- mindspore/lib/libopencv_core.so.4.5 +0 -0
- mindspore/lib/libopencv_imgcodecs.so.4.5 +0 -0
- mindspore/lib/libopencv_imgproc.so.4.5 +0 -0
- mindspore/lib/libps_cache.so +0 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_aicpu_kernels.so +0 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_cpu_kernels.so +0 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/config/cust_aicpu_kernel.json +9000 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_proto/libcust_op_proto.so +0 -0
- mindspore/lib/plugin/ascend/libakg.so +0 -0
- mindspore/lib/plugin/ascend/libascend_collective.so +0 -0
- mindspore/lib/plugin/ascend/libdvpp_utils.so +0 -0
- mindspore/lib/plugin/ascend/libhccl_plugin.so +0 -0
- mindspore/lib/plugin/ascend/libmindspore_aicpu_kernels.so +0 -0
- mindspore/lib/plugin/ascend/libmindspore_cpu_kernels.so +0 -0
- mindspore/lib/plugin/cpu/libakg.so +0 -0
- mindspore/lib/plugin/gpu/libcuda_ops.so.10 +0 -0
- mindspore/lib/plugin/gpu/libcuda_ops.so.11 +0 -0
- mindspore/lib/plugin/gpu10.1/libakg.so +0 -0
- mindspore/lib/plugin/gpu10.1/libnccl.so.2 +0 -0
- mindspore/lib/plugin/gpu11.1/libakg.so +0 -0
- mindspore/lib/plugin/gpu11.1/libnccl.so.2 +0 -0
- mindspore/lib/plugin/gpu11.6/libakg.so +0 -0
- mindspore/lib/plugin/gpu11.6/libnccl.so.2 +0 -0
- mindspore/lib/plugin/libmindspore_ascend.so.1 +0 -0
- mindspore/lib/plugin/libmindspore_ascend.so.2 +0 -0
- mindspore/lib/plugin/libmindspore_gpu.so.10.1 +0 -0
- mindspore/lib/plugin/libmindspore_gpu.so.11.1 +0 -0
- mindspore/lib/plugin/libmindspore_gpu.so.11.6 +0 -0
- mindspore/mindrecord/tools/imagenet_to_mr.py +1 -1
- mindspore/mindrecord/tools/mnist_to_mr.py +2 -2
- mindspore/nn/__init__.py +0 -2
- mindspore/nn/cell.py +316 -74
- mindspore/nn/dynamic_lr.py +21 -21
- mindspore/nn/layer/activation.py +21 -28
- mindspore/nn/layer/basic.py +15 -13
- mindspore/nn/layer/channel_shuffle.py +1 -1
- mindspore/nn/layer/container.py +271 -9
- mindspore/nn/layer/conv.py +310 -207
- mindspore/nn/layer/dense.py +8 -5
- mindspore/nn/layer/embedding.py +33 -27
- mindspore/nn/layer/flash_attention.py +82 -41
- mindspore/nn/layer/image.py +8 -6
- mindspore/nn/layer/math.py +13 -18
- mindspore/nn/layer/normalization.py +107 -66
- mindspore/nn/layer/padding.py +1 -1
- mindspore/nn/layer/pooling.py +131 -109
- mindspore/nn/layer/rnn_cells.py +22 -17
- mindspore/nn/layer/rnns.py +13 -16
- mindspore/nn/layer/thor_layer.py +1 -1
- mindspore/nn/layer/transformer.py +221 -154
- mindspore/nn/learning_rate_schedule.py +9 -1
- mindspore/nn/loss/loss.py +235 -174
- mindspore/nn/optim/ada_grad.py +2 -1
- mindspore/nn/optim/adadelta.py +1 -0
- mindspore/nn/optim/adafactor.py +2 -1
- mindspore/nn/optim/adam.py +7 -4
- mindspore/nn/optim/adamax.py +3 -2
- mindspore/nn/optim/adasum.py +2 -2
- mindspore/nn/optim/asgd.py +2 -3
- mindspore/nn/optim/ftrl.py +6 -5
- mindspore/nn/optim/lamb.py +7 -4
- mindspore/nn/optim/lars.py +1 -1
- mindspore/nn/optim/lazyadam.py +5 -3
- mindspore/nn/optim/momentum.py +2 -1
- mindspore/nn/optim/optimizer.py +53 -4
- mindspore/nn/optim/proximal_ada_grad.py +3 -4
- mindspore/nn/optim/rmsprop.py +4 -3
- mindspore/nn/optim/rprop.py +23 -12
- mindspore/nn/optim/sgd.py +26 -11
- mindspore/nn/optim/thor.py +9 -7
- mindspore/nn/probability/bijector/bijector.py +5 -5
- mindspore/nn/probability/bijector/power_transform.py +27 -27
- mindspore/nn/probability/bijector/softplus.py +3 -3
- mindspore/nn/probability/distribution/_utils/custom_ops.py +3 -3
- mindspore/nn/probability/distribution/bernoulli.py +5 -5
- mindspore/nn/probability/distribution/beta.py +3 -3
- mindspore/nn/probability/distribution/categorical.py +7 -7
- mindspore/nn/probability/distribution/cauchy.py +0 -1
- mindspore/nn/probability/distribution/distribution.py +3 -3
- mindspore/nn/probability/distribution/gamma.py +3 -3
- mindspore/nn/probability/distribution/geometric.py +4 -4
- mindspore/nn/probability/distribution/gumbel.py +4 -4
- mindspore/nn/probability/distribution/log_normal.py +2 -2
- mindspore/nn/probability/distribution/logistic.py +2 -2
- mindspore/nn/probability/distribution/poisson.py +4 -4
- mindspore/nn/probability/distribution/transformed_distribution.py +3 -3
- mindspore/nn/probability/distribution/uniform.py +6 -6
- mindspore/nn/wrap/cell_wrapper.py +78 -34
- mindspore/nn/wrap/grad_reducer.py +8 -5
- mindspore/nn/wrap/loss_scale.py +105 -42
- mindspore/numpy/array_creations.py +1 -2
- mindspore/numpy/array_ops.py +3 -2
- mindspore/offline_debug/convert_async.py +2 -2
- mindspore/ops/_grad_experimental/__init__.py +0 -5
- mindspore/ops/_grad_experimental/grad_array_ops.py +1 -2
- mindspore/ops/_grad_experimental/grad_comm_ops.py +15 -2
- mindspore/ops/_grad_experimental/grad_debug_ops.py +0 -37
- mindspore/ops/_grad_experimental/grad_implementations.py +10 -0
- mindspore/ops/_grad_experimental/grad_inner_ops.py +2 -216
- mindspore/ops/_grad_experimental/grad_math_ops.py +0 -181
- mindspore/ops/_grad_experimental/grad_sparse.py +15 -0
- mindspore/ops/_op_impl/_custom_op/dsd_back_impl.py +1 -1
- mindspore/ops/_op_impl/_custom_op/flash_attention/attention.py +165 -109
- mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_bwd.py +144 -86
- mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_fwd.py +172 -187
- mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_impl.py +51 -57
- mindspore/ops/_op_impl/_custom_op/flash_attention/tik_ops_utils.py +6 -17
- mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/wukong_tiling.py +1 -1
- mindspore/ops/_op_impl/aicpu/__init__.py +14 -2
- mindspore/ops/_op_impl/aicpu/bias_add_grad.py +0 -1
- mindspore/ops/_op_impl/aicpu/count_nonzero.py +43 -0
- mindspore/ops/_op_impl/aicpu/eps.py +32 -0
- mindspore/ops/_op_impl/aicpu/gamma.py +2 -2
- mindspore/ops/_op_impl/aicpu/log_uniform_candidate_sampler.py +6 -3
- mindspore/ops/_op_impl/aicpu/lu_unpack_grad.py +0 -1
- mindspore/ops/_op_impl/aicpu/multinomial.py +3 -3
- mindspore/ops/_op_impl/aicpu/parameterized_truncated_normal.py +15 -7
- mindspore/ops/_op_impl/aicpu/random_categorical.py +39 -19
- mindspore/ops/_op_impl/aicpu/random_choice_with_mask.py +5 -2
- mindspore/ops/_op_impl/aicpu/random_poisson.py +103 -52
- mindspore/ops/_op_impl/aicpu/random_shuffle.py +17 -15
- mindspore/ops/_op_impl/aicpu/{sparseaddmm.py → sparse_addmm.py} +2 -2
- mindspore/ops/_op_impl/aicpu/{sparsesparsemaximum.py → sparse_sparse_maximum.py} +4 -4
- mindspore/ops/_op_impl/aicpu/standard_laplace.py +5 -5
- mindspore/ops/_op_impl/aicpu/standard_normal.py +5 -5
- mindspore/ops/_op_impl/aicpu/truncated_normal.py +9 -7
- mindspore/ops/_op_impl/aicpu/uniform.py +5 -3
- mindspore/ops/_op_impl/aicpu/uniform_candidate_sampler.py +8 -4
- mindspore/ops/_op_impl/aicpu/uniform_int.py +5 -5
- mindspore/ops/_op_impl/aicpu/uniform_real.py +4 -4
- mindspore/ops/_op_impl/tbe/__init__.py +4 -4
- mindspore/ops/_op_impl/tbe/inplace_index_add.py +7 -3
- mindspore/ops/_op_impl/tbe/trans_data_ds.py +2 -0
- mindspore/ops/_primitive_cache.py +1 -1
- mindspore/ops/_tracefunc.py +45 -13
- mindspore/ops/_utils/utils.py +4 -1
- mindspore/ops/_vmap/vmap_array_ops.py +3 -3
- mindspore/ops/_vmap/vmap_base.py +3 -3
- mindspore/ops/_vmap/vmap_convolution_ops.py +1 -1
- mindspore/ops/_vmap/vmap_grad_math_ops.py +6 -4
- mindspore/ops/_vmap/vmap_math_ops.py +5 -2
- mindspore/ops/_vmap/vmap_nn_ops.py +61 -7
- mindspore/ops/arg_dtype_cast.py +54 -0
- mindspore/ops/composite/base.py +37 -10
- mindspore/ops/composite/math_ops.py +5 -4
- mindspore/ops/composite/multitype_ops/_compile_utils.py +273 -72
- mindspore/ops/composite/multitype_ops/_constexpr_utils.py +16 -9
- mindspore/ops/composite/multitype_ops/add_impl.py +43 -4
- mindspore/ops/composite/multitype_ops/getitem_impl.py +40 -2
- mindspore/ops/composite/multitype_ops/ones_like_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/setitem_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/zeros_like_impl.py +9 -0
- mindspore/ops/deprecated.py +304 -0
- mindspore/ops/function/__init__.py +4 -1
- mindspore/ops/function/array_func.py +167 -189
- mindspore/ops/function/clip_func.py +81 -13
- mindspore/ops/function/debug_func.py +1 -1
- mindspore/ops/function/grad/grad_func.py +18 -8
- mindspore/ops/function/image_func.py +10 -4
- mindspore/ops/function/linalg_func.py +5 -5
- mindspore/ops/function/math_func.py +575 -386
- mindspore/ops/function/nn_func.py +470 -251
- mindspore/ops/function/random_func.py +86 -56
- mindspore/ops/function/sparse_func.py +1 -1
- mindspore/ops/function/sparse_unary_func.py +14 -12
- mindspore/ops/function/vmap_func.py +6 -5
- mindspore/ops/functional.py +15 -10
- mindspore/ops/op_info_register.py +235 -19
- mindspore/ops/operations/__init__.py +25 -17
- mindspore/ops/operations/_grad_ops.py +52 -7
- mindspore/ops/operations/_inner_ops.py +213 -12
- mindspore/ops/operations/_quant_ops.py +4 -8
- mindspore/ops/operations/_sequence_ops.py +42 -0
- mindspore/ops/operations/array_ops.py +64 -280
- mindspore/ops/operations/comm_ops.py +105 -57
- mindspore/ops/operations/custom_ops.py +10 -3
- mindspore/ops/operations/debug_ops.py +8 -4
- mindspore/ops/operations/image_ops.py +18 -12
- mindspore/ops/operations/math_ops.py +185 -138
- mindspore/ops/operations/nn_ops.py +716 -492
- mindspore/ops/operations/other_ops.py +0 -22
- mindspore/ops/operations/random_ops.py +53 -111
- mindspore/ops/operations/sparse_ops.py +3 -1
- mindspore/ops/primitive.py +24 -18
- mindspore/parallel/_auto_parallel_context.py +68 -8
- mindspore/parallel/_cost_model_context.py +2 -2
- mindspore/parallel/_offload_context.py +17 -3
- mindspore/parallel/_parallel_serialization.py +2 -2
- mindspore/parallel/_ps_context.py +12 -0
- mindspore/parallel/_tensor.py +14 -12
- mindspore/parallel/_transformer/layers.py +5 -3
- mindspore/parallel/_transformer/loss.py +1 -0
- mindspore/parallel/_transformer/moe.py +2 -2
- mindspore/parallel/_transformer/op_parallel_config.py +12 -1
- mindspore/parallel/_transformer/transformer.py +23 -3
- mindspore/parallel/_utils.py +11 -7
- mindspore/parallel/algo_parameter_config.py +85 -5
- mindspore/parallel/checkpoint_transform.py +6 -10
- mindspore/parallel/shard.py +4 -4
- mindspore/profiler/common/struct_type.py +3 -3
- mindspore/profiler/common/util.py +3 -2
- mindspore/profiler/envprofiling.py +1 -1
- mindspore/profiler/parser/aicpu_data_parser.py +5 -3
- mindspore/profiler/parser/ascend_flops_generator.py +2 -2
- mindspore/profiler/parser/ascend_fpbp_generator.py +1 -1
- mindspore/profiler/parser/ascend_hccl_generator.py +17 -12
- mindspore/profiler/parser/ascend_msprof_exporter.py +104 -252
- mindspore/profiler/parser/ascend_msprof_generator.py +8 -8
- mindspore/profiler/parser/ascend_op_generator.py +5 -5
- mindspore/profiler/parser/ascend_steptrace_generator.py +6 -4
- mindspore/profiler/parser/ascend_timeline_generator.py +9 -6
- mindspore/profiler/parser/base_timeline_generator.py +9 -7
- mindspore/profiler/parser/cpu_gpu_timeline_generator.py +14 -10
- mindspore/profiler/parser/flops_parser.py +15 -11
- mindspore/profiler/parser/framework_parser.py +37 -21
- mindspore/profiler/parser/hccl_parser.py +16 -12
- mindspore/profiler/parser/integrator.py +22 -11
- mindspore/profiler/parser/memory_usage_parser.py +2 -2
- mindspore/profiler/parser/minddata_analyzer.py +12 -14
- mindspore/profiler/parser/minddata_pipeline_parser.py +1 -1
- mindspore/profiler/parser/msadvisor_parser.py +8 -4
- mindspore/profiler/parser/op_intermediate_parser.py +5 -2
- mindspore/profiler/parser/optime_parser.py +1 -1
- mindspore/profiler/parser/profiler_info.py +2 -2
- mindspore/profiler/parser/step_trace_parser.py +11 -14
- mindspore/profiler/profiling.py +139 -71
- mindspore/rewrite/api/node.py +102 -19
- mindspore/rewrite/api/node_type.py +5 -1
- mindspore/rewrite/api/scoped_value.py +9 -17
- mindspore/rewrite/api/symbol_tree.py +131 -47
- mindspore/rewrite/ast_helpers/__init__.py +2 -1
- mindspore/rewrite/ast_helpers/ast_finder.py +129 -0
- mindspore/rewrite/ast_helpers/ast_modifier.py +116 -104
- mindspore/rewrite/ast_transformers/flatten_recursive_stmt.py +93 -46
- mindspore/rewrite/common/rewrite_elog.py +5 -1
- mindspore/rewrite/namer.py +33 -24
- mindspore/rewrite/namespace.py +14 -5
- mindspore/{_extends/graph_kernel/expanders/complex → rewrite/node}/__init__.py +9 -9
- mindspore/rewrite/node/call_function.py +79 -0
- mindspore/rewrite/node/cell_container.py +135 -0
- mindspore/rewrite/node/control_flow.py +88 -0
- mindspore/rewrite/{node.py → node/node.py} +273 -234
- mindspore/rewrite/node/node_manager.py +254 -0
- mindspore/rewrite/{topological_manager.py → node/node_topological_manager.py} +13 -46
- mindspore/rewrite/parsers/arguments_parser.py +22 -21
- mindspore/rewrite/parsers/assign_parser.py +216 -221
- mindspore/rewrite/parsers/attribute_parser.py +9 -7
- mindspore/rewrite/parsers/class_def_parser.py +174 -113
- mindspore/rewrite/parsers/constant_parser.py +9 -6
- mindspore/rewrite/parsers/container_parser.py +9 -7
- mindspore/rewrite/parsers/for_parser.py +36 -15
- mindspore/rewrite/parsers/function_def_parser.py +24 -16
- mindspore/rewrite/parsers/if_parser.py +28 -24
- mindspore/rewrite/parsers/module_parser.py +196 -25
- mindspore/rewrite/{parser.py → parsers/parser.py} +4 -2
- mindspore/rewrite/{parser_register.py → parsers/parser_register.py} +1 -1
- mindspore/rewrite/parsers/return_parser.py +6 -6
- mindspore/rewrite/sparsify/sparse_transformer.py +12 -3
- mindspore/rewrite/sparsify/utils.py +1 -1
- mindspore/rewrite/symbol_tree.py +525 -577
- mindspore/rewrite/symbol_tree_builder.py +9 -193
- mindspore/rewrite/symbol_tree_dumper.py +2 -2
- mindspore/run_check/_check_version.py +2 -2
- mindspore/{ops/bprop_mindir → safeguard}/__init__.py +4 -3
- mindspore/safeguard/rewrite_obfuscation.py +517 -0
- mindspore/scipy/linalg.py +1 -1
- mindspore/scipy/optimize/minimize.py +7 -3
- mindspore/train/_utils.py +7 -3
- mindspore/train/amp.py +323 -123
- mindspore/train/anf_ir_pb2.py +14 -2
- mindspore/train/callback/_backup_and_restore.py +2 -12
- mindspore/train/callback/_callback.py +29 -4
- mindspore/train/callback/_checkpoint.py +23 -8
- mindspore/train/callback/_early_stop.py +2 -2
- mindspore/train/callback/_landscape.py +4 -4
- mindspore/train/callback/_loss_monitor.py +2 -2
- mindspore/train/callback/_on_request_exit.py +2 -2
- mindspore/train/callback/_reduce_lr_on_plateau.py +3 -4
- mindspore/train/callback/_summary_collector.py +14 -7
- mindspore/train/callback/_time_monitor.py +58 -5
- mindspore/train/data_sink.py +5 -11
- mindspore/train/dataset_helper.py +83 -57
- mindspore/train/loss_scale_manager.py +2 -2
- mindspore/train/metrics/__init__.py +3 -3
- mindspore/train/metrics/cosine_similarity.py +1 -1
- mindspore/train/metrics/hausdorff_distance.py +3 -2
- mindspore/train/metrics/mean_surface_distance.py +3 -2
- mindspore/train/metrics/metric.py +39 -19
- mindspore/train/metrics/roc.py +2 -2
- mindspore/train/metrics/root_mean_square_surface_distance.py +4 -3
- mindspore/train/mind_ir_pb2.py +85 -36
- mindspore/train/model.py +185 -45
- mindspore/train/serialization.py +390 -150
- mindspore/train/summary/_writer_pool.py +3 -2
- mindspore/train/summary/summary_record.py +14 -10
- mindspore/train/train_thor/convert_utils.py +3 -3
- mindspore/train/train_thor/dataset_helper.py +1 -1
- mindspore/version.py +1 -1
- {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/METADATA +6 -7
- {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/RECORD +458 -518
- {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/entry_points.txt +0 -1
- mindspore/_akg/akg/tvm/contrib/debugger/__init__.py +0 -16
- mindspore/_akg/akg/tvm/contrib/debugger/debug_result.py +0 -274
- mindspore/_akg/akg/tvm/contrib/debugger/debug_runtime.py +0 -259
- mindspore/_akg/akg/tvm/contrib/peak.py +0 -341
- mindspore/_akg/akg/tvm/contrib/rpc.py +0 -25
- mindspore/_akg/akg/tvm/contrib/xcode.py +0 -257
- mindspore/_akg/akg/tvm/exec/__init__.py +0 -17
- mindspore/_akg/akg/tvm/exec/autotvm_log_editor.py +0 -60
- mindspore/_akg/akg/tvm/exec/measure_peak.py +0 -48
- mindspore/_akg/akg/tvm/exec/query_rpc_tracker.py +0 -48
- mindspore/_akg/akg/tvm/exec/rpc_proxy.py +0 -98
- mindspore/_akg/akg/tvm/exec/rpc_server.py +0 -88
- mindspore/_akg/akg/tvm/exec/rpc_tracker.py +0 -62
- mindspore/_akg/akg/tvm/rpc/__init__.py +0 -29
- mindspore/_akg/akg/tvm/rpc/base.py +0 -182
- mindspore/_akg/akg/tvm/rpc/client.py +0 -436
- mindspore/_akg/akg/tvm/rpc/proxy.py +0 -595
- mindspore/_akg/akg/tvm/rpc/server.py +0 -413
- mindspore/_akg/akg/tvm/rpc/tornado_util.py +0 -121
- mindspore/_akg/akg/tvm/rpc/tracker.py +0 -431
- mindspore/_extends/graph_kernel/expander.py +0 -80
- mindspore/_extends/graph_kernel/expanders/__init__.py +0 -54
- mindspore/_extends/graph_kernel/expanders/_utils.py +0 -269
- mindspore/_extends/graph_kernel/expanders/addn.py +0 -33
- mindspore/_extends/graph_kernel/expanders/batchnorm.py +0 -152
- mindspore/_extends/graph_kernel/expanders/batchnorm_grad.py +0 -105
- mindspore/_extends/graph_kernel/expanders/clip_by_norm_no_div_sum.py +0 -33
- mindspore/_extends/graph_kernel/expanders/complex/abs.py +0 -30
- mindspore/_extends/graph_kernel/expanders/complex/add.py +0 -44
- mindspore/_extends/graph_kernel/expanders/complex/div.py +0 -62
- mindspore/_extends/graph_kernel/expanders/complex/mul.py +0 -52
- mindspore/_extends/graph_kernel/expanders/complex/real_div.py +0 -62
- mindspore/_extends/graph_kernel/expanders/complex/sub.py +0 -45
- mindspore/_extends/graph_kernel/expanders/conv2d.py +0 -200
- mindspore/_extends/graph_kernel/expanders/dropout_grad.py +0 -30
- mindspore/_extends/graph_kernel/expanders/equal_count.py +0 -50
- mindspore/_extends/graph_kernel/expanders/erfc.py +0 -35
- mindspore/_extends/graph_kernel/expanders/expand_dims.py +0 -50
- mindspore/_extends/graph_kernel/expanders/fused_adam.py +0 -44
- mindspore/_extends/graph_kernel/expanders/fused_adam_weight_decay.py +0 -47
- mindspore/_extends/graph_kernel/expanders/fused_mul_add.py +0 -28
- mindspore/_extends/graph_kernel/expanders/gelu_grad.py +0 -70
- mindspore/_extends/graph_kernel/expanders/gkdropout.py +0 -40
- mindspore/_extends/graph_kernel/expanders/identity.py +0 -25
- mindspore/_extends/graph_kernel/expanders/layernorm.py +0 -93
- mindspore/_extends/graph_kernel/expanders/layernorm_grad.py +0 -113
- mindspore/_extends/graph_kernel/expanders/logsoftmax.py +0 -46
- mindspore/_extends/graph_kernel/expanders/logsoftmax_grad.py +0 -36
- mindspore/_extends/graph_kernel/expanders/matmul.py +0 -80
- mindspore/_extends/graph_kernel/expanders/maximum_grad.py +0 -59
- mindspore/_extends/graph_kernel/expanders/minimum_grad.py +0 -80
- mindspore/_extends/graph_kernel/expanders/oneslike.py +0 -26
- mindspore/_extends/graph_kernel/expanders/reduce_mean.py +0 -43
- mindspore/_extends/graph_kernel/expanders/relu_grad.py +0 -32
- mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits.py +0 -41
- mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits_grad.py +0 -35
- mindspore/_extends/graph_kernel/expanders/sigmoid_grad.py +0 -31
- mindspore/_extends/graph_kernel/expanders/slice.py +0 -35
- mindspore/_extends/graph_kernel/expanders/softmax_cross_entropy_with_logits.py +0 -42
- mindspore/_extends/graph_kernel/expanders/softmax_grad_ext.py +0 -41
- mindspore/_extends/graph_kernel/expanders/softsign.py +0 -28
- mindspore/_extends/graph_kernel/expanders/sqrt_grad.py +0 -29
- mindspore/_extends/graph_kernel/expanders/square_sum_all.py +0 -44
- mindspore/_extends/graph_kernel/expanders/square_sum_v1.py +0 -37
- mindspore/_extends/graph_kernel/expanders/squared_difference.py +0 -43
- mindspore/_extends/graph_kernel/expanders/tanh_grad.py +0 -31
- mindspore/_extends/graph_kernel/model/op_infer.py +0 -506
- mindspore/dataset/datapreprocess/__init__.py +0 -20
- mindspore/dataset/datapreprocess/preprocess_imagenet_validate_dataset.py +0 -54
- mindspore/include/api/net.h +0 -142
- mindspore/nn/lr_scheduler.py +0 -262
- mindspore/ops/_grad_experimental/grad_image_ops.py +0 -248
- mindspore/ops/_grad_experimental/grad_linalg_ops.py +0 -181
- mindspore/ops/_grad_experimental/grad_other_ops.py +0 -72
- mindspore/ops/_grad_experimental/grad_scalar_ops.py +0 -112
- mindspore/ops/_grad_experimental/grad_sequence_ops.py +0 -351
- mindspore/ops/bprop_mindir/BNTrainingReduce_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Broadcast_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Depend_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/DepthwiseConv2dNative_bprop.mindir +0 -138
- mindspore/ops/bprop_mindir/EmbeddingLookup_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Load_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/ScatterNonAliasingAdd_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/SparseGatherV2_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/SparseSoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Switch_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/TransShape_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/TupleGetItem_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Unique_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Unstack_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/generate_mindir.py +0 -114
- mindspore/rewrite/node_visitor.py +0 -44
- {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/WHEEL +0 -0
- {mindspore-2.1.0.dist-info → mindspore-2.2.0.dist-info}/top_level.txt +0 -0
mindspore/nn/dynamic_lr.py
CHANGED
|
@@ -26,7 +26,8 @@ def piecewise_constant_lr(milestone, learning_rates):
|
|
|
26
26
|
|
|
27
27
|
Calculate learning rate by the given `milestone` and `learning_rates`. Let the value of `milestone` be
|
|
28
28
|
:math:`(M_1, M_2, ..., M_t, ..., M_N)` and the value of `learning_rates` be :math:`(x_1, x_2, ..., x_t, ..., x_N)`.
|
|
29
|
-
N is the length of `milestone`.
|
|
29
|
+
N is the length of `milestone`.
|
|
30
|
+
Let the output learning rate be :math:`y`, then for the :math:`i`-th step, the formula of
|
|
30
31
|
computing decayed_learning_rate[i] is:
|
|
31
32
|
|
|
32
33
|
.. math::
|
|
@@ -59,15 +60,14 @@ def piecewise_constant_lr(milestone, learning_rates):
|
|
|
59
60
|
>>> # learning_rates = 0.05 if 2 < step <= 5
|
|
60
61
|
>>> # learning_rates = 0.01 if 5 < step <= 10
|
|
61
62
|
>>> net = nn.Dense(2, 3)
|
|
62
|
-
>>> optim = nn.SGD(net.trainable_params, learning_rate=lr)
|
|
63
|
+
>>> optim = nn.SGD(net.trainable_params(), learning_rate=lr)
|
|
63
64
|
"""
|
|
64
65
|
validator.check_value_type('milestone', milestone, (tuple, list))
|
|
65
66
|
validator.check_value_type('learning_rates', learning_rates, (tuple, list))
|
|
66
67
|
if len(milestone) != len(learning_rates):
|
|
67
|
-
raise ValueError("For 'piecewise_constant_lr', "
|
|
68
|
-
"the size of 'milestone' must be same with the size of 'learning_rates', "
|
|
69
|
-
"but got 'milestone' size: {}, 'learning_rates' size: {}."
|
|
70
|
-
.format(len(milestone), len(learning_rates)))
|
|
68
|
+
raise ValueError(f"For 'piecewise_constant_lr', "
|
|
69
|
+
f"the size of 'milestone' must be same with the size of 'learning_rates', "
|
|
70
|
+
f"but got 'milestone' size: {len(milestone)}, 'learning_rates' size: {len(learning_rates)}.")
|
|
71
71
|
lr = []
|
|
72
72
|
last_item = 0
|
|
73
73
|
for i, item in enumerate(milestone):
|
|
@@ -137,7 +137,7 @@ def exponential_decay_lr(learning_rate, decay_rate, total_step, step_per_epoch,
|
|
|
137
137
|
>>> decay_epoch = 1
|
|
138
138
|
>>> lr = nn.exponential_decay_lr(learning_rate, decay_rate, total_step, step_per_epoch, decay_epoch)
|
|
139
139
|
>>> net = nn.Dense(2, 3)
|
|
140
|
-
>>> optim = nn.SGD(net.trainable_params, learning_rate=lr)
|
|
140
|
+
>>> optim = nn.SGD(net.trainable_params(), learning_rate=lr)
|
|
141
141
|
"""
|
|
142
142
|
_check_inputs(learning_rate, decay_rate, total_step, step_per_epoch, decay_epoch, is_stair)
|
|
143
143
|
|
|
@@ -192,7 +192,7 @@ def natural_exp_decay_lr(learning_rate, decay_rate, total_step, step_per_epoch,
|
|
|
192
192
|
>>> decay_epoch = 2
|
|
193
193
|
>>> lr = nn.natural_exp_decay_lr(learning_rate, decay_rate, total_step, step_per_epoch, decay_epoch, True)
|
|
194
194
|
>>> net = nn.Dense(2, 3)
|
|
195
|
-
>>> optim = nn.SGD(net.trainable_params, learning_rate=lr)
|
|
195
|
+
>>> optim = nn.SGD(net.trainable_params(), learning_rate=lr)
|
|
196
196
|
"""
|
|
197
197
|
_check_inputs(learning_rate, decay_rate, total_step, step_per_epoch, decay_epoch, is_stair)
|
|
198
198
|
|
|
@@ -248,7 +248,7 @@ def inverse_decay_lr(learning_rate, decay_rate, total_step, step_per_epoch, deca
|
|
|
248
248
|
>>> decay_epoch = 1
|
|
249
249
|
>>> lr = nn.inverse_decay_lr(learning_rate, decay_rate, total_step, step_per_epoch, decay_epoch, True)
|
|
250
250
|
>>> net = nn.Dense(2, 3)
|
|
251
|
-
>>> optim = nn.SGD(net.trainable_params, learning_rate=lr)
|
|
251
|
+
>>> optim = nn.SGD(net.trainable_params(), learning_rate=lr)
|
|
252
252
|
"""
|
|
253
253
|
_check_inputs(learning_rate, decay_rate, total_step, step_per_epoch, decay_epoch, is_stair)
|
|
254
254
|
|
|
@@ -303,11 +303,11 @@ def cosine_decay_lr(min_lr, max_lr, total_step, step_per_epoch, decay_epoch):
|
|
|
303
303
|
>>> decay_epoch = 2
|
|
304
304
|
>>> lr = nn.cosine_decay_lr(min_lr, max_lr, total_step, step_per_epoch, decay_epoch)
|
|
305
305
|
>>> net = nn.Dense(2, 3)
|
|
306
|
-
>>> optim = nn.SGD(net.trainable_params, learning_rate=lr)
|
|
306
|
+
>>> optim = nn.SGD(net.trainable_params(), learning_rate=lr)
|
|
307
307
|
"""
|
|
308
308
|
if not isinstance(min_lr, float):
|
|
309
|
-
raise TypeError("For 'cosine_decay_lr', the argument 'min_lr' must be type of float, "
|
|
310
|
-
"but got 'min_lr' type: {
|
|
309
|
+
raise TypeError(f"For 'cosine_decay_lr', the argument 'min_lr' must be type of float, "
|
|
310
|
+
f"but got 'min_lr' type: {type(min_lr)}.")
|
|
311
311
|
validator.check_non_negative_float(min_lr, "min_lr", None)
|
|
312
312
|
validator.check_positive_float(max_lr, 'max_lr')
|
|
313
313
|
validator.check_is_float(max_lr, 'max_lr')
|
|
@@ -315,8 +315,8 @@ def cosine_decay_lr(min_lr, max_lr, total_step, step_per_epoch, decay_epoch):
|
|
|
315
315
|
validator.check_positive_int(step_per_epoch, 'step_per_epoch')
|
|
316
316
|
validator.check_positive_int(decay_epoch, 'decay_epoch')
|
|
317
317
|
if min_lr >= max_lr:
|
|
318
|
-
raise ValueError("For 'cosine_decay_lr', the 'max_lr' must be greater than the 'min_lr', "
|
|
319
|
-
"but got 'max_lr' value: {}, 'min_lr' value: {}."
|
|
318
|
+
raise ValueError(f"For 'cosine_decay_lr', the 'max_lr' must be greater than the 'min_lr', "
|
|
319
|
+
f"but got 'max_lr' value: {max_lr}, 'min_lr' value: {min_lr}.")
|
|
320
320
|
delta = 0.5 * (max_lr - min_lr)
|
|
321
321
|
lr = []
|
|
322
322
|
for i in range(total_step):
|
|
@@ -348,7 +348,7 @@ def polynomial_decay_lr(learning_rate, end_learning_rate, total_step, step_per_e
|
|
|
348
348
|
.. math::
|
|
349
349
|
tmp\_decay\_epoch = decay\_epoch
|
|
350
350
|
|
|
351
|
-
If `update_decay_epoch` is true, update the value of `
|
|
351
|
+
If `update_decay_epoch` is true, update the value of :math:`tmp\_decay\_epoch` every epoch. The formula is:
|
|
352
352
|
|
|
353
353
|
.. math::
|
|
354
354
|
tmp\_decay\_epoch = decay\_epoch * ceil(current\_epoch / decay\_epoch)
|
|
@@ -385,13 +385,13 @@ def polynomial_decay_lr(learning_rate, end_learning_rate, total_step, step_per_e
|
|
|
385
385
|
>>> power = 0.5
|
|
386
386
|
>>> lr = nn.polynomial_decay_lr(lr, end_learning_rate, total_step, step_per_epoch, decay_epoch, power)
|
|
387
387
|
>>> net = nn.Dense(2, 3)
|
|
388
|
-
>>> optim = nn.SGD(net.trainable_params, learning_rate=lr)
|
|
388
|
+
>>> optim = nn.SGD(net.trainable_params(), learning_rate=lr)
|
|
389
389
|
"""
|
|
390
390
|
validator.check_positive_float(learning_rate, 'learning_rate')
|
|
391
391
|
validator.check_is_float(learning_rate, 'learning_rate')
|
|
392
392
|
if not isinstance(end_learning_rate, float):
|
|
393
|
-
raise TypeError("For 'polynomial_decay_lr', the argument 'end_learning_rate' must be type of float, "
|
|
394
|
-
"but got 'end_learning_rate' type: {
|
|
393
|
+
raise TypeError(f"For 'polynomial_decay_lr', the argument 'end_learning_rate' must be type of float, "
|
|
394
|
+
f"but got 'end_learning_rate' type: {type(end_learning_rate)}.")
|
|
395
395
|
validator.check_non_negative_float(end_learning_rate, "end_learning_rate", None)
|
|
396
396
|
validator.check_positive_float(power, 'power')
|
|
397
397
|
validator.check_is_float(power, 'power')
|
|
@@ -451,11 +451,11 @@ def warmup_lr(learning_rate, total_step, step_per_epoch, warmup_epoch):
|
|
|
451
451
|
>>> warmup_epoch = 2
|
|
452
452
|
>>> lr = nn.warmup_lr(learning_rate, total_step, step_per_epoch, warmup_epoch)
|
|
453
453
|
>>> net = nn.Dense(2, 3)
|
|
454
|
-
>>> optim = nn.SGD(net.trainable_params, learning_rate=lr)
|
|
454
|
+
>>> optim = nn.SGD(net.trainable_params(), learning_rate=lr)
|
|
455
455
|
"""
|
|
456
456
|
if not isinstance(learning_rate, float):
|
|
457
|
-
raise TypeError("For 'warmup_lr', the argument 'learning_rate' must be type of float, "
|
|
458
|
-
"but got 'learning_rate' type: {
|
|
457
|
+
raise TypeError(f"For 'warmup_lr', the argument 'learning_rate' must be type of float, "
|
|
458
|
+
f"but got 'learning_rate' type: {type(learning_rate)}.")
|
|
459
459
|
validator.check_non_negative_float(learning_rate, "learning_rate", None)
|
|
460
460
|
validator.check_positive_int(warmup_epoch, 'warmup_epoch')
|
|
461
461
|
validator.check_positive_int(total_step, 'total_step')
|
mindspore/nn/layer/activation.py
CHANGED
|
@@ -179,6 +179,7 @@ class Softmax2d(Cell):
|
|
|
179
179
|
|
|
180
180
|
Inputs:
|
|
181
181
|
- **x** (Tensor) - Tensor of shape :math:`(N, C_{in}, H_{in}, W_{in})` or :math:`(C_{in}, H_{in}, W_{in})`.
|
|
182
|
+
The input of Softmax with data type of float16 or float32.
|
|
182
183
|
|
|
183
184
|
Outputs:
|
|
184
185
|
Tensor, which has the same type and shape as `x` with values in the range[0,1].
|
|
@@ -287,7 +288,7 @@ class LogSoftmax(Cell):
|
|
|
287
288
|
|
|
288
289
|
.. math::
|
|
289
290
|
|
|
290
|
-
\text{logsoftmax}(x_i) = \log \left(\frac{\exp(x_i)}{\sum_{j=0}^{n-1} \exp(x_j)}\right)
|
|
291
|
+
\text{logsoftmax}(x_i) = \log \left(\frac{\exp(x_i)}{\sum_{j=0}^{n-1} \exp(x_j)}\right)
|
|
291
292
|
|
|
292
293
|
Args:
|
|
293
294
|
axis (int): The axis to apply LogSoftmax operation, -1 means the last dimension. Default: ``-1`` .
|
|
@@ -393,8 +394,11 @@ class ReLU(Cell):
|
|
|
393
394
|
|
|
394
395
|
\text{ReLU}(x) = (x)^+ = \max(0, x),
|
|
395
396
|
|
|
396
|
-
It returns element-wise :math:`\max(0, x)`.
|
|
397
|
-
|
|
397
|
+
It returns element-wise :math:`\max(0, x)`.
|
|
398
|
+
|
|
399
|
+
.. note::
|
|
400
|
+
The neurons with the negative output
|
|
401
|
+
will be suppressed and the active neurons will stay the same.
|
|
398
402
|
|
|
399
403
|
ReLU Activation Function Graph:
|
|
400
404
|
|
|
@@ -403,7 +407,7 @@ class ReLU(Cell):
|
|
|
403
407
|
|
|
404
408
|
Inputs:
|
|
405
409
|
- **x** (Tensor) - The input of ReLU is a Tensor of any dimension. The data type is `number <https://www.mind
|
|
406
|
-
spore.cn/docs/en/r2.
|
|
410
|
+
spore.cn/docs/en/r2.2/api_python/mindspore.html#mindspore.dtype>`_ .
|
|
407
411
|
|
|
408
412
|
Outputs:
|
|
409
413
|
Tensor, with the same type and shape as the `x`.
|
|
@@ -444,9 +448,7 @@ class ReLU6(Cell):
|
|
|
444
448
|
|
|
445
449
|
.. math::
|
|
446
450
|
|
|
447
|
-
Y = \min(\max(0, x), 6)
|
|
448
|
-
|
|
449
|
-
The input is a Tensor of any valid shape.
|
|
451
|
+
Y = \min(\max(0, x), 6)
|
|
450
452
|
|
|
451
453
|
ReLU6 Activation Function Graph:
|
|
452
454
|
|
|
@@ -454,7 +456,8 @@ class ReLU6(Cell):
|
|
|
454
456
|
:align: center
|
|
455
457
|
|
|
456
458
|
Inputs:
|
|
457
|
-
- **x** (Tensor) - The input of ReLU6 with data type of float16 or float32
|
|
459
|
+
- **x** (Tensor) - The input of ReLU6 with data type of float16 or float32 and that
|
|
460
|
+
is a Tensor of any valid shape.
|
|
458
461
|
|
|
459
462
|
Outputs:
|
|
460
463
|
Tensor, which has the same type as `x`.
|
|
@@ -535,17 +538,10 @@ class LeakyReLU(Cell):
|
|
|
535
538
|
def __init__(self, alpha=0.2):
|
|
536
539
|
"""Initialize LeakyReLU."""
|
|
537
540
|
super(LeakyReLU, self).__init__()
|
|
538
|
-
validator.check_value_type('alpha', alpha, [float, int], self.cls_name)
|
|
539
|
-
self.greater_equal = P.GreaterEqual()
|
|
540
|
-
self.mul = P.Mul()
|
|
541
541
|
self.alpha = alpha
|
|
542
|
-
self.select_op = P.Maximum()
|
|
543
|
-
if self.alpha > 1:
|
|
544
|
-
self.select_op = P.Minimum()
|
|
545
542
|
|
|
546
543
|
def construct(self, x):
|
|
547
|
-
|
|
548
|
-
out = self.select_op(alpha_array * x, x)
|
|
544
|
+
out = ops.leaky_relu(x, self.alpha)
|
|
549
545
|
return out
|
|
550
546
|
|
|
551
547
|
|
|
@@ -937,20 +933,13 @@ class GELU(Cell):
|
|
|
937
933
|
super(GELU, self).__init__()
|
|
938
934
|
validator.check_bool(approximate, 'approximate', self.cls_name)
|
|
939
935
|
self.approximate = approximate
|
|
940
|
-
if
|
|
941
|
-
self.
|
|
936
|
+
if approximate:
|
|
937
|
+
self.approximate = 'tanh'
|
|
942
938
|
else:
|
|
943
|
-
self.
|
|
944
|
-
self.sqrt = P.Sqrt()
|
|
945
|
-
self.const0 = Tensor(0.5, mstype.float32)
|
|
946
|
-
self.const1 = Tensor(1.0, mstype.float32)
|
|
947
|
-
self.const2 = Tensor(2.0, mstype.float32)
|
|
939
|
+
self.approximate = 'none'
|
|
948
940
|
|
|
949
941
|
def construct(self, x):
|
|
950
|
-
|
|
951
|
-
return self.gelu(x)
|
|
952
|
-
return x * F.cast(self.const0, x.dtype) * (F.cast(self.const1, x.dtype) + \
|
|
953
|
-
self.erf(x / self.sqrt(F.cast(self.const2, x.dtype))))
|
|
942
|
+
return ops.gelu(x, approximate=self.approximate)
|
|
954
943
|
|
|
955
944
|
|
|
956
945
|
class FastGelu(Cell):
|
|
@@ -1344,10 +1333,14 @@ class LRN(Cell):
|
|
|
1344
1333
|
r"""
|
|
1345
1334
|
Local Response Normalization.
|
|
1346
1335
|
|
|
1336
|
+
.. warning::
|
|
1337
|
+
LRN is deprecated on Ascend due to potential accuracy problem. It's recommended to use other
|
|
1338
|
+
normalization methods, e.g. :class:`mindspore.nn.BatchNorm`.
|
|
1339
|
+
|
|
1347
1340
|
Refer to :func:`mindspore.ops.lrn` for more details.
|
|
1348
1341
|
|
|
1349
1342
|
Supported Platforms:
|
|
1350
|
-
``
|
|
1343
|
+
``GPU`` ``CPU``
|
|
1351
1344
|
|
|
1352
1345
|
Examples:
|
|
1353
1346
|
>>> import mindspore
|
mindspore/nn/layer/basic.py
CHANGED
|
@@ -230,7 +230,7 @@ class Dropout1d(Cell):
|
|
|
230
230
|
int64, float16, float32 or float64.
|
|
231
231
|
|
|
232
232
|
Outputs:
|
|
233
|
-
Tensor,
|
|
233
|
+
Tensor, has the same shape and data type as `x`.
|
|
234
234
|
|
|
235
235
|
Raises:
|
|
236
236
|
TypeError: If `x` is not a Tensor.
|
|
@@ -314,7 +314,7 @@ class Dropout2d(Cell):
|
|
|
314
314
|
return out
|
|
315
315
|
|
|
316
316
|
def extend_repr(self):
|
|
317
|
-
return
|
|
317
|
+
return f"p={self.keep_prob}"
|
|
318
318
|
|
|
319
319
|
|
|
320
320
|
class Dropout3d(Cell):
|
|
@@ -365,7 +365,7 @@ class Dropout3d(Cell):
|
|
|
365
365
|
return out
|
|
366
366
|
|
|
367
367
|
def extend_repr(self):
|
|
368
|
-
return 'p={
|
|
368
|
+
return f'p={self.keep_prob}'
|
|
369
369
|
|
|
370
370
|
|
|
371
371
|
class Upsample(Cell):
|
|
@@ -533,6 +533,7 @@ class Dense(Cell):
|
|
|
533
533
|
activation (Union[str, Cell, Primitive, None]): activate function applied to the output of the fully connected
|
|
534
534
|
layer. Both activation name, e.g. 'relu', and mindspore activation function, e.g. mindspore.ops.ReLU(),
|
|
535
535
|
are supported. Default: ``None`` .
|
|
536
|
+
dtype (:class:`mindspore.dtype`): Data type of Parameter. Default: ``mstype.float32`` .
|
|
536
537
|
|
|
537
538
|
Inputs:
|
|
538
539
|
- **x** (Tensor) - Tensor of shape :math:`(*, in\_channels)`. The `in_channels` in `Args` should be equal
|
|
@@ -571,7 +572,8 @@ class Dense(Cell):
|
|
|
571
572
|
weight_init=None,
|
|
572
573
|
bias_init=None,
|
|
573
574
|
has_bias=True,
|
|
574
|
-
activation=None
|
|
575
|
+
activation=None,
|
|
576
|
+
dtype=mstype.float32):
|
|
575
577
|
"""Initialize Dense."""
|
|
576
578
|
super(Dense, self).__init__()
|
|
577
579
|
self.in_channels = Validator.check_positive_int(
|
|
@@ -593,7 +595,7 @@ class Dense(Cell):
|
|
|
593
595
|
if weight_init is None:
|
|
594
596
|
weight_init = HeUniform(math.sqrt(5))
|
|
595
597
|
self.weight = Parameter(initializer(
|
|
596
|
-
weight_init, [out_channels, in_channels]), name="weight")
|
|
598
|
+
weight_init, [out_channels, in_channels], dtype=dtype), name="weight")
|
|
597
599
|
|
|
598
600
|
self.bias = None
|
|
599
601
|
if self.has_bias:
|
|
@@ -606,7 +608,7 @@ class Dense(Cell):
|
|
|
606
608
|
bound = 1 / math.sqrt(in_channels)
|
|
607
609
|
bias_init = Uniform(scale=bound)
|
|
608
610
|
self.bias = Parameter(initializer(
|
|
609
|
-
bias_init, [out_channels]), name="bias")
|
|
611
|
+
bias_init, [out_channels], dtype=dtype), name="bias")
|
|
610
612
|
self.bias_add = P.BiasAdd()
|
|
611
613
|
|
|
612
614
|
self.matmul = P.MatMul(transpose_b=True)
|
|
@@ -633,12 +635,11 @@ class Dense(Cell):
|
|
|
633
635
|
return x
|
|
634
636
|
|
|
635
637
|
def extend_repr(self):
|
|
636
|
-
s = 'input_channels={}, output_channels={}'
|
|
637
|
-
self.in_channels, self.out_channels)
|
|
638
|
+
s = f'input_channels={self.in_channels}, output_channels={self.out_channels}'
|
|
638
639
|
if self.has_bias:
|
|
639
|
-
s += ', has_bias={
|
|
640
|
+
s += f', has_bias={self.has_bias}'
|
|
640
641
|
if self.activation_flag:
|
|
641
|
-
s += ', activation={
|
|
642
|
+
s += f', activation={self.activation}'
|
|
642
643
|
return s
|
|
643
644
|
|
|
644
645
|
|
|
@@ -751,7 +752,7 @@ class Norm(Cell):
|
|
|
751
752
|
return x
|
|
752
753
|
|
|
753
754
|
def extend_repr(self):
|
|
754
|
-
return 'axis={}, keep_dims={
|
|
755
|
+
return f'axis={self.axis}, keep_dims={self.keep_dims}'
|
|
755
756
|
|
|
756
757
|
|
|
757
758
|
class OneHot(Cell):
|
|
@@ -1041,7 +1042,7 @@ class Unfold(Cell):
|
|
|
1041
1042
|
|
|
1042
1043
|
Raises:
|
|
1043
1044
|
TypeError: If `ksizes`, `strides` or `rates` is neither a tuple nor list.
|
|
1044
|
-
ValueError: If shape of `ksizes`, `strides` or `rates` is not :math:`(1,
|
|
1045
|
+
ValueError: If shape of `ksizes`, `strides` or `rates` is not :math:`(1, x\_row, x\_col, 1)`.
|
|
1045
1046
|
ValueError: If the second and third element of `ksizes`, `strides` or `rates` is less than 1.
|
|
1046
1047
|
|
|
1047
1048
|
Supported Platforms:
|
|
@@ -1076,7 +1077,8 @@ class Unfold(Cell):
|
|
|
1076
1077
|
if len(arg_val) != 4 or arg_val[0] != 1 or arg_val[3] != 1:
|
|
1077
1078
|
raise ValueError(f"For '{prim_name}' the format of '{arg_name}s' must be [1, {arg_name}_row, "
|
|
1078
1079
|
f"{arg_name}_col, 1], but got {arg_val}.")
|
|
1079
|
-
|
|
1080
|
+
is_int = isinstance(arg_val[1], int) and isinstance(arg_val[2], int)
|
|
1081
|
+
if not is_int or arg_val[1] < 1 or arg_val[2] < 1:
|
|
1080
1082
|
raise ValueError(f"For '{prim_name}' the {arg_name}_row and {arg_name}_col in '{arg_name}s' must be "
|
|
1081
1083
|
f"an positive integer number, but got {arg_name}_row is {arg_val[1]}, "
|
|
1082
1084
|
f"{arg_name}_col is {arg_val[2]}")
|
|
@@ -73,7 +73,7 @@ class ChannelShuffle(Cell):
|
|
|
73
73
|
"""Initialize ChannelShuffle."""
|
|
74
74
|
super(ChannelShuffle, self).__init__()
|
|
75
75
|
if not isinstance(groups, int):
|
|
76
|
-
raise TypeError("For ChannelShuffle, the param `groups` must be int, but got {
|
|
76
|
+
raise TypeError(f"For ChannelShuffle, the param `groups` must be int, but got {type(groups)}.")
|
|
77
77
|
if groups < 1:
|
|
78
78
|
raise ValueError(f"For ChannelShuffle, the param `groups` must be larger than 0, but got {groups}.")
|
|
79
79
|
|