diff --git a/inference-engine/src/legacy_api/src/ngraph_ops/fully_connected.cpp b/inference-engine/src/legacy_api/src/ngraph_ops/fully_connected.cpp index 9f6d504935d..764519614b1 100644 --- a/inference-engine/src/legacy_api/src/ngraph_ops/fully_connected.cpp +++ b/inference-engine/src/legacy_api/src/ngraph_ops/fully_connected.cpp @@ -28,8 +28,6 @@ shared_ptr op::FullyConnected::clone_with_new_inputs(const OutputVector& n } void op::FullyConnected::validate_and_infer_types() { - if (m_output_shape.size() < 2) - throw ngraph_error("FullyConnected shape is incorrect"); m_output_size = m_output_shape.back(); set_output_type( 0, diff --git a/inference-engine/tests/functional/inference_engine/ngraph_reader/matmul_tests.cpp b/inference-engine/tests/functional/inference_engine/ngraph_reader/matmul_tests.cpp index 37bc3bfc303..cb7388d951d 100644 --- a/inference-engine/tests/functional/inference_engine/ngraph_reader/matmul_tests.cpp +++ b/inference-engine/tests/functional/inference_engine/ngraph_reader/matmul_tests.cpp @@ -564,3 +564,154 @@ TEST_F(NGraphReaderTests, ReadMatMulNetwork5) { )V0G0N"; compareIRs(model, modelV5, 48); } + +TEST_F(NGraphReaderTests, ReadMatMul1DNetwork) { + std::string model = R"V0G0N( + + + + + + + 2048 + + + + + + + + 2048 + 1000 + + + + + + + 2048 + + + 2048 + 1000 + + + + + 1000 + + + + + + + 1000 + + + + + + + + + + +)V0G0N"; + // 'fc' layer biases are fake and added due to IE limitation for Fully Connected layer + std::string modelV5 = R"V0G0N( + + + + + + + + 2048 + + + + + + + 2 + + + + + + + + + + + 2048 + + + 2 + + + + + 1 + 2048 + + + + + + + + 1 + 2048 + + + + + 1 + 1000 + + + + + + + + + + + 1 + + + + + + + + + + + 1 + 1000 + + + 1 + + + + + 1000 + + + + + + + + + + + + +)V0G0N"; + compareIRs(model, modelV5, 8293000); +}