コード例 #1
0
 def test_gru_converter(self):
     input_dim = (1, 8)
     output_dim = (1, 2)
     inputs = [('input', datatypes.Array(*input_dim))]
     outputs = [('output', datatypes.Array(*output_dim))]
     builder = NeuralNetworkBuilder(inputs, outputs)
     W_h = [
         numpy.random.rand(2, 2),
         numpy.random.rand(2, 2),
         numpy.random.rand(2, 2)
     ]
     W_x = [
         numpy.random.rand(2, 8),
         numpy.random.rand(2, 8),
         numpy.random.rand(2, 8)
     ]
     b = [
         numpy.random.rand(2, 1),
         numpy.random.rand(2, 1),
         numpy.random.rand(2, 1)
     ]
     builder.add_gru(name='GRU',
                     W_h=W_h,
                     W_x=W_x,
                     b=b,
                     hidden_size=2,
                     input_size=8,
                     input_names=['input'],
                     output_names=['output'],
                     activation='TANH',
                     inner_activation='SIGMOID_HARD',
                     output_all=False,
                     reverse_input=False)
     model_onnx = convert_coreml(builder.spec)
     self.assertTrue(model_onnx is not None)
コード例 #2
0
 def test_gru_converter(self):
     input_dim = (1, 8)
     output_dim = (1, 2)
     inputs = [('input', datatypes.Array(*input_dim))]
     outputs = [('output', datatypes.Array(*output_dim))]
     builder = NeuralNetworkBuilder(inputs, outputs)
     W_h = [
         numpy.random.rand(2, 2),
         numpy.random.rand(2, 2),
         numpy.random.rand(2, 2)
     ]
     W_x = [
         numpy.random.rand(2, 8),
         numpy.random.rand(2, 8),
         numpy.random.rand(2, 8)
     ]
     b = [
         numpy.random.rand(2, 1),
         numpy.random.rand(2, 1),
         numpy.random.rand(2, 1)
     ]
     builder.add_gru(name='GRU',
                     W_h=W_h,
                     W_x=W_x,
                     b=b,
                     hidden_size=2,
                     input_size=8,
                     input_names=['input'],
                     output_names=['output'],
                     activation='TANH',
                     inner_activation='SIGMOID_HARD',
                     output_all=False,
                     reverse_input=False)
     context = ConvertContext()
     node = GRULayerConverter.convert(context,
                                      builder.spec.neuralNetwork.layers[0],
                                      ['input', 'h_init'], ['output', 'h'])
     self.assertTrue(node is not None)