@@ -47,29 +47,23 @@ int main() {
4747 }
4848 Tensor input = t;
4949 Tensor output = make_tensor (vec, sh1);
50- auto a1 = std::make_unique<InputLayer>(kNchw , kNchw , 1 , 2 );
51- Layer* a1_ptr = a1.get ();
50+ auto a1 = std::make_shared<InputLayer>(kNchw , kNchw , 1 , 2 );
5251 std::vector<float > kernelvec = {1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 };
5352 Shape sh2 ({3 , 3 });
5453 Tensor kernel = make_tensor (kernelvec, sh2);
55- auto a2 = std::make_unique<ConvolutionalLayer>(1 , 0 , 0 , kernel);
56- Layer* a2_ptr = a2.get ();
54+ auto a2 = std::make_shared<ConvolutionalLayer>(1 , 0 , 0 , kernel);
5755 Shape poolshape = {2 , 2 };
58- auto a3 = std::make_unique<EWLayer>(" linear" , 2 .0F , 3 .0F );
59- Layer* a3_ptr = a3.get ();
60- auto a4 = std::make_unique<PoolingLayer>(poolshape, " average" );
61- Layer* a4_ptr = a4.get ();
62- auto a5 = std::make_unique<OutputLayer>();
63- Layer* a5_ptr = a5.get ();
64- auto a6 = std::make_unique<FCLayer>();
65- Layer* a6_ptr = a6.get ();
66- graph.setInput (a1_ptr, input);
67- graph.makeConnection (a1_ptr, a2_ptr);
68- graph.makeConnection (a2_ptr, a3_ptr);
69- graph.makeConnection (a3_ptr, a4_ptr);
70- graph.makeConnection (a4_ptr, a5_ptr);
71- graph.makeConnection (a5_ptr, a6_ptr);
72- graph.setOutput (a5_ptr, output);
56+ auto a3 = std::make_shared<EWLayer>(" linear" , 2 .0F , 3 .0F );
57+ auto a4 = std::make_shared<PoolingLayer>(poolshape, " average" );
58+ auto a5 = std::make_shared<OutputLayer>();
59+ auto a6 = std::make_shared<FCLayer>();
60+ graph.setInput (a1, input);
61+ graph.makeConnection (a1, a2);
62+ graph.makeConnection (a2, a3);
63+ graph.makeConnection (a3, a4);
64+ graph.makeConnection (a4, a5);
65+ graph.makeConnection (a5, a6);
66+ graph.setOutput (a5, output);
7367 graph.inference (options);
7468 std::vector<float > tmp = *output.as <float >();
7569 std::vector<float > tmp_output = softmax<float >(*output.as <float >());
0 commit comments