Comment voulez-vous faire TensorFlow + Keras rapide avec un TFRecord dataset?

Ce qui est un exemple de comment utiliser un TensorFlow TFRecord avec un Keras Modèle et de la tf.session.run() tout en gardant la base de données dans tenseurs w/file d'attente des coureurs?

Ci-dessous est un extrait de code qui fonctionne mais il faut les améliorations suivantes:

  • Utiliser le Le modèle de l'API
  • spécifier une Entrée()
  • Charger un jeu de données à partir d'un TFRecord
  • Courir à travers un jeu de données en parallèle (comme avec un queuerunner)

Voici l'extrait de code, il y a plusieurs TODO lignes indiquant ce qui est nécessaire:

from keras.models import Model
import tensorflow as tf
from keras import backend as K
from keras.layers import Dense, Input
from keras.objectives import categorical_crossentropy
from tensorflow.examples.tutorials.mnist import input_data

sess = tf.Session()
K.set_session(sess)

# Can this be done more efficiently than placeholders w/TFRecords?
img = tf.placeholder(tf.float32, shape=(None, 784))
labels = tf.placeholder(tf.float32, shape=(None, 10))

# TODO: Use Input() 
x = Dense(128, activation='relu')(img)
x = Dense(128, activation='relu')(x)
preds = Dense(10, activation='softmax')(x)
# TODO: Construct model = Model(input=inputs, output=preds)

loss = tf.reduce_mean(categorical_crossentropy(labels, preds))

# TODO: handle TFRecord data, is it the same?
mnist_data = input_data.read_data_sets('MNIST_data', one_hot=True)

train_step = tf.train.GradientDescentOptimizer(0.5).minimize(loss)

sess.run(tf.global_variables_initializer())

# TODO remove default, add queuerunner
with sess.as_default():
    for i in range(1000):
        batch = mnist_data.train.next_batch(50)
        train_step.run(feed_dict={img: batch[0],
                                  labels: batch[1]})
    print(loss.eval(feed_dict={img:    mnist_data.test.images, 
                               labels: mnist_data.test.labels}))

Pourquoi cette question est-elle pertinente?

Voici quelques démarreur pour une sémantique problème de segmentation exemple:

InformationsquelleAutor Andrew Hundt | 2017-02-12