TensorFlow: Как установить затухание скорости обучения в зависимости от эпох?
Функция затухания скорости обученияtf.train.exponential_decay
занимаетdecay_steps
параметр. Чтобы уменьшить скорость обучения каждыйnum_epochs
, вы бы установитьdecay_steps = num_epochs * num_train_examples / batch_size
, Однако при чтении данных из.tfrecords
файлы, вы не знаете, сколько учебных примеров есть внутри них.
Получитьnum_train_examples
, вы могли бы:
tf.string_input_producer
сnum_epochs=1
.Запустите это черезtf.TFRecordReader
/tf.parse_single_example
.Зациклите и посчитайте, сколько раз он выдаст какой-нибудь вывод перед остановкой.Тем не менее, это не очень элегантно.
Есть ли более простой способ получить количество обучающих примеров из.tfrecords
файл или установить снижение скорости обучения на основе эпох, а не шагов?