Горячего блюда достаточно, чтобы забыть о временной неприятности.
чат
Теперь кажется, что каждый день нужно узнавать что-то новое, сегодня и завтра. Я думаю, что это очень плохо, обучение всему идет только на поверхности, и хороших результатов не будет. Я не очень понимаю, как решить эту проблему. Любой, у кого есть предложения, может оставить сообщение для обмена.
предисловие
SENet:
Paper: АР Вест V.org/ABS/1709.01…
Code: GitHub.com/Ху Цзе-Франк…
SKNet:
Paper: АР Вест V.org/ABS/1903.06…
Code: GitHub.com/IM plus/SK NE…
Серия статей SENet
- SENet
- cSENet (по существу то же самое, гиперпараметр r восходящей и нисходящей размерности равен 2 или 16), sSENet (механизм внимания вводится с пространственной точки зрения), csSENet (механизм внимания вводится как с канальной, так и с пространственной точки зрения)
- SKNet
Пространственная перспектива sSENet представляет механизм внимания, этот модуль SSE в этой статье за октябрь.Non-deep Networks«Используется, с 12-уровневой сетью, достигающей 80% в ImageNet (предложение модуля SSE без глубокой сети для создания модуля нового типа RepVGG-SSE), достигающего 96% в CIFAR10, CIFAR100 Достигнуто 81%.
SENet
SENet (сети сжатия и возбуждения)Это модель-чемпион конкурса классификации ImageNet 2017 года.
Идея SENet состоит в том, чтобы использовать глобальную информацию для улучшения полезной информации при подавлении бесполезной информации, то есть к разным каналам применяются разные методы взвешивания, так что полезные функции усиливаются, а бесполезные подавляются. Следующее изображение является основным кадром модуля сжатия и возбуждения. Карта признаков X, выводимая предыдущим слоем, ее размеры H', W', C' представляют длину, ширину и количество каналов соответственно, а затем после традиционной свертки будет получено U, а ее размеры равны H, В, С. Ниже приведена структура SE. Обходная ветвь добавляется в обычный процесс, а затем выполняется операция Squeeze для глобального пула U и сжатия его в скаляр. Затем выполните операцию возбуждения.Этот вывод умножается на начальное U, и, наконец, получается перевзвешенная карта признаков.
SENet интегрируется с Inception и ResNet
Блок SE интегрирован с другими архитектурами, первый — с Inception, а второй — с ResNet. Один из них — обычный начальный модуль, а другой — блок SE. Второй имеет карту признаков H✖️W✖️C, а затем выполняет Squeeze, глобальное усреднение (в статье есть эксперимент), изменяет H✖️W✖️C на 1✖️1✖️C, а затем проходит FC ( полное соединение) Уменьшение размера, используйте 1/r, чтобы уменьшить количество вычислений, и лучший эффект достигается за счет эксперимента с r = 16. После прохождения ReLU, затем FC и, наконец, сигмоида каждый канал получает вероятность от 0 до 1, которую можно умножить на исходную карту признаков, и, наконец, выводится взвешенная карта признаков. Этот ResNet интегрирован с блоком SE. Особой разницы от интеграции Inception нет, то есть больше остаточных соединений, а на остатке используется работа SE.
SKNet
Сеть селективного ядра «SKNet» для краткости, она и SENet предложены командой.
Идея SKNet состоит в том, чтобы использовать нелинейный метод интеграции информации для динамической настройки размера рецептивного поля, то есть найти наиболее подходящее рецептивное поле для адаптации к изображению в соответствии с фактическим содержанием. Его основной метод - это три шага Split-Fuse-Select.
Split-Fuse-Select
- Разделение: отдельные несколько притоков, каждый приток имеет фильтр/ядро разных размеров, чтобы получить разные размеры рецептивных полей;
- Предохранитель: интегрировать информацию о трибунале, а затем получить веса выбора;
- Выбрать: агрегировать карты объектов по весу выбора.
Это архитектура, приведенная в документе, которая очень проста.
Сначала X делится на два потока, а именно U1 и U2, затем интегрирует U1 и U2 для получения U, затем выполняет глобальное усреднение для U для получения S, выполняет операцию FC для S для получения Z, а затем выделяет две небольшие ветви. a и b, а затем выполните softmax между этими двумя небольшими ветвями, а затем вычислите его, что является приведенным выше расчетом, получите матрицу желтого и зеленого цветов, а затем используйте операцию сложения для слияния.
Как настроить размер рецептивного поля через размер изображения?
Во-первых, это процесс разделения. Две ветви имеют разные рецептивные поля. Если изображение относительно большое, будет выбран приток с большим рецептивным полем. Если изображение маленькое, будет выбран приток с маленьким рецептивным полем. , Существует также интеграция операций выбора, часть сверху, часть снизу, и их пропорции выбираются динамически.
Вот полная архитектура SKNet. M представляет собой количество ветвей, а G представляет собой количество групп. Вот три схемы сети. Можно видеть, что SENet напрямую добавляется к полносвязному слою после полной операции свертки (свертка 1×1 + свертка 3×3 + свертка 1×1). SKNet заменяет часть свертки 3*3 в ResNext. С точки зрения количества параметров, количество параметров SKNet примерно такое же, как у SENet, из-за разных позиций встраивания модулей. Объем вычислений также немного увеличился.
Вышеприведенная таблица представляет собой горизонтальное сравнение с другими сетями.Видно, что SKNet сравнивается с другими распространенными моделями, включая SENet. Видно, что SKNet достигает наилучших результатов.
Проанализировав влияние D и G на модель, можно увидеть, что в лучшем случае 3 раза по 3, D=2, G=32 и 5 раз по 5, D=1, G=64.
Тогда есть влияние различных комбинаций на модель.В документе делается вывод, что увеличение количества ветвей (M) снижает общую частоту ошибок.Лучше использовать SK, чем не использовать SK.После использования SK улучшение количество ветвей с точностью модели становится небольшим.
Затем также анализируются веса внимания, которые представляют собой два небольших притока, отделенных от Z. В работе делается вывод, что при увеличении размера объекта веса внимания также увеличиваются в пути 5✖️5 в целом, а значит, рецептивные поле увеличивается.
Приведенный выше рисунок представляет собой разницу средних весов внимания.
В работе делается вывод о том, что в ранних слоях объекты становятся крупнее и усиливается внимание. В более поздних слоях этого правила нет, а значит, СК более поздних слоев можно заменить другими единицами.
Суммировать
- SENet предлагает блок секвенирования и возбуждения, а SKNet предлагает выборочную свертку ядра.
- И SENet, и SKNet — это легкие модули, которые можно напрямую встраивать в сеть, например ResNet, Inception, ShuffleNet, для повышения точности.