Esempio n. 1
0
def main():

    sess = tf.Session()

    image = read_image('../data/heart.jpg')
    image = np.reshape(image, [1, 224, 224, 3])  # type numpy.ndarray
    image.astype(np.float32)

    parser = Parser('../data/alexnet.cfg')
    network_builder = NetworkBuilder("test")  # type: NetworkBuilder
    network_builder.set_parser(parser)
    network = network_builder.build()  # type: Network
    network.add_input_layer(InputLayer(tf.float32, [None, 224, 224, 3]))
    network.add_output_layer(OutputLayer())
    network.connect_each_layer()

    sess.run(tf.global_variables_initializer())
    fc_layer = sess.run(network.output, feed_dict={network.input: image})
Esempio n. 2
0
def main():
    parser = Parser('../data/alexnet.cfg')
    network_builder = NetworkBuilder("test")
    mnist = input_data.read_data_sets("F:/tf_net_parser/datasets/MNIST_data/",
                                      one_hot=True)  # 读取数据
    network_builder.set_parser(parser)
    network = network_builder.build()  # type: Network
    network.add_input_layer(InputLayer(tf.float32, [None, 28, 28, 1]))
    network.add_output_layer(OutputLayer())
    network.set_labels_placeholder(tf.placeholder(tf.float32, [None, 10]))
    network.connect_each_layer()
    network.set_accuracy()
    network.init_optimizer()
    train_tool = TrainTool()
    train_tool.bind_network(network)
    sess = tf.Session()
    sess.run(tf.initialize_all_variables())
    for i in range(300):
        batch = mnist.train.next_batch(100)
        feed_dict = {
            network.input: np.reshape(batch[0], [-1, 28, 28, 1]),
            network.labels: batch[1]
        }
        train_tool.train(sess, network.output, feed_dict=feed_dict)
        if (i + 1) % 100 == 0:
            train_tool.print_accuracy(sess, feed_dict)
            train_tool.save_model_to_pb_file(
                sess,
                '../pb/alexnet-' + str(i + 1) + '/',
                input_data={'input': network.input},
                output={'predict-result': network.output})
            # train_tool.save_ckpt_model('f:/tf_net_parser/save_model/model', sess, gloabl_step=(i+1))

    batch_test = mnist.test.next_batch(100)
    feed_dict = {
        network.input: np.reshape(batch_test[0], [100, 28, 28, 1]),
        network.labels: batch_test[1]
    }
    train_tool.print_test_accuracy(sess, feed_dict)