37

Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

  • Upload
    yandex

  • View
    193

  • Download
    0

Embed Size (px)

DESCRIPTION

Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Citation preview

Page 1: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко
Page 2: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Поиск изображений с помощью нейросетей

Виктор Лемпицкий Артём Бабенко

Page 3: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Глубокие сети

Page 4: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Свёрточные нейросети – принцип работы

Операции (слои) в свёрточной сети: •  Свёртка с фильтрами •  Сокращение разрешения («пулинг») •  Нелинейное поэлементное преобразование •  Умножение на матрицу общего вида

Page 5: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Тренировка обратным распространением

[Лейбниц; Лопиталь 1696]

Операции: •  Свёртка с фильтрами •  Сокращение разрешения («пулинг») •  Нелинейное поэлементное преобразование •  Умножение на матрицу общего вида

Page 6: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

История свёрточных нейросетей

[LeCun et al. 1989]

?

[Krizhevsky et al. 2012]

Page 7: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

GPU

Page 8: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

(Очень) большие наборы изображений

ImageNet project: 14 миллионов изображений (21 000 классов)

[Deng et al ECCV 2010]

Page 9: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Текущие результаты [Russakovsky et al. 2014]

1000 классов по 1000 тренировочных примеров

точность классификации сравнимая с человеческой

Page 10: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Более сложные задачи

“Смещенные” тренировочные данные

1000 классов по 1000 тренировочных примеров

точность классификации сравнимая с человеческой

Поиск по образцу

Совместно с Ярославом Ганиным (Сколтех)

Совместно с Антоном Слесаревым (Яндекс), Александром Чигориным (Яндекс)

Page 11: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Адаптация «без учителя»

=?

«Исходный домен» (метки классов известны):

«Целевой домен» (метки классов неизвестны):

Page 12: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Адаптация в мозгу человека

«ханг-дарм»

Page 13: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Архитектура для адаптации

Одна сеть, две задачи

Page 14: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Архитектура для адаптации

•  Не меняет признаки при прямом распространении

•  Умножает градиент на –λ  при обратном распространении

Page 15: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Архитектура для адаптации

•  «Хорошие» признаки для классификации в исходном домене

•  «Плохие» признаки для различения двух доменов

Page 16: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Визуализация адаптации

Нелинейная проекция на плоскость:

Без адаптации С адаптацией

Page 17: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Численные результаты адаптации

Page 18: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Примеры

“House numbers” “Windows digits” No adapt Baseline Deep adapt Upper bound

“House numbers” “Handwritten digits”

No adapt Baseline Deep adapt Upper bound

Page 19: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Более сложные задачи 1000 классов по 1000 тренировочных примеров

точность классификации сравнимая с человеческой

Смещенные тренировочные данные

Совместно с Ярославом Ганиным (Сколтех)

Поиск по образцу

Совместно с Антоном Слесаревым (Яндекс), Александром Чигориным (Яндекс)

Page 20: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Дескрипторы для визуального поиска

Rd

База изображений

Найти самые близкие векторы

Результаты поиска

Запрос

Page 21: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Дескрипторы из нейросетей? ›  Текущие методы поиска по изображениям

основаны на дескрипторах, сформированных вручную

›  В задаче классификации наилучшее качество достигается с использованием дескрипторов, обученных нейросетью

›  Цель исследования – оценить, насколько хорошо нейронные дескрипторы справляются с задачей визуального поиска

Page 22: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Извлечение нейронных дескрипторов

Зеленый слой – свертка или умножение на матрицу Синий слой – нелинейное преобразование (ReLU) Красный слой – макс-пулинг

Нормализованные векторы активаций нейронов последних уровней L5(I), L6(I), L7(I) являются нейронными дескрипторами изображения I

Page 23: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Коллекции для сравнения методов поиска ›  Holidays – база из 1491

изображения, из них 500 запросов, для каждого 2-3 правильных ответа

›  Oxford – база из 5062 изображений, из них 55 запросов, для каждого несколько правильных ответов

›  Oxford105K = Oxford + 100.000 случайных изображений

›  Правильными ответами являются только изображения, содержащие тот же объект, что и изображение-запрос

Page 24: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Наивное применение нейродескрипторов Дескриптор Размерность Oxford Oxford105K Holidays

Fisher + color 4096 - - 0.774

VLAD+adapt+innorm 32768 0.555 - 0.646

Sparse-coded features 11024 - - 0.767

Triangulation embedding 8064 0.676 0.611 0.771

Нейродескрипторы

Слой 5 9216 0.389 - 0.670

Слой 6 4096 0.435 0.392 0.729

Слой 7 4096 0.430 - 0.716

Page 25: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Наивное применение нейродескрипторов Дескриптор Размерность Oxford Oxford105K Holidays

Fisher + color 4096 - - 0.774

VLAD+adapt+innorm 32768 0.555 - 0.646

Sparse-coded features 11024 - - 0.767

Triangulation embedding 8064 0.676 0.611 0.771

Нейродескрипторы

Слой 5 9216 0.389 - 0.670

Слой 6 4096 0.435 0.392 0.729

Слой 7 4096 0.430 - 0.716

Слой 6 работает в среднем лучше остальных Качество неплохое, но существенно ниже, чем у передовых существующих методов

Page 26: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Слой 5

Слой 6

Слой 7

Запрос Выдача

Важны мелкие текстурные детали …

Page 27: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Важна семантика

Слой 5

Слой 6

Слой 7

Запрос Выдача

Page 28: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Классификация vs Поиск объектов

Сеть для классификации инвариантна к внутриклассовой изменчивости, а для поиска необходима инвариантность к ракурсу, геометрическим преобразованиям

Page 29: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Класс «Leeds Castle»

Page 30: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Класс «Kiev Pechersk Lavra»

Page 31: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Результаты после адаптации дескрипторов Дескриптор Размерность Oxford Oxford105K Holidays

Fisher + color 4096 - - 0.774

VLAD+adapt+innorm 32768 0.555 - 0.646

Sparse-coded features 11024 - - 0.767

Triangulation embedding 8064 0.676 0.611 0.771

Нейродескрипторы

Слой 5 9216 0.389 - 0.670

Слой 6 4096 0.435 0.392 0.729

Слой 7 4096 0.430 - 0.716

Page 32: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Дескриптор Размерность Oxford Oxford105K Holidays

Fisher + color 4096 - - 0.774

VLAD+adapt+innorm 32768 0.555 - 0.646

Sparse-coded features 11024 - - 0.767

Triangulation embedding 8064 0.676 0.611 0.771

Нейродескрипторы Слой 5 9216 0.389 - 0.670 Слой 6 4096 0.435 0.392 0.729 Слой 7 4096 0.430 - 0.716

Нейродескрипторы c адаптацией Слой 5 9216 0.387 – 0.654 Слой 6 4096 0.545 0.512 0.775 Слой 7 4096 0.538 – 0.744

Результаты после адаптации дескрипторов

+11%

+11%

+11%

+5%

+3%

Page 33: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Поиск до и после адаптации Запрос Выдача

Адаптированная сеть инвариантна к изменению ракурса

Page 34: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Поиск до и после адаптации

Адаптированная сеть инвариантна к масштабу

Запрос Выдача

Page 35: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Сжатие нейродескрипторов PCA Размерность 16 32 64 128 256 512 Без сжатия

Oxford

Слой 6 0.328 0.390 0.421 0.433 0.435 0.435 0.435 Слой 6 + адаптация 0.418 0.515 0.546 0.547 0.547 0.547 0.545

Oxford105K

Слой 6 0.260 0.330 0.370 0.388 0.392 0.392 0.392 Слой 6 + адаптация 0.354 0.467 0.508 0.523 0.523 0.522 0.512

Holidays

Слой 6 0.571 0.663 0.709 0.727 0.729 0.729 0.729 Слой 6 + адаптация 0.589 0.709 0.757 0.769 0.769 0.769 0.775

Потери в качестве из-за сжатия крайне малы

Page 36: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Сравнение 128-мерных дескрипторов

Дескриптор Oxford Oxford105K Holidays Fisher+color - - 0.723

VLAD+adapt+innorm 0.448 0.374 0.625 Sparse-coded features - - 0.727

Triangulation embedding 0.433 0.353 0.617

Нейродескрипторы Слой 6 0.433 0.386 0.727

Нейродескрипторы с адаптацией

Слой 6 0.557 0.523 0.769

Page 37: Поиск похожих изображений при помощи нейросетей. Виктор Лемпицкий, Артем Бабенко

Заключение

›  Нейронные дескрипторы обеспечивают высокое качество для задачи поиска по изображениям

›  Нейронные дескрипторы практически не теряют в качестве при PCA-сжатии

VLAD Triang. Embedding

Neuro Neuro + Adaptation

mAP на Oxford

0,55 0,6

0,65 0,7

0,75 0,8

Fisher VLAD Triang. Embedding

Neuro Neuro + Adaptation

mAP на Holidays