Перекрестная проверка K-Fold дает противоречивые результаты после первой складки в обучении модели PyTorchPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Перекрестная проверка K-Fold дает противоречивые результаты после первой складки в обучении модели PyTorch

Сообщение Anonymous »

Я тренирую модель глубокого обучения с помощью PyTorch для классификации на уровне патчей, где я объединяю прогнозы патчей для определения статуса заражения на уровне пациента. Я использую 10-кратную перекрестную проверку с GroupKFold, чтобы гарантировать, что все патчи от одного и того же пациента остаются в одном и том же разделе.
Первая проверка проходит гладко и дает приемлемые результаты. Однако последующие складки часто дают непоследовательные и плохие результаты, что позволяет предположить, что что-то пошло не так после первой итерации.

Код: Выделить всё

for fold, (train_idx, val_idx) in enumerate(kf):
model = CNN_FC_Classifier().to(device)
# create an optimizer object
optimizer = torch.optim.Adam(model.parameters(), lr=1e-4)
scheduler = optim.lr_scheduler.ReduceLROnPlateau(optimizer, mode='min', factor=0.5, patience=5) # Reset optimizer to make sure learning rate is reset for each fold
print(f"Fold {fold + 1}/{n_splits}")

train_subset = Subset(dataset, train_idx)
val_subset = Subset(dataset, val_idx)

# Create DataLoaders for train and validation sets
train_loader = DataLoader(train_subset, batch_size=32, shuffle=True, num_workers=2)
validation_loader = DataLoader(val_subset, batch_size=32, shuffle=False, num_workers=2)

epochs = 200
for epoch in range(epochs):

print(f"Epoch {epoch+1}/{epochs}")
loss_train = train(model, train_loader, optimizer, criterion, device, size = 256)
loss_val,_,_,_ = validate(model, validation_loader, criterion, device, size = 256)

scheduler.step(loss_val)
Это основная часть моей тренировки по складыванию. Если вам нужна дополнительная информация, дайте мне знать. Спасибо!!

Подробнее здесь: https://stackoverflow.com/questions/791 ... ld-in-pyto
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»