СубботаЛагос: итоги третьей недели
Вот краткое изложение того, что мы узнали на третьей неделе.
Повестка дня
Fast.ai, урок 2
Мы практически посетили Урок 2 Fast.ai. Джереми Ховард резюмировал лекцию на прошлой неделе, после чего рассказал о том, как выбирать скорость обучения, объяснил, что такое скорость обучения и почему она имеет решающее значение для того, насколько точной будет ваша модель. Некоторые ключевые концепции включают косинусный отжиг, отжиг с разной скоростью обучения, увеличение данных, увеличение времени тестирования и стохастический градиентный спуск с перезапусками.
По словам Джереми Ховарда, это простые шаги по обучению классификатора изображений мирового класса с использованием фреймворка fast.ai.
- Включить увеличение данных, установить
precompute=True
- Используйте поисковик скорости обучения
lr_find()
, чтобы найти наивысшую скорость обучения, при которой потери явно уменьшаются. - Обучите последний слой из предварительно рассчитанных активаций за 1–2 эпохи.
- Обучите последний слой с увеличением данных
i.e precompute=False
на 2–3 эпохи сcycle_len=1
- Разморозить все слои
- Установите более ранние слои в 3-10 раз меньшую скорость обучения, чем следующий более высокий уровень
- Используйте
lr_find()
снова - Обучите всю сеть с
cycle_mult=2
до переоборудования
Лекция 2 - Функции потерь и оптимизация
Джастин Джонсон сделал краткий обзор лекции на прошлой неделе о линейных классификаторах, где он объяснил, как для каждого пикселя во входном изображении есть некоторый вес матрицы W, говорящий нам, насколько пиксель влияет на помеченный класс. Он рассказал о том, как определить матрицу W, которую мы можем применить к нашим входным данным, чтобы получить приблизительно нулевые потери. Он объяснил две разные функции потерь Multi-class SVM loss
и cross-entropy Softmax loss
.
Далее он объяснил, почему этих функций недостаточно, чтобы определить, насколько точна наша модель, потому что они, как правило, обобщаются только на обучающем наборе данных, что приводит к плохой работе на тестовых наборах. Здесь на помощь приходит термин regularization
.
Ключевыми концепциями вывода являются SVM loss,
Softmax loss,
L2 Regularization
и Stochastic Gradient Descents.
. Он завершил класс обсуждением того, что такое извлечение признаков, почему его следует рассматривать и популярные методы для его выполнения.
Обсуждение лекций 2 по STAT385 - Гармонический анализ CNN
Класс начался с того, что мы посмотрели видео интервью с профессором Гельмутом Булчкей, где он рассказал о том, почему так важно понимать теоретические аспекты глубокого обучения и лежащую в его основе математику.
Азиз Олувафеми возглавил дискуссионную часть этой сессии, где он кратко ознакомился с документами по гармоническому анализу CNN. Он объяснил выводы из статей, которые имеют отношение к трансляционной инвариантности. Он говорил о том, что хороший CNN должен быть трансляционно инвариантным (это означает, что вы можете распознать объект как объект, даже если его внешний вид изменяется каким-то образом). Он объяснил, что эта трансляционная инвариантность может быть достигнута за счет уровня объединения, который помогает нам уменьшить размерность нашего входного слоя, что, в свою очередь, снижает вычислительную мощность. Он сделал побочное замечание о том, что обсуждаемая трансляционная инвариантность является вертикальной и что ранние слои CNN все еще очень ковариантны. Инвариантность увеличивается с увеличением глубины сети.
Мы завершили это занятие, сгруппировав класс для проектов - по 10 на группу.
AISaturdayLagos не состоялся бы без моего коллеги-посла Азиза Олувафеми, наших партнеров FB Dev Circle Lagos, Vesper.ng и Intel.
Большое спасибо Nurture.AI за эту прекрасную возможность.
Также читайте, как AI Saturday объединяет мир с AI
Увидимся на следующей неделе 😎.
Смотрите наши фотографии здесь и подписывайтесь на нас в твиттере :)
Ссылки на ресурсы
Дружественное введение в сверточные нейронные сети и распознавание изображений