2.6 KiB
2.6 KiB
Fine-tuning предобученной CNN
Теория перед выполнением
Прочитайте transfer learning и выбор архитектуры под ограничения.
Цель
Дообучить ResNet/EfficientNet на небольшом датасете кошек и собак и измерить, что именно даёт предобучение.
Что сделать
- Сформулировать ожидаемый результат до запуска эксперимента.
- Обучить простую CNN как baseline.
- Сравнить одну архитектуру со случайными и предобученными весами.
- Для предобученной модели сравнить frozen backbone, partial и full fine-tuning.
- Сравнить маленькую и более глубокую архитектуру при одинаковом протоколе.
- Зафиксировать accuracy/F1, время, память, число параметров и примеры ошибок.
- Заполнить отчёт по
common/REPORT_TEMPLATE.md.
Результат
Таблица экспериментов и объяснение, почему выбранная модель оптимальна при заданном объёме данных и вычислительном бюджете.
Решение разместите рядом в solution/. Не коммитьте большие данные,
веса или секреты.
Критерии приёмки
- Явно показана разница случайных и ImageNet-весов; learning rate различается для head/backbone; test-set не участвует в выборе архитектуры.
- Код читаем, разбит на функции и запускается по инструкции.
- Выводы подтверждаются измерениями и не выходят за пределы эксперимента.
Вопросы для самопроверки
- Почему выбран именно этот метод и какой baseline он должен превзойти?
- Где здесь возможна утечка данных или некорректная оценка?
- Как изменится результат при других данных или ограничениях?
- Какую ошибку модели вы считаете наиболее важной и почему?