const std::vector<InferenceEngine::SizeVector> inputShapes2D = {
InferenceEngine::SizeVector {1, 100},
+ InferenceEngine::SizeVector {100, 1},
+ InferenceEngine::SizeVector {10, 10},
};
const std::vector<size_t> axis2D = {
- 1
+ 0, 1
};
-const auto params = testing::Combine(
+const auto params2D = testing::Combine(
testing::ValuesIn(netPrecisions),
testing::ValuesIn(inputLayouts2D),
testing::ValuesIn(inputShapes2D),
INSTANTIATE_TEST_CASE_P(
SoftMax2D,
SoftMaxLayerTest,
- params,
+ params2D,
+ SoftMaxLayerTest::getTestCaseName
+);
+
+const std::vector<InferenceEngine::SizeVector> inputShapes4D = {
+ InferenceEngine::SizeVector {1, 100, 1, 1},
+ InferenceEngine::SizeVector {1, 3, 4, 3},
+ InferenceEngine::SizeVector {2, 3, 4, 5},
+};
+
+const std::vector<size_t> axis4D = {0, 1, 2, 3};
+
+const auto params4D = testing::Combine(
+ testing::ValuesIn(netPrecisions),
+ testing::Values(InferenceEngine::Layout::NCHW),
+ testing::ValuesIn(inputShapes4D),
+ testing::ValuesIn(axis4D),
+ testing::Values(CommonTestUtils::DEVICE_CPU),
+ testing::Values(std::map<std::string, std::string>())
+);
+
+INSTANTIATE_TEST_CASE_P(
+ SoftMax4D,
+ SoftMaxLayerTest,
+ params4D,
SoftMaxLayerTest::getTestCaseName
);
return replacement_node;
}
- shared_ptr<Node> op_cast(shared_ptr<op::v1::Softmax> node)
- {
- const auto axis = node->get_axis();
- const auto data = node->input(0);
- const auto data_shape = data.get_shape();
- std::vector<size_t> axes(data_shape.size() - axis);
- std::iota(std::begin(axes), std::end(axes), axis);
- const auto replacement_node = make_shared<op::v0::Softmax>(node->input_value(0), axes);
- replace_node(node, replacement_node);
- return replacement_node;
- }
-
shared_ptr<Node> op_cast(shared_ptr<op::v1::Split> node)
{
const auto num_splits = node->get_num_splits();