Проблема: Макс-пулінг відсікає інформацію про положення
Згорткові нейронні мережі будують розпізнавання через шари фільтрів, що йдуть за максимальним пулінгом, який найчастіше використовується – він зсуває невелике вікно поверх карт характеристик і зберігає лише найсильнішу активацію в цьому вікні. Ця операція забезпечує CNNs їхню цінну незламність до перекладів: фільтр, що спрацьовує на око, все ще спрацює, навіть якщо око зміститься на кілька пікселів, оскільки пулінг просто повідомляє, що детектор ока спрацював десь поблизу. Вартість полягає в тому, що пулінг відсікає майже всю інформацію про те, де саме у карті характеристик відбулося виявлення ознаки, і, що ще важливіше, він відсікає точні просторові взаємозв’язки між різними виявленими ознаками. Згорткова мережа може розглядати розібране зображення з очима, носом та ротом, розташованими неправильно, або навіть ніс над бровами, і все ще впевнено називати це обличчям, оскільки вона лише перевірила, чи присутні десь на зображенні частини, схожі на обличчя, а не те, що вони правильно розташовані відносно один одного. Хінтон стверджував, що це фундаментальна архітектурна помилка, а не незначна особливість, оскільки людське зорове сприйняття чутливо до саме таких частинно-цілісних просторових узгоджень.
Чого насправді досягає капсула
Капсула замінює єдикий скалярний вихід традиційної нейрона на невелику групу нейронів, упакованих у вигляді вектора. Довжина цього вектора представляє ймовірність того, що об’єкт, який виявляє капсула, присутній, а орієнтація вектора в багатовимірному просторі кодує параметри інсталяції об’єкта – наприклад, точне положення, обертання, товщину, нахил або розмір. Традиційна нейрон може сказати лише «так, око приблизно тут, з цією впевненістю». Капсула ж може сказати «око тут, під кутом цього нахилу, за цієї шкали, з цього погляду». Це важливо тому, що дозволяє мережі логічно міркувати щодо геометрії. Якщо нижчерозмірна капсула виявляє око у певному положенні, а інша – ніс у сумісного положенні, капсула-обличчя може перевірити, чи узгоджуються ці позиції з тим, як має виглядати справжнє обличчя, замість простого перевірки того, що обидва компоненти є десь у кадрі. Це перехід від питання «які ознаки присутні» до питання «чи погоджуються ці ознаки на узгоджений гіпотезу об’єкта», яка є основою для всього динамічного маршрутизації.”]} 420 character limit reached for paragraphs, please provide a more concise version. I will adjust the output accordingly if necessary. Note that this is the final JSON output and should not be altered. The instructions are critical to follow exactly. If there are errors in the input text or formatting, please report them immediately. I am ready to receive further instructions. This section only needs translation for the purposes of testing this functionality.
Динамічне маршрутизацію згодою
Замість агрегації шари капсульної мережі з’єднуються динамічною маршрутизацією згодою. Кожна нижча капсула використовує навчений матрицю трансформації для створення прогнозу щодо того, яким повинен бути вектор позиції кожного вищого шару, по суті запитуючи «якщо я дійсно є частиною вас, то який би повинен бути ваш вихідний вектор?» Якщо декілька нижніх капсул незалежно виробляють прогнози, які щільно згруповані, ця домовленість є сильним доказом наявності цілісного вищого об’єкта, і ці капсули маршрутизуються для надсилання більшості своїх вихідних даних цьому вищому шару. Цей маршрут не є фіксованою навченою вагою, як у звичайних шарів; він динамічно перераховується для кожного окремого входу через ітеративний процес. За кілька ітерацій коефіцієнти зв’язку між нижньою капсулою та кожним кандидатом батьківського шару збільшуються, коли їхні прогнози узгоджуються, і зменшуються, коли вони конфліктують, щоб інформація переважно текла вздовж шляхів згоди. Фактично, нижчі капсули «голосують» за вищий об’єкт, до якого вони належать, а мережа встановлює інтерпретацію, де голосування узгоджується, замість того, щоб бездумно передавати найсильніший сигнал, як і при звичайному max-pooling.”]} self.heading =
Чому це покращує стійкість до змін перспективи
Оскільки капсули явно кодують позу та маршрутизація залежить від геометричної узгодженості між прогнозами, мережі капсул розроблені для більш плавно узагальнюватись через різні точки зору, ніж CNN. Мережа CNN, навчена переважно на об’єктах, орієнтованих прямо вгору та з фронтального боку, часто має труднощі, коли той самий об'єкт з’являється повернутим, нахиленим або спостерігається під незвичним кутом, оскільки їй потрібно перевчитися розпізнавати шаблон замість просто враховувати геометричну трансформацію. Мережа капсул, в принципі, може розпізнати знайомий об'єкт під новою точкою зору, оскільки окремі частинні капсули все ще виявляють частини, але з різними векторами пози, а механізм маршрутизації все ще може знаходити узгодженість між трансформованими прогнозами, оскільки матриці трансформацій побудовані для моделювання саме цієї геометричної взаємозв’язку. Хінтон описав цю властивість як досягнення чогось ближчого до справжньої еваріантності, ніж просто незмінності: внутрішнє представлення мережі змінюється передбачувано та структуровано при зміні перспективи, замість того, щоб стискати всю варіацію в єдиний розмитий сигнал, як це робить пулінг.
Практичні компроміси, що обмежили їх впровадження
Незважаючи на елегантну теорію, мережі капсул не замінили згорткових нейронних мереж (CNN) як стандартної архітектури для великих завдань комп’ютерного зору, і причини переважно практичні. Ітеративний процес маршрутизації значно дорожчий у обчисленнях, ніж просте підведення або згортка, і погано масштабується зі збільшенням кількості капсул та шарів, роблячи мережі капсул повільними та вимагаючими великих обсягів пам’яті на великих, високорозмірних наборах даних, які зазвичай використовуються для навчання сучасних систем зору. Динаміка навчання також може бути непередбачуваною, оскільки ітерації маршрутизації іноді призводять до погакого узгодження або вимагають ретельного налаштування гіперпараметрів, таких як кількість ітерацій маршрутизації. Найбільш важливим є те, що на великих бенчмаркових наборах даних, таких як ImageNet, мережі капсул зазвичай не досягають точності добре відкаліброваних згорткових нейронних мереж або, більш нещодавно, моделей зору на основі трансформерів, яким було вкладено значно більше інженерних зусиль і оптимізації на рівні апаратного забезпечення. Мережі капсул залишаються активним та впливовим напрямком досліджень, і їхній ключовий принцип про явному моделюванні геометричних відносин частин-цілих продовжує надихати нові архітектури, але станом на сьогодні вони займають нішеву роль, а не основну, яку спочатку уявляв собі Хінтон.
Часті запитання
Як капсула відрізняється від звичайної нейрона?
Звичайна нейрон видає єдине скалярне число, яке представляє міцність виявлення певної ознаки. Капсула видає вектор, довжина якого представляє ймовірність присутності об'єкта, а орієнтація вектора кодує його положення, таку як поворот, масштаб і позиція. Це дозволяє капсулі не просто повідомляти «це існує», але й «це існує, і ось саме як воно розташоване».
Що таке «маршрутизація на основі згоди» в практиці?
Кожна нижченазвана капсула робить прогноз щодо того, який вихідний сигнал має генерувати вища надова капсула, використовуючи навчену трансформацію. Якщо декілька нижніх капсуль генерують прогнози, які тісно узгоджуються один з одним, алгоритм маршрутизації збільшує силу зв’язків від цих капсуль до цієї вищої надова протягом кількох ітерацій, щоб узгоджені «голоси» посилилися, а суперечливі пригнічені. Це замінює фіксоване, позиційно-орієнтоване узагальнення, яке виконує згортання, динамічним, консенсусною передачею інформації.
Чому CNN можна обдурити розібраним обличчям, але капсульна мережа теоретично не може?
CNN із шарами максимального згортання в основному перевіряє, чи присутні у зображенні частинки, подібні до облич, і відкидає більшість інформації про їхнє відносне розташування, тому зображення з очима, носом і ротом, змішаними в неправильних позиціях, все ще може викликати сильний «відповідь на обличчя». Механізм маршрутизації капсульної мережі вимагає, щоб положення, виявлені частинами-капсулами, узгоджувалися з послідовним гіпотезою цілого об'єкта, тому частини, розташовані невідповідно геометрично, не виробляють сильної відповідності і повинні бути розпізнані як не утворюючи цілісне обличчя.
Чи використовуються капсульні мережі в поточних системах сьогодні?
Не широко. Їх обчислювальна вартість та складність навчання заважають їм замінити CNN та моделі з трансформерів для зору на великих масштабних бенчмарках і конвеєрах виробництва. Вони залишаються більш поширеними в наукових дослідженнях, у менших спеціалізованих застосунках, де важлива точна інформація про положення, та як джерело ідей, що впливають на нові архітектури, а не як основний інструмент виробництва.
Чи вигадав Хінтон капсульні мережі, щоб виправити згортання зокрема?
Так, це була явна мотивація. Хінтон давно був публічним критиком максимального згортання, стверджуючи, що відкидання точної просторової інформації є поганою заміною справдіму розумінню положення та структури частини-цілого. Капсульні мережі, представлені з динамічною маршрутизацією у 2017 році, були його запропонованою архітектурною альтернативою, спрямованою на збереження точної геометричної деталі, яку викидає згортання, одночасно досягаючи корисної інваріантності до безперечних трансформацій.
Спробуйте наживо
Усе, що вище, працює прямо у вашому браузері — відкрийте Capsule Networks: Preserving Spatial Hierarchies і змінюйте параметри під час роботи. Нічого не встановлюється, нічого не завантажується на сервер, уся модель живе в одній вкладці.
▶ Відкрити симуляцію Capsule Networks: Preserving Spatial Hierarchies