mindspore 2.0.0rc1__cp38-none-any.whl → 2.2.0__cp38-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mindspore might be problematic. Click here for more details.
- mindspore/.commit_id +1 -1
- mindspore/Third_Party_Open_Source_Software_Notice +2 -2
- mindspore/__init__.py +5 -2
- mindspore/_akg/akg/build_module.py +5 -6
- mindspore/_akg/akg/composite/build_module.py +49 -16
- mindspore/_akg/akg/composite/split_stitch.py +10 -11
- mindspore/_akg/akg/config/repository.json +195 -0
- mindspore/_akg/akg/global_configs.py +5 -1
- mindspore/_akg/akg/ms/info_version_adapt.py +67 -1
- mindspore/_akg/akg/tvm/api.py +4 -3
- mindspore/_akg/akg/tvm/autotvm/__init__.py +1 -2
- mindspore/_akg/akg/tvm/autotvm/graph_tuner/base_graph_tuner.py +1 -5
- mindspore/_akg/akg/tvm/autotvm/measure/__init__.py +1 -1
- mindspore/_akg/akg/tvm/autotvm/measure/measure.py +1 -10
- mindspore/_akg/akg/tvm/autotvm/measure/measure_methods.py +1 -372
- mindspore/_akg/akg/tvm/build_module.py +16 -1
- mindspore/_akg/akg/tvm/contrib/graph_runtime.py +0 -53
- mindspore/_akg/akg/tvm/hybrid/parser.py +7 -6
- mindspore/_akg/akg/tvm/ir_builder.py +1 -1
- mindspore/_akg/akg/tvm/module.py +1 -2
- mindspore/_akg/akg/tvm/stmt.py +2 -2
- mindspore/_akg/akg/utils/composite_op_helper.py +9 -10
- mindspore/_akg/akg/utils/kernel_exec.py +58 -260
- mindspore/_akg/akg/utils/op_dsl.py +17 -1
- mindspore/_akg/akg/utils/result_analysis.py +4 -24
- mindspore/_akg/akg/utils/tbe_codegen_utils.py +198 -0
- mindspore/_c_dataengine.cpython-38-aarch64-linux-gnu.so +0 -0
- mindspore/_c_expression.cpython-38-aarch64-linux-gnu.so +0 -0
- mindspore/_c_mindrecord.cpython-38-aarch64-linux-gnu.so +0 -0
- mindspore/_check_jit_forbidden_api.py +5 -1
- mindspore/_checkparam.py +79 -62
- mindspore/_extends/graph_kernel/__init__.py +0 -1
- mindspore/_extends/graph_kernel/model/graph_split.py +2 -0
- mindspore/_extends/graph_kernel/model/model_builder.py +9 -50
- mindspore/_extends/graph_kernel/splitter.py +1 -9
- mindspore/_extends/parallel_compile/akg_compiler/akg_process.py +128 -21
- mindspore/_extends/parallel_compile/akg_compiler/build_tbe_kernel.py +2 -2
- mindspore/_extends/parallel_compile/akg_compiler/tbe_topi.py +4 -2
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_adapter.py +18 -13
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_helper.py +13 -9
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_job.py +1 -1
- mindspore/_extends/parallel_compile/tbe_compiler/tbe_job_manager.py +1 -1
- mindspore/_extends/parse/__init__.py +19 -17
- mindspore/_extends/parse/namespace.py +7 -36
- mindspore/_extends/parse/parser.py +375 -189
- mindspore/_extends/parse/resources.py +36 -41
- mindspore/_extends/parse/standard_method.py +350 -245
- mindspore/_extends/parse/trope.py +2 -12
- mindspore/_extends/remote/kernel_build_server.py +24 -7
- mindspore/_extends/remote/kernel_build_server_akg_v2.py +55 -0
- mindspore/_install_custom.py +43 -0
- mindspore/_mindspore_offline_debug.cpython-38-aarch64-linux-gnu.so +0 -0
- mindspore/amp.py +85 -19
- mindspore/bin/cache_admin +0 -0
- mindspore/bin/cache_server +0 -0
- mindspore/boost/base.py +2 -2
- mindspore/boost/boost.py +27 -32
- mindspore/boost/boost_cell_wrapper.py +37 -13
- mindspore/boost/grad_accumulation.py +1 -1
- mindspore/boost/grad_freeze.py +34 -6
- mindspore/boost/group_loss_scale_manager.py +15 -14
- mindspore/boost/less_batch_normalization.py +28 -3
- mindspore/common/__init__.py +15 -11
- mindspore/common/_auto_dynamic.py +68 -0
- mindspore/common/_jit_fallback_utils.py +111 -0
- mindspore/common/_register_for_adapter.py +17 -5
- mindspore/common/_register_for_tensor.py +2 -2
- mindspore/common/_stub_tensor.py +18 -15
- mindspore/common/_utils.py +31 -7
- mindspore/common/api.py +269 -101
- mindspore/common/auto_dynamic_shape.py +498 -0
- mindspore/common/dtype.py +61 -21
- mindspore/common/dump.py +9 -7
- mindspore/common/initializer.py +106 -76
- mindspore/common/jit_config.py +35 -14
- mindspore/common/lazy_inline.py +187 -0
- mindspore/common/mindir_util.py +101 -0
- mindspore/common/mutable.py +10 -13
- mindspore/common/parameter.py +246 -55
- mindspore/common/seed.py +13 -7
- mindspore/common/sparse_tensor.py +29 -33
- mindspore/common/tensor.py +907 -251
- mindspore/communication/__init__.py +7 -4
- mindspore/communication/_comm_helper.py +84 -4
- mindspore/communication/management.py +160 -88
- mindspore/config/op_info.config +99 -75
- mindspore/config/super_bar_config.json +36 -4
- mindspore/context.py +526 -219
- mindspore/dataset/__init__.py +9 -46
- mindspore/dataset/audio/__init__.py +4 -19
- mindspore/dataset/audio/transforms.py +545 -233
- mindspore/dataset/audio/utils.py +21 -18
- mindspore/dataset/callback/ds_callback.py +42 -13
- mindspore/dataset/core/config.py +158 -100
- mindspore/dataset/core/validator_helpers.py +1 -63
- mindspore/dataset/debug/debug_hook.py +45 -13
- mindspore/dataset/debug/pre_defined_hook.py +5 -5
- mindspore/dataset/engine/__init__.py +0 -5
- mindspore/dataset/engine/cache_client.py +38 -15
- mindspore/dataset/engine/datasets.py +615 -278
- mindspore/dataset/engine/datasets_audio.py +154 -283
- mindspore/dataset/engine/datasets_standard_format.py +104 -116
- mindspore/dataset/engine/datasets_text.py +443 -326
- mindspore/dataset/engine/datasets_user_defined.py +251 -164
- mindspore/dataset/engine/datasets_vision.py +839 -1443
- mindspore/dataset/engine/iterators.py +11 -4
- mindspore/dataset/engine/obs/obs_mindrecord_dataset.py +7 -3
- mindspore/dataset/engine/obs/util.py +3 -0
- mindspore/dataset/engine/offload.py +6 -6
- mindspore/dataset/engine/queue.py +15 -14
- mindspore/dataset/engine/samplers.py +39 -23
- mindspore/dataset/engine/serializer_deserializer.py +22 -6
- mindspore/dataset/engine/validators.py +21 -331
- mindspore/dataset/text/__init__.py +5 -33
- mindspore/dataset/text/transforms.py +334 -165
- mindspore/dataset/text/utils.py +215 -145
- mindspore/dataset/transforms/__init__.py +1 -1
- mindspore/dataset/transforms/c_transforms.py +3 -2
- mindspore/dataset/transforms/py_transforms_util.py +40 -12
- mindspore/dataset/transforms/transforms.py +174 -71
- mindspore/dataset/utils/browse_dataset.py +25 -17
- mindspore/dataset/utils/line_reader.py +24 -21
- mindspore/dataset/vision/__init__.py +5 -26
- mindspore/dataset/vision/c_transforms.py +177 -165
- mindspore/dataset/vision/py_transforms.py +114 -119
- mindspore/dataset/vision/py_transforms_util.py +54 -51
- mindspore/dataset/vision/transforms.py +1127 -381
- mindspore/dataset/vision/utils.py +54 -38
- mindspore/dataset/vision/validators.py +12 -2
- mindspore/experimental/map_parameter.py +38 -4
- mindspore/{dataset/datapreprocess → experimental/optim}/__init__.py +14 -4
- mindspore/experimental/optim/adam.py +192 -0
- mindspore/experimental/optim/adamw.py +181 -0
- mindspore/experimental/optim/lr_scheduler.py +1427 -0
- mindspore/experimental/optim/optimizer.py +252 -0
- mindspore/experimental/optim/sgd.py +147 -0
- mindspore/gen_ops.py +273 -0
- mindspore/include/OWNERS +1 -2
- mindspore/include/api/context.h +21 -1
- mindspore/include/api/data_type.h +2 -1
- mindspore/include/api/graph.h +0 -15
- mindspore/include/api/kernel.h +2 -0
- mindspore/include/api/kernel_api.h +37 -12
- mindspore/include/api/model.h +29 -42
- mindspore/include/api/model_group.h +14 -3
- mindspore/include/api/model_parallel_runner.h +18 -2
- mindspore/include/api/serialization.h +26 -0
- mindspore/include/api/status.h +1 -0
- mindspore/include/api/types.h +38 -4
- mindspore/include/c_api/ms/abstract.h +67 -0
- mindspore/include/c_api/ms/attribute.h +197 -0
- mindspore/include/c_api/ms/base/handle_types.h +43 -0
- mindspore/include/c_api/ms/base/macros.h +32 -0
- mindspore/include/c_api/ms/base/status.h +33 -0
- mindspore/include/c_api/ms/base/types.h +282 -0
- mindspore/include/c_api/ms/context.h +102 -0
- mindspore/include/c_api/ms/graph.h +160 -0
- mindspore/include/c_api/ms/node.h +606 -0
- mindspore/include/c_api/ms/tensor.h +161 -0
- mindspore/include/c_api/ms/value.h +84 -0
- mindspore/include/c_api/status_c.h +3 -0
- mindspore/include/dataset/constants.h +6 -12
- mindspore/include/dataset/execute.h +23 -13
- mindspore/include/dataset/text.h +26 -26
- mindspore/include/dataset/transforms.h +25 -31
- mindspore/include/dataset/vision.h +60 -60
- mindspore/include/dataset/vision_ascend.h +5 -6
- mindspore/include/dataset/vision_lite.h +17 -17
- mindspore/include/mindapi/base/format.h +0 -1
- mindspore/include/mindapi/base/type_id.h +2 -1
- mindspore/include/mindapi/base/types.h +5 -1
- mindspore/lib/libdnnl.so.2 +0 -0
- mindspore/lib/libjemalloc.so.2 +0 -0
- mindspore/lib/libmindspore.so +0 -0
- mindspore/lib/libmindspore_backend.so +0 -0
- mindspore/lib/libmindspore_common.so +0 -0
- mindspore/lib/libmindspore_core.so +0 -0
- mindspore/lib/libmindspore_glog.so.0 +0 -0
- mindspore/lib/libmindspore_gpr.so.15 +0 -0
- mindspore/lib/libmindspore_grpc++.so.1 +0 -0
- mindspore/lib/libmindspore_grpc.so.15 +0 -0
- mindspore/lib/libmindspore_shared_lib.so +0 -0
- mindspore/lib/libmpi_adapter.so +0 -0
- mindspore/lib/libnnacl.so +0 -0
- mindspore/lib/libopencv_core.so.4.5 +0 -0
- mindspore/lib/libopencv_imgcodecs.so.4.5 +0 -0
- mindspore/lib/libopencv_imgproc.so.4.5 +0 -0
- mindspore/lib/libps_cache.so +0 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_aicpu_kernels.so +0 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/aicpu_kernel/impl/libcust_cpu_kernels.so +0 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_impl/cpu/config/cust_aicpu_kernel.json +9000 -0
- mindspore/lib/plugin/ascend/custom_aicpu_ops/op_proto/libcust_op_proto.so +0 -0
- mindspore/lib/plugin/ascend/libakg.so +0 -0
- mindspore/lib/plugin/ascend/libascend_collective.so +0 -0
- mindspore/lib/plugin/ascend/libdvpp_utils.so +0 -0
- mindspore/lib/plugin/ascend/libhccl_plugin.so +0 -0
- mindspore/lib/plugin/ascend/libmindspore_aicpu_kernels.so +0 -0
- mindspore/lib/plugin/ascend/libmindspore_cpu_kernels.so +0 -0
- mindspore/lib/plugin/cpu/libakg.so +0 -0
- mindspore/lib/plugin/libmindspore_ascend.so.1 +0 -0
- mindspore/lib/plugin/libmindspore_ascend.so.2 +0 -0
- mindspore/log.py +9 -6
- mindspore/mindrecord/filereader.py +33 -4
- mindspore/mindrecord/filewriter.py +70 -35
- mindspore/mindrecord/mindpage.py +40 -34
- mindspore/mindrecord/shardreader.py +1 -1
- mindspore/mindrecord/shardsegment.py +1 -1
- mindspore/mindrecord/tools/cifar100_to_mr.py +25 -18
- mindspore/mindrecord/tools/cifar10_to_mr.py +25 -18
- mindspore/mindrecord/tools/csv_to_mr.py +29 -13
- mindspore/mindrecord/tools/imagenet_to_mr.py +24 -10
- mindspore/mindrecord/tools/mnist_to_mr.py +24 -11
- mindspore/mindrecord/tools/tfrecord_to_mr.py +31 -26
- mindspore/nn/cell.py +463 -169
- mindspore/nn/dynamic_lr.py +47 -43
- mindspore/nn/layer/activation.py +225 -82
- mindspore/nn/layer/basic.py +121 -79
- mindspore/nn/layer/channel_shuffle.py +21 -21
- mindspore/nn/layer/combined.py +33 -26
- mindspore/nn/layer/container.py +277 -22
- mindspore/nn/layer/conv.py +441 -304
- mindspore/nn/layer/dense.py +19 -13
- mindspore/nn/layer/embedding.py +62 -49
- mindspore/nn/layer/flash_attention.py +264 -0
- mindspore/nn/layer/image.py +50 -39
- mindspore/nn/layer/math.py +62 -51
- mindspore/nn/layer/normalization.py +219 -167
- mindspore/nn/layer/padding.py +58 -70
- mindspore/nn/layer/pooling.py +334 -287
- mindspore/nn/layer/rnn_cells.py +53 -38
- mindspore/nn/layer/rnns.py +59 -56
- mindspore/nn/layer/thor_layer.py +52 -44
- mindspore/nn/layer/timedistributed.py +6 -4
- mindspore/nn/layer/transformer.py +284 -164
- mindspore/nn/learning_rate_schedule.py +34 -25
- mindspore/nn/loss/__init__.py +3 -2
- mindspore/nn/loss/loss.py +554 -311
- mindspore/nn/optim/ada_grad.py +12 -9
- mindspore/nn/optim/adadelta.py +14 -11
- mindspore/nn/optim/adafactor.py +19 -16
- mindspore/nn/optim/adam.py +62 -47
- mindspore/nn/optim/adamax.py +13 -10
- mindspore/nn/optim/adasum.py +12 -8
- mindspore/nn/optim/asgd.py +10 -9
- mindspore/nn/optim/ftrl.py +20 -17
- mindspore/nn/optim/lamb.py +16 -12
- mindspore/nn/optim/lars.py +8 -6
- mindspore/nn/optim/lazyadam.py +25 -20
- mindspore/nn/optim/momentum.py +10 -7
- mindspore/nn/optim/optimizer.py +61 -9
- mindspore/nn/optim/proximal_ada_grad.py +14 -13
- mindspore/nn/optim/rmsprop.py +17 -13
- mindspore/nn/optim/rprop.py +30 -17
- mindspore/nn/optim/sgd.py +40 -23
- mindspore/nn/optim/thor.py +24 -26
- mindspore/nn/probability/bijector/bijector.py +11 -11
- mindspore/nn/probability/bijector/exp.py +1 -1
- mindspore/nn/probability/bijector/gumbel_cdf.py +3 -3
- mindspore/nn/probability/bijector/invert.py +1 -1
- mindspore/nn/probability/bijector/power_transform.py +29 -29
- mindspore/nn/probability/bijector/scalar_affine.py +3 -3
- mindspore/nn/probability/bijector/softplus.py +5 -5
- mindspore/nn/probability/bnn_layers/bnn_cell_wrapper.py +4 -2
- mindspore/nn/probability/bnn_layers/conv_variational.py +13 -13
- mindspore/nn/probability/bnn_layers/dense_variational.py +12 -12
- mindspore/nn/probability/bnn_layers/layer_distribution.py +9 -8
- mindspore/nn/probability/distribution/_utils/custom_ops.py +19 -3
- mindspore/nn/probability/distribution/_utils/utils.py +1 -1
- mindspore/nn/probability/distribution/bernoulli.py +9 -9
- mindspore/nn/probability/distribution/beta.py +8 -8
- mindspore/nn/probability/distribution/categorical.py +23 -15
- mindspore/nn/probability/distribution/cauchy.py +5 -6
- mindspore/nn/probability/distribution/distribution.py +3 -3
- mindspore/nn/probability/distribution/exponential.py +4 -4
- mindspore/nn/probability/distribution/gamma.py +10 -10
- mindspore/nn/probability/distribution/geometric.py +8 -8
- mindspore/nn/probability/distribution/gumbel.py +8 -9
- mindspore/nn/probability/distribution/half_normal.py +5 -5
- mindspore/nn/probability/distribution/laplace.py +5 -5
- mindspore/nn/probability/distribution/log_normal.py +12 -11
- mindspore/nn/probability/distribution/logistic.py +8 -8
- mindspore/nn/probability/distribution/normal.py +6 -5
- mindspore/nn/probability/distribution/poisson.py +10 -11
- mindspore/nn/probability/distribution/student_t.py +8 -9
- mindspore/nn/probability/distribution/transformed_distribution.py +5 -5
- mindspore/nn/probability/distribution/uniform.py +11 -11
- mindspore/nn/reinforcement/tensor_array.py +2 -2
- mindspore/nn/sparse/sparse.py +9 -9
- mindspore/nn/wrap/cell_wrapper.py +188 -63
- mindspore/nn/wrap/grad_reducer.py +21 -12
- mindspore/nn/wrap/loss_scale.py +136 -49
- mindspore/numpy/__init__.py +4 -4
- mindspore/numpy/array_creations.py +55 -56
- mindspore/numpy/array_ops.py +134 -35
- mindspore/numpy/logic_ops.py +66 -20
- mindspore/numpy/math_ops.py +142 -139
- mindspore/numpy/utils_const.py +2 -2
- mindspore/offline_debug/convert_async.py +2 -2
- mindspore/ops/_grad_experimental/__init__.py +7 -5
- mindspore/ops/_grad_experimental/grad_array_ops.py +231 -348
- mindspore/ops/{_grad → _grad_experimental}/grad_base.py +1 -33
- mindspore/ops/{_grad → _grad_experimental}/grad_comm_ops.py +25 -13
- mindspore/ops/{_grad/__init__.py → _grad_experimental/grad_debug_ops.py} +15 -7
- mindspore/ops/{_grad → _grad_experimental}/grad_implementations.py +17 -11
- mindspore/ops/_grad_experimental/grad_inner_ops.py +33 -52
- mindspore/ops/_grad_experimental/grad_math_ops.py +151 -1224
- mindspore/ops/_grad_experimental/grad_nn_ops.py +141 -414
- mindspore/ops/{_grad → _grad_experimental}/grad_quant_ops.py +10 -6
- mindspore/ops/_grad_experimental/grad_sparse.py +317 -2
- mindspore/ops/_grad_experimental/grad_sparse_ops.py +3 -13
- mindspore/ops/{_grad → _grad_experimental}/taylor_rule.py +1 -1
- mindspore/ops/_op_impl/_custom_op/dsd_back_impl.py +1 -1
- mindspore/ops/_op_impl/_custom_op/flash_attention/__init__.py +0 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/attention.py +406 -0
- mindspore/{_extends/graph_kernel/expanders/complex/__init__.py → ops/_op_impl/_custom_op/flash_attention/constants.py} +27 -8
- mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_bwd.py +467 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_fwd.py +563 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/flash_attention_impl.py +193 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/tik_ops_utils.py +435 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/__init__.py +0 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/sparse_tiling.py +45 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/strategy.py +67 -0
- mindspore/ops/_op_impl/_custom_op/flash_attention/tiling_strategy/wukong_tiling.py +62 -0
- mindspore/ops/_op_impl/_custom_op/matmul_cube_dense_left_impl.py +2 -2
- mindspore/ops/_op_impl/aicpu/__init__.py +41 -1
- mindspore/ops/_op_impl/aicpu/adaptive_max_pool_2d.py +37 -0
- mindspore/ops/_op_impl/aicpu/bias_add_grad.py +0 -1
- mindspore/ops/_op_impl/aicpu/cast.py +52 -0
- mindspore/ops/_op_impl/aicpu/coalesce.py +2 -0
- mindspore/ops/_op_impl/aicpu/col2im.py +3 -1
- mindspore/ops/_op_impl/aicpu/count_nonzero.py +43 -0
- mindspore/ops/_op_impl/aicpu/dropout_genmask.py +6 -0
- mindspore/ops/_op_impl/aicpu/eps.py +32 -0
- mindspore/ops/_op_impl/aicpu/eye.py +4 -4
- mindspore/ops/_op_impl/aicpu/fft_with_size.py +6 -0
- mindspore/ops/_op_impl/aicpu/fill_diagonal.py +5 -0
- mindspore/ops/_op_impl/aicpu/gamma.py +2 -2
- mindspore/ops/_op_impl/aicpu/im2col.py +3 -5
- mindspore/ops/_op_impl/aicpu/lgamma.py +1 -0
- mindspore/ops/_op_impl/aicpu/log_uniform_candidate_sampler.py +6 -3
- mindspore/ops/_op_impl/aicpu/lu.py +39 -0
- mindspore/ops/_op_impl/aicpu/lu_unpack_grad.py +0 -1
- mindspore/ops/_op_impl/aicpu/masked_scatter.py +1 -0
- mindspore/ops/_op_impl/aicpu/masked_select_grad.py +3 -0
- mindspore/ops/_op_impl/aicpu/matrix_band_part.py +59 -0
- mindspore/ops/_op_impl/aicpu/matrix_power.py +6 -1
- mindspore/ops/_op_impl/aicpu/median.py +1 -0
- mindspore/ops/_op_impl/aicpu/multinomial.py +9 -9
- mindspore/ops/_op_impl/aicpu/not_equal.py +0 -5
- mindspore/ops/_op_impl/aicpu/pad_v3.py +3 -1
- mindspore/ops/_op_impl/aicpu/pad_v3_grad.py +2 -0
- mindspore/ops/_op_impl/aicpu/parameterized_truncated_normal.py +15 -7
- mindspore/ops/_op_impl/aicpu/random_categorical.py +39 -19
- mindspore/ops/_op_impl/aicpu/random_choice_with_mask.py +5 -2
- mindspore/ops/_op_impl/aicpu/random_poisson.py +103 -52
- mindspore/ops/_op_impl/aicpu/random_shuffle.py +17 -15
- mindspore/ops/_op_impl/aicpu/resize_bilinear_grad.py +0 -1
- mindspore/ops/_op_impl/aicpu/resize_nearest_neighbor_v2.py +0 -6
- mindspore/ops/_op_impl/aicpu/resize_nearest_neighbor_v2_grad.py +0 -7
- mindspore/ops/_op_impl/aicpu/scatter_nd.py +2 -0
- mindspore/ops/_op_impl/aicpu/sequence_concat.py +40 -0
- mindspore/ops/_op_impl/aicpu/sequence_stack.py +40 -0
- mindspore/ops/_op_impl/aicpu/{sparseaddmm.py → sparse_addmm.py} +2 -2
- mindspore/ops/_op_impl/aicpu/{sparsesparsemaximum.py → sparse_sparse_maximum.py} +4 -4
- mindspore/ops/_op_impl/aicpu/standard_laplace.py +5 -4
- mindspore/ops/_op_impl/aicpu/standard_normal.py +5 -4
- mindspore/ops/_op_impl/aicpu/truncated_normal.py +9 -7
- mindspore/ops/_op_impl/aicpu/uniform.py +5 -3
- mindspore/ops/_op_impl/aicpu/uniform_candidate_sampler.py +8 -4
- mindspore/ops/_op_impl/aicpu/uniform_int.py +5 -5
- mindspore/ops/_op_impl/aicpu/uniform_real.py +4 -4
- mindspore/ops/_op_impl/aicpu/upsample_nearest_3d.py +14 -6
- mindspore/ops/_op_impl/aicpu/upsample_nearest_3d_grad.py +22 -8
- mindspore/ops/_op_impl/aicpu/upsample_trilinear_3d.py +11 -6
- mindspore/ops/_op_impl/aicpu/upsample_trilinear_3d_grad.py +21 -10
- mindspore/ops/_op_impl/tbe/__init__.py +6 -4
- mindspore/ops/_op_impl/tbe/atomic_addr_clean.py +1 -1
- mindspore/ops/_op_impl/tbe/avg_pool.py +2 -2
- mindspore/ops/_op_impl/tbe/avg_pool_3d.py +3 -3
- mindspore/ops/_op_impl/tbe/avg_pool_3d_grad.py +4 -4
- mindspore/ops/_op_impl/tbe/avg_pool_ds.py +2 -2
- mindspore/ops/_op_impl/tbe/avg_pool_grad.py +3 -3
- mindspore/ops/_op_impl/tbe/avg_pool_grad_vm.py +3 -3
- mindspore/ops/_op_impl/tbe/batch_to_space.py +1 -1
- mindspore/ops/_op_impl/tbe/batch_to_space_nd.py +2 -2
- mindspore/ops/_op_impl/tbe/bn_infer.py +2 -2
- mindspore/ops/_op_impl/tbe/bn_infer_ds.py +3 -2
- mindspore/ops/_op_impl/tbe/broadcast_to.py +1 -1
- mindspore/ops/_op_impl/tbe/depthwise_conv2d.py +3 -3
- mindspore/ops/_op_impl/tbe/expand_dims.py +1 -1
- mindspore/ops/_op_impl/tbe/gather_v2.py +56 -0
- mindspore/ops/_op_impl/tbe/im2col.py +4 -4
- mindspore/ops/_op_impl/tbe/inplace_index_add.py +7 -3
- mindspore/ops/_op_impl/tbe/mem_set.py +38 -0
- mindspore/ops/_op_impl/tbe/scatter_nd_add.py +3 -0
- mindspore/ops/_op_impl/tbe/scatter_nd_d.py +1 -1
- mindspore/ops/_op_impl/tbe/space_to_batch.py +1 -1
- mindspore/ops/_op_impl/tbe/space_to_batch_nd.py +2 -2
- mindspore/ops/_op_impl/tbe/trans_data_ds.py +2 -0
- mindspore/ops/_primitive_cache.py +1 -1
- mindspore/ops/_tracefunc.py +241 -0
- mindspore/ops/_utils/utils.py +10 -2
- mindspore/ops/_vmap/vmap_array_ops.py +5 -3
- mindspore/ops/_vmap/vmap_base.py +5 -4
- mindspore/ops/_vmap/vmap_convolution_ops.py +1 -1
- mindspore/ops/_vmap/vmap_grad_math_ops.py +6 -4
- mindspore/ops/_vmap/vmap_grad_nn_ops.py +11 -6
- mindspore/ops/_vmap/vmap_math_ops.py +5 -2
- mindspore/ops/_vmap/vmap_nn_ops.py +135 -11
- mindspore/ops/arg_dtype_cast.py +54 -0
- mindspore/ops/composite/__init__.py +7 -5
- mindspore/ops/composite/base.py +78 -34
- mindspore/ops/composite/math_ops.py +5 -695
- mindspore/ops/composite/multitype_ops/_compile_utils.py +403 -97
- mindspore/ops/composite/multitype_ops/_constexpr_utils.py +28 -22
- mindspore/ops/composite/multitype_ops/add_impl.py +69 -7
- mindspore/ops/composite/multitype_ops/bitwise_and_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/bitwise_or_impl.py +2 -1
- mindspore/ops/composite/multitype_ops/bitwise_xor_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/div_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/floordiv_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/getitem_impl.py +48 -10
- mindspore/ops/composite/multitype_ops/greater_equal_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/greater_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/left_shift_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/less_equal_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/less_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/logic_not_impl.py +2 -2
- mindspore/ops/composite/multitype_ops/mod_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/mul_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/negative_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/not_in_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/ones_like_impl.py +6 -0
- mindspore/ops/composite/multitype_ops/pow_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/right_shift_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/setitem_impl.py +10 -7
- mindspore/ops/composite/multitype_ops/sub_impl.py +1 -0
- mindspore/ops/composite/multitype_ops/uadd_impl.py +2 -0
- mindspore/ops/composite/multitype_ops/zeros_like_impl.py +9 -0
- mindspore/ops/deprecated.py +304 -0
- mindspore/ops/function/__init__.py +41 -4
- mindspore/ops/function/array_func.py +1108 -467
- mindspore/ops/function/clip_func.py +94 -27
- mindspore/ops/function/debug_func.py +3 -1
- mindspore/ops/function/grad/grad_func.py +82 -73
- mindspore/ops/function/image_func.py +28 -12
- mindspore/ops/function/linalg_func.py +135 -39
- mindspore/ops/function/math_func.py +3779 -894
- mindspore/ops/function/nn_func.py +1584 -657
- mindspore/ops/function/parameter_func.py +13 -3
- mindspore/ops/function/random_func.py +247 -153
- mindspore/ops/function/sparse_func.py +14 -11
- mindspore/ops/function/sparse_unary_func.py +173 -47
- mindspore/ops/function/spectral_func.py +8 -4
- mindspore/ops/function/vmap_func.py +8 -7
- mindspore/ops/functional.py +47 -16
- mindspore/ops/op_info_register.py +346 -86
- mindspore/ops/operations/__init__.py +38 -22
- mindspore/ops/operations/_grad_ops.py +145 -149
- mindspore/ops/operations/_inner_ops.py +298 -56
- mindspore/ops/operations/_ms_kernel.py +3 -3
- mindspore/ops/operations/_quant_ops.py +24 -28
- mindspore/ops/operations/_rl_inner_ops.py +9 -7
- mindspore/ops/operations/_scalar_ops.py +115 -0
- mindspore/ops/operations/_sequence_ops.py +148 -10
- mindspore/ops/operations/_tensor_array.py +1 -1
- mindspore/ops/operations/_thor_ops.py +2 -2
- mindspore/ops/operations/array_ops.py +1239 -561
- mindspore/ops/operations/comm_ops.py +166 -90
- mindspore/ops/operations/control_ops.py +3 -3
- mindspore/ops/operations/custom_ops.py +124 -102
- mindspore/ops/operations/debug_ops.py +24 -11
- mindspore/ops/operations/image_ops.py +86 -71
- mindspore/ops/operations/inner_ops.py +18 -13
- mindspore/ops/operations/linalg_ops.py +30 -11
- mindspore/ops/operations/math_ops.py +1730 -435
- mindspore/ops/operations/nn_ops.py +1953 -943
- mindspore/ops/operations/other_ops.py +65 -43
- mindspore/ops/operations/random_ops.py +258 -98
- mindspore/ops/operations/rl_ops.py +4 -36
- mindspore/ops/operations/sparse_ops.py +38 -33
- mindspore/ops/operations/spectral_ops.py +8 -4
- mindspore/ops/primitive.py +66 -44
- mindspore/ops/signature.py +5 -5
- mindspore/parallel/_auto_parallel_context.py +80 -19
- mindspore/parallel/_cost_model_context.py +42 -0
- mindspore/parallel/_offload_context.py +162 -72
- mindspore/parallel/_parallel_serialization.py +2 -2
- mindspore/parallel/_ps_context.py +16 -4
- mindspore/parallel/_recovery_context.py +2 -1
- mindspore/parallel/_tensor.py +15 -13
- mindspore/parallel/_transformer/layers.py +8 -6
- mindspore/parallel/_transformer/loss.py +1 -0
- mindspore/parallel/_transformer/moe.py +7 -7
- mindspore/parallel/_transformer/op_parallel_config.py +12 -1
- mindspore/parallel/_transformer/transformer.py +34 -14
- mindspore/parallel/_utils.py +36 -14
- mindspore/parallel/algo_parameter_config.py +114 -20
- mindspore/parallel/checkpoint_transform.py +16 -18
- mindspore/parallel/shard.py +16 -13
- mindspore/profiler/__init__.py +1 -1
- mindspore/profiler/common/struct_type.py +3 -3
- mindspore/profiler/common/util.py +3 -2
- mindspore/profiler/envprofiling.py +11 -4
- mindspore/profiler/parser/aicpu_data_parser.py +5 -3
- mindspore/profiler/parser/ascend_flops_generator.py +94 -0
- mindspore/profiler/parser/ascend_fpbp_generator.py +76 -0
- mindspore/profiler/parser/ascend_hccl_generator.py +288 -0
- mindspore/profiler/parser/ascend_msprof_exporter.py +213 -0
- mindspore/profiler/parser/ascend_msprof_generator.py +199 -0
- mindspore/profiler/parser/ascend_op_generator.py +276 -0
- mindspore/profiler/parser/ascend_steptrace_generator.py +94 -0
- mindspore/profiler/parser/ascend_timeline_generator.py +110 -54
- mindspore/profiler/parser/base_timeline_generator.py +11 -7
- mindspore/profiler/parser/cpu_gpu_timeline_generator.py +45 -46
- mindspore/profiler/parser/flops_parser.py +15 -11
- mindspore/profiler/parser/framework_parser.py +92 -73
- mindspore/profiler/parser/hccl_parser.py +16 -12
- mindspore/profiler/parser/integrator.py +22 -11
- mindspore/profiler/parser/memory_usage_parser.py +36 -11
- mindspore/profiler/parser/minddata_analyzer.py +12 -14
- mindspore/profiler/parser/minddata_pipeline_parser.py +1 -1
- mindspore/profiler/parser/msadvisor_parser.py +8 -4
- mindspore/profiler/parser/op_intermediate_parser.py +5 -2
- mindspore/profiler/parser/optime_parser.py +1 -1
- mindspore/profiler/parser/profiler_info.py +4 -5
- mindspore/profiler/parser/step_trace_parser.py +11 -14
- mindspore/profiler/profiling.py +678 -377
- mindspore/rewrite/api/node.py +211 -54
- mindspore/rewrite/api/node_type.py +5 -0
- mindspore/rewrite/api/pattern_engine.py +22 -23
- mindspore/rewrite/api/scoped_value.py +20 -17
- mindspore/rewrite/api/symbol_tree.py +252 -106
- mindspore/rewrite/api/tree_node_helper.py +3 -0
- mindspore/rewrite/ast_helpers/__init__.py +2 -1
- mindspore/rewrite/ast_helpers/ast_finder.py +129 -0
- mindspore/rewrite/ast_helpers/ast_modifier.py +116 -104
- mindspore/rewrite/ast_transformers/flatten_recursive_stmt.py +97 -46
- mindspore/rewrite/common/rewrite_elog.py +5 -1
- mindspore/rewrite/namer.py +51 -51
- mindspore/rewrite/namespace.py +14 -5
- mindspore/{ops/bprop_mindir → rewrite/node}/__init__.py +9 -4
- mindspore/rewrite/node/call_function.py +79 -0
- mindspore/rewrite/node/cell_container.py +135 -0
- mindspore/rewrite/node/control_flow.py +88 -0
- mindspore/rewrite/{node.py → node/node.py} +313 -247
- mindspore/rewrite/node/node_manager.py +254 -0
- mindspore/rewrite/node/node_topological_manager.py +243 -0
- mindspore/rewrite/parsers/arguments_parser.py +22 -21
- mindspore/rewrite/parsers/assign_parser.py +225 -239
- mindspore/rewrite/parsers/attribute_parser.py +9 -7
- mindspore/rewrite/parsers/class_def_parser.py +179 -218
- mindspore/rewrite/parsers/constant_parser.py +9 -6
- mindspore/rewrite/parsers/container_parser.py +9 -7
- mindspore/rewrite/parsers/for_parser.py +36 -15
- mindspore/rewrite/parsers/function_def_parser.py +23 -20
- mindspore/rewrite/parsers/if_parser.py +28 -24
- mindspore/rewrite/parsers/module_parser.py +202 -25
- mindspore/rewrite/{parser.py → parsers/parser.py} +4 -2
- mindspore/rewrite/{parser_register.py → parsers/parser_register.py} +1 -1
- mindspore/rewrite/parsers/return_parser.py +6 -6
- mindspore/rewrite/sparsify/sparse_transformer.py +12 -3
- mindspore/rewrite/sparsify/sparsify.py +4 -1
- mindspore/rewrite/sparsify/utils.py +11 -5
- mindspore/rewrite/symbol_tree.py +577 -732
- mindspore/rewrite/symbol_tree_builder.py +9 -175
- mindspore/rewrite/symbol_tree_dumper.py +2 -2
- mindspore/run_check/_check_version.py +46 -39
- mindspore/run_check/run_check.py +3 -2
- mindspore/{scipy/sparse → safeguard}/__init__.py +4 -5
- mindspore/safeguard/rewrite_obfuscation.py +517 -0
- mindspore/scipy/__init__.py +1 -1
- mindspore/scipy/linalg.py +67 -61
- mindspore/scipy/ops.py +5 -41
- mindspore/scipy/ops_grad.py +3 -2
- mindspore/scipy/ops_wrapper.py +5 -5
- mindspore/scipy/optimize/line_search.py +8 -8
- mindspore/scipy/optimize/linear_sum_assignment.py +4 -4
- mindspore/scipy/optimize/minimize.py +16 -12
- mindspore/scipy/utils.py +1 -52
- mindspore/scipy/utils_const.py +4 -4
- mindspore/train/__init__.py +4 -4
- mindspore/train/_utils.py +13 -5
- mindspore/train/amp.py +410 -148
- mindspore/train/anf_ir_pb2.py +16 -4
- mindspore/train/callback/_backup_and_restore.py +8 -11
- mindspore/train/callback/_callback.py +80 -3
- mindspore/train/callback/_checkpoint.py +82 -51
- mindspore/train/callback/_early_stop.py +12 -15
- mindspore/train/callback/_history.py +1 -1
- mindspore/train/callback/_lambda_callback.py +13 -13
- mindspore/train/callback/_landscape.py +21 -17
- mindspore/train/callback/_loss_monitor.py +9 -10
- mindspore/train/callback/_on_request_exit.py +16 -33
- mindspore/train/callback/_reduce_lr_on_plateau.py +21 -24
- mindspore/train/callback/_summary_collector.py +44 -30
- mindspore/train/callback/_time_monitor.py +62 -12
- mindspore/train/data_sink.py +10 -16
- mindspore/train/dataset_helper.py +154 -86
- mindspore/train/loss_scale_manager.py +14 -9
- mindspore/train/metrics/__init__.py +10 -2
- mindspore/train/metrics/accuracy.py +1 -1
- mindspore/train/metrics/auc.py +1 -1
- mindspore/train/metrics/bleu_score.py +2 -2
- mindspore/train/metrics/confusion_matrix.py +14 -14
- mindspore/train/metrics/cosine_similarity.py +3 -3
- mindspore/train/metrics/dice.py +1 -1
- mindspore/train/metrics/fbeta.py +1 -1
- mindspore/train/metrics/hausdorff_distance.py +8 -6
- mindspore/train/metrics/mean_surface_distance.py +5 -4
- mindspore/train/metrics/metric.py +49 -17
- mindspore/train/metrics/occlusion_sensitivity.py +4 -4
- mindspore/train/metrics/perplexity.py +1 -1
- mindspore/train/metrics/precision.py +2 -2
- mindspore/train/metrics/recall.py +2 -3
- mindspore/train/metrics/roc.py +7 -7
- mindspore/train/metrics/root_mean_square_surface_distance.py +5 -4
- mindspore/train/metrics/topk.py +7 -4
- mindspore/train/mind_ir_pb2.py +193 -48
- mindspore/train/model.py +377 -133
- mindspore/train/serialization.py +697 -245
- mindspore/train/summary/_summary_adapter.py +5 -2
- mindspore/train/summary/_writer_pool.py +4 -3
- mindspore/train/summary/summary_record.py +25 -23
- mindspore/train/train_thor/convert_utils.py +39 -23
- mindspore/train/train_thor/dataset_helper.py +4 -3
- mindspore/train/train_thor/model_thor.py +8 -8
- mindspore/version.py +1 -1
- {mindspore-2.0.0rc1.dist-info → mindspore-2.2.0.dist-info}/METADATA +7 -8
- {mindspore-2.0.0rc1.dist-info → mindspore-2.2.0.dist-info}/RECORD +633 -804
- {mindspore-2.0.0rc1.dist-info → mindspore-2.2.0.dist-info}/entry_points.txt +0 -1
- mindspore/_akg/akg/tvm/contrib/debugger/__init__.py +0 -16
- mindspore/_akg/akg/tvm/contrib/debugger/debug_result.py +0 -274
- mindspore/_akg/akg/tvm/contrib/debugger/debug_runtime.py +0 -259
- mindspore/_akg/akg/tvm/contrib/peak.py +0 -341
- mindspore/_akg/akg/tvm/contrib/rpc.py +0 -25
- mindspore/_akg/akg/tvm/contrib/xcode.py +0 -257
- mindspore/_akg/akg/tvm/exec/__init__.py +0 -17
- mindspore/_akg/akg/tvm/exec/autotvm_log_editor.py +0 -60
- mindspore/_akg/akg/tvm/exec/measure_peak.py +0 -48
- mindspore/_akg/akg/tvm/exec/query_rpc_tracker.py +0 -48
- mindspore/_akg/akg/tvm/exec/rpc_proxy.py +0 -98
- mindspore/_akg/akg/tvm/exec/rpc_server.py +0 -88
- mindspore/_akg/akg/tvm/exec/rpc_tracker.py +0 -62
- mindspore/_akg/akg/tvm/rpc/__init__.py +0 -29
- mindspore/_akg/akg/tvm/rpc/base.py +0 -182
- mindspore/_akg/akg/tvm/rpc/client.py +0 -436
- mindspore/_akg/akg/tvm/rpc/proxy.py +0 -595
- mindspore/_akg/akg/tvm/rpc/server.py +0 -413
- mindspore/_akg/akg/tvm/rpc/tornado_util.py +0 -121
- mindspore/_akg/akg/tvm/rpc/tracker.py +0 -431
- mindspore/_extends/graph_kernel/expander.py +0 -80
- mindspore/_extends/graph_kernel/expanders/__init__.py +0 -57
- mindspore/_extends/graph_kernel/expanders/_utils.py +0 -269
- mindspore/_extends/graph_kernel/expanders/addn.py +0 -33
- mindspore/_extends/graph_kernel/expanders/batchnorm.py +0 -152
- mindspore/_extends/graph_kernel/expanders/batchnorm_grad.py +0 -105
- mindspore/_extends/graph_kernel/expanders/bias_add_grad.py +0 -49
- mindspore/_extends/graph_kernel/expanders/clip_by_norm_no_div_sum.py +0 -33
- mindspore/_extends/graph_kernel/expanders/complex/abs.py +0 -30
- mindspore/_extends/graph_kernel/expanders/complex/add.py +0 -44
- mindspore/_extends/graph_kernel/expanders/complex/div.py +0 -62
- mindspore/_extends/graph_kernel/expanders/complex/mul.py +0 -52
- mindspore/_extends/graph_kernel/expanders/complex/real_div.py +0 -62
- mindspore/_extends/graph_kernel/expanders/complex/sub.py +0 -45
- mindspore/_extends/graph_kernel/expanders/conv2d.py +0 -200
- mindspore/_extends/graph_kernel/expanders/dropout_grad.py +0 -30
- mindspore/_extends/graph_kernel/expanders/equal_count.py +0 -50
- mindspore/_extends/graph_kernel/expanders/erfc.py +0 -35
- mindspore/_extends/graph_kernel/expanders/expand_dims.py +0 -50
- mindspore/_extends/graph_kernel/expanders/fused_adam.py +0 -44
- mindspore/_extends/graph_kernel/expanders/fused_adam_weight_decay.py +0 -47
- mindspore/_extends/graph_kernel/expanders/fused_mul_add.py +0 -28
- mindspore/_extends/graph_kernel/expanders/gather.py +0 -43
- mindspore/_extends/graph_kernel/expanders/gelu_grad.py +0 -70
- mindspore/_extends/graph_kernel/expanders/gkdropout.py +0 -40
- mindspore/_extends/graph_kernel/expanders/identity.py +0 -25
- mindspore/_extends/graph_kernel/expanders/layernorm.py +0 -93
- mindspore/_extends/graph_kernel/expanders/layernorm_grad.py +0 -113
- mindspore/_extends/graph_kernel/expanders/logsoftmax.py +0 -46
- mindspore/_extends/graph_kernel/expanders/logsoftmax_grad.py +0 -36
- mindspore/_extends/graph_kernel/expanders/matmul.py +0 -80
- mindspore/_extends/graph_kernel/expanders/maximum_grad.py +0 -59
- mindspore/_extends/graph_kernel/expanders/minimum_grad.py +0 -80
- mindspore/_extends/graph_kernel/expanders/oneslike.py +0 -26
- mindspore/_extends/graph_kernel/expanders/reduce_mean.py +0 -43
- mindspore/_extends/graph_kernel/expanders/relu_grad.py +0 -32
- mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits.py +0 -41
- mindspore/_extends/graph_kernel/expanders/sigmoid_cross_entropy_with_logits_grad.py +0 -35
- mindspore/_extends/graph_kernel/expanders/sigmoid_grad.py +0 -31
- mindspore/_extends/graph_kernel/expanders/slice.py +0 -35
- mindspore/_extends/graph_kernel/expanders/softmax_cross_entropy_with_logits.py +0 -42
- mindspore/_extends/graph_kernel/expanders/softmax_grad_ext.py +0 -41
- mindspore/_extends/graph_kernel/expanders/softsign.py +0 -28
- mindspore/_extends/graph_kernel/expanders/sqrt_grad.py +0 -29
- mindspore/_extends/graph_kernel/expanders/square_sum_all.py +0 -44
- mindspore/_extends/graph_kernel/expanders/square_sum_v1.py +0 -37
- mindspore/_extends/graph_kernel/expanders/squared_difference.py +0 -43
- mindspore/_extends/graph_kernel/expanders/tanh_grad.py +0 -31
- mindspore/_extends/graph_kernel/expanders/tile.py +0 -54
- mindspore/_extends/graph_kernel/model/op_infer.py +0 -506
- mindspore/_extends/parse/jit_fallback_modules.py +0 -51
- mindspore/dataset/datapreprocess/preprocess_imagenet_validate_dataset.py +0 -54
- mindspore/dataset/engine/graphdata.py +0 -1586
- mindspore/include/api/net.h +0 -142
- mindspore/ops/_grad/grad_array_ops.py +0 -1347
- mindspore/ops/_grad/grad_clip_ops.py +0 -84
- mindspore/ops/_grad/grad_debug_ops.py +0 -68
- mindspore/ops/_grad/grad_inner_ops.py +0 -235
- mindspore/ops/_grad/grad_math_ops.py +0 -1684
- mindspore/ops/_grad/grad_nn_ops.py +0 -1529
- mindspore/ops/_grad/grad_other_ops.py +0 -89
- mindspore/ops/_grad/grad_sequence_ops.py +0 -296
- mindspore/ops/_grad/grad_sparse.py +0 -323
- mindspore/ops/_grad_experimental/grad_image_ops.py +0 -249
- mindspore/ops/_grad_experimental/grad_linalg_ops.py +0 -195
- mindspore/ops/_grad_experimental/grad_scalar_ops.py +0 -112
- mindspore/ops/bprop_mindir/AdaptiveAvgPool2D_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/AdaptiveMaxPool2D_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/ApproximateEqual_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/Argmax_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/Argmin_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/AssignSub_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/Assign_bprop.mindir +0 -17
- mindspore/ops/bprop_mindir/AvgPool3D_bprop.mindir +0 -150
- mindspore/ops/bprop_mindir/AvgPool_bprop.mindir +0 -66
- mindspore/ops/bprop_mindir/BCEWithLogitsLoss_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/BNTrainingReduce_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/BatchNormGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/BatchToSpaceND_bprop.mindir +0 -28
- mindspore/ops/bprop_mindir/BiasAddGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/BinaryCrossEntropy_bprop.mindir +0 -33
- mindspore/ops/bprop_mindir/BroadcastTo_bprop.mindir +0 -306
- mindspore/ops/bprop_mindir/Broadcast_bprop.mindir +0 -13
- mindspore/ops/bprop_mindir/CTCLoss_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Concat_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Conv2DBackpropFilter_bprop.mindir +0 -240
- mindspore/ops/bprop_mindir/Conv2DBackpropInput_bprop.mindir +0 -247
- mindspore/ops/bprop_mindir/Conv2DTranspose_bprop.mindir +0 -247
- mindspore/ops/bprop_mindir/Conv3DTranspose_bprop.mindir +0 -315
- mindspore/ops/bprop_mindir/Conv3D_bprop.mindir +0 -278
- mindspore/ops/bprop_mindir/DType_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/DeformableOffsets_bprop.mindir +0 -58
- mindspore/ops/bprop_mindir/Depend_bprop.mindir +0 -13
- mindspore/ops/bprop_mindir/DepthToSpace_bprop.mindir +0 -23
- mindspore/ops/bprop_mindir/DepthwiseConv2dNative_bprop.mindir +0 -138
- mindspore/ops/bprop_mindir/DiagPart_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/Dropout2D_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Dropout3D_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/DropoutDoMask_bprop.mindir +0 -25
- mindspore/ops/bprop_mindir/DropoutGenMask_bprop.mindir +0 -18
- mindspore/ops/bprop_mindir/DropoutGrad_bprop.mindir +0 -27
- mindspore/ops/bprop_mindir/Dropout_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/DynamicGRUV2_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/DynamicRNN_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/DynamicShape_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/Elu_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/EmbeddingLookup_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Equal_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/ExpandDims_bprop.mindir +0 -58
- mindspore/ops/bprop_mindir/FastGeLU_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/Flatten_bprop.mindir +0 -54
- mindspore/ops/bprop_mindir/FloorDiv_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/GatherD_bprop.mindir +0 -26
- mindspore/ops/bprop_mindir/GatherNd_bprop.mindir +0 -57
- mindspore/ops/bprop_mindir/Gather_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/GreaterEqual_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/Greater_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/HSigmoid_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/HSwish_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/IOU_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/InstanceNorm_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/IsFinite_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/IsInf_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/IsNan_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/KLDivLoss_bprop.mindir +0 -126
- mindspore/ops/bprop_mindir/L2Loss_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/L2Normalize_bprop.mindir +0 -30
- mindspore/ops/bprop_mindir/LRN_bprop.mindir +0 -43
- mindspore/ops/bprop_mindir/LayerNormGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/LessEqual_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/Less_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/LinSpace_bprop.mindir +0 -23
- mindspore/ops/bprop_mindir/Load_bprop.mindir +0 -13
- mindspore/ops/bprop_mindir/LogSoftmax_bprop.mindir +0 -23
- mindspore/ops/bprop_mindir/LogicalAnd_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/LogicalNot_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/MaskedSelect_bprop.mindir +0 -21
- mindspore/ops/bprop_mindir/MaxPool3DGradGrad_bprop.mindir +0 -74
- mindspore/ops/bprop_mindir/MaxPool3DGrad_bprop.mindir +0 -74
- mindspore/ops/bprop_mindir/MaxPool3D_bprop.mindir +0 -75
- mindspore/ops/bprop_mindir/MaxPoolGradGrad_bprop.mindir +0 -65
- mindspore/ops/bprop_mindir/MaxPoolWithArgmax_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Maximum_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Minimum_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/MirrorPad_bprop.mindir +0 -27
- mindspore/ops/bprop_mindir/Mish_bprop.mindir +0 -35
- mindspore/ops/bprop_mindir/MulNoNan_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/NLLLoss_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/NonZero_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/NotEqual_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/OneHot_bprop.mindir +0 -26
- mindspore/ops/bprop_mindir/OnesLike_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/PReLU_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Pad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Padding_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/RNNTLoss_bprop.mindir +0 -29
- mindspore/ops/bprop_mindir/ROIAlign_bprop.mindir +0 -82
- mindspore/ops/bprop_mindir/Range_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/Rank_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/ReLU6_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/ReLUV2_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/ReduceAll_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/ReduceAny_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/ReluGrad_bprop.mindir +0 -20
- mindspore/ops/bprop_mindir/Reshape_bprop.mindir +0 -60
- mindspore/ops/bprop_mindir/ResizeBilinear_bprop.mindir +0 -29
- mindspore/ops/bprop_mindir/ResizeNearestNeighbor_bprop.mindir +0 -89
- mindspore/ops/bprop_mindir/ReverseSequence_bprop.mindir +0 -52
- mindspore/ops/bprop_mindir/ReverseV2_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/Round_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/ScatterMax_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/ScatterMin_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/ScatterNdUpdate_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/ScatterNd_bprop.mindir +0 -24
- mindspore/ops/bprop_mindir/ScatterNonAliasingAdd_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/ScatterUpdate_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/SeLU_bprop.mindir +0 -21
- mindspore/ops/bprop_mindir/Select_bprop.mindir +0 -31
- mindspore/ops/bprop_mindir/Shape_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/SigmoidCrossEntropyWithLogits_bprop.mindir +0 -21
- mindspore/ops/bprop_mindir/SigmoidGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Sigmoid_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/Sign_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/Slice_bprop.mindir +0 -26
- mindspore/ops/bprop_mindir/SmoothL1Loss_bprop.mindir +0 -36
- mindspore/ops/bprop_mindir/SoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Softplus_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/Softsign_bprop.mindir +0 -33
- mindspore/ops/bprop_mindir/Sort_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/SpaceToBatchND_bprop.mindir +0 -28
- mindspore/ops/bprop_mindir/SpaceToDepth_bprop.mindir +0 -23
- mindspore/ops/bprop_mindir/SparseGatherV2_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/SparseSoftmaxCrossEntropyWithLogits_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Split_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/Squeeze_bprop.mindir +0 -54
- mindspore/ops/bprop_mindir/StridedSliceGrad_bprop.mindir +0 -95
- mindspore/ops/bprop_mindir/StridedSlice_bprop.mindir +0 -98
- mindspore/ops/bprop_mindir/Switch_bprop.mindir +0 -29
- mindspore/ops/bprop_mindir/TanhGrad_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/Tanh_bprop.mindir +0 -66
- mindspore/ops/bprop_mindir/TensorScatterAdd_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/TensorScatterUpdate_bprop.mindir +0 -29
- mindspore/ops/bprop_mindir/TensorShape_bprop.mindir +0 -14
- mindspore/ops/bprop_mindir/Tile_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/TopK_bprop.mindir +0 -0
- mindspore/ops/bprop_mindir/TransShape_bprop.mindir +0 -23
- mindspore/ops/bprop_mindir/TruncateDiv_bprop.mindir +0 -19
- mindspore/ops/bprop_mindir/TupleGetItem_bprop.mindir +0 -20
- mindspore/ops/bprop_mindir/Unique_bprop.mindir +0 -16
- mindspore/ops/bprop_mindir/Unstack_bprop.mindir +0 -22
- mindspore/ops/bprop_mindir/UpsampleNearest3D_bprop.mindir +0 -32
- mindspore/ops/bprop_mindir/UpsampleTrilinear3D_bprop.mindir +0 -38
- mindspore/ops/bprop_mindir/ZerosLike_bprop.mindir +0 -15
- mindspore/ops/bprop_mindir/generate_mindir.py +0 -114
- mindspore/rewrite/node_visitor.py +0 -44
- mindspore/rewrite/topological_manager.py +0 -203
- mindspore/scipy/sparse/linalg.py +0 -192
- {mindspore-2.0.0rc1.dist-info → mindspore-2.2.0.dist-info}/WHEEL +0 -0
- {mindspore-2.0.0rc1.dist-info → mindspore-2.2.0.dist-info}/top_level.txt +0 -0
|
@@ -31,7 +31,7 @@ Note: Legacy c_transforms and py_transforms are deprecated but can still be impo
|
|
|
31
31
|
from mindspore.dataset.transforms import py_transforms
|
|
32
32
|
|
|
33
33
|
See `Common Transforms
|
|
34
|
-
<https://www.mindspore.cn/tutorials/en/r2.
|
|
34
|
+
<https://www.mindspore.cn/tutorials/en/r2.2/beginner/transforms.html#common-transforms>`_ tutorial for more details.
|
|
35
35
|
|
|
36
36
|
Descriptions of common data processing terms are as follows:
|
|
37
37
|
|
|
@@ -377,8 +377,9 @@ class Concatenate(TensorOperation):
|
|
|
377
377
|
Args:
|
|
378
378
|
axis (int, optional): Concatenate the tensors along given axis. Default: 0.
|
|
379
379
|
prepend (numpy.array, optional): NumPy array to be prepended to the already concatenated tensors.
|
|
380
|
-
Default: None
|
|
381
|
-
append (numpy.array, optional): NumPy array to be appended to the already concatenated tensors.
|
|
380
|
+
Default: ``None``.
|
|
381
|
+
append (numpy.array, optional): NumPy array to be appended to the already concatenated tensors.
|
|
382
|
+
Default: ``None``.
|
|
382
383
|
|
|
383
384
|
Raises:
|
|
384
385
|
TypeError: If `axis` is not of type int.
|
|
@@ -18,11 +18,12 @@ Built-in py_transforms_utils functions.
|
|
|
18
18
|
import json
|
|
19
19
|
import random
|
|
20
20
|
from enum import IntEnum
|
|
21
|
-
from types import FunctionType
|
|
21
|
+
from types import FunctionType, MethodType
|
|
22
22
|
import numpy as np
|
|
23
23
|
|
|
24
24
|
from mindspore import log as logger
|
|
25
25
|
from ..core.py_util_helpers import is_numpy, ExceptionHandler
|
|
26
|
+
from .. import transforms as t
|
|
26
27
|
|
|
27
28
|
|
|
28
29
|
class Implementation(IntEnum):
|
|
@@ -212,16 +213,43 @@ class FuncWrapper:
|
|
|
212
213
|
|
|
213
214
|
def to_json(self):
|
|
214
215
|
""" Serialize to JSON format """
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
216
|
+
# User-defined Python functions cannot be fully nor correctly serialized.
|
|
217
|
+
# Log a warning, and produce minimal info for the Python UDF, so that serialization of the
|
|
218
|
+
# dataset pipeline can continue.
|
|
219
|
+
# Note that the serialized JSON output is not valid to be deserialized.
|
|
220
|
+
udf_python_warning = "Serialization of user-defined Python functions is not supported. " \
|
|
221
|
+
"Any produced serialized JSON file output for this dataset pipeline is not valid " \
|
|
222
|
+
"to be deserialized."
|
|
223
|
+
try:
|
|
224
|
+
if isinstance(self.transform, (FunctionType, MethodType)):
|
|
225
|
+
# common function type(include lambda, class method) / object method
|
|
226
|
+
logger.warning(udf_python_warning)
|
|
227
|
+
json_obj = {}
|
|
228
|
+
json_obj["tensor_op_name"] = self.transform.__name__
|
|
229
|
+
json_obj["python_module"] = self.__class__.__module__
|
|
230
|
+
return json.dumps(json_obj)
|
|
231
|
+
if callable(self.transform) and not isinstance(self.transform, (t.c_transforms.TensorOperation,
|
|
232
|
+
t.py_transforms.PyTensorOperation,
|
|
233
|
+
t.transforms.TensorOperation,
|
|
234
|
+
t.transforms.PyTensorOperation,
|
|
235
|
+
FuncWrapper)):
|
|
236
|
+
# udf callable class
|
|
237
|
+
logger.warning(udf_python_warning)
|
|
238
|
+
json_obj = {}
|
|
239
|
+
json_obj["tensor_op_name"] = type(self.transform).__name__
|
|
240
|
+
json_obj["python_module"] = self.__class__.__module__
|
|
241
|
+
return json.dumps(json_obj)
|
|
242
|
+
# dataset operations
|
|
243
|
+
return self.transform.to_json()
|
|
244
|
+
except Exception as e:
|
|
245
|
+
logger.warning("Skip user-defined Python method which cannot be serialized, reason is: " + str(e))
|
|
223
246
|
json_obj = {}
|
|
224
|
-
json_obj["tensor_op_name"] =
|
|
225
|
-
json_obj["python_module"] =
|
|
247
|
+
json_obj["tensor_op_name"] = "unknown"
|
|
248
|
+
json_obj["python_module"] = "unknown"
|
|
226
249
|
return json.dumps(json_obj)
|
|
227
|
-
|
|
250
|
+
|
|
251
|
+
def release_resource(self):
|
|
252
|
+
# release the executor which is used by current thread/process when
|
|
253
|
+
# use transform in eager mode in map op or batch op
|
|
254
|
+
# this will be call in MapOp::WorkerEntry and BatchOp::WorkerEntry
|
|
255
|
+
t.transforms.clean_unused_executors()
|
|
@@ -17,6 +17,8 @@ The module transforms provides common operations, including Compose, OneHot and
|
|
|
17
17
|
"""
|
|
18
18
|
import json
|
|
19
19
|
from abc import ABC
|
|
20
|
+
import os
|
|
21
|
+
import threading
|
|
20
22
|
|
|
21
23
|
import sys
|
|
22
24
|
from enum import IntEnum
|
|
@@ -36,6 +38,28 @@ from ..core.datatypes import mstype_to_detype, nptype_to_detype
|
|
|
36
38
|
from ..vision.py_transforms_util import is_pil
|
|
37
39
|
|
|
38
40
|
|
|
41
|
+
# hold all the executor objects when in training procedure
|
|
42
|
+
# key : pid_tid which distinguishes multiple executors by process_id + thread_id
|
|
43
|
+
# value : executor object which lifecycle will always exist during training
|
|
44
|
+
EXECUTORS_LIST = dict()
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
# the follow case process / thread exit need call the function
|
|
48
|
+
# 1. user defined dataset with process mode
|
|
49
|
+
# 2. user defined dataset with thread mode
|
|
50
|
+
# 3. user defined transform in map op with process mode
|
|
51
|
+
# 4. user defined transform in map op with thread mode
|
|
52
|
+
# 5. batch op with per_batch_map operation in process mode
|
|
53
|
+
# 6. batch op with per_batch_map operation in thread mode
|
|
54
|
+
def clean_unused_executors():
|
|
55
|
+
"""
|
|
56
|
+
clean the unused executor object in UDF or map with PyFunc process / thread mode
|
|
57
|
+
"""
|
|
58
|
+
key = str(os.getpid()) + "_" + str(threading.currentThread().ident)
|
|
59
|
+
if key in EXECUTORS_LIST:
|
|
60
|
+
EXECUTORS_LIST.pop(key)
|
|
61
|
+
|
|
62
|
+
|
|
39
63
|
class TensorOperation:
|
|
40
64
|
"""
|
|
41
65
|
Base class Tensor Ops
|
|
@@ -44,7 +68,7 @@ class TensorOperation:
|
|
|
44
68
|
def __init__(self):
|
|
45
69
|
super().__init__()
|
|
46
70
|
self.implementation = None
|
|
47
|
-
self.
|
|
71
|
+
self.device_target = "CPU"
|
|
48
72
|
|
|
49
73
|
def __call__(self, *input_tensor_list):
|
|
50
74
|
"""
|
|
@@ -62,9 +86,22 @@ class TensorOperation:
|
|
|
62
86
|
except (RuntimeError, TypeError):
|
|
63
87
|
raise TypeError("Invalid user input. Got {}: {}, cannot be converted into tensor." \
|
|
64
88
|
.format(type(tensor), tensor))
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
89
|
+
|
|
90
|
+
# get or create the executor from EXECUTORS_LIST
|
|
91
|
+
executor = None
|
|
92
|
+
key = str(os.getpid()) + "_" + str(threading.currentThread().ident)
|
|
93
|
+
if key in EXECUTORS_LIST:
|
|
94
|
+
# get the executor by process id and thread id
|
|
95
|
+
executor = EXECUTORS_LIST[key]
|
|
96
|
+
# remove the old transform which in executor and update the new transform
|
|
97
|
+
executor.UpdateOperation(self.parse())
|
|
98
|
+
else:
|
|
99
|
+
# create a new executor by process id and thread_id
|
|
100
|
+
executor = cde.Execute(self.parse())
|
|
101
|
+
# add the executor the global EXECUTORS_LIST
|
|
102
|
+
EXECUTORS_LIST[key] = executor
|
|
103
|
+
|
|
104
|
+
output_tensor_list = executor(tensor_row)
|
|
68
105
|
output_numpy_list = [x.as_array() for x in output_tensor_list]
|
|
69
106
|
return output_numpy_list[0] if len(output_numpy_list) == 1 else tuple(output_numpy_list)
|
|
70
107
|
|
|
@@ -220,12 +257,14 @@ class Compose(CompoundOperation):
|
|
|
220
257
|
``CPU``
|
|
221
258
|
|
|
222
259
|
Examples:
|
|
223
|
-
>>>
|
|
224
|
-
>>>
|
|
225
|
-
>>>
|
|
260
|
+
>>> import mindspore.dataset as ds
|
|
261
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
262
|
+
>>> import mindspore.dataset.vision as vision
|
|
226
263
|
>>>
|
|
227
264
|
>>> # create a dataset that reads all files in dataset_dir with 8 threads
|
|
265
|
+
>>> image_folder_dataset_dir = "/path/to/image_folder_dataset_directory"
|
|
228
266
|
>>> image_folder_dataset = ds.ImageFolderDataset(image_folder_dataset_dir, num_parallel_workers=8)
|
|
267
|
+
>>>
|
|
229
268
|
>>> # create a list of transformations to be applied to the image data
|
|
230
269
|
>>> transform = transforms.Compose([vision.Decode(to_pil=True),
|
|
231
270
|
... vision.RandomHorizontalFlip(0.5),
|
|
@@ -244,7 +283,7 @@ class Compose(CompoundOperation):
|
|
|
244
283
|
... vision.RandomErasing()]
|
|
245
284
|
>>>
|
|
246
285
|
>>> # apply the transform to the dataset through dataset.map()
|
|
247
|
-
>>>
|
|
286
|
+
>>> image_folder_dataset = image_folder_dataset.map(operations=transforms_list, input_columns=["image"])
|
|
248
287
|
>>>
|
|
249
288
|
>>> # Certain C++ and Python ops can be combined, but not all of them
|
|
250
289
|
>>> # An example of combined operations
|
|
@@ -271,17 +310,16 @@ class Compose(CompoundOperation):
|
|
|
271
310
|
if all(hasattr(transform, "random") and not transform.random for transform in self.transforms):
|
|
272
311
|
self.random = False
|
|
273
312
|
|
|
313
|
+
# pylint: disable=missing-docstring
|
|
274
314
|
@staticmethod
|
|
275
315
|
def decompose(operations):
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
list of operations without compose operations.
|
|
284
|
-
"""
|
|
316
|
+
# Remove all compose operation from the given list of operations.
|
|
317
|
+
#
|
|
318
|
+
# Args:
|
|
319
|
+
# operations (list): list of transforms.
|
|
320
|
+
#
|
|
321
|
+
# Returns:
|
|
322
|
+
# list of operations without compose operations.
|
|
285
323
|
new_operations = []
|
|
286
324
|
for op in operations:
|
|
287
325
|
if isinstance(op, Compose):
|
|
@@ -290,17 +328,16 @@ class Compose(CompoundOperation):
|
|
|
290
328
|
new_operations.append(op)
|
|
291
329
|
return new_operations
|
|
292
330
|
|
|
331
|
+
# pylint: disable=missing-docstring
|
|
293
332
|
@staticmethod
|
|
294
333
|
def reduce(operations):
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
list, the reduced list of operations.
|
|
303
|
-
"""
|
|
334
|
+
# Wraps adjacent Python operations in a Compose to allow mixing of Python and C++ operations.
|
|
335
|
+
#
|
|
336
|
+
# Args:
|
|
337
|
+
# operations (list): list of tensor operations.
|
|
338
|
+
#
|
|
339
|
+
# Returns:
|
|
340
|
+
# list, the reduced list of operations.
|
|
304
341
|
new_ops, start_ind, end_ind = [], 0, 0
|
|
305
342
|
for i, op in enumerate(operations):
|
|
306
343
|
if op.implementation == Implementation.C and not isinstance(op, FuncWrapper):
|
|
@@ -340,16 +377,31 @@ class Compose(CompoundOperation):
|
|
|
340
377
|
"""
|
|
341
378
|
return util.compose(self.transforms, *args)
|
|
342
379
|
|
|
380
|
+
def __call__(self, *args):
|
|
381
|
+
'''
|
|
382
|
+
If PY op exists in self.transforms, should use _execute_py to keep the output types unchanged.
|
|
383
|
+
'''
|
|
384
|
+
if any([t.implementation == Implementation.PY for t in self.transforms]):
|
|
385
|
+
self.implementation = Implementation.PY
|
|
386
|
+
return super().__call__(*args)
|
|
387
|
+
|
|
388
|
+
def release_resource(self):
|
|
389
|
+
# release the executor which is used by current thread/process when
|
|
390
|
+
# use transform in eager mode in map op
|
|
391
|
+
# this will be call in MapOp::WorkerEntry
|
|
392
|
+
clean_unused_executors()
|
|
393
|
+
|
|
343
394
|
|
|
344
395
|
class Concatenate(TensorOperation):
|
|
345
396
|
"""
|
|
346
397
|
Tensor operation that concatenates all columns into a single tensor, only 1D tenspr is supported.
|
|
347
398
|
|
|
348
399
|
Args:
|
|
349
|
-
axis (int, optional): Concatenate the tensors along given axis. Default: 0
|
|
400
|
+
axis (int, optional): Concatenate the tensors along given axis. Default: ``0``.
|
|
350
401
|
prepend (numpy.ndarray, optional): NumPy array to be prepended to the already concatenated tensors.
|
|
351
|
-
Default: None
|
|
352
|
-
append (numpy.ndarray, optional): NumPy array to be appended to the already concatenated tensors.
|
|
402
|
+
Default: ``None``.
|
|
403
|
+
append (numpy.ndarray, optional): NumPy array to be appended to the already concatenated tensors.
|
|
404
|
+
Default: ``None``.
|
|
353
405
|
|
|
354
406
|
Raises:
|
|
355
407
|
TypeError: If `axis` is not of type int.
|
|
@@ -360,7 +412,10 @@ class Concatenate(TensorOperation):
|
|
|
360
412
|
``CPU``
|
|
361
413
|
|
|
362
414
|
Examples:
|
|
415
|
+
>>> import mindspore.dataset as ds
|
|
416
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
363
417
|
>>> import numpy as np
|
|
418
|
+
>>>
|
|
364
419
|
>>> # concatenate string
|
|
365
420
|
>>> prepend_tensor = np.array(["dw", "df"], dtype='S')
|
|
366
421
|
>>> append_tensor = np.array(["dwsdf", "df"], dtype='S')
|
|
@@ -393,6 +448,8 @@ class Duplicate(TensorOperation):
|
|
|
393
448
|
``CPU``
|
|
394
449
|
|
|
395
450
|
Examples:
|
|
451
|
+
>>> import mindspore.dataset as ds
|
|
452
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
396
453
|
>>> # Data before
|
|
397
454
|
>>> # | x |
|
|
398
455
|
>>> # +---------+
|
|
@@ -435,7 +492,10 @@ class Fill(TensorOperation):
|
|
|
435
492
|
|
|
436
493
|
|
|
437
494
|
Examples:
|
|
495
|
+
>>> import mindspore.dataset as ds
|
|
496
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
438
497
|
>>> import numpy as np
|
|
498
|
+
>>>
|
|
439
499
|
>>> # generate a 1D integer numpy array from 0 to 4
|
|
440
500
|
>>> def generator_1d():
|
|
441
501
|
... for i in range(5):
|
|
@@ -463,10 +523,11 @@ class Mask(TensorOperation):
|
|
|
463
523
|
Any element of the tensor that matches the predicate will be evaluated to True, otherwise False.
|
|
464
524
|
|
|
465
525
|
Args:
|
|
466
|
-
operator (Relational): relational operators, it can be
|
|
467
|
-
Relational.GT
|
|
526
|
+
operator (Relational): relational operators, it can be ``Relational.EQ``, ``Relational.NE``, ``Relational.LT``,
|
|
527
|
+
``Relational.GT``, ``Relational.LE``, ``Relational.GE``, take ``Relational.EQ`` as example,
|
|
528
|
+
EQ refers to equal.
|
|
468
529
|
constant (Union[str, int, float, bool]): Constant to be compared to.
|
|
469
|
-
dtype (mindspore.dtype, optional): Type of the generated mask. Default:
|
|
530
|
+
dtype (mindspore.dtype, optional): Type of the generated mask. Default: ``mstype.bool_``.
|
|
470
531
|
|
|
471
532
|
Raises:
|
|
472
533
|
TypeError: `operator` is not of type Relational.
|
|
@@ -477,6 +538,8 @@ class Mask(TensorOperation):
|
|
|
477
538
|
``CPU``
|
|
478
539
|
|
|
479
540
|
Examples:
|
|
541
|
+
>>> import mindspore.dataset as ds
|
|
542
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
480
543
|
>>> from mindspore.dataset.transforms import Relational
|
|
481
544
|
>>> # Data before
|
|
482
545
|
>>> # | col |
|
|
@@ -507,25 +570,36 @@ class Mask(TensorOperation):
|
|
|
507
570
|
|
|
508
571
|
class OneHot(TensorOperation):
|
|
509
572
|
"""
|
|
510
|
-
|
|
573
|
+
Apply One-Hot encoding to the input labels.
|
|
574
|
+
|
|
575
|
+
For a 1-D input of shape :math:`(*)`, an output of shape :math:`(*, num_classes)` will be
|
|
576
|
+
returned, where the elements with index values equal to the input values will be set to 1,
|
|
577
|
+
and the rest will be set to 0. If a label smoothing rate is specified, the element values
|
|
578
|
+
are further smoothed to enhance generalization.
|
|
511
579
|
|
|
512
580
|
Args:
|
|
513
|
-
num_classes (int):
|
|
514
|
-
|
|
515
|
-
smoothing_rate (float, optional):
|
|
516
|
-
Default: 0.0
|
|
581
|
+
num_classes (int): Total number of classes. Must be greater than the maximum value
|
|
582
|
+
of the input labels.
|
|
583
|
+
smoothing_rate (float, optional): The amount of label smoothing. Must be between
|
|
584
|
+
[0.0, 1.0]. Default: ``0.0``, no label smoothing.
|
|
517
585
|
|
|
518
586
|
Raises:
|
|
519
|
-
TypeError: `num_classes` is not of type int.
|
|
520
|
-
TypeError: `smoothing_rate` is not of type float
|
|
521
|
-
ValueError: `smoothing_rate` is not in range [0.0, 1.0].
|
|
522
|
-
RuntimeError:
|
|
523
|
-
RuntimeError:
|
|
587
|
+
TypeError: If `num_classes` is not of type int.
|
|
588
|
+
TypeError: If `smoothing_rate` is not of type float.
|
|
589
|
+
ValueError: If `smoothing_rate` is not in range of [0.0, 1.0].
|
|
590
|
+
RuntimeError: If input label is not of type int.
|
|
591
|
+
RuntimeError: If the dimension of the input label is not 1.
|
|
524
592
|
|
|
525
593
|
Supported Platforms:
|
|
526
594
|
``CPU``
|
|
527
595
|
|
|
528
596
|
Examples:
|
|
597
|
+
>>> import mindspore.dataset as ds
|
|
598
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
599
|
+
>>>
|
|
600
|
+
>>> mnist_dataset_dir = "/path/to/mnist_dataset_directory"
|
|
601
|
+
>>> mnist_dataset = ds.MnistDataset(dataset_dir=mnist_dataset_dir)
|
|
602
|
+
>>>
|
|
529
603
|
>>> # Assume that dataset has 10 classes, thus the label ranges from 0 to 9
|
|
530
604
|
>>> onehot_op = transforms.OneHot(num_classes=10)
|
|
531
605
|
>>> mnist_dataset = mnist_dataset.map(operations=onehot_op, input_columns=["label"])
|
|
@@ -547,10 +621,10 @@ class PadEnd(TensorOperation):
|
|
|
547
621
|
Pad input tensor according to pad_shape, input tensor needs to have same rank.
|
|
548
622
|
|
|
549
623
|
Args:
|
|
550
|
-
pad_shape (list(int)): List of integers representing the shape needed. Dimensions that set to
|
|
624
|
+
pad_shape (list(int)): List of integers representing the shape needed. Dimensions that set to ``None`` will
|
|
551
625
|
not be padded (i.e., original dim will be used). Shorter dimensions will truncate the values.
|
|
552
|
-
pad_value (Union[str, bytes, int, float, bool], optional): Value used to pad. Default
|
|
553
|
-
string in case of tensors of strings.
|
|
626
|
+
pad_value (Union[str, bytes, int, float, bool], optional): Value used to pad. Default: ``None``.
|
|
627
|
+
Default to ``0`` in case of tensors of Numbers, or empty string in case of tensors of strings.
|
|
554
628
|
|
|
555
629
|
Raises:
|
|
556
630
|
TypeError: If `pad_shape` is not of type list.
|
|
@@ -562,6 +636,8 @@ class PadEnd(TensorOperation):
|
|
|
562
636
|
``CPU``
|
|
563
637
|
|
|
564
638
|
Examples:
|
|
639
|
+
>>> import mindspore.dataset as ds
|
|
640
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
565
641
|
>>> # Data before
|
|
566
642
|
>>> # | col |
|
|
567
643
|
>>> # +---------+
|
|
@@ -607,7 +683,11 @@ class Plugin(TensorOperation):
|
|
|
607
683
|
``CPU``
|
|
608
684
|
|
|
609
685
|
Examples:
|
|
686
|
+
>>> import mindspore.dataset as ds
|
|
687
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
688
|
+
>>>
|
|
610
689
|
>>> plugin = transforms.Plugin("pluginlib.so", "PluginDecode")
|
|
690
|
+
>>> image_folder_dataset = ds.ImageFolderDataset("/path/to/image_folder_dataset_directory")
|
|
611
691
|
>>> image_folder_dataset = image_folder_dataset.map(operations=plugin)
|
|
612
692
|
"""
|
|
613
693
|
|
|
@@ -629,7 +709,7 @@ class RandomApply(CompoundOperation):
|
|
|
629
709
|
|
|
630
710
|
Args:
|
|
631
711
|
transforms (list): List of transformations to be applied.
|
|
632
|
-
prob (float, optional): The probability to apply the transformation list. Default: 0.5
|
|
712
|
+
prob (float, optional): The probability to apply the transformation list. Default: ``0.5``.
|
|
633
713
|
|
|
634
714
|
Raises:
|
|
635
715
|
TypeError: If `transforms` is not of type list.
|
|
@@ -643,13 +723,19 @@ class RandomApply(CompoundOperation):
|
|
|
643
723
|
``CPU``
|
|
644
724
|
|
|
645
725
|
Examples:
|
|
726
|
+
>>> import mindspore.dataset as ds
|
|
727
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
728
|
+
>>> import mindspore.dataset.vision as vision
|
|
646
729
|
>>> from mindspore.dataset.transforms import Compose
|
|
730
|
+
>>>
|
|
647
731
|
>>> transforms_list = [vision.RandomHorizontalFlip(0.5),
|
|
648
732
|
... vision.Normalize((0.491, 0.482, 0.447), (0.247, 0.243, 0.262)),
|
|
649
733
|
... vision.RandomErasing()]
|
|
650
734
|
>>> composed_transform = Compose([vision.Decode(to_pil=True),
|
|
651
735
|
... transforms.RandomApply(transforms_list, prob=0.6),
|
|
652
736
|
... vision.ToTensor()])
|
|
737
|
+
>>>
|
|
738
|
+
>>> image_folder_dataset = ds.ImageFolderDataset("/path/to/image_folder_dataset_directory")
|
|
653
739
|
>>> image_folder_dataset = image_folder_dataset.map(operations=composed_transform, input_columns=["image"])
|
|
654
740
|
"""
|
|
655
741
|
|
|
@@ -692,13 +778,19 @@ class RandomChoice(CompoundOperation):
|
|
|
692
778
|
``CPU``
|
|
693
779
|
|
|
694
780
|
Examples:
|
|
781
|
+
>>> import mindspore.dataset as ds
|
|
782
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
783
|
+
>>> import mindspore.dataset.vision as vision
|
|
695
784
|
>>> from mindspore.dataset.transforms import Compose
|
|
785
|
+
>>>
|
|
696
786
|
>>> transforms_list = [vision.RandomHorizontalFlip(0.5),
|
|
697
787
|
... vision.Normalize((0.491, 0.482, 0.447), (0.247, 0.243, 0.262)),
|
|
698
788
|
... vision.RandomErasing()]
|
|
699
789
|
>>> composed_transform = Compose([vision.Decode(),
|
|
700
790
|
... transforms.RandomChoice(transforms_list),
|
|
701
791
|
... vision.ToTensor()])
|
|
792
|
+
>>>
|
|
793
|
+
>>> image_folder_dataset = ds.ImageFolderDataset("/path/to/image_folder_dataset_directory")
|
|
702
794
|
>>> image_folder_dataset = image_folder_dataset.map(operations=composed_transform, input_columns=["image"])
|
|
703
795
|
|
|
704
796
|
"""
|
|
@@ -742,13 +834,19 @@ class RandomOrder(PyTensorOperation):
|
|
|
742
834
|
``CPU``
|
|
743
835
|
|
|
744
836
|
Examples:
|
|
837
|
+
>>> import mindspore.dataset as ds
|
|
838
|
+
>>> import mindspore.dataset.vision as vision
|
|
839
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
745
840
|
>>> from mindspore.dataset.transforms import Compose
|
|
841
|
+
>>>
|
|
746
842
|
>>> transforms_list = [vision.RandomHorizontalFlip(0.5),
|
|
747
843
|
... vision.Normalize((0.491, 0.482, 0.447), (0.247, 0.243, 0.262)),
|
|
748
844
|
... vision.RandomErasing()]
|
|
749
845
|
>>> composed_transform = Compose([vision.Decode(to_pil=False),
|
|
750
846
|
... transforms.RandomOrder(transforms_list),
|
|
751
847
|
... vision.ToTensor()])
|
|
848
|
+
>>>
|
|
849
|
+
>>> image_folder_dataset = ds.ImageFolderDataset("/path/to/image_folder_dataset_directory")
|
|
752
850
|
>>> image_folder_dataset = image_folder_dataset.map(operations=composed_transform, input_columns=["image"])
|
|
753
851
|
"""
|
|
754
852
|
|
|
@@ -773,17 +871,16 @@ class RandomOrder(PyTensorOperation):
|
|
|
773
871
|
|
|
774
872
|
class Relational(IntEnum):
|
|
775
873
|
"""
|
|
776
|
-
|
|
874
|
+
Relational operator.
|
|
777
875
|
|
|
778
|
-
|
|
779
|
-
Relational.LE.
|
|
876
|
+
Available values are as follows:
|
|
780
877
|
|
|
781
|
-
- Relational.EQ:
|
|
782
|
-
- Relational.NE:
|
|
783
|
-
- Relational.GT:
|
|
784
|
-
- Relational.GE:
|
|
785
|
-
- Relational.LT:
|
|
786
|
-
- Relational.LE:
|
|
878
|
+
- Relational.EQ: Equal to.
|
|
879
|
+
- Relational.NE: Not equal to.
|
|
880
|
+
- Relational.GT: Greater than.
|
|
881
|
+
- Relational.GE: Greater than or equal to.
|
|
882
|
+
- Relational.LT: Less than.
|
|
883
|
+
- Relational.LE: Less than or equal to.
|
|
787
884
|
"""
|
|
788
885
|
EQ = 0
|
|
789
886
|
NE = 1
|
|
@@ -829,30 +926,31 @@ class _SliceOption(cde.SliceOption):
|
|
|
829
926
|
|
|
830
927
|
class Slice(TensorOperation):
|
|
831
928
|
"""
|
|
832
|
-
|
|
929
|
+
Extract a slice from the input.
|
|
833
930
|
|
|
834
|
-
|
|
931
|
+
Currently, only 1-D input is supported.
|
|
835
932
|
|
|
836
933
|
Args:
|
|
837
|
-
slices (Union[int, list[int], slice,
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
5. :py:obj:`Ellipsis`: Slice the whole dimension, same result with `None` .
|
|
934
|
+
slices (Union[int, list[int], slice, Ellipsis]): The desired slice.
|
|
935
|
+
If the input type is int, it will slice the element with the specified index value.
|
|
936
|
+
Negative index is also supported.
|
|
937
|
+
If the input type is list[int], it will slice all the elements with the specified index values.
|
|
938
|
+
Negative index is also supported.
|
|
939
|
+
If the input type is `slice <https://docs.python.org/3.7/library/functions.html#slice>`_ ,
|
|
940
|
+
it will slice according to its specified start position, stop position and step size.
|
|
941
|
+
If the input type is `Ellipsis <https://docs.python.org/3.7/library/constants.html#Ellipsis>`_ ,
|
|
942
|
+
all elements will be sliced.
|
|
943
|
+
If the input is None, all elements will be sliced.
|
|
848
944
|
|
|
849
945
|
Raises:
|
|
850
|
-
TypeError: If `slices` is not of type int, list[int],
|
|
946
|
+
TypeError: If `slices` is not of type Union[int, list[int], slice, Ellipsis].
|
|
851
947
|
|
|
852
948
|
Supported Platforms:
|
|
853
949
|
``CPU``
|
|
854
950
|
|
|
855
951
|
Examples:
|
|
952
|
+
>>> import mindspore.dataset as ds
|
|
953
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
856
954
|
>>> # Data before
|
|
857
955
|
>>> # | col |
|
|
858
956
|
>>> # +---------+
|
|
@@ -886,7 +984,8 @@ class TypeCast(TensorOperation):
|
|
|
886
984
|
Tensor operation to cast to a given MindSpore data type or NumPy data type.
|
|
887
985
|
|
|
888
986
|
Note:
|
|
889
|
-
This operation
|
|
987
|
+
This operation is executed on the CPU by default, but it is also supported
|
|
988
|
+
to be executed on the GPU or Ascend via heterogeneous acceleration.
|
|
890
989
|
|
|
891
990
|
Args:
|
|
892
991
|
data_type (Union[mindspore.dtype, numpy.dtype]): mindspore.dtype or numpy.dtype (e.g. `numpy.float32`)
|
|
@@ -896,9 +995,11 @@ class TypeCast(TensorOperation):
|
|
|
896
995
|
TypeError: If `data_type` is not of MindSpore data type bool, int, float, string or type :class:`numpy.dtype` .
|
|
897
996
|
|
|
898
997
|
Supported Platforms:
|
|
899
|
-
``
|
|
998
|
+
``CPU`` ``GPU`` ``Ascend``
|
|
900
999
|
|
|
901
1000
|
Examples:
|
|
1001
|
+
>>> import mindspore.dataset as ds
|
|
1002
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
902
1003
|
>>> import numpy as np
|
|
903
1004
|
>>> from mindspore import dtype as mstype
|
|
904
1005
|
>>>
|
|
@@ -947,6 +1048,8 @@ class Unique(TensorOperation):
|
|
|
947
1048
|
``CPU``
|
|
948
1049
|
|
|
949
1050
|
Examples:
|
|
1051
|
+
>>> import mindspore.dataset as ds
|
|
1052
|
+
>>> import mindspore.dataset.transforms as transforms
|
|
950
1053
|
>>> # Data before
|
|
951
1054
|
>>> # | x |
|
|
952
1055
|
>>> # +--------------------+
|
|
@@ -28,33 +28,41 @@ def imshow_det_bbox(image, bboxes, labels, segm=None, class_names=None, score_th
|
|
|
28
28
|
"""Draw an image with given bboxes and class labels (with scores).
|
|
29
29
|
|
|
30
30
|
Args:
|
|
31
|
-
image (numpy.ndarray): The image to be displayed, shaped (C, H, W) or (H, W, C)
|
|
32
|
-
|
|
31
|
+
image (numpy.ndarray): The image to be displayed, shaped :math:`(C, H, W)` or :math:`(H, W, C)`,
|
|
32
|
+
formatted RGB.
|
|
33
|
+
bboxes (numpy.ndarray): Bounding boxes (with scores), shaped :math:`(N, 4)` or :math:`(N, 5)`,
|
|
33
34
|
data should be ordered with (N, x, y, w, h).
|
|
34
|
-
labels (numpy.ndarray): Labels of bboxes, shaped (N, 1)
|
|
35
|
-
segm (numpy.ndarray): The segmentation masks of image in M classes, shaped (M, H, W)
|
|
35
|
+
labels (numpy.ndarray): Labels of bboxes, shaped :math:`(N, 1)`.
|
|
36
|
+
segm (numpy.ndarray): The segmentation masks of image in M classes, shaped :math:`(M, H, W)`.
|
|
37
|
+
Default: ``None``.
|
|
36
38
|
class_names (list[str], tuple[str], dict): Names of each class to map label to class name.
|
|
37
|
-
Default: None
|
|
38
|
-
score_threshold (float): Minimum score of bboxes to be shown. Default: 0
|
|
39
|
+
Default: ``None``, only display label.
|
|
40
|
+
score_threshold (float): Minimum score of bboxes to be shown. Default: ``0``.
|
|
39
41
|
bbox_color (tuple(int)): Color of bbox lines.
|
|
40
|
-
The tuple of color should be in BGR order. Default: (0, 255 ,0)
|
|
42
|
+
The tuple of color should be in BGR order. Default: ``(0, 255 ,0)``, means 'green'.
|
|
41
43
|
text_color (tuple(int)): Color of texts.
|
|
42
|
-
The tuple of color should be in BGR order. Default: (203, 192, 255)
|
|
44
|
+
The tuple of color should be in BGR order. Default: ``(203, 192, 255)``, means 'pink'.
|
|
43
45
|
mask_color (tuple(int)): Color of mask.
|
|
44
|
-
The tuple of color should be in BGR order. Default: (128, 0, 128)
|
|
45
|
-
thickness (int): Thickness of lines. Default: 2
|
|
46
|
-
font_size (int, float): Font size of texts. Default: 0.8
|
|
47
|
-
show (bool): Whether to show the image. Default: True
|
|
48
|
-
win_name (str): The window name. Default: "win"
|
|
49
|
-
wait_time (int):
|
|
50
|
-
|
|
46
|
+
The tuple of color should be in BGR order. Default: ``(128, 0, 128)``, means 'purple'.
|
|
47
|
+
thickness (int): Thickness of lines. Default: ``2``.
|
|
48
|
+
font_size (int, float): Font size of texts. Default: ``0.8``.
|
|
49
|
+
show (bool): Whether to show the image. Default: ``True``.
|
|
50
|
+
win_name (str): The window name. Default: ``"win"``.
|
|
51
|
+
wait_time (int): Waiting time delay for a key event in milliseconds. During image display,
|
|
52
|
+
if there is no key pressed, wait for this time then jump to next image. If ESC is pressed,
|
|
53
|
+
quit display immediately. If any other key is pressed, stop waiting then jump to
|
|
54
|
+
next image directly. Default: ``2000`` , wait 2000ms then jump to next image.
|
|
55
|
+
out_file (str, optional): The filename to write the imagee. Default: ``None``. File extension name
|
|
51
56
|
is required to indicate the image compression type, e.g. 'jpg', 'png'.
|
|
52
57
|
|
|
53
58
|
Returns:
|
|
54
59
|
ndarray, The image with bboxes drawn on it.
|
|
55
60
|
|
|
61
|
+
Note:
|
|
62
|
+
This interface relies on the `opencv-python` library.
|
|
63
|
+
|
|
56
64
|
Raises:
|
|
57
|
-
ImportError: If opencv-python is not installed.
|
|
65
|
+
ImportError: If `opencv-python` is not installed.
|
|
58
66
|
AssertionError: If `image` is not in (H, W, C) or (C, H, W) format.
|
|
59
67
|
AssertionError: If `bboxes` is not in (N, 4) or (N, 5) format.
|
|
60
68
|
AssertionError: If `labels` is not in (N, 1) format.
|
|
@@ -67,7 +75,7 @@ def imshow_det_bbox(image, bboxes, labels, segm=None, class_names=None, score_th
|
|
|
67
75
|
Examples:
|
|
68
76
|
>>> import numpy as np
|
|
69
77
|
>>> import mindspore.dataset as ds
|
|
70
|
-
>>> from mindspore.dataset.utils
|
|
78
|
+
>>> from mindspore.dataset.utils import imshow_det_bbox
|
|
71
79
|
>>>
|
|
72
80
|
>>> # Read Detection dataset, such as VOC2012.
|
|
73
81
|
>>> voc_dataset_dir = "/path/to/voc_dataset_directory"
|