2017-02-20 13 views
5

Не могли бы вы привести пример использования API оценщиков высокого уровня с заполнителями и подкормкой партии, как для основного использования:Tensorflow, кормление Estimator.fit (партия)

for step in xrange(max_steps): 
    batch_of_inputs,batch_of_targets= get_batch_from_disk(step)# e.g.batches are stored as list where step is and index of the list 
    feed_dict = {x:batch_of_inputs,y:batch_of_targets} 
    _, loss_value = sess.run([train_op, loss], 
         feed_dict=feed_dict) 

Как сделать то же самое с оценщиком API? Оценщик принимает batch_size, шаги, input_fuc или feed_fun как аргумент функции fit (см. Doc https://www.tensorflow.org/versions/master/api_docs/python/contrib.learn/estimators), но мне не ясно, как реализовать функцию, которая будет загружать данные в виде пакета из, например, диск?

ответ

0

Я не думаю, что оценки действительно предназначены для использования с заполнителями. Они используют концепцию input_fn, которая правильно описана here.

Если вы действительно должны использовать заполнитель можно использовать FeedFnHook:

def input_fn(): # empty input_fn, returns features and labels 
    return {}, {} 

feed_dict = {x:batch_of_inputs,y:batch_of_targets} 
def feed_fn(): # feed_fn with hardcoded feed_dict 
    return feed_dict 

hooks = [tf.train.FeedFnHook(feed_fn=feed_fn)] 
estimator.train(input_fn=input_fn, hooks=hooks, steps=1)