1 // Copyright (C) 2018-2020 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
6 #include "ngraph_reader_tests.hpp"
8 TEST_F(NGraphReaderTests, ReadCTCGreedyDecoderNetwork) {
9 std::string model = R"V0G0N(
10 <net name="ctcgreedydecoder" version="10">
12 <layer id="0" name="CTCGreedyDecoder/placeholder_port_0" type="Parameter" version="opset1">
13 <data shape="20,8,128" element_type="f32"/>
15 <port id="0" precision="FP32">
22 <layer id="1" name="Fill/Broadcast/Output_0/Data__const" type="Const" version="opset1">
23 <data offset="0" size="640" shape="20,8" element_type="f32"/>
25 <port id="0" precision="FP32">
31 <layer id="2" name="CTCGreedyDecoder" type="CTCGreedyDecoder" version="opset1">
32 <data ctc_merge_repeated="1"/>
45 <port id="2" precision="FP32">
53 <layer id="3" name="CTCGreedyDecoder/sink_port_0" type="Result" version="opset1">
65 <edge from-layer="0" from-port="0" to-layer="2" to-port="0"/>
66 <edge from-layer="1" from-port="0" to-layer="2" to-port="1"/>
67 <edge from-layer="2" from-port="2" to-layer="3" to-port="0"/>
71 std::string modelV7 = R"V0G0N(
72 <net name="ctcgreedydecoder" version="7">
74 <layer id="0" name="CTCGreedyDecoder/placeholder_port_0" type="Input" version="opset1">
76 <port id="0" precision="FP32">
83 <layer id="1" name="Fill/Broadcast/Output_0/Data__const" type="Const" version="opset1">
85 <port id="0" precision="FP32">
91 <custom offset="0" size="640" precision="FP32"/>
94 <layer id="2" name="CTCGreedyDecoder" type="CTCGreedyDecoder" version="opset1">
95 <data ctc_merge_repeated="1"/>
108 <port id="2" precision="FP32">
118 <edge from-layer="0" from-port="0" to-layer="2" to-port="0"/>
119 <edge from-layer="1" from-port="0" to-layer="2" to-port="1"/>
123 compareIRs(model, modelV7, 640);
128 #include "ngraph_reader_tests.hpp"
130 TEST_F(NGraphReaderTests, ReadCTCGreedyDecoderNoMergeNetwork) {
131 std::string model = R"V0G0N(
132 <net name="ctcgreedydecoder" version="10">
134 <layer id="0" name="CTCGreedyDecoder/placeholder_port_0" type="Parameter" version="opset1">
135 <data shape="20,8,128" element_type="f32"/>
137 <port id="0" precision="FP32">
144 <layer id="1" name="Fill/Broadcast/Output_0/Data__const" type="Const" version="opset1">
145 <data offset="0" size="640" shape="20,8" element_type="f32"/>
147 <port id="0" precision="FP32">
153 <layer id="2" name="CTCGreedyDecoder" type="CTCGreedyDecoder" version="opset1">
154 <data ctc_merge_repeated="0"/>
167 <port id="2" precision="FP32">
175 <layer id="3" name="CTCGreedyDecoder/sink_port_0" type="Result" version="opset1">
187 <edge from-layer="0" from-port="0" to-layer="2" to-port="0"/>
188 <edge from-layer="1" from-port="0" to-layer="2" to-port="1"/>
189 <edge from-layer="2" from-port="2" to-layer="3" to-port="0"/>
193 std::string modelV7 = R"V0G0N(
194 <net name="ctcgreedydecoder" version="7">
196 <layer id="0" name="CTCGreedyDecoder/placeholder_port_0" type="Input" version="opset1">
198 <port id="0" precision="FP32">
205 <layer id="1" name="Fill/Broadcast/Output_0/Data__const" type="Const" version="opset1">
207 <port id="0" precision="FP32">
213 <custom offset="0" size="640" precision="FP32"/>
216 <layer id="2" name="CTCGreedyDecoder" type="CTCGreedyDecoder" version="opset1">
217 <data ctc_merge_repeated="0"/>
230 <port id="2" precision="FP32">
240 <edge from-layer="0" from-port="0" to-layer="2" to-port="0"/>
241 <edge from-layer="1" from-port="0" to-layer="2" to-port="1"/>
245 compareIRs(model, modelV7, 640);