def test(): data = conf_helps.data_layer(name="word", size=dict_dim) label = conf_helps.data_layer(name="label", size=label_dim) emb = conf_helps.embedding_layer(input=data, size=word_dim) boot_layer = conf_helps.data_layer(name="boot", size=10) boot_layer = conf_helps.fc_layer(name='boot_fc', input=boot_layer, size=10) def step(y, wid): z = conf_helps.embedding_layer(input=wid, size=word_dim) mem = conf_helps.memory(name="rnn_state", size=hidden_dim, boot_layer=boot_layer) out = conf_helps.fc_layer(input=[y, z, mem], size=hidden_dim, act=conf_helps.TanhActivation(), bias_attr=True, name="rnn_state") return out out = conf_helps.recurrent_group(name="rnn", step=step, input=[emb, data]) rep = conf_helps.last_seq(input=out) prob = conf_helps.fc_layer(size=label_dim, input=rep, act=conf_helps.SoftmaxActivation(), bias_attr=True) conf_helps.outputs( conf_helps.classification_cost(input=prob, label=label))
def test_get_layer(self): pixel = layer.data(name='pixel2', type=data_type.dense_vector(784)) label = layer.data(name='label2', type=data_type.integer_value(10)) hidden = layer.fc(input=pixel, size=100, act=conf_helps.SigmoidActivation()) inference = layer.fc(input=hidden, size=10, act=conf_helps.SoftmaxActivation()) cost = layer.classification_cost(input=inference, label=label) topo = topology.Topology(cost) pixel_layer = topo.get_layer("pixel2") label_layer = topo.get_layer("label2") self.assertEqual(pixel_layer, pixel) self.assertEqual(label_layer, label)
def test_parse(self): pixel = layer.data(name='pixel3', type=data_type.dense_vector(784)) label = layer.data(name='label3', type=data_type.integer_value(10)) hidden = layer.fc(input=pixel, size=100, act=conf_helps.SigmoidActivation()) inference = layer.fc(input=hidden, size=10, act=conf_helps.SoftmaxActivation()) maxid = layer.max_id(input=inference) cost1 = layer.classification_cost(input=inference, label=label) cost2 = layer.cross_entropy_cost(input=inference, label=label) topology.Topology(cost2).proto() topology.Topology([cost1]).proto() topology.Topology([cost1, cost2]).proto() topology.Topology([inference, maxid]).proto()
def test_data_type(self): pixel = layer.data(name='pixel', type=data_type.dense_vector(784)) label = layer.data(name='label', type=data_type.integer_value(10)) hidden = layer.fc(input=pixel, size=100, act=conf_helps.SigmoidActivation()) inference = layer.fc(input=hidden, size=10, act=conf_helps.SoftmaxActivation()) cost = layer.classification_cost(input=inference, label=label) topo = topology.Topology(cost) data_types = topo.data_type() self.assertEqual(len(data_types), 2) pixel_data_type = filter(lambda type: type[0] == "pixel", data_types) self.assertEqual(len(pixel_data_type), 1) pixel_data_type = pixel_data_type[0] self.assertEqual(pixel_data_type[1].type, pydp2.DataType.Dense) self.assertEqual(pixel_data_type[1].dim, 784) label_data_type = filter(lambda type: type[0] == "label", data_types) self.assertEqual(len(label_data_type), 1) label_data_type = label_data_type[0] self.assertEqual(label_data_type[1].type, pydp2.DataType.Index) self.assertEqual(label_data_type[1].dim, 10)
return V2LayerImpl data = __convert_to_v2__('data_layer', None, []) fc = __convert_to_v2__('fc_layer', name_prefix='fc', parent_names=['input']) max_id = __convert_to_v2__('maxid_layer', name_prefix='maxid_layer', parent_names=['input']) classification_cost = __convert_to_v2__('classification_cost', name_prefix='classification_cost', parent_names=['input', 'label']) cross_entropy_cost = __convert_to_v2__('cross_entropy', name_prefix='cross_entropy', parent_names=['input', 'label']) if __name__ == '__main__': pixel = data(name='pixel', size=784) label = data(name='label', size=10) hidden = fc(input=pixel, size=100, act=conf_helps.SigmoidActivation()) inference = fc(input=hidden, size=10, act=conf_helps.SoftmaxActivation()) maxid = max_id(input=inference) cost1 = classification_cost(input=inference, label=label) cost2 = cross_entropy_cost(input=inference, label=label) print parse_network(cost1) print parse_network(cost2) print parse_network(cost1, cost2) print parse_network(cost2) print parse_network(inference, maxid)
padding=1, stride=1, num_channels=1, num_filters=6, filter_size=5, act=paddle.LinearActivation()) pool_1 = paddle.img_pool_layer(input=conv_1, stride=2, pool_size=2, pool_type=paddle.MaxPooling()) conv_2 = paddle.img_conv_layer(input=pool_1, stride=1, num_filters=16, filter_size=5, act=paddle.LinearActivation()) pool_2 = paddle.img_pool_layer(input=conv_2, stride=2, pool_size=2, pool_type=paddle.MaxPooling()) fc_1 = paddle.fc_layer(input=pool_2, size=500, act=paddle.SigmoidActivation()) fc_2 = paddle.fc_layer(input=fc_1, size=10, act=paddle.SoftmaxActivation()) label = paddle.data_layer(name='label', size=10) cost = paddle.classification_cost(input=fc_2, label=label) paddle.outputs(cost)