www.machinelearningmastery.ru

Машинное обучение, нейронные сети, искусственный интеллект
Header decor

Home

Обзор: Xception - с глубокой отделимой сверткой, лучше, чем Inception-v3 (классификация изображений)

Дата публикации Sep 25, 2018

В этой историиXception [1] от Google, расшифровывается как Extreme версия Inception, рассматривается. С измененнымотделимая по глубине свертка, этодаже лучше, чем Inception-v3[2] (также от Google, занял 1-е место в ILSVRC 2015) для наборов данных ImageNet ILSVRC и JFT. Хотя этоCVPR 2017только что опубликованная в прошлом году300 цитаткогда я писал эту историю. (Сик-Хо Цанг@ Средний)


Что покрыто

  1. Первоначальная Глубинная Отделимая Свертка
  2. Модифицированная глубинно отделимая свертка в Xception
  3. Общая архитектура
  4. Сравнение с современными результатами

1. Оригинальная глубинно отделимая свертка

Первоначальная Глубинная Отделимая Свертка

Исходная отделимая по глубине сверткаглубокая свертка с последующей точечной сверткой,

  1. Глубокая сверткаэтопо каналу n × n пространственная свертка, Предположим, что на рисунке выше, у нас есть 5 каналов, тогда у нас будет 5 n × n пространственной свертки.
  2. Поточечная сверткана самом деле это1 × 1 сверткаизменить размер.

По сравнению с обычной сверткой нам не нужно выполнять свертку по всем каналам. Это означаетколичество соединений меньше, а модель легче.


2. Модифицированная глубинно отделимая свертка в Xception

Модифицированная Глубинно-Сепарабельная Свертка, используемая в Xception в качестве начального модуля, так называемая «экстремальная» версия начального модуля (здесь n = 3)

Модифицированная глубинно отделимая сверткаточечная свертка с последующей глубокой сверткой, Эта модификация мотивируется начальным модулем в Inception-v3 тем, что свертка 1 × 1 выполняется первой перед любыми n × n пространственными свертками. Таким образом, он немного отличается от оригинала. (п = 3здесь, поскольку 3 × 3 пространственные свертки используются в Inception-v3.)

Два небольших отличия:

  1. Порядок действийКак было упомянуто, исходные отделимые по глубине свертки, как обычно реализуются (например, в TensorFlow), выполняют первую пространственную свертку по каналам, а затем выполняют свертку 1 × 1, тогда как измененная отделимая по глубине сверткасначала выполнить свертку 1 × 1, затем пространственную свертку по каналам, Утверждается, что это неважно, потому что когда он используется в стековой настройке, в начале и в конце всех цепочек начальных модулей появляются только небольшие различия.
  2. Присутствие / Отсутствие НелинейностиВ исходном модуле начального уровня после первой операции возникает нелинейность.В Xceptionмодифицированная глубинно отделимая свертка,нет НИКАКОЙ промежуточной РЛЭ нелинейности,
Модифицированная глубинно отделимая свертка с различными единицами активации

Модифицированная глубинно отделимая свертка с различными единицами активации проверяется. Как видно из приведенного выше рисунка,Xception без какой-либо промежуточной активации имеет высочайшую точностьпо сравнению с теми, которые используют либо ELU или ReLU.


3. Общая архитектура

Общая архитектура Xception (входной поток> средний поток> выходной поток)

Как на рисунке выше,SeparableConvмодифицированная глубинно отделимая свертка. Мы можем видеть, что SeparableConvs являютсярассматривается как начальные модулии размещены по всей архитектуре глубокого обучения.

И здесьостаточные (или ярлык / пропустить) соединения, первоначально предложенный ResNet [3], размещен для всех потоков.

ImageNet: Точность валидации по градиентному спуску

Как видно из архитектуры, существуют остаточные связи. Здесь он проверяет Xception, используя неостаточную версию. Из приведенного выше рисунка видно, что точность значительно выше при использовании остаточных соединений.Таким образом, остаточная связь чрезвычайно важна !!!


4. Сравнение с современными результатами

2 набора данных проверены. Одним из них является ILSVRC. Одним из них является JFT.

4.1. ImageNet - ILSVRC

ImageNet - это набор данных, содержащий более 15 миллионов изображений с высоким разрешением и около 22 000 категорий.

ILSVRC использует подмножество ImageNet из около 1000 изображений в каждой из 1000 категорий. Всего около 1,3 миллиона обучающих изображений, 50 000 проверочных изображений и 100 000 тестовых изображений.

ImageNet: Xception обладает высочайшей точностью

Xception превосходит VGGNet [4], ResNet [3] и Inception-v3 [2] (Если интересно, пожалуйста, посетите мои отзывы о них, объявления снова, LOL)

Отмечено, что с точки зрения частоты ошибок, а не точности, относительное улучшение не мало !!!

ImageNet: Точность валидации по градиентному спуску

Конечно, из приведенного выше рисунка Xception имеет лучшую точность по сравнению с Inception-v3 по шагам градиентного спуска.

Но если мы будем использовать неостаточную версию для сравнения с Inception-v3, Xception уступает Inception-v3. Должно ли быть лучше иметь остаточную версию Inception-v3 для честного сравнения? В любом случае, Xception сообщает нам, что как с помощью Depthwise Separable Convolution, так и с остаточными соединениями это действительно помогает повысить точность.

Размер модели / сложность

Утверждается, что Xception имеет аналогичный размер модели с Inception-v3.


4.2. JFT - FastEval14k

JFT - это внутренний набор данных Google для набора данных классификации крупномасштабных изображений, впервые представленный профессором Хинтономи другие., который включает в себя более 350 миллионов изображений с высоким разрешением, снабженных ярлыками из набора 17 000 классов.

Используется вспомогательный набор данных FastEval14k. FastEval14k - это набор данных из 14 000 изображений с плотными аннотациями около 6000 классов (в среднем 36,5 меток на изображение).

Поскольку на одном изображении плотно отображаются несколько объектов, для измерения используется прогноз средней точности (mAP).

FastEval14k: Xception имеет наивысшую mAP @ 100
FastEval14k: точность проверки по шагам градиентного спуска

Опять же, у Xception более высокое значение mAP по сравнению с Inception-v3.


Ссылки

  1. [2017 CVPR] [Xception]
    Xception: глубокое обучение с глубинно отделимыми извилинами
  2. [2016 CVPR] [Inception-v3]
    Переосмысление начальной архитектуры для компьютерного зрения
  3. [2016 CVPR] [ResNet]
    Глубокое остаточное обучение для распознавания изображений
  4. [2015 ICLR] [VGGNet]
    Очень глубокие сверточные сети для крупномасштабного распознавания изображений

Мои обзоры

  1. Обзор: Inception-v3–1, занявший второе место (классификация изображений) в ILSVRC 2015
  2. Обзор: ResNet - победитель ILSVRC 2015 (классификация изображений, локализация, обнаружение)
  3. Обзор: VGGNet - 1-е место (классификация изображений), победитель (локализация) в ILSVRC 2014

Оригинальная статья

Footer decor

© www.machinelearningmastery.ru | Ссылки на оригиналы и авторов сохранены. | map