В чем разница между Inception v2 и Inception v3?

18

В статье « Пройдя глубже с извилинами» описывается GoogleNet, в которой содержатся оригинальные начальные модули:

введите описание изображения здесь

Переход к началу v2 заключался в том, что они заменили свертки 5x5 на две последовательные свертки 3x3 и применили объединение:

введите описание изображения здесь

В чем разница между Inception v2 и Inception v3?

Мартин Тома
источник
Это просто пакетная нормализация? Или Inception v2 уже имеет пакетную нормализацию?
Мартин Тома,
github.com/SKKSaikia/CNN-GoogLeNet Этот репозиторий содержит все версии GoogLeNet и их различия. Попробуйте.
Амартья Ранджан Сайкия

Ответы:

22

В статье « Нормализация партии» , Сергей и др., 2015. Предложенная архитектура Inception-v1, которая является вариантом GoogleNet в статье « Идем глубже с извилинами» , и в то же время они представили «Пакетную нормализацию до начала» (BN-Inception).

Основное отличие сети, описанной в (Szegedy et al., 2014), состоит в том, что сверточные слои 5x5 заменяются двумя последовательными слоями сверток 3x3 с до 128 фильтрами.

А в статье « Переосмысление архитектуры Inception для компьютерного зрения» авторы предложили Inception-v2 и Inception-v3.

В Inception-v2 они ввели факторизацию (разложив свертки на более мелкие свертки) и некоторые незначительные изменения в Inception-v1.

Обратите внимание, что мы разделили традиционную свертку 7х7 на три свертки 3х3

Что касается Inception-v3 , это вариант Inception-v2, который добавляет BN-вспомогательный.

BN Вспомогательный относится к версии, в которой полностью связанный уровень вспомогательного классификатора также нормализован, а не только сверток. Мы ссылаемся на модель [Inception-v2 + BN вспомогательный] как Inception-v3.

daoliker
источник
3

помимо того, что было упомянуто daoliker

В начале версии 2 в качестве первого уровня глубины использовалась отделимая свертка.

цитата из бумаги

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

почему это важно? потому что он был удален в v3 и v4 и в начальной сети, но повторно введен и интенсивно используется в мобильной сети позже.

Муайяд Алсади
источник
1

Ответ можно найти в документе «Идти глубже с извилинами»: https://arxiv.org/pdf/1512.00567v3.pdf

Сверьтесь с таблицей 3. Inception v2 - это архитектура, описанная в статье «Переходя глубже» к статье «Свертки». Inception v3 - это та же архитектура (небольшие изменения) с другим алгоритмом обучения (RMSprop, регуляризатор сглаживания меток, добавление вспомогательной головки с пакетной нормой для улучшения обучения и т. Д.).

Сид М
источник
1

На самом деле, ответы выше кажутся неправильными. Действительно, это был большой беспорядок с именами. Однако, похоже, что это было исправлено в статье, которая представляет Inception-v4 (см .: «Inception-v4, Inception-ResNet и влияние остаточных связей на обучение»):

Глубокая сверточная архитектура Inception была представлена ​​как GoogLeNet в (Szegedy et al. 2015a), здесь она называется Inception-v1. Позднее архитектура Inception была усовершенствована различными способами, сначала путем введения нормализации партии (Ioffe and Szegedy 2015) (Inception-v2). Позже, с помощью дополнительных идей факторизации в третьей итерации (Szegedy et al. 2015b), которая в этом отчете будет именоваться Inception-v3.

деша
источник