Що таке інваріантність перекладу в комп'ютерному зорі та конволюційній нейромережі?


38

У мене немає фону з комп’ютерним зором, але коли я читаю деякі статті та документи, пов'язані з обробкою зображень та конволюційними нейронними мережами, постійно стикаюся з терміном translation invariance, або translation invariant.
Або я читаю багато, що забезпечує згортання translation invariance? !! що це означає?
Я сам завжди перекладав це так, ніби це означає, що якщо ми змінимо зображення в будь-якій формі, фактична концепція зображення не зміниться.
Наприклад, якщо я обертаю зображення дерева, що дозволяє сказати, це знову дерево, незалежно від того, що я роблю до цієї картини.
І я сам вважаю таким чином всі операції, які можуть трапитися із зображенням і перетворити його таким чином (обрізати його, змінити розмір, сірувати, пофарбувати тощо). Я поняття не маю, чи це правда, тому я буду вдячний, якби хтось міг мені це пояснити.

Відповіді:


61

Ви на правильному шляху.

Інваріантність означає, що ви можете розпізнати об’єкт як об’єкт, навіть коли його поява певним чином змінюється . Це взагалі гарна річ, оскільки вона зберігає ідентичність об'єкта, категорію (тощо) через зміни специфіки візуального введення, як-от відносні позиції глядача / камери та об'єкта.

На зображенні нижче міститься багато переглядів однієї статуї. Ви (і добре навчені нейронні мережі) можете визнати, що один і той же об’єкт з'являється на кожному зображенні, навіть якщо фактичні значення пікселів зовсім інші.

Продемонстровано різні види інваріантності

Зауважимо, що переклад тут має специфічне значення у баченні, запозиченому з геометрії. Це не стосується будь-якого типу перетворення, на відміну від, скажімо, перекладу з французької на англійський або між форматами файлів. Натомість це означає, що кожна точка / піксель на зображенні була переміщена однаковою кількістю в тому ж напрямку. Крім того, ви можете вважати, що походження було зміщене на рівну кількість у зворотному напрямку. Наприклад, ми можемо генерувати 2-е і 3-е зображення в першому рядку з першого, переміщуючи кожен піксель на 50 або 100 пікселів праворуч.


Можна показати, що оператор згортки комутується стосовно перекладу. Якщо ви згортаєте f з г , не має значення, перекладете ви згорнутий вихід fг , або спочатку перекладете f або г , а потім згорніть їх. У Вікіпедії є трохи більше .

Один із підходів до перекладно-інваріантного розпізнавання об'єктів - це взяти "шаблон" об'єкта і перетворити його з кожним можливим розташуванням об'єкта на зображенні. Якщо ви отримаєте велику відповідь у місці, це говорить про те, що об’єкт, що нагадує шаблон, розташований у цьому місці. Такий підхід часто називають узгодженням шаблонів .


Інваріантність проти еквівалентності

Відповідь Santanu_Pattanayak ( тут ) вказує, що існує різниця між інваріантністю перекладу та еквівалентністю перекладу . Інваріантність перекладу означає, що система виробляє точно таку ж відповідь, незалежно від того, як зміщується її вхід. Наприклад, детектор обличчя може повідомити "ЗНАЙДЕННЯ ЛИЦІ" для всіх трьох зображень у верхньому рядку. Еквівалентність означає, що система однаково добре працює в різних позиціях, але її реакція зміщується з положенням цілі. Наприклад, теплова карта "face-iness" матиме подібні удари зліва, центру та справа, коли вона обробляє перший ряд зображень.

Це іноді є важливою відмінністю, але багато людей називають обидва явища "інваріантністю", тим більше, що перетворення еквівалентної відповіді в інваріантну зазвичай тривіально - просто ігнорування всієї інформації про положення).


2
Радий, що можу допомогти. Це один з моїх великих наукових інтересів, тому якщо є ще щось, що було б корисно, я побачу, що я можу зробити.
Метт Крауз

Не могли б ви пояснити, як інваріантність перекладу досягається за допомогою CNN? Активації згорткового шару в CNN не є інваріантними під час перекладів: вони рухаються, коли зображення рухається навколо (тобто переклади є еквівалентними, а не інваріантними). Ці активації зазвичай подаються в шар об'єднання, який також не є інваріантним для перекладів. І шар об'єднання може подаватися в повністю пов'язаний шар. Чи ваги у повністю пов'язаному шарі якимось чином змінюють трансаляцію, еквівалентну поведінці інваріантної трансляції?
макс

@max, Pooling збільшує інваріантність перекладу, особливо max-pooling (!), що повністю ігнорує просторову інформацію в межах об'єднання пулу. Див. Розділ 9 Deep Learning deepplearningbook.org/contents/convnets.html (починаючи з стор. 335). Ця ідея також популярна в нейронауці - модель HMAX (наприклад, тут: maxlab.neuro.georgetown.edu/docs/publications/nn99.pdf ) використовує комбінацію усереднення та об'єднання максимумів для створення перекладу (та інших видів ) інваріантність.
Метт Крауз

1
Ну правильно, об’єднання забезпечує інваріантність щодо невеликих перекладів (я думав про більші зрушення, але, мабуть, кожен наступний шар об’єднання може впоратися з прогресивно більшими зрушеннями). Але як щодо повністю згорткових мереж ? Що не об'єднує, що забезпечує (принаймні приблизну) інваріантність?
макс

1
@Fredom, це може бути кращим як нове запитання, але коротко кажучи - звуковий сигнал звучить однаково, навіть коли ви вчасно переміщуєте його вперед (наприклад, додавши купу мовчання на початку). Однак якщо переключити його на частотну область, це звучить інакше: не тільки зміщується спектр, але також спотворюються зв’язки між частотами (наприклад, гармоніками).
Метт Крауз

4

Я думаю, що існує деяка плутанина щодо того, що означає поступальна інваріантність. Згортання передбачає значення еквівалентності перекладу, якщо об’єкт на зображенні знаходиться в області A, а за допомогою згортки виявляється особливість на виході в області B, то така сама особливість буде виявлена, коли об'єкт із зображення переведений на A '. Позиція вихідної функції також буде переведена в нову область B 'на основі розміру ядра фільтра. Це називається трансляційною еквівалентністю, а не трансляційною інваріантністю.


2

Відповідь насправді хитріше, ніж здається спочатку. Як правило, поступальна інваріантність означає, що ви могли б розпізнати об'єкт незалежно від того, де він з’являється на кадрі.

На наступному малюнку у кадрах A і B ви б розпізнали слово "підкреслено", якщо ваше бачення підтримує інваріантність перекладу слів . введіть тут опис зображення

Я виділив термін слова, тому що якщо ваша інваріантність підтримується лише на літерах, то кадр C також буде дорівнює кадрам A і B: він має абсолютно однакові букви.

На практиці, якщо ви навчили свій CNN на літерах, то такі речі, як MAX POOL, допоможуть досягти інваріантності перекладу на букви, але не обов'язково можуть призвести до інваріантності перекладу на словах. Об’єднання витягує функцію (витягнуту відповідним шаром) без відношення до розташування інших функцій, тому вона втратить знання про відносне розташування літер D і T, а слова STRESSED та DESSERTS будуть виглядати однаково.

Сам термін, ймовірно, з фізики, де т раціональна симетрія означає, що рівняння залишаються однаковими незалежно від перекладу в просторі.


1

@Santanu

Хоча ваша відповідь частково правильна і призводить до плутанини. Це правда, що самі конволюційні шари або карти функцій виведення є еквівалентними перекладами. То, що роблять шари максимального об'єднання, - це надати певну інваріантність перекладу, як вказує @Matt.

Тобто, еквівалентність у картках функцій у поєднанні з функцією макс-пулу шару призводить до інваріації трансляції у вихідному шарі (softmax) мережі. Перший набір зображень вище все ще давав би передбачення під назвою "статуя", хоча воно було перекладено ліворуч або праворуч. Той факт, що передбачення залишається "статуєю" (тобто такою ж), незважаючи на переклад вхідних даних, означає, що мережа досягла певної інваріантності перекладу.


Я не такий впевнений, що об'єднання призводить до інваріантності перекладу.
Аксакал

Помірно це робить. Пам'ятайте, що оператор максимального об'єднання приймає максимальне значення пікселя як його вихід у заданому вікні. Це математично потребує певної інваріантності, оскільки просторове розташування максимальних значень пікселів не має значення (в межах деякого допуску).
mr e
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.