Я пытаюсь использовать Оценщики Тензора. В documentation следующий код используется для обучения и оценки сети.Что такое «партии» и «шаги» в оценках TensorFlow и как они отличаются от эпох?
# Fit
nn.fit(x=training_set.data, y=training_set.target, steps=5000)
# Score accuracy
ev = nn.evaluate(x=test_set.data, y=test_set.target, steps=1)
loss_score = ev["loss"]
print("Loss: %s" % loss_score)
Весь учебный комплект принят, но у нас есть steps=5000
. Означает ли это, что рассматриваются только первые 5000 примеров из набора?
Что означает параметр batch_size
в этом контексте и как он взаимодействует с steps
?
Спасибо!
Это полезная информация, спасибо! Последующие вопросы: я не понимал, что это сразу привело к множеству примеров обучения, как работают вычисления ошибок в этом случае? Все весовые изменения складываются и усредняются? Каждая партия состоит из случайных обучающих примеров из учебного набора? – Kieran
Да, они усреднены. Фактическая механика немного сложнее и осторожнее, но это немедленный эффект. Выбор образцов обучения - это параметры вашего входного слоя. То, что я думаю, что вы здесь думаете, совершенно правильно: вы хотите, чтобы в каждой партии было хорошее распространение меток, поэтому вы не начинаете обучение узкому участку классов на раннем этапе. Найдите ключевое слово ** random ** или ** shuffle **. Боюсь, я не помню сразу, поскольку я работаю в Caffe в течение нескольких месяцев. – Prune