Я пытаюсь понять роль/утилиту batch_size в факеле за пределами модельной обучения. У меня уже есть обученная модель, где batch_size была оптимизирована как гиперпараметр. Я хочу использовать модель, чтобы сделать прогнозы в новых данных. Я следую тот же формат реализации, который использовался для обучения для предварительной обработки моих данных. Но вместо того, чтобы использовать одну и ту же batch_size , которая была оптимизирована и зацикливалась на разных партиях, я использую batch_size , равный размеру набора данных (
в этом случае) и передал весь набор данных для прогнозирования один раз. DataLoader я имею в виду. Должен сказать, что заметил значительную скорость с таким подходом, переоценив данные.
Код: Выделить всё
def predict(self, X):
X_loader = DataLoader(
X,
batch_size=X.shape[0],
shuffle=False,
)
batch = next(iter(X_loader))
with torch.no_grad():
predictions = model(batch)
return predictions
Спасибо
edit
Мой вопрос: правильно ли использовать DataLoader для выполнения прогнозов, или я должен использовать значение Batch_Size, оптимизированное во время обучения? Другими словами, использование другой Batch_size в прогнозировании из того, что использовалось для обучения, может повлиять на результат?
Подробнее здесь:
https://stackoverflow.com/questions/797 ... prediction