Задать вопрос
@Nibani
Студент, изучаю выш. мат.

Как повысить macro f1 в задаче классификации изображения?

Я решаю задачи классификации одного из 6 видов животных по его следу, датасет состоит из 3000 обучающих фото и 300 валидационных фото. Я использую ResNet 18 с предобученными весами, нормировка по ImageNet оптимизатор Adam, lr = 1e-3, batch = 32, 20 эпох, а также использую кросс энтропию. Проблема в том, что на обучении уже на 10 эпохе я получаю точность на обучении 97%, а на валидации у меня точность и macro f1 держатся на уровне 77% и не поднимаются особо выше.
Вот голова модели:
model_ft = models.resnet18(weights='IMAGENET1K_V1')
num_ftrs = model_ft.fc.in_features
model_ft.fc = nn.Sequential(
    nn.Linear(num_ftrs, 256),
    nn.ReLU(),
    nn.Linear(256, num_classes)
)

Вот аугментации:
# train
transforms.RandomResizedCrop(224, scale=(0.7, 1.0)),
transforms.RandomHorizontalFlip(0.5),
transforms.RandomRotation(15),
transforms.ColorJitter(0.3, 0.3, 0.3, 0.1),
transforms.RandomAffine(degrees=0, translate=(0.1, 0.1), scale=(0.9, 1.1))

# val
transforms.Resize(256),
transforms.CenterCrop(224)

Я честно не особо понимаю что мне в данной ситуации делать, прошу каких-то советов!
  • Вопрос задан
  • 53 просмотра
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы