Полный кодовый адрес находится в конце статьи.
Классификация изображений с помощью сверточных нейронных сетей
Распознавание изображений с помощью CNN, в настоящее время CNN можно назвать лучшим методом, новая капсульная сеть может быть подорвана, поэтому все знания будут развиваться.
Первая миссия: Собаки против Кошек
данные показывают:
25 000 обучающих выборок
12 500 тестовых образцов
первая модель
Наша первая модель использует resnet34, победитель конкурса ImageNet 2015 года, детали модели resnet models
Анализ результатов
Проанализируйте результаты ниже
-
правильный
-
Неправильно
-
Самый правильный (наибольшая вероятность правильной классификации)
-
Худший (самая высокая вероятность неправильной классификации)
-
Самый неоднозначный (вероятность 0,5)
Как выбрать скорость обучения
Скорость обучения является очень важным параметром. Если скорость обучения слишком велика, она может колебаться. Если она слишком мала, сходимость будет слишком медленной. Поэтому нам нужен метод для выбора подходящей скорости обучения.
Метод выбора скорости обучения в fastai исходит из Cyclical Learning Rates for Training Neural Networks, Примечания к чтению статьи написаны в этом номере заголовка, Добро пожаловать на просмотр.
Улучшить модель
Улучшаем модель за счет аугментации данных, внося некоторые изменения в исходное изображение
Тонкая настройка и разные скорости обучения
Мы уже отладили последний слой выше, и теперь приступим к отладке других параметров слоя, frost_layer — это предыдущий сверточный слой
Краткое изложение шагов обучения
-
Чтобы начать увеличение данных, установите precompute=True
-
Используйте метод lr_find(), чтобы найти максимальную скорость обучения, при этом lr потери также могут быть значительно уменьшены.
-
Используйте предварительно обученную модель для обучения последнего слоя модели, около 1-2 эпох.
-
Используйте метод вариации lr для обучения последнего слоя, около 2-3 эпох.
-
Разблокировать все сверточные слои
-
Обучите сеть с дифференциальными скоростями обучения
-
снова используйте lr_find()
-
Установите cycle_mult=2, чтобы снова обучить всю сеть до переобучения.
Глубокое погружение в нашу первую модель
tfms — это аббревиатура преобразований, tfms_from_model может помочь нам масштабировать, обрезать и упорядочить изображение.
Это все для этого курса.
Полный адрес курса в Jupyter Notebook можно увидеть в исходном тексте.
Эта статья — второй урок курса фастая, добро пожаловать в продолжение.
Ваша поддержка является движущей силой для меня, чтобы продолжать писать, и я с нетерпением жду нашего общего прогресса.
Оригинальный адрес: https://www.zybuluo.com/zhuanxu/note/1046935