Яка різниця між конволюційною нейронною мережею і звичайною нейронною мережею?


18

Я бачив ці терміни, кинуті навколо цього сайту, особливо в тегах і .

Я знаю, що Нейронна мережа - це система, заснована вільно на людському мозку. Але яка різниця між згортковою нейронною мережею і звичайною нейронною мережею? Є один тільки набагато більш складним і, гм, звивистий , ніж інші?

Відповіді:


23

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

Дивіться наступну діаграму, яка зображує кілька нейронних мережі-архітектур , включаючи глибоководний звичайні нервові-мережі візуалізація.


Нейронні мережі ( точніше, штучні нейронні мережі) - це клас алгоритмів машинного навчання, який останнім часом привертав до себе багато уваги (знову ж таки!) Завдяки наявності великих даних та швидких обчислювальних засобів (більшість Deep Learning алгоритми - це по суті різні варіанти ANN).

Клас ANN охоплює декілька архітектур, включаючи конволюційні нейронні мережі ( CNN ), періодичні нейронні мережі ( RNN ), наприклад LSTM та GRU , Autoencoders та Deep Belief Networks . Тому CNN - це лише один вид ANN.

Взагалі кажучи, ANN - це сукупність з'єднаних і настроюваних одиниць (ака-вузлів, нейронів і штучних нейронів), які можуть передавати сигнал (як правило, дійсне значення) від одиниці до іншої. Кількість (шарів) одиниць, їх типи та спосіб їх з'єднання один з одним називається мережевою архітектурою.

Конкретно CNN має один або кілька шарів згортки одиниць . Блок згортки отримує свій вхід від декількох одиниць попереднього шару, які разом створюють близькість. Тому вхідні одиниці (які утворюють невеликий мікрорайон) діляться вагою.

Модулі згортки (а також об'єднання об'єднань) особливо корисні, як:

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

Прочитайте наступні відомості для отримання додаткової інформації про (глибокі) CNN:

  1. Класифікація ImageNet за допомогою глибоких згорткових нейронних мереж
  2. Заглиблюючись із згортками

ps ANN - це не "система, заснована вільно на людському мозку", а скоріше клас систем, натхнених нейроновими зв'язками, існує в мозку тварин.


11

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

Локальне з'єднання: Нейрони в одному шарі з'єднані лише з нейронами в наступному шарі, що є просторово близькими до них. Ця конструкція обрізає переважну більшість зв'язків між послідовними шарами, але зберігає ті, що містять найкориснішу інформацію. Тут припущення полягає в тому, що вхідні дані мають просторове значення, або на прикладі комп'ютерного зору зв'язок між двома віддаленими пікселями, ймовірно, менш значущий, ніж два близьких сусіда.

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

Об'єднання та ReLU: CNN мають дві нелінійності: об'єднання шарів та функції ReLU. Шари об'єднання розглядають блок вхідних даних і просто передають максимальне значення. Це зменшує розмір виводу та не потребує додаткових параметрів для вивчення, тому об'єднання шарів часто використовується для регулювання розміру мережі та утримання системи нижче обчислювальної межі. Функція ReLU приймає один вхід, x, і повертає максимум {0, x}. ReLU(x) = argmax(x, 0). Це вводить подібний ефект до tanh (x) або sigmoid (x), як нелінійності для збільшення виразної сили моделі.


Подальше читання

Як згадується ще одна відповідь, курс Стенфорда CS 231n висвітлює це детально. Перегляньте цей письмовий посібник та цю лекцію для отримання додаткової інформації. Повідомлення в блогах, як ця, і ця , також дуже корисні.

Якщо вам все ще цікаво, чому у CNN є така структура, яку вони роблять, я пропоную прочитати документ, який їх представив, хоча це досить тривалий час, і, можливо, перевірити цю дискусію між Ян Лекуном та Крістофером Меннігом щодо вроджених пріорів (припущення, які ми робимо, коли ми проектуємо архітектуру моделі).


2
"та забезпечити поступальну інваріантність" Що за чорт - це інваріантність перекладу? Коли ви згадуєте такий загадковий термін, вам слід, принаймні, інтуїтивно його визначити.
nbro

1
Ну, я згоден - я додав у короткому описі.
Джексон Вашура

1
Це краща відповідь для мене в тому, що вона точно пояснює, як CNN - це певний тип NN. В інших відповідях не зазначається, що розподіл ваги застосовується.
Дензілое

5

Сверточное нейронна мережа , яка має один згорткові шари. Якщо загальна нейронна мережа натхненна людським мозку (що не дуже точно), згорткова нейронна мережа надихається зоровою системою кори у людей та інших тварин (що ближче до істини) . Як випливає з назви, цей шар застосовує згортання з фільтром, що вивчається (він називається ядром ), в результаті мережа вивчає візерунки на зображеннях: краї, кути, дуги, а потім більш складні фігури. Конволюційна нейронна мережа може містити і інші шари, зазвичай об'єднання і щільні шари.

Настійно рекомендую навчальний посібник CS231n з цього питання: він дуже детальний і містить багато дуже приємних візуалізацій.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.