2016-12-15 2 views
32

В это tutorial code с сайта TensorFlow,Что означает global_step в Tensorflow?

  1. кто-то может помочь объяснить, что это значит global_step?

    Я нашел на веб-сайте Tensorflow, что глобальный шаг используется для подсчета шагов обучения, но я не совсем понимаю, что именно это означает.

  2. Кроме того, что означает число 0 при настройке global_step?

    def training(loss,learning_rate): 
        tf.summary.scalar('loss',loss) 
        optimizer = tf.train.GradientDescentOptimizer(learning_rate) 
    
        # Why 0 as the first parameter of the global_step tf.Variable? 
        global_step = tf.Variable(0, name='global_step',trainable=False) 
    
        train_op = optimizer.minimize(loss, global_step=global_step) 
    
        return train_op 
    

    Согласно Tensorflow док global_step: приращение на единицу после переменных были обновлены. Означает ли это, что после одного обновления global_step станет 1?

ответ

44

global_step обратитесь к количеству партий, просматриваемых графиком. Каждый раз, когда предоставляется пакет, весы обновляются в направлении, которое минимизирует потерю. global_step просто отслеживает количество партий, просмотренных до сих пор. Когда он передается в списке аргументов minimize(), переменная увеличивается на единицу. Посмотрите на optimizer.minimize().

Вы можете получить значение global_step, используя tf.train.global_step().

0 - это начальное значение глобального шага в этом контексте.

+0

Спасибо! В ссылке, которую вы указали, 'tf.train.global_step()', 'global_step_tensor' установлен на 10. Означает ли это, что 10 пакетов уже видны на графике? – GabrielChu

+4

@martianwars, я до сих пор не понимаю, что такое global_step. Это не цикл для партий, управляемых самой программой python, поэтому программа python может легко узнать, сколько пакетов было выполнено. Зачем беспокоить, чтобы тензорный поток поддерживал такой счетчик? – xwk

+1

оптимизаторы меняют свои константы на основе глобального шага @xwk – martianwars

0

global_stepVariable содержит общее количество шагов во время обучения по задачам (каждый шаг индекса будет выполняться только на одной задаче).

Временная шкала, созданная global_step, помогает нам понять, где мы находимся, грандиозная схема, из каждой задачи отдельно. Например, потери и точность могут быть нанесены на график global_step на Tensorboard.

Смежные вопросы