TensorFlow: Como definir o declínio da taxa de aprendizado com base em épocas?
A função de redução da taxa de aprendizadotf.train.exponential_decay
Leva umdecay_steps
parâmetro. Para diminuir a taxa de aprendizado a cadanum_epochs
, você definiriadecay_steps = num_epochs * num_train_examples / batch_size
. No entanto, ao ler dados de.tfrecords
arquivos, você não sabe quantos exemplos de treinamento existem dentro deles.
Para obternum_train_examples
, você poderia:
tf.string_input_producer
comnum_epochs=1
.Execute issotf.TFRecordReader
/tf.parse_single_example
.Faça um loop e conte quantas vezes ele produz alguma saída antes de parar.No entanto, isso não é muito elegante.
Existe uma maneira mais fácil de obter o número de exemplos de treinamento de um.tfrecords
arquivar ou definir o declínio da taxa de aprendizado com base em épocas, em vez de etapas?