forked from mindspore-Ecosystem/mindspore
!36248 Support dynamic shape of ReduceSum, ScatterNd and grad functions
Merge pull request !36248 from zhengzuohe/scatter_nd_infer
This commit is contained in:
commit
28756cf5f1
|
@ -73,5 +73,20 @@ MS_REG_GPU_KERNEL_TWO(
|
|||
MS_REG_GPU_KERNEL_TWO(
|
||||
ReduceSum, KernelAttr().AddInputAttr(kNumberTypeBool).AddInputAttr(kNumberTypeInt64).AddOutputAttr(kNumberTypeBool),
|
||||
ArrayReduceGpuKernelMod, bool, int64_t)
|
||||
MS_REG_GPU_KERNEL_TWO(
|
||||
ReduceSum,
|
||||
KernelAttr().AddInputAttr(kNumberTypeFloat64).AddInputAttr(kNumberTypeInt32).AddOutputAttr(kNumberTypeFloat64),
|
||||
ArrayReduceGpuKernelMod, double, int32_t)
|
||||
MS_REG_GPU_KERNEL_TWO(
|
||||
ReduceSum,
|
||||
KernelAttr().AddInputAttr(kNumberTypeFloat32).AddInputAttr(kNumberTypeInt32).AddOutputAttr(kNumberTypeFloat32),
|
||||
ArrayReduceGpuKernelMod, float, int32_t)
|
||||
MS_REG_GPU_KERNEL_TWO(
|
||||
ReduceSum,
|
||||
KernelAttr().AddInputAttr(kNumberTypeFloat16).AddInputAttr(kNumberTypeInt32).AddOutputAttr(kNumberTypeFloat16),
|
||||
ArrayReduceGpuKernelMod, half, int32_t)
|
||||
MS_REG_GPU_KERNEL_TWO(
|
||||
ReduceSum, KernelAttr().AddInputAttr(kNumberTypeBool).AddInputAttr(kNumberTypeInt32).AddOutputAttr(kNumberTypeBool),
|
||||
ArrayReduceGpuKernelMod, bool, int32_t)
|
||||
} // namespace kernel
|
||||
} // namespace mindspore
|
||||
|
|
|
@ -45,6 +45,7 @@
|
|||
#include "ops/stack.h"
|
||||
#include "ops/rpc_recv.h"
|
||||
#include "ops/rpc_send.h"
|
||||
#include "ops/tensor_scatter_arithmetic.h"
|
||||
|
||||
namespace mindspore {
|
||||
namespace abstract {
|
||||
|
@ -380,6 +381,7 @@ PrimitiveEvalImplMap &GetPrimitiveToBackendEvalImplMap() {
|
|||
{prim::kPrimRpcSend, R{ops::RpcSendInfer, nullptr, true}},
|
||||
{prim::kPrimAdamApplyOne, R{InferImplAdamApplyOne, nullptr, true}},
|
||||
{prim::kPrimAdamApplyOneWithDecay, R{InferImplAdamApplyOneWithDecay, nullptr, true}},
|
||||
{prim::kPrimTensorScatterUpdate, R{ops::TensorScatterArithmeticInfer, nullptr, true}},
|
||||
};
|
||||
return prim_backend_eval_implement_map;
|
||||
}
|
||||
|
|
|
@ -32,6 +32,12 @@ std::vector<int64_t> CalBroadCastShape(std::vector<int64_t> x_shape, std::vector
|
|||
if (x_shape == y_shape) {
|
||||
return x_shape;
|
||||
}
|
||||
constexpr int dynamic_rank_len = 1;
|
||||
constexpr int dynamic_rank_value = -2;
|
||||
if ((x_shape.size() == dynamic_rank_len && x_shape[0] == dynamic_rank_value) ||
|
||||
(y_shape.size() == dynamic_rank_len && y_shape[0] == dynamic_rank_value)) {
|
||||
return std::vector<int64_t>({dynamic_rank_value});
|
||||
}
|
||||
auto x_length = static_cast<int64_t>(x_shape.size());
|
||||
auto y_length = static_cast<int64_t>(y_shape.size());
|
||||
auto length = x_length < y_length ? x_length : y_length;
|
||||
|
|
|
@ -55,32 +55,75 @@ TypePtr ScatterNdInferType(const PrimitivePtr &prim, const std::vector<AbstractB
|
|||
}
|
||||
|
||||
abstract::BaseShapePtr ScatterNdInferShape(const PrimitivePtr &prim, const std::vector<AbstractBasePtr> &input_args) {
|
||||
auto prim_name = prim->name();
|
||||
ScatterNdCheckShape(prim, input_args);
|
||||
ShapeVector shape;
|
||||
ShapeVector out_shape;
|
||||
if (input_args.size() > static_cast<size_t>(kScatterNdInputNum)) {
|
||||
auto shape_value = input_args[kInputIndex2]->BuildValue();
|
||||
if (shape_value->isa<tensor::Tensor>()) {
|
||||
shape = CheckAndConvertUtils::CheckTensorIntValue("shape", shape_value, prim->name());
|
||||
} else if (shape_value->isa<ValueTuple>()) {
|
||||
shape = CheckAndConvertUtils::CheckTupleInt("input[shape]", shape_value, prim->name());
|
||||
} else {
|
||||
return input_args[kInputIndex2]->BuildShape();
|
||||
auto shape = input_args[kInputIndex2];
|
||||
auto shape_value = shape->BuildValue();
|
||||
MS_EXCEPTION_IF_NULL(shape_value);
|
||||
if (shape->isa<abstract::AbstractTensor>()) {
|
||||
if (shape_value->isa<tensor::Tensor>()) {
|
||||
out_shape = CheckAndConvertUtils::CheckTensorIntValue("shape", shape_value, prim_name);
|
||||
} else if (shape_value->isa<ValueTuple>()) {
|
||||
out_shape = CheckAndConvertUtils::CheckTupleInt("input[shape]", shape_value, prim_name);
|
||||
} else {
|
||||
auto shape_ptr = CheckAndConvertUtils::GetTensorInputShape(prim_name, input_args, kScatterNdInputNum);
|
||||
MS_EXCEPTION_IF_NULL(shape_ptr);
|
||||
auto shape_shape = shape_ptr->shape();
|
||||
if (shape_shape.size() != 1) {
|
||||
MS_LOG(EXCEPTION) << "For '" << prim_name << "', shape must be 1-D, but got " << shape_shape.size() << "-D.";
|
||||
}
|
||||
|
||||
auto shape_len = LongToSize(shape_shape[0]);
|
||||
auto abs_shape = shape->cast<abstract::AbstractTensorPtr>();
|
||||
MS_EXCEPTION_IF_NULL(abs_shape);
|
||||
|
||||
auto shape_min_value = abs_shape->get_min_value();
|
||||
auto shape_max_value = abs_shape->get_max_value();
|
||||
if (shape_min_value == nullptr || shape_max_value == nullptr) {
|
||||
for (size_t i = 0; i < shape_len; i++) {
|
||||
out_shape.push_back(abstract::Shape::SHP_ANY);
|
||||
}
|
||||
return std::make_shared<abstract::Shape>(out_shape);
|
||||
}
|
||||
|
||||
auto min_shape = GetValue<std::vector<int64_t>>(shape_min_value);
|
||||
auto max_shape = GetValue<std::vector<int64_t>>(shape_max_value);
|
||||
if (min_shape.size() != shape_len || max_shape.size() != shape_len) {
|
||||
MS_LOG(EXCEPTION)
|
||||
<< "For " << prim_name
|
||||
<< ", shape's min and max value must has lengths equal to shape itself, but got min value len: "
|
||||
<< min_shape.size() << ", max value len: " << max_shape.size() << ", shape len: " << shape_len << ".";
|
||||
}
|
||||
|
||||
for (size_t i = 0; i < shape_len; i++) {
|
||||
if (min_shape[i] == max_shape[i]) {
|
||||
out_shape.push_back(min_shape[i]);
|
||||
} else {
|
||||
out_shape.push_back(abstract::Shape::SHP_ANY);
|
||||
}
|
||||
}
|
||||
return std::make_shared<abstract::Shape>(out_shape, min_shape, max_shape);
|
||||
}
|
||||
} else if (shape->isa<abstract::AbstractTuple>()) {
|
||||
out_shape = CheckAndConvertUtils::CheckTupleInt("input[shape]", shape_value, prim_name);
|
||||
}
|
||||
} else {
|
||||
auto shape_attr = prim->GetAttr("shape");
|
||||
MS_EXCEPTION_IF_NULL(shape_attr);
|
||||
shape = GetValue<ShapeVector>(shape_attr);
|
||||
out_shape = GetValue<ShapeVector>(shape_attr);
|
||||
}
|
||||
if (std::any_of(shape.begin(), shape.end(), [](int64_t item) { return item < 1; })) {
|
||||
if (std::any_of(out_shape.begin(), out_shape.end(), [](int64_t item) { return item < 1; })) {
|
||||
std::ostringstream buffer;
|
||||
buffer << "For primitive[ScatterNd], the attribute[shape] should be a tuple with all positive item. but got (";
|
||||
for (auto item : shape) {
|
||||
for (auto item : out_shape) {
|
||||
buffer << item << ", ";
|
||||
}
|
||||
buffer << ").";
|
||||
MS_EXCEPTION(ValueError) << buffer.str();
|
||||
}
|
||||
return std::make_shared<abstract::Shape>(shape);
|
||||
return std::make_shared<abstract::Shape>(out_shape);
|
||||
}
|
||||
|
||||
AbstractBasePtr ScatterNdInfer(const abstract::AnalysisEnginePtr &, const PrimitivePtr &primitive,
|
||||
|
|
|
@ -173,7 +173,7 @@ void EllipsisInferShape(const PrimitivePtr &primitive, const std::vector<int64_t
|
|||
continue;
|
||||
}
|
||||
if (j < shrink_axis_pos.size() && shrink_axis_pos[j] == 1) {
|
||||
if ((-x_shape[i] <= start && start < x_shape[i]) || strides < 0) {
|
||||
if (!(-x_shape[i] <= start && start < x_shape[i]) || strides < 0) {
|
||||
MS_EXCEPTION(ValueError) << "For '" << primitive->name() << "the 'strides[" << j << "]' cannot be "
|
||||
<< "negative number and 'begin[" << j << "]' must be in [-" << x_shape[i] << ", "
|
||||
<< x_shape[i] << "] when 'shrink_axis_mask' is greater than 0, but got 'strides[" << j
|
||||
|
@ -234,9 +234,10 @@ std::vector<int64_t> ComputeInferShape(const PrimitivePtr &primitive, const std:
|
|||
}
|
||||
if (j < shrink_axis_pos.size() && shrink_axis_pos[j] == 1) {
|
||||
if (!(-x_shape[i] <= start && start < x_shape[i]) || strides < 0) {
|
||||
MS_EXCEPTION(ValueError)
|
||||
<< "For '" << primitive->name()
|
||||
<< "', when shrink axis, the 'strides' must be greater than or equal to one, but got " << strides << ".";
|
||||
MS_EXCEPTION(ValueError) << "For '" << primitive->name() << "the 'strides[" << j << "]' cannot be "
|
||||
<< "negative number and 'begin[" << j << "]' must be in [-" << x_shape[i] << ", "
|
||||
<< x_shape[i] << "] when 'shrink_axis_mask' is greater than 0, but got 'strides["
|
||||
<< j << "]': " << strides << ", 'begin[" << j << "]': " << start << ".";
|
||||
}
|
||||
j += 1;
|
||||
i += 1;
|
||||
|
|
|
@ -784,6 +784,8 @@ def get_bprop_gather_nd(self):
|
|||
|
||||
def bprop(x, indices, out, dout):
|
||||
shp = shape_op(x)
|
||||
if is_shape_unknown(shp):
|
||||
shp = dyn_shape_op(x)
|
||||
return op(indices, dout, shp), zeros_like(indices)
|
||||
|
||||
return bprop
|
||||
|
|
|
@ -163,6 +163,10 @@ def _dyn_reduced_shape(input_shape, axis):
|
|||
"""Dynamic reduce shape"""
|
||||
input_shape = P.Cast()(input_shape, ms.int32)
|
||||
if isinstance(axis, Tensor):
|
||||
if is_shape_unknown(shape_op(axis)):
|
||||
expanded_axis = P.ExpandDims()(axis, 1)
|
||||
update = P.OnesLike()(axis)
|
||||
return P.TensorScatterUpdate()(input_shape, expanded_axis, update)
|
||||
input_rank = P.Rank()(input_shape)
|
||||
real_axis = (axis + input_rank) % input_rank
|
||||
axis_shape = shape_op(real_axis)
|
||||
|
|
|
@ -2,19 +2,19 @@
|
|||
0.1.1 MindSpore*1.8.0:Þ
|
||||
’
|
||||
|
||||
bprop.33:xbprop.33:[CNode]34:1bprop.33:[CNode]34:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op22
|
||||
bprop.29:xbprop.29:[CNode]30:1bprop.29:[CNode]30:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op19
|
||||
’
|
||||
|
||||
bprop.33:ybprop.33:[CNode]35:3bprop.33:[CNode]35:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op23
|
||||
bprop.29:ybprop.29:[CNode]31:3bprop.29:[CNode]31:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op20
|
||||
<EFBFBD>
|
||||
bprop.33:[CNode]34:1
|
||||
bprop.33:[CNode]35:3bprop.33:[CNode]36:4bprop.33:[CNode]36:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op24bprop.33*
|
||||
bprop.29:[CNode]30:1
|
||||
bprop.29:[CNode]31:3bprop.29:[CNode]32:4bprop.29:[CNode]32:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op21bprop.29*
|
||||
|
||||
bprop.33:x*
|
||||
bprop.29:x*
|
||||
|
||||
bprop.33:y*
|
||||
bprop.33:out*
|
||||
bprop.33:dout2
|
||||
bprop.33:[CNode]36:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
bprop.29:y*
|
||||
bprop.29:out*
|
||||
bprop.29:dout2
|
||||
bprop.29:[CNode]32:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -1,14 +1,14 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:£
|
||||
0.1.1 MindSpore*1.8.0:¢
|
||||
‘
|
||||
|
||||
bprop.14:xbprop.14:[CNode]15:1bprop.14:[CNode]15:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:-Default/S-Prim-hyper_map[zeros_like_leaf]-op9
|
||||
z
|
||||
bprop.14:[CNode]15:1bprop.14:[CNode]16:3bprop.14:[CNode]16:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op10bprop.14*
|
||||
bprop.12:xbprop.12:[CNode]13:1bprop.12:[CNode]13:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:-Default/S-Prim-hyper_map[zeros_like_leaf]-op7
|
||||
y
|
||||
bprop.12:[CNode]13:1bprop.12:[CNode]14:3bprop.12:[CNode]14:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op8bprop.12*
|
||||
|
||||
bprop.14:x*
|
||||
bprop.14:out*
|
||||
bprop.14:dout2
|
||||
bprop.14:[CNode]16:3:@bed32d3d7df2eeae57d389b98e0a4df03b873d553d6de616a3161e0f01e831efPb&
|
||||
bprop.12:x*
|
||||
bprop.12:out*
|
||||
bprop.12:dout2
|
||||
bprop.12:[CNode]14:3:@5d57d331381f09bf25bfb5ef72ec9d679698183646a122ef4f127212683ebf45Pb&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -1,14 +1,14 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:¤
|
||||
’
|
||||
0.1.1 MindSpore*1.8.0:£
|
||||
‘
|
||||
|
||||
bprop.17:xbprop.17:[CNode]18:1bprop.17:[CNode]18:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op11
|
||||
bprop.15:xbprop.15:[CNode]16:1bprop.15:[CNode]16:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:-Default/S-Prim-hyper_map[zeros_like_leaf]-op9
|
||||
z
|
||||
bprop.17:[CNode]18:1bprop.17:[CNode]19:3bprop.17:[CNode]19:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op12bprop.17*
|
||||
bprop.15:[CNode]16:1bprop.15:[CNode]17:3bprop.15:[CNode]17:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op10bprop.15*
|
||||
|
||||
bprop.17:x*
|
||||
bprop.17:out*
|
||||
bprop.17:dout2
|
||||
bprop.17:[CNode]19:3:@bed32d3d7df2eeae57d389b98e0a4df03b873d553d6de616a3161e0f01e831efPb&
|
||||
bprop.15:x*
|
||||
bprop.15:out*
|
||||
bprop.15:dout2
|
||||
bprop.15:[CNode]17:3:@5d57d331381f09bf25bfb5ef72ec9d679698183646a122ef4f127212683ebf45Pb&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -2,19 +2,19 @@
|
|||
0.1.1 MindSpore*1.8.0:Þ
|
||||
’
|
||||
|
||||
bprop.22:xbprop.22:[CNode]23:1bprop.22:[CNode]23:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op14
|
||||
bprop.18:xbprop.18:[CNode]19:1bprop.18:[CNode]19:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op11
|
||||
’
|
||||
|
||||
bprop.22:ybprop.22:[CNode]24:3bprop.22:[CNode]24:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op15
|
||||
bprop.18:ybprop.18:[CNode]20:3bprop.18:[CNode]20:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op12
|
||||
<EFBFBD>
|
||||
bprop.22:[CNode]23:1
|
||||
bprop.22:[CNode]24:3bprop.22:[CNode]25:4bprop.22:[CNode]25:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op16bprop.22*
|
||||
bprop.18:[CNode]19:1
|
||||
bprop.18:[CNode]20:3bprop.18:[CNode]21:4bprop.18:[CNode]21:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op13bprop.18*
|
||||
|
||||
bprop.22:x*
|
||||
bprop.18:x*
|
||||
|
||||
bprop.22:y*
|
||||
bprop.22:out*
|
||||
bprop.22:dout2
|
||||
bprop.22:[CNode]25:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
bprop.18:y*
|
||||
bprop.18:out*
|
||||
bprop.18:dout2
|
||||
bprop.18:[CNode]21:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -2,19 +2,19 @@
|
|||
0.1.1 MindSpore*1.8.0:Þ
|
||||
’
|
||||
|
||||
bprop.26:xbprop.26:[CNode]27:1bprop.26:[CNode]27:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op17
|
||||
bprop.22:xbprop.22:[CNode]23:1bprop.22:[CNode]23:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op14
|
||||
’
|
||||
|
||||
bprop.26:ybprop.26:[CNode]28:3bprop.26:[CNode]28:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op18
|
||||
bprop.22:ybprop.22:[CNode]24:3bprop.22:[CNode]24:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op15
|
||||
<EFBFBD>
|
||||
bprop.26:[CNode]27:1
|
||||
bprop.26:[CNode]28:3bprop.26:[CNode]29:4bprop.26:[CNode]29:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op19bprop.26*
|
||||
bprop.22:[CNode]23:1
|
||||
bprop.22:[CNode]24:3bprop.22:[CNode]25:4bprop.22:[CNode]25:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op16bprop.22*
|
||||
|
||||
bprop.26:x*
|
||||
bprop.22:x*
|
||||
|
||||
bprop.26:y*
|
||||
bprop.26:out*
|
||||
bprop.26:dout2
|
||||
bprop.26:[CNode]29:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
bprop.22:y*
|
||||
bprop.22:out*
|
||||
bprop.22:dout2
|
||||
bprop.22:[CNode]25:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -1,12 +1,14 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:¶
|
||||
—
|
||||
bprop.116:xbprop.116:[CNode]117:1bprop.116:[CNode]117:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op84
|
||||
€
|
||||
bprop.116:[CNode]117:1bprop.116:[CNode]118:3bprop.116:[CNode]118:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op85 bprop.116*
|
||||
bprop.116:x*
|
||||
bprop.116:out*
|
||||
bprop.116:dout2
|
||||
bprop.116:[CNode]118:3:@bed32d3d7df2eeae57d389b98e0a4df03b873d553d6de616a3161e0f01e831efPbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTupleh
|
||||
0.1.1 MindSpore*1.8.0:¤
|
||||
’
|
||||
|
||||
bprop.87:xbprop.87:[CNode]88:1bprop.87:[CNode]88:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op62
|
||||
z
|
||||
bprop.87:[CNode]88:1bprop.87:[CNode]89:3bprop.87:[CNode]89:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op63bprop.87*
|
||||
|
||||
bprop.87:x*
|
||||
bprop.87:out*
|
||||
bprop.87:dout2
|
||||
bprop.87:[CNode]89:3:@5d57d331381f09bf25bfb5ef72ec9d679698183646a122ef4f127212683ebf45Pb&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -1,12 +1,14 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:¶
|
||||
—
|
||||
bprop.122:xbprop.122:[CNode]123:1bprop.122:[CNode]123:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op88
|
||||
€
|
||||
bprop.122:[CNode]123:1bprop.122:[CNode]124:3bprop.122:[CNode]124:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op89 bprop.122*
|
||||
bprop.122:x*
|
||||
bprop.122:out*
|
||||
bprop.122:dout2
|
||||
bprop.122:[CNode]124:3:@bed32d3d7df2eeae57d389b98e0a4df03b873d553d6de616a3161e0f01e831efPbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTupleh
|
||||
0.1.1 MindSpore*1.8.0:¤
|
||||
’
|
||||
|
||||
bprop.93:xbprop.93:[CNode]94:1bprop.93:[CNode]94:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op66
|
||||
z
|
||||
bprop.93:[CNode]94:1bprop.93:[CNode]95:3bprop.93:[CNode]95:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op67bprop.93*
|
||||
|
||||
bprop.93:x*
|
||||
bprop.93:out*
|
||||
bprop.93:dout2
|
||||
bprop.93:[CNode]95:3:@5d57d331381f09bf25bfb5ef72ec9d679698183646a122ef4f127212683ebf45Pb&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -2,19 +2,19 @@
|
|||
0.1.1 MindSpore*1.8.0:Ţ
|
||||
’
|
||||
|
||||
bprop.71:xbprop.71:[CNode]72:1bprop.71:[CNode]72:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op50
|
||||
bprop.47:xbprop.47:[CNode]48:1bprop.47:[CNode]48:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op32
|
||||
’
|
||||
|
||||
bprop.71:ybprop.71:[CNode]73:3bprop.71:[CNode]73:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op51
|
||||
bprop.47:ybprop.47:[CNode]49:3bprop.47:[CNode]49:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op33
|
||||
<EFBFBD>
|
||||
bprop.71:[CNode]72:1
|
||||
bprop.71:[CNode]73:3bprop.71:[CNode]74:4bprop.71:[CNode]74:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op52bprop.71*
|
||||
bprop.47:[CNode]48:1
|
||||
bprop.47:[CNode]49:3bprop.47:[CNode]50:4bprop.47:[CNode]50:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op34bprop.47*
|
||||
|
||||
bprop.71:x*
|
||||
bprop.47:x*
|
||||
|
||||
bprop.71:y*
|
||||
bprop.71:out*
|
||||
bprop.71:dout2
|
||||
bprop.71:[CNode]74:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTupleh
|
||||
bprop.47:y*
|
||||
bprop.47:out*
|
||||
bprop.47:dout2
|
||||
bprop.47:[CNode]50:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -1,16 +1,16 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:ú
|
||||
0.1.1 MindSpore*1.8.0:÷
|
||||
—
|
||||
bprop.121:xbprop.121:[CNode]122:1bprop.121:[CNode]122:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op85
|
||||
—
|
||||
bprop.121:ybprop.121:[CNode]123:3bprop.121:[CNode]123:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op86
|
||||
˜
|
||||
bprop.158:xbprop.158:[CNode]159:1bprop.158:[CNode]159:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:/Default/S-Prim-hyper_map[zeros_like_leaf]-op114
|
||||
˜
|
||||
bprop.158:ybprop.158:[CNode]160:3bprop.158:[CNode]160:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:/Default/S-Prim-hyper_map[zeros_like_leaf]-op115
|
||||
™
|
||||
bprop.158:[CNode]159:1
|
||||
bprop.158:[CNode]160:3bprop.158:[CNode]161:4bprop.158:[CNode]161:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op116 bprop.158*
|
||||
bprop.158:x*
|
||||
bprop.158:y*
|
||||
bprop.158:out*
|
||||
bprop.158:dout2
|
||||
bprop.158:[CNode]161:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPbH
|
||||
bprop.121:[CNode]122:1
|
||||
bprop.121:[CNode]123:3bprop.121:[CNode]124:4bprop.121:[CNode]124:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op87 bprop.121*
|
||||
bprop.121:x*
|
||||
bprop.121:y*
|
||||
bprop.121:out*
|
||||
bprop.121:dout2
|
||||
bprop.121:[CNode]124:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2PbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTupleh
|
|
@ -2,19 +2,19 @@
|
|||
0.1.1 MindSpore*1.8.0:Þ
|
||||
’
|
||||
|
||||
bprop.83:xbprop.83:[CNode]84:1bprop.83:[CNode]84:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op59
|
||||
bprop.59:xbprop.59:[CNode]60:1bprop.59:[CNode]60:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op41
|
||||
’
|
||||
|
||||
bprop.83:ybprop.83:[CNode]85:3bprop.83:[CNode]85:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op60
|
||||
bprop.59:ybprop.59:[CNode]61:3bprop.59:[CNode]61:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op42
|
||||
<EFBFBD>
|
||||
bprop.83:[CNode]84:1
|
||||
bprop.83:[CNode]85:3bprop.83:[CNode]86:4bprop.83:[CNode]86:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op61bprop.83*
|
||||
bprop.59:[CNode]60:1
|
||||
bprop.59:[CNode]61:3bprop.59:[CNode]62:4bprop.59:[CNode]62:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op43bprop.59*
|
||||
|
||||
bprop.83:x*
|
||||
bprop.59:x*
|
||||
|
||||
bprop.83:y*
|
||||
bprop.83:out*
|
||||
bprop.83:dout2
|
||||
bprop.83:[CNode]86:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
bprop.59:y*
|
||||
bprop.59:out*
|
||||
bprop.59:dout2
|
||||
bprop.59:[CNode]62:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -2,19 +2,19 @@
|
|||
0.1.1 MindSpore*1.8.0:Þ
|
||||
’
|
||||
|
||||
bprop.79:xbprop.79:[CNode]80:1bprop.79:[CNode]80:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op56
|
||||
bprop.55:xbprop.55:[CNode]56:1bprop.55:[CNode]56:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op38
|
||||
’
|
||||
|
||||
bprop.79:ybprop.79:[CNode]81:3bprop.79:[CNode]81:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op57
|
||||
bprop.55:ybprop.55:[CNode]57:3bprop.55:[CNode]57:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op39
|
||||
<EFBFBD>
|
||||
bprop.79:[CNode]80:1
|
||||
bprop.79:[CNode]81:3bprop.79:[CNode]82:4bprop.79:[CNode]82:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op58bprop.79*
|
||||
bprop.55:[CNode]56:1
|
||||
bprop.55:[CNode]57:3bprop.55:[CNode]58:4bprop.55:[CNode]58:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op40bprop.55*
|
||||
|
||||
bprop.79:x*
|
||||
bprop.55:x*
|
||||
|
||||
bprop.79:y*
|
||||
bprop.79:out*
|
||||
bprop.79:dout2
|
||||
bprop.79:[CNode]82:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
bprop.55:y*
|
||||
bprop.55:out*
|
||||
bprop.55:dout2
|
||||
bprop.55:[CNode]58:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -1,9 +1,9 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:ü
|
||||
m
|
||||
bprop.3:doutbprop.3:[CNode]4:1bprop.3:[CNode]4:1"REF::S-Prim-MakeTuple:2:Default/S-Prim-MakeTuple-op2bprop.3*
|
||||
bprop.3:x*
|
||||
bprop.3:out*
|
||||
bprop.3:dout2
|
||||
bprop.3:[CNode]4:1:@bed32d3d7df2eeae57d389b98e0a4df03b873d553d6de616a3161e0f01e831efPb&
|
||||
bprop.1:doutbprop.1:[CNode]2:1bprop.1:[CNode]2:1"REF::S-Prim-MakeTuple:2:Default/S-Prim-MakeTuple-op0bprop.1*
|
||||
bprop.1:x*
|
||||
bprop.1:out*
|
||||
bprop.1:dout2
|
||||
bprop.1:[CNode]2:1:@5d57d331381f09bf25bfb5ef72ec9d679698183646a122ef4f127212683ebf45Pb&
|
||||
S-Prim-MakeTuple:2S-Prim-MakeTupleh
|
|
@ -2,13 +2,13 @@
|
|||
0.1.1 MindSpore*1.8.0:¤
|
||||
’
|
||||
|
||||
bprop.30:xbprop.30:[CNode]31:1bprop.30:[CNode]31:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op20
|
||||
bprop.26:xbprop.26:[CNode]27:1bprop.26:[CNode]27:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op17
|
||||
z
|
||||
bprop.30:[CNode]31:1bprop.30:[CNode]32:3bprop.30:[CNode]32:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op21bprop.30*
|
||||
bprop.26:[CNode]27:1bprop.26:[CNode]28:3bprop.26:[CNode]28:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op18bprop.26*
|
||||
|
||||
bprop.30:x*
|
||||
bprop.30:out*
|
||||
bprop.30:dout2
|
||||
bprop.30:[CNode]32:3:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
bprop.26:x*
|
||||
bprop.26:out*
|
||||
bprop.26:dout2
|
||||
bprop.26:[CNode]28:3:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -1,12 +1,12 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:¸
|
||||
<EFBFBD>
|
||||
bprop.179:xbprop.179:[CNode]180:1bprop.179:[CNode]180:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:/Default/S-Prim-hyper_map[zeros_like_leaf]-op130
|
||||
bprop.142:xbprop.142:[CNode]143:1bprop.142:[CNode]143:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:/Default/S-Prim-hyper_map[zeros_like_leaf]-op101
|
||||
<EFBFBD>
|
||||
bprop.179:[CNode]180:1bprop.179:[CNode]181:3bprop.179:[CNode]181:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op131 bprop.179*
|
||||
bprop.179:x*
|
||||
bprop.179:out*
|
||||
bprop.179:dout2
|
||||
bprop.179:[CNode]181:3:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTupleh
|
||||
bprop.142:[CNode]143:1bprop.142:[CNode]144:3bprop.142:[CNode]144:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op102 bprop.142*
|
||||
bprop.142:x*
|
||||
bprop.142:out*
|
||||
bprop.142:dout2
|
||||
bprop.142:[CNode]144:3:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -1,12 +1,12 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:¸
|
||||
˜
|
||||
bprop.176:xbprop.176:[CNode]177:1bprop.176:[CNode]177:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:/Default/S-Prim-hyper_map[zeros_like_leaf]-op128
|
||||
0.1.1 MindSpore*1.8.0:·
|
||||
—
|
||||
bprop.139:xbprop.139:[CNode]140:1bprop.139:[CNode]140:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op99
|
||||
<EFBFBD>
|
||||
bprop.176:[CNode]177:1bprop.176:[CNode]178:3bprop.176:[CNode]178:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op129 bprop.176*
|
||||
bprop.176:x*
|
||||
bprop.176:out*
|
||||
bprop.176:dout2
|
||||
bprop.176:[CNode]178:3:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
||||
bprop.139:[CNode]140:1bprop.139:[CNode]141:3bprop.139:[CNode]141:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op100 bprop.139*
|
||||
bprop.139:x*
|
||||
bprop.139:out*
|
||||
bprop.139:dout2
|
||||
bprop.139:[CNode]141:3:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2PbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTupleh
|
|
@ -2,19 +2,19 @@
|
|||
0.1.1 MindSpore*1.8.0:Ţ
|
||||
’
|
||||
|
||||
bprop.91:xbprop.91:[CNode]92:1bprop.91:[CNode]92:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op65
|
||||
bprop.67:xbprop.67:[CNode]68:1bprop.67:[CNode]68:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op47
|
||||
’
|
||||
|
||||
bprop.91:ybprop.91:[CNode]93:3bprop.91:[CNode]93:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op66
|
||||
bprop.67:ybprop.67:[CNode]69:3bprop.67:[CNode]69:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op48
|
||||
<EFBFBD>
|
||||
bprop.91:[CNode]92:1
|
||||
bprop.91:[CNode]93:3bprop.91:[CNode]94:4bprop.91:[CNode]94:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op67bprop.91*
|
||||
bprop.67:[CNode]68:1
|
||||
bprop.67:[CNode]69:3bprop.67:[CNode]70:4bprop.67:[CNode]70:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op49bprop.67*
|
||||
|
||||
bprop.91:x*
|
||||
bprop.67:x*
|
||||
|
||||
bprop.91:y*
|
||||
bprop.91:out*
|
||||
bprop.91:dout2
|
||||
bprop.91:[CNode]94:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
||||
bprop.67:y*
|
||||
bprop.67:out*
|
||||
bprop.67:dout2
|
||||
bprop.67:[CNode]70:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2PbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTupleh
|
|
@ -2,19 +2,19 @@
|
|||
0.1.1 MindSpore*1.8.0:Þ
|
||||
’
|
||||
|
||||
bprop.87:xbprop.87:[CNode]88:1bprop.87:[CNode]88:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op62
|
||||
bprop.63:xbprop.63:[CNode]64:1bprop.63:[CNode]64:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op44
|
||||
’
|
||||
|
||||
bprop.87:ybprop.87:[CNode]89:3bprop.87:[CNode]89:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op63
|
||||
bprop.63:ybprop.63:[CNode]65:3bprop.63:[CNode]65:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op45
|
||||
<EFBFBD>
|
||||
bprop.87:[CNode]88:1
|
||||
bprop.87:[CNode]89:3bprop.87:[CNode]90:4bprop.87:[CNode]90:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op64bprop.87*
|
||||
bprop.63:[CNode]64:1
|
||||
bprop.63:[CNode]65:3bprop.63:[CNode]66:4bprop.63:[CNode]66:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op46bprop.63*
|
||||
|
||||
bprop.87:x*
|
||||
bprop.63:x*
|
||||
|
||||
bprop.87:y*
|
||||
bprop.87:out*
|
||||
bprop.87:dout2
|
||||
bprop.87:[CNode]90:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPbH
|
||||
bprop.63:y*
|
||||
bprop.63:out*
|
||||
bprop.63:dout2
|
||||
bprop.63:[CNode]66:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2PbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTupleh
|
|
@ -1,20 +1,20 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:©
|
||||
–
|
||||
bprop.46:startbprop.46:[CNode]47:1bprop.46:[CNode]47:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op31
|
||||
bprop.42:startbprop.42:[CNode]43:1bprop.42:[CNode]43:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op28
|
||||
•
|
||||
bprop.46:stopbprop.46:[CNode]48:3bprop.46:[CNode]48:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op32
|
||||
bprop.42:stopbprop.42:[CNode]44:3bprop.42:[CNode]44:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op29
|
||||
”
|
||||
bprop.46:numbprop.46:[CNode]49:4bprop.46:[CNode]49:4"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op33
|
||||
bprop.42:numbprop.42:[CNode]45:4bprop.42:[CNode]45:4"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op30
|
||||
¦
|
||||
bprop.46:[CNode]47:1
|
||||
bprop.46:[CNode]48:3
|
||||
bprop.46:[CNode]49:4bprop.46:[CNode]50:5bprop.46:[CNode]50:5"REF::S-Prim-MakeTuple:6:Default/S-Prim-MakeTuple-op34bprop.46*
|
||||
bprop.46:start*
|
||||
bprop.46:stop*
|
||||
bprop.46:num*
|
||||
bprop.46:out*
|
||||
bprop.46:dout2
|
||||
bprop.46:[CNode]50:5:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
S-Prim-MakeTuple:6S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
||||
bprop.42:[CNode]43:1
|
||||
bprop.42:[CNode]44:3
|
||||
bprop.42:[CNode]45:4bprop.42:[CNode]46:5bprop.42:[CNode]46:5"REF::S-Prim-MakeTuple:6:Default/S-Prim-MakeTuple-op31bprop.42*
|
||||
bprop.42:start*
|
||||
bprop.42:stop*
|
||||
bprop.42:num*
|
||||
bprop.42:out*
|
||||
bprop.42:dout2
|
||||
bprop.42:[CNode]46:5:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2PbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:6S-Prim-MakeTupleh
|
|
@ -2,19 +2,19 @@
|
|||
0.1.1 MindSpore*1.8.0:Ţ
|
||||
’
|
||||
|
||||
bprop.95:xbprop.95:[CNode]96:1bprop.95:[CNode]96:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op68
|
||||
bprop.71:xbprop.71:[CNode]72:1bprop.71:[CNode]72:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op50
|
||||
’
|
||||
|
||||
bprop.95:ybprop.95:[CNode]97:3bprop.95:[CNode]97:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op69
|
||||
bprop.71:ybprop.71:[CNode]73:3bprop.71:[CNode]73:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op51
|
||||
<EFBFBD>
|
||||
bprop.95:[CNode]96:1
|
||||
bprop.95:[CNode]97:3bprop.95:[CNode]98:4bprop.95:[CNode]98:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op70bprop.95*
|
||||
bprop.71:[CNode]72:1
|
||||
bprop.71:[CNode]73:3bprop.71:[CNode]74:4bprop.71:[CNode]74:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op52bprop.71*
|
||||
|
||||
bprop.95:x*
|
||||
bprop.71:x*
|
||||
|
||||
bprop.95:y*
|
||||
bprop.95:out*
|
||||
bprop.95:dout2
|
||||
bprop.95:[CNode]98:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTupleh
|
||||
bprop.71:y*
|
||||
bprop.71:out*
|
||||
bprop.71:dout2
|
||||
bprop.71:[CNode]74:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -2,13 +2,13 @@
|
|||
0.1.1 MindSpore*1.8.0:¤
|
||||
’
|
||||
|
||||
bprop.40:xbprop.40:[CNode]41:1bprop.40:[CNode]41:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op27
|
||||
bprop.36:xbprop.36:[CNode]37:1bprop.36:[CNode]37:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op24
|
||||
z
|
||||
bprop.40:[CNode]41:1bprop.40:[CNode]42:3bprop.40:[CNode]42:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op28bprop.40*
|
||||
bprop.36:[CNode]37:1bprop.36:[CNode]38:3bprop.36:[CNode]38:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op25bprop.36*
|
||||
|
||||
bprop.40:x*
|
||||
bprop.40:out*
|
||||
bprop.40:dout2
|
||||
bprop.40:[CNode]42:3:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPbH
|
||||
bprop.36:x*
|
||||
bprop.36:out*
|
||||
bprop.36:dout2
|
||||
bprop.36:[CNode]38:3:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2PbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTupleh
|
|
@ -1,20 +1,20 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:ç
|
||||
”
|
||||
0.1.1 MindSpore*1.8.0:Þ
|
||||
’
|
||||
|
||||
bprop.99:xbprop.99:[CNode]100:1bprop.99:[CNode]100:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op71
|
||||
”
|
||||
bprop.75:xbprop.75:[CNode]76:1bprop.75:[CNode]76:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op53
|
||||
’
|
||||
|
||||
bprop.99:ybprop.99:[CNode]101:3bprop.99:[CNode]101:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op72
|
||||
”
|
||||
bprop.99:[CNode]100:1
|
||||
bprop.99:[CNode]101:3bprop.99:[CNode]102:4bprop.99:[CNode]102:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op73bprop.99*
|
||||
bprop.75:ybprop.75:[CNode]77:3bprop.75:[CNode]77:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op54
|
||||
<EFBFBD>
|
||||
bprop.75:[CNode]76:1
|
||||
bprop.75:[CNode]77:3bprop.75:[CNode]78:4bprop.75:[CNode]78:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op55bprop.75*
|
||||
|
||||
bprop.99:x*
|
||||
bprop.75:x*
|
||||
|
||||
bprop.99:y*
|
||||
bprop.99:out*
|
||||
bprop.99:dout2
|
||||
bprop.99:[CNode]102:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
bprop.75:y*
|
||||
bprop.75:out*
|
||||
bprop.75:dout2
|
||||
bprop.75:[CNode]78:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
Binary file not shown.
Binary file not shown.
|
@ -2,19 +2,19 @@
|
|||
0.1.1 MindSpore*1.8.0:Þ
|
||||
’
|
||||
|
||||
bprop.75:xbprop.75:[CNode]76:1bprop.75:[CNode]76:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op53
|
||||
bprop.51:xbprop.51:[CNode]52:1bprop.51:[CNode]52:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op35
|
||||
’
|
||||
|
||||
bprop.75:ybprop.75:[CNode]77:3bprop.75:[CNode]77:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op54
|
||||
bprop.51:ybprop.51:[CNode]53:3bprop.51:[CNode]53:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op36
|
||||
<EFBFBD>
|
||||
bprop.75:[CNode]76:1
|
||||
bprop.75:[CNode]77:3bprop.75:[CNode]78:4bprop.75:[CNode]78:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op55bprop.75*
|
||||
bprop.51:[CNode]52:1
|
||||
bprop.51:[CNode]53:3bprop.51:[CNode]54:4bprop.51:[CNode]54:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op37bprop.51*
|
||||
|
||||
bprop.75:x*
|
||||
bprop.51:x*
|
||||
|
||||
bprop.75:y*
|
||||
bprop.75:out*
|
||||
bprop.75:dout2
|
||||
bprop.75:[CNode]78:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
bprop.51:y*
|
||||
bprop.51:out*
|
||||
bprop.51:dout2
|
||||
bprop.51:[CNode]54:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -1,12 +1,12 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:”
|
||||
0.1.1 MindSpore*1.8.0:‘
|
||||
Œ
|
||||
bprop.8:xbprop.8:[CNode]9:1bprop.8:[CNode]9:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:-Default/S-Prim-hyper_map[zeros_like_leaf]-op5
|
||||
u
|
||||
bprop.8:[CNode]9:1bprop.8:[CNode]10:3bprop.8:[CNode]10:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op6bprop.8*
|
||||
bprop.8:x*
|
||||
bprop.8:out*
|
||||
bprop.8:dout2
|
||||
bprop.8:[CNode]10:3:@bed32d3d7df2eeae57d389b98e0a4df03b873d553d6de616a3161e0f01e831efPbH
|
||||
bprop.6:xbprop.6:[CNode]7:1bprop.6:[CNode]7:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:-Default/S-Prim-hyper_map[zeros_like_leaf]-op3
|
||||
s
|
||||
bprop.6:[CNode]7:1bprop.6:[CNode]8:3bprop.6:[CNode]8:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op4bprop.6*
|
||||
bprop.6:x*
|
||||
bprop.6:out*
|
||||
bprop.6:dout2
|
||||
bprop.6:[CNode]8:3:@5d57d331381f09bf25bfb5ef72ec9d679698183646a122ef4f127212683ebf45PbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTupleh
|
|
@ -1,12 +1,12 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:‘
|
||||
Œ
|
||||
bprop.5:xbprop.5:[CNode]6:1bprop.5:[CNode]6:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:-Default/S-Prim-hyper_map[zeros_like_leaf]-op3
|
||||
bprop.3:xbprop.3:[CNode]4:1bprop.3:[CNode]4:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:-Default/S-Prim-hyper_map[zeros_like_leaf]-op1
|
||||
s
|
||||
bprop.5:[CNode]6:1bprop.5:[CNode]7:3bprop.5:[CNode]7:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op4bprop.5*
|
||||
bprop.5:x*
|
||||
bprop.5:out*
|
||||
bprop.5:dout2
|
||||
bprop.5:[CNode]7:3:@bed32d3d7df2eeae57d389b98e0a4df03b873d553d6de616a3161e0f01e831efPbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTupleh
|
||||
bprop.3:[CNode]4:1bprop.3:[CNode]5:3bprop.3:[CNode]5:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op2bprop.3*
|
||||
bprop.3:x*
|
||||
bprop.3:out*
|
||||
bprop.3:dout2
|
||||
bprop.3:[CNode]5:3:@5d57d331381f09bf25bfb5ef72ec9d679698183646a122ef4f127212683ebf45Pb&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -1,12 +1,14 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:¶
|
||||
—
|
||||
bprop.125:xbprop.125:[CNode]126:1bprop.125:[CNode]126:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op90
|
||||
€
|
||||
bprop.125:[CNode]126:1bprop.125:[CNode]127:3bprop.125:[CNode]127:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op91 bprop.125*
|
||||
bprop.125:x*
|
||||
bprop.125:out*
|
||||
bprop.125:dout2
|
||||
bprop.125:[CNode]127:3:@bed32d3d7df2eeae57d389b98e0a4df03b873d553d6de616a3161e0f01e831efPbH
|
||||
0.1.1 MindSpore*1.8.0:¤
|
||||
’
|
||||
|
||||
bprop.96:xbprop.96:[CNode]97:1bprop.96:[CNode]97:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op68
|
||||
z
|
||||
bprop.96:[CNode]97:1bprop.96:[CNode]98:3bprop.96:[CNode]98:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op69bprop.96*
|
||||
|
||||
bprop.96:x*
|
||||
bprop.96:out*
|
||||
bprop.96:dout2
|
||||
bprop.96:[CNode]98:3:@5d57d331381f09bf25bfb5ef72ec9d679698183646a122ef4f127212683ebf45PbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTupleh
|
|
@ -1,16 +1,18 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:ý
|
||||
—
|
||||
bprop.103:xbprop.103:[CNode]104:1bprop.103:[CNode]104:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op74
|
||||
š
|
||||
bprop.103:axisbprop.103:[CNode]105:3bprop.103:[CNode]105:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op75
|
||||
˜
|
||||
bprop.103:[CNode]104:1
|
||||
bprop.103:[CNode]105:3bprop.103:[CNode]106:4bprop.103:[CNode]106:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op76 bprop.103*
|
||||
bprop.103:x*
|
||||
bprop.103:axis*
|
||||
bprop.103:out*
|
||||
bprop.103:dout2
|
||||
bprop.103:[CNode]106:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
0.1.1 MindSpore*1.8.0:ä
|
||||
’
|
||||
|
||||
bprop.79:xbprop.79:[CNode]80:1bprop.79:[CNode]80:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op56
|
||||
•
|
||||
bprop.79:axisbprop.79:[CNode]81:3bprop.79:[CNode]81:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op57
|
||||
<EFBFBD>
|
||||
bprop.79:[CNode]80:1
|
||||
bprop.79:[CNode]81:3bprop.79:[CNode]82:4bprop.79:[CNode]82:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op58bprop.79*
|
||||
|
||||
bprop.79:x*
|
||||
bprop.79:axis*
|
||||
bprop.79:out*
|
||||
bprop.79:dout2
|
||||
bprop.79:[CNode]82:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -1,16 +1,18 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:ý
|
||||
—
|
||||
bprop.107:xbprop.107:[CNode]108:1bprop.107:[CNode]108:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op77
|
||||
š
|
||||
bprop.107:axisbprop.107:[CNode]109:3bprop.107:[CNode]109:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op78
|
||||
˜
|
||||
bprop.107:[CNode]108:1
|
||||
bprop.107:[CNode]109:3bprop.107:[CNode]110:4bprop.107:[CNode]110:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op79 bprop.107*
|
||||
bprop.107:x*
|
||||
bprop.107:axis*
|
||||
bprop.107:out*
|
||||
bprop.107:dout2
|
||||
bprop.107:[CNode]110:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPbH
|
||||
0.1.1 MindSpore*1.8.0:ä
|
||||
’
|
||||
|
||||
bprop.83:xbprop.83:[CNode]84:1bprop.83:[CNode]84:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op59
|
||||
•
|
||||
bprop.83:axisbprop.83:[CNode]85:3bprop.83:[CNode]85:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op60
|
||||
<EFBFBD>
|
||||
bprop.83:[CNode]84:1
|
||||
bprop.83:[CNode]85:3bprop.83:[CNode]86:4bprop.83:[CNode]86:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op61bprop.83*
|
||||
|
||||
bprop.83:x*
|
||||
bprop.83:axis*
|
||||
bprop.83:out*
|
||||
bprop.83:dout2
|
||||
bprop.83:[CNode]86:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2PbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTupleh
|
|
@ -2,13 +2,13 @@
|
|||
0.1.1 MindSpore*1.8.0:¤
|
||||
’
|
||||
|
||||
bprop.43:xbprop.43:[CNode]44:1bprop.43:[CNode]44:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op29
|
||||
bprop.39:xbprop.39:[CNode]40:1bprop.39:[CNode]40:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op26
|
||||
z
|
||||
bprop.43:[CNode]44:1bprop.43:[CNode]45:3bprop.43:[CNode]45:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op30bprop.43*
|
||||
bprop.39:[CNode]40:1bprop.39:[CNode]41:3bprop.39:[CNode]41:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op27bprop.39*
|
||||
|
||||
bprop.43:x*
|
||||
bprop.43:out*
|
||||
bprop.43:dout2
|
||||
bprop.43:[CNode]45:3:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
||||
bprop.39:x*
|
||||
bprop.39:out*
|
||||
bprop.39:dout2
|
||||
bprop.39:[CNode]41:3:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2PbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTupleh
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,31 +1,35 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:ø
|
||||
š
|
||||
bprop.128:condbprop.128:[CNode]129:1bprop.128:[CNode]129:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op92
|
||||
0.1.1 MindSpore*1.8.0:Ù
|
||||
—
|
||||
bprop.128:xbprop.128:[CNode]130:3bprop.128:[CNode]130:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op93
|
||||
š
|
||||
bprop.128:cond
|
||||
bprop.128:dout
|
||||
bprop.128:[CNode]130:3bprop.128:[CNode]131:4bprop.128:[CNode]131:4"REF::S-Prim-Select:5:Default/S-Prim-Select-op94
|
||||
—
|
||||
bprop.128:ybprop.128:[CNode]132:6bprop.128:[CNode]132:6"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op95
|
||||
š
|
||||
bprop.128:cond
|
||||
bprop.128:[CNode]132:6
|
||||
bprop.128:doutbprop.128:[CNode]133:7bprop.128:[CNode]133:7"REF::S-Prim-Select:5:Default/S-Prim-Select-op96
|
||||
°
|
||||
bprop.128:[CNode]129:1
|
||||
bprop.128:[CNode]131:4
|
||||
bprop.128:[CNode]133:7bprop.128:[CNode]134:8bprop.128:[CNode]134:8"REF::S-Prim-MakeTuple:9:Default/S-Prim-MakeTuple-op97 bprop.128*
|
||||
bprop.128:cond*
|
||||
bprop.128:x*
|
||||
bprop.128:y*
|
||||
bprop.128:out*
|
||||
bprop.128:dout2
|
||||
bprop.128:[CNode]134:8:@bed32d3d7df2eeae57d389b98e0a4df03b873d553d6de616a3161e0f01e831efPb&
|
||||
S-Prim-MakeTuple:9S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]bv
|
||||
bprop.99:condbprop.99:[CNode]100:1bprop.99:[CNode]100:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op70
|
||||
”
|
||||
|
||||
bprop.99:xbprop.99:[CNode]101:3bprop.99:[CNode]101:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op71
|
||||
•
|
||||
bprop.99:cond
|
||||
bprop.99:dout
|
||||
bprop.99:[CNode]101:3bprop.99:[CNode]102:4bprop.99:[CNode]102:4"REF::S-Prim-Select:5:Default/S-Prim-Select-op72
|
||||
”
|
||||
|
||||
bprop.99:ybprop.99:[CNode]103:6bprop.99:[CNode]103:6"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op73
|
||||
•
|
||||
bprop.99:cond
|
||||
bprop.99:[CNode]103:6
|
||||
bprop.99:doutbprop.99:[CNode]104:7bprop.99:[CNode]104:7"REF::S-Prim-Select:5:Default/S-Prim-Select-op74
|
||||
«
|
||||
bprop.99:[CNode]100:1
|
||||
bprop.99:[CNode]102:4
|
||||
bprop.99:[CNode]104:7bprop.99:[CNode]105:8bprop.99:[CNode]105:8"REF::S-Prim-MakeTuple:9:Default/S-Prim-MakeTuple-op75bprop.99*
|
||||
bprop.99:cond*
|
||||
|
||||
bprop.99:x*
|
||||
|
||||
bprop.99:y*
|
||||
bprop.99:out*
|
||||
bprop.99:dout2
|
||||
bprop.99:[CNode]105:8:@5d57d331381f09bf25bfb5ef72ec9d679698183646a122ef4f127212683ebf45Pbv
|
||||
S-Prim-Select:5
S-Prim-Select
|
||||
output_names€ŠZoutput€3
|
||||
input_names€ŠZ condition€ŠZx€ŠZy€h
|
||||
input_names€ŠZ condition€ŠZx€ŠZy€bH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:9S-Prim-MakeTupleh
|
|
@ -1,12 +1,14 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:¶
|
||||
—
|
||||
bprop.119:xbprop.119:[CNode]120:1bprop.119:[CNode]120:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op86
|
||||
€
|
||||
bprop.119:[CNode]120:1bprop.119:[CNode]121:3bprop.119:[CNode]121:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op87 bprop.119*
|
||||
bprop.119:x*
|
||||
bprop.119:out*
|
||||
bprop.119:dout2
|
||||
bprop.119:[CNode]121:3:@bed32d3d7df2eeae57d389b98e0a4df03b873d553d6de616a3161e0f01e831efPbH
|
||||
0.1.1 MindSpore*1.8.0:¤
|
||||
’
|
||||
|
||||
bprop.90:xbprop.90:[CNode]91:1bprop.90:[CNode]91:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op64
|
||||
z
|
||||
bprop.90:[CNode]91:1bprop.90:[CNode]92:3bprop.90:[CNode]92:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op65bprop.90*
|
||||
|
||||
bprop.90:x*
|
||||
bprop.90:out*
|
||||
bprop.90:dout2
|
||||
bprop.90:[CNode]92:3:@5d57d331381f09bf25bfb5ef72ec9d679698183646a122ef4f127212683ebf45PbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTupleh
|
|
@ -2,13 +2,13 @@
|
|||
0.1.1 MindSpore*1.8.0:¤
|
||||
’
|
||||
|
||||
bprop.37:xbprop.37:[CNode]38:1bprop.37:[CNode]38:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op25
|
||||
bprop.33:xbprop.33:[CNode]34:1bprop.33:[CNode]34:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op22
|
||||
z
|
||||
bprop.37:[CNode]38:1bprop.37:[CNode]39:3bprop.37:[CNode]39:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op26bprop.37*
|
||||
bprop.33:[CNode]34:1bprop.33:[CNode]35:3bprop.33:[CNode]35:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op23bprop.33*
|
||||
|
||||
bprop.37:x*
|
||||
bprop.37:out*
|
||||
bprop.37:dout2
|
||||
bprop.37:[CNode]39:3:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPb&
|
||||
bprop.33:x*
|
||||
bprop.33:out*
|
||||
bprop.33:dout2
|
||||
bprop.33:[CNode]35:3:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -1,16 +1,16 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:ú
|
||||
0.1.1 MindSpore*1.8.0:÷
|
||||
—
|
||||
bprop.125:xbprop.125:[CNode]126:1bprop.125:[CNode]126:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op88
|
||||
—
|
||||
bprop.125:ybprop.125:[CNode]127:3bprop.125:[CNode]127:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:.Default/S-Prim-hyper_map[zeros_like_leaf]-op89
|
||||
<EFBFBD>
|
||||
bprop.162:xbprop.162:[CNode]163:1bprop.162:[CNode]163:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:/Default/S-Prim-hyper_map[zeros_like_leaf]-op117
|
||||
˜
|
||||
bprop.162:ybprop.162:[CNode]164:3bprop.162:[CNode]164:3"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:/Default/S-Prim-hyper_map[zeros_like_leaf]-op118
|
||||
™
|
||||
bprop.162:[CNode]163:1
|
||||
bprop.162:[CNode]164:3bprop.162:[CNode]165:4bprop.162:[CNode]165:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op119 bprop.162*
|
||||
bprop.162:x*
|
||||
bprop.162:y*
|
||||
bprop.162:out*
|
||||
bprop.162:dout2
|
||||
bprop.162:[CNode]165:4:@55db8051d636b56ba7c74e18e57dc69d92f162e966e2a21709843e52be9384cbPbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTupleh
|
||||
bprop.125:[CNode]126:1
|
||||
bprop.125:[CNode]127:3bprop.125:[CNode]128:4bprop.125:[CNode]128:4"REF::S-Prim-MakeTuple:5:Default/S-Prim-MakeTuple-op90 bprop.125*
|
||||
bprop.125:x*
|
||||
bprop.125:y*
|
||||
bprop.125:out*
|
||||
bprop.125:dout2
|
||||
bprop.125:[CNode]128:4:@cca98b651be28192028193202d9a6366dfdbe9206f3727cade2233f4b3a5c2f2Pb&
|
||||
S-Prim-MakeTuple:5S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -1,14 +1,12 @@
|
|||
|
||||
0.1.1 MindSpore*1.8.0:¢
|
||||
‘
|
||||
|
||||
bprop.11:xbprop.11:[CNode]12:1bprop.11:[CNode]12:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:-Default/S-Prim-hyper_map[zeros_like_leaf]-op7
|
||||
y
|
||||
bprop.11:[CNode]12:1bprop.11:[CNode]13:3bprop.11:[CNode]13:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op8bprop.11*
|
||||
|
||||
bprop.11:x*
|
||||
bprop.11:out*
|
||||
bprop.11:dout2
|
||||
bprop.11:[CNode]13:3:@bed32d3d7df2eeae57d389b98e0a4df03b873d553d6de616a3161e0f01e831efPbH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]b&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTupleh
|
||||
0.1.1 MindSpore*1.8.0:—
|
||||
Ž
|
||||
bprop.9:xbprop.9:[CNode]10:1bprop.9:[CNode]10:1"(REF::S-Prim-hyper_map[zeros_like_leaf]:2:-Default/S-Prim-hyper_map[zeros_like_leaf]-op5
|
||||
v
|
||||
bprop.9:[CNode]10:1bprop.9:[CNode]11:3bprop.9:[CNode]11:3"REF::S-Prim-MakeTuple:4:Default/S-Prim-MakeTuple-op6bprop.9*
|
||||
bprop.9:x*
|
||||
bprop.9:out*
|
||||
bprop.9:dout2
|
||||
bprop.9:[CNode]11:3:@5d57d331381f09bf25bfb5ef72ec9d679698183646a122ef4f127212683ebf45Pb&
|
||||
S-Prim-MakeTuple:4S-Prim-MakeTuplebH
|
||||
#S-Prim-hyper_map[zeros_like_leaf]:2!S-Prim-hyper_map[zeros_like_leaf]h
|
|
@ -6640,6 +6640,8 @@ class TensorScatterUpdate(_TensorScatterOp):
|
|||
input_x_value = list(input_x_value)
|
||||
if isinstance(input_x_value, (Tensor, Tensor_)):
|
||||
input_x_value = input_x_value.asnumpy()
|
||||
if indices_value is None or updates_value is None:
|
||||
return None
|
||||
indices = indices_value.asnumpy()
|
||||
input_x = np.array(input_x_value)
|
||||
updates = np.array(updates_value)
|
||||
|
|
|
@ -497,50 +497,60 @@ class _Reduce(PrimitiveWithInfer):
|
|||
output = _run_op(self, self.name, args)
|
||||
return output
|
||||
|
||||
@staticmethod
|
||||
def _infer_shape_with_axis_shape(input_x, axis_shape, keep_dims):
|
||||
""" compute the shape, min/max shape of output with axis shape when axis value is None """
|
||||
input_shp = input_x['shape']
|
||||
max_v = max(input_shp)
|
||||
if 'max_shape' in input_x and 'min_shape' in input_x:
|
||||
input_max_shp = input_x['max_shape']
|
||||
max_v = max(input_max_shp)
|
||||
if axis_shape == -1 and not keep_dims:
|
||||
out_shape = np.array([-2]).tolist()
|
||||
if 'max_shape' in input_x and 'min_shape' in input_x:
|
||||
output_min_shape = input_x['min_shape']
|
||||
output_max_shape = input_x['max_shape']
|
||||
elif not keep_dims:
|
||||
out_shape = -1 * np.ones_like(input_shp[:-axis_shape])
|
||||
out_shape = out_shape.tolist()
|
||||
output_min_shape = np.ones_like(out_shape).tolist()
|
||||
output_max_shape = max_v * np.ones_like(out_shape)
|
||||
output_max_shape = output_max_shape.tolist()
|
||||
else:
|
||||
out_shape = -1 * np.ones_like(input_shp)
|
||||
out_shape = out_shape.tolist()
|
||||
output_min_shape = np.ones_like(input_shp).tolist()
|
||||
output_max_shape = max_v * np.ones_like(input_shp)
|
||||
output_max_shape = output_max_shape.tolist()
|
||||
return out_shape, output_min_shape, output_max_shape
|
||||
|
||||
def do_infer(self, input_x, axis, valid_dtype=mstype.number_type):
|
||||
""" return meta infos of input parameters """
|
||||
axis_v = axis['value']
|
||||
input_shp = input_x['shape']
|
||||
args = {'input_x': input_x['dtype']}
|
||||
validator.check_tensors_dtypes_same_and_valid(args, valid_dtype, self.name)
|
||||
if not isinstance(axis['dtype'], mstype.tensor_type) and axis_v is None:
|
||||
raise ValueError(f"For '{self.name}', the 'axis' cannot be None, but got {axis}.")
|
||||
output_max_shape = None
|
||||
output_min_shape = None
|
||||
if -1 in input_shp:
|
||||
if axis_v is None:
|
||||
max_v = max(input_shp)
|
||||
if 'max_shape' in input_x and 'min_shape' in input_x:
|
||||
input_max_shp = input_x['max_shape']
|
||||
max_v = max(input_max_shp)
|
||||
axis_shape_list = axis['shape']
|
||||
validator.check_int(len(axis_shape_list), 1, Rel.EQ, 'the shape of axis', self.name)
|
||||
axis_shape = axis_shape_list[0]
|
||||
if axis_shape == -1 and not self.keep_dims:
|
||||
out_shape = np.array([-2]).tolist()
|
||||
if 'max_shape' in input_x and 'min_shape' in input_x:
|
||||
output_min_shape = input_x['min_shape']
|
||||
output_max_shape = input_x['max_shape']
|
||||
elif not self.keep_dims:
|
||||
out_shape = -1 * np.ones_like(input_shp[:-axis_shape])
|
||||
out_shape = out_shape.tolist()
|
||||
output_min_shape = np.ones_like(out_shape).tolist()
|
||||
output_max_shape = max_v * np.ones_like(out_shape)
|
||||
output_max_shape = output_max_shape.tolist()
|
||||
else:
|
||||
out_shape = -1 * np.ones_like(input_shp)
|
||||
out_shape = out_shape.tolist()
|
||||
output_min_shape = np.ones_like(input_shp).tolist()
|
||||
output_max_shape = max_v * np.ones_like(input_shp)
|
||||
output_max_shape = output_max_shape.tolist()
|
||||
else:
|
||||
if 'max_shape' in input_x and 'min_shape' in input_x:
|
||||
output_max_shape = _infer_shape_reduce(input_x['max_shape'], axis_v, self.keep_dims, self.name)
|
||||
output_min_shape = _infer_shape_reduce(input_x['min_shape'], axis_v, self.keep_dims, self.name)
|
||||
out_shape = _infer_shape_reduce(input_shp, axis_v, self.keep_dims, self.name)
|
||||
# when the rank of input_x is dynamic, the rank of output is also dynamic
|
||||
if -2 in input_shp:
|
||||
out_shape = np.array([-2]).tolist()
|
||||
if 'max_shape' in input_x and 'min_shape' in input_x:
|
||||
output_min_shape = input_x['min_shape']
|
||||
output_max_shape = input_x['max_shape']
|
||||
# when axis value is none, the output shape is computed by axis shape
|
||||
elif axis_v is None:
|
||||
axis_shape_list = axis['shape']
|
||||
validator.check_int(len(axis_shape_list), 1, Rel.EQ, 'the shape of axis', self.name)
|
||||
axis_shape = axis_shape_list[0]
|
||||
out_shape, output_min_shape, output_max_shape = _Reduce._infer_shape_with_axis_shape(
|
||||
input_x, axis_shape, self.keep_dims)
|
||||
elif -1 in input_shp:
|
||||
if 'max_shape' in input_x and 'min_shape' in input_x:
|
||||
output_max_shape = _infer_shape_reduce(input_x['max_shape'], axis_v, self.keep_dims, self.name)
|
||||
output_min_shape = _infer_shape_reduce(input_x['min_shape'], axis_v, self.keep_dims, self.name)
|
||||
out_shape = _infer_shape_reduce(input_shp, axis_v, self.keep_dims, self.name)
|
||||
else:
|
||||
if axis_v is None:
|
||||
raise ValueError(f"For {self.name}, axis must be const, its value cannot be None.")
|
||||
out_shape = _infer_shape_reduce(input_shp, axis_v, self.keep_dims, self.name)
|
||||
output_max_shape = out_shape
|
||||
output_min_shape = out_shape
|
||||
|
|
|
@ -31,6 +31,17 @@ class NetDynInput(nn.Cell):
|
|||
return self.scatternd(indices, update, self.shape)
|
||||
|
||||
|
||||
class NetDynShape(nn.Cell):
|
||||
def __init__(self):
|
||||
super(NetDynShape, self).__init__()
|
||||
self.scatternd = P.ScatterNd()
|
||||
self.shape_op = P.TensorShape()
|
||||
|
||||
def construct(self, indices, update, prev_out):
|
||||
shape = self.shape_op(prev_out)
|
||||
return self.scatternd(indices, update, shape)
|
||||
|
||||
|
||||
def check_result(output, expect):
|
||||
error = np.ones(shape=output.shape) * 1.0e-6
|
||||
diff = output - expect
|
||||
|
@ -39,7 +50,8 @@ def check_result(output, expect):
|
|||
|
||||
|
||||
def case_dyn_input():
|
||||
indices = np.array([[0, 1], [1, 1], [0, 1], [0, 1], [0, 1]]).astype(np.int32)
|
||||
indices = np.array(
|
||||
[[0, 1], [1, 1], [0, 1], [0, 1], [0, 1]]).astype(np.int32)
|
||||
update = np.array([3.2, 1.1, 5.3, -2.2, -1.0]).astype(np.float32)
|
||||
shape = (2, 2)
|
||||
expect = np.array([[0., 5.3],
|
||||
|
@ -52,6 +64,21 @@ def case_dyn_input():
|
|||
check_result(output, expect)
|
||||
|
||||
|
||||
def case_dyn_shape():
|
||||
indices = np.array(
|
||||
[[0, 1], [1, 1], [0, 1], [0, 1], [0, 1]]).astype(np.int32)
|
||||
update = np.array([3.2, 1.1, 5.3, -2.2, -1.0]).astype(np.float32)
|
||||
prev_out = np.array([[1, 1],
|
||||
[1, 1]]).astype(np.int32)
|
||||
expect = np.array([[0., 5.3],
|
||||
[0., 1.1]]).astype(np.float32)
|
||||
net = NetDynShape()
|
||||
prev_out_dyn = Tensor(shape=[None, 2], dtype=mstype.int32)
|
||||
net.set_inputs(Tensor(indices), Tensor(update), prev_out_dyn)
|
||||
output = net(Tensor(indices), Tensor(update), Tensor(prev_out)).asnumpy()
|
||||
check_result(output, expect)
|
||||
|
||||
|
||||
@pytest.mark.level0
|
||||
@pytest.mark.platform_arm_ascend_training
|
||||
@pytest.mark.platform_x86_ascend_training
|
||||
|
@ -65,3 +92,21 @@ def test_dynamic_scatternd_dyn_input():
|
|||
"""
|
||||
context.set_context(mode=context.GRAPH_MODE)
|
||||
case_dyn_input()
|
||||
context.set_context(mode=context.PYNATIVE_MODE)
|
||||
case_dyn_input()
|
||||
|
||||
|
||||
@pytest.mark.level0
|
||||
@pytest.mark.platform_arm_ascend_training
|
||||
@pytest.mark.platform_x86_ascend_training
|
||||
@pytest.mark.env_onecard
|
||||
def test_dynamic_scatternd_dyn_shape():
|
||||
"""
|
||||
Feature: dynamic shape for ScatterNd
|
||||
Description: dynamic output shape for ScatterNd when shape is a tensor
|
||||
Expectation: success
|
||||
"""
|
||||
context.set_context(mode=context.GRAPH_MODE)
|
||||
case_dyn_shape()
|
||||
context.set_context(mode=context.PYNATIVE_MODE)
|
||||
case_dyn_shape()
|
||||
|
|
Loading…
Reference in New Issue