- Статья изначально взята из общедоступного аккаунта WeChat «Алхимия машинного обучения».
- Автор: брат алхимик
- Контактное лицо: WeChat cyx645016617
В этой статье в основном объясняются две неконтролируемые статьи, относительно новые и популярные в 2020 году:
- Название статьи: «Начните свою собственную латентную активность: новый подход к обучению с самостоятельным наблюдением»
- Ссылка на бумагу:АР Вест V.org/PDF/2006.07…
0 Обзор
BYOL — это Boostrap Your Own Latent, эта неконтролируемая структура очень элегантна и проста, и она работает. Он получил похвалу от многих людей.Последний с таким названием, по-моему, YOLO. Оба очень простые и красивые.
1 Математические символы
Эта структура имеет две сети: одна — онлайн-сеть, а другая — целевая сеть.
- онлайн-сеть: использоватьДля представления параметров онлайн-сети, в том числе, энкодера,projectorи предсказатель
- целевая сеть: использоватьдля представления параметров существуют такжеи, но без предиктора.
Мы обновим онлайн-сеть, а затем обновим целевую сеть со скользящим средним:
Теперь у нас есть набор данных изображения D, в котором мы делаем снимок., а потом делаем разные улучшения изображения на этом D и получаем два новых дистрибутиваи, а затем сделайте снимки из двух новых раздач, используяиотметка. То есть, если вы используетеипредставляет собой процесс улучшения изображения, тогда.
2 Функция потерь
теперь у нас есть, после энкодера получить, после проектора получить, После предиктора получить; Аналогично, то же верно и для целевой сети, но конечного предиктора нет, и окончательный результат равен.
МыиВыполнить l2-нормализацию означает убрать абсолютный размер этих двух неявных переменных, сохранив при этом их направленность, чтобы проложить путь для векторного скалярного произведения, которое будет выполнено позже.
На картинке выше, функция потерь не сложна, на самом деле она немного похожа на:
Выше мы получаем потерю, Затем нам нужно рассчитать симметричные потери, которые вычисляются путем помещения v и v' в целевую сеть и онлайн-сеть соответственно, и получения, а затем упомянутый в статье, минимизированный с помощью SGD
Следует отметить, что в этом процессе оптимизации обновляется только онлайн-сеть, а параметры целевой сети не меняются.Цель состоит в том, чтобы постепенно позволить онлайн-сети иметь производительность целевой сети.
Таким образом, весь процесс обучения этому BYOL можно свести к следующим двум строкам:
3 детали
3.1 Улучшение изображения
3.2 Структура
Кодер на картинке вышеЯ использую resnet50 и пост-активацию.Я впервые увидел пост-активацию здесь, и я пошел посмотреть и обнаружил, что это на самом деле первая свертка или первый слой активации.Если relu ставится после conv, это пост-активация, и если relu ставится перед conv, это предварительная активация.
После кодировщика изображение выводит 2048 признаков, а затем через MLP функции расширяются до 4096 признаков, и, наконец, выводятся 256 признаков,В модели SimCLR за MLP следуют уровень BN и уровень активации Relu, но в BYOP нет уровня BN.
3.3 Оптимизатор
Используется оптимизатор LARS, используется косинусная стратегия затухания скорости обучения, а обучение составляет 1000 эпох, включая 10 эпох прогрева. Скорость обучения установлена на 0,2.
Что касается параметров онлайн-обновления до цели,,
k is current training step and K is maximum training steps.
3.4 Финансовые ресурсы
Размер пакета — 4096, распределенных по 512 ядрам TPU v3, и обучение кодировщика занимает около 8 часов.
4 Оценка модели
Чтобы выполнить контролируемое обучение в ImageNet, сначала обучите кодировщик с помощью неконтролируемого, а затем используйте стандартный resnet50 для контролируемой тонкой настройки:
Предыдущие сверстники, контролируемое обучение здесь также предназначено для получения небольшой части набора данных в ImageNet для обучения, поэтому оно называется полуконтролируемым:
Влияние такого метода на другие наборы данных классификации:
Если вы считаете, что заметки хороши, вы можете подписаться на общедоступный аккаунт автора в WeChat «Алхимия машинного обучения».