Чи глибоке навчання вбиває обробку зображень / комп'ютерний зір?


52

Я з нетерпінням чекаю поступити на магістратуру з обробки сигналів та зображень, а може, і з комп’ютерним баченням (ще не визначився), і це питання виникло.

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

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

Чи є випадок, коли традиційний підхід до вилучення особливостей + класифікаційний підхід був би кращим, використовуючи методи обробки зображень, або це вмирає через глибоке навчання?


3
Повторно відкриваючи це, оскільки в ньому є велика кількість оновлень, а відповідь, що приймає голоси, має дуже високу кількість відгуків.
Пітер К.

1
@LaurentDuval Я думаю, що кожна відповідь була корисною та дуже цікавою, але в основному ваші та математичні (разом із дискусією, що піднялася) дійсно прояснили тему.
Тоні

2
Я хотів би зробити перехрестя в ході тривалої дискусії. Хто сказав, що глибоке навчання не вимагає вилучення особливостей? На моєму власному практичному досвіді ми не повинні навчати DNN для отримання необроблених даних. Ми повинні виконати деякий витяг функції, а також повинні мати базове розуміння зображення. Глибоке навчання слід використовувати обережно, але це також хороша ідея.
arun raj

Відповіді:


45

Цю публікацію багато оновлювали. Угорі ви можете побачити оновлення посилань. Нижче наведено варіанти початкової відповіді. Для короткої версії: успіхи конволюційних нейронних мереж та глибоке навчання виглядають як свого роду Галілейська революція. З практичної точки зору, класична обробка сигналів або комп’ютерний зір мертві ... за умови, що у вас є достатньо мічених даних, мало дбайте про очевидні збої в класифікації ( глибокі недоліки ), не маєте нескінченної енергії для проведення тестів, не замислюючись про викиди вуглецю , і не турбуйте раціональні пояснення. Для інших, це змусило нас переглянути про все , що ми робили раніше: виділення ознак, оптимізація (див мого колеги Ж.-К. Pesquet роботи над Deep Neural Мережевих структурами рішення варіаційних нерівностей), інваріантність, кількісна оцінка тощо. І з цього випливає справді цікаве дослідження, яке, сподіваємось, наздогнало твердо обґрунтовані принципи та подібну ефективність.

Оновлені посилання:

Ми представляємо природні змагальні приклади - реальні, немодифіковані та природні приклади, які призводять до значної погіршення точності класифікатора. Ми підкреслимо 7500 природних змагальних прикладів і випустимо їх у тестовий набір класифікаторів ImageNet, який ми називаємо ImageNet-A. Цей набір даних служить новим способом вимірювання стійкості класифікатора. Як і змагальні приклади l_p, приклади ImageNet-A успішно переносяться на невидимі або класичні класи. Наприклад, на ImageNet-A a DenseNet-121 отримує близько 2% точності, зниження точності приблизно 90%. Відновити цю точність непросто, оскільки приклади ImageNet-A використовують глибокі недоліки в поточних класифікаторах, включаючи їх надмірну залежність від кольорових, фактурних та фонових сигналів. Ми зауважуємо, що популярні методи тренувань для підвищення стійкості мають незначний ефект, але ми показуємо, що деякі архітектурні зміни можуть посилити стійкість до природних змагальних прикладів. Необхідні майбутні дослідження для забезпечення надійного узагальнення цього жорсткого тестового набору ImageNet.

Поглиблені посилання на вивчення "кроків" при стандартній обробці сигналів / зображень можна знайти внизу. Майкл Елад щойно написав Deep, Deep Trouble: Вплив глибокого навчання на обробку зображень, математику та людство (SIAM News, 2017/05), уривок:

Потім нейронні мережі раптом повернулися і з помстою.

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

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

поганий алгоритм з величезним набором даних може зробити краще, ніж розумний алгоритм з даними про підключення .

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

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

Необхідність (безліч) мічених даних (без відсутніх змін) є вимикачем угод (і непотрібним) для багатьох доменів

Якщо їх вбивають (у чому я сумніваюся за короткий термін), вони ще не вмерли. Тож будь-яка навичка, яку ви здобудете в обробці сигналів, аналізі зображення, комп'ютерному зорі, допоможе вам у майбутньому. Про це, наприклад, йдеться у публікації блогу: чи ми забули про геометрію в комп’ютерному зорі? автор: Алекс Кендалл:

Глибоке навчання зробило революцію в комп'ютерному зорі. Сьогодні існує не так багато проблем, коли найкраще рішення не базується на моделі глибокого навчання. Зокрема, популярні нейромережі згортки, оскільки вони, як правило, працюють досить добре. Однак ці моделі в основному великі чорні коробки. Є багато речей, які ми про них не розуміємо.

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

З іншого боку, настільки успішне, як глибоке навчання у великих масштабах, це може призвести до неправильної класифікації невеликих наборів даних, що може бути нешкідливим «в середньому» для деяких додатків. Два зображення, які трохи відрізняються від людського ока, можна класифікувати по-різному через DL. Або випадкові зображення можуть бути встановлені для певного класу. Дивіться, наприклад, глибокі нейронні мережі легко обманюються: прогнози високої довіри до невпізнанних зображень (Nguyen A, Yosinski J, Clune J. Proc. Комп'ютерне бачення та розпізнавання образів 2015), чи глибоке навчання має глибокі недоліки? , щодо змагальних негативів:

Мережа може неправильно класифікувати зображення після того, як дослідники застосували певне непомітне збурення. Збурення знаходять шляхом коригування значень пікселів для максимальної помилки прогнозування.

З усією належною повагою до "Глибокого навчання" подумайте про "масове виробництво у відповідь на зареєстроване, відоме, масове підтвердження чи очікуване поведінку", а не "єдиний предмет ремесла". Жодна краща (поки що) в єдиній шкалі індексу. Обом, можливо, доведеться співіснувати деякий час.

Однак глибоке навчання пронизує багато нових напрямків, як описано в посиланнях нижче.

На щастя, деякі люди намагаються знайти математичне обґрунтування глибокого навчання, прикладом якого є розсіювання мереж або перетворень, запропонованих Стефаном Маллатом та співавторами, див. Сайт ENS для розсіювання . Гармонічний аналіз та нелінійні оператори, функції Ліпшіца, інваріантність трансляції / обертання, що краще для середньої людини, що обробляє сигнал. Дивіться, наприклад, Розуміння глибоких згорткових мереж .


1
Розширення недостатнього обсягу даних про навчання за допомогою відповідно модифікованих копій допомагає глибокому навчанню узагальнювати. Останнім часом були знайдені шляхи навколо необхідності повного нагляду під наглядом: Непідконтрольне збільшення даних автоматично генерує мітки для незазначеної частини навчальних даних у навчанні з наглядом та використовує ці дані для навчання. (Сміливо
включайте

1
Якщо ви знаєте, як збільшити "послідовно". Добре, що стосується класичних наборів даних, я все ще ходитиму над науковими даними, якими я займаюся (геологія, хімія)
Лоран Дюваль

@Laurent, про те, що ви сказали: "наша робота вченого залишається роз'яснювати, чому все працює" : звучить так, що наука даних є дійсною кар'єрою для somoeone, розглядаючи серйозну роботу над DSP. Чи є ще якісь імена, окрім типової назви "інженер DSP", про які ви чули?
JFonseca

21

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

По-друге, глибоке навчання в основному використовується для розпізнавання об'єктних категорій. Але це лише одна з багатьох областей комп’ютерного зору. Існують й інші сфери, такі як виявлення об'єктів, відстеження, реконструкція 3D тощо. Багато з яких досі покладаються на функції "виготовлені вручну".


5
Будьте уважні: DNN дуже добре здатні робити все, що ви згадуєте: Виявлення об'єктів, відстеження, реконструкція 3D тощо. Сказане, обробка сигналів - це розуміння фізичних аспектів того, як маніпулюють сигналами, і чому ми повинні якось маніпулювати ними - і ті (я вважаю) зроблять повернення для пояснення того, чому працюють адаптивні алгоритми, такі як DNN. Але не помиляйтесь - ДНЗ дуже добре здатні до базових перетворень із вхідних даних і аж до (диференційованої) цільової мети.
Тарін Зіяее

11

Ніяке глибоке навчання не вбиває обробку зображень. Для глибокого навчання вам потрібні величезні набори даних та багато обчислювальних ресурсів. Існує безліч додатків, де бажано мати можливість обробляти зображення з меншим навантаженням на обчисленні та меншими слідами пам’яті та не маючи доступу до величезних баз даних. Деякі приклади - мобільні телефони, планшети, мобільні камери, автомобілі, квадрокоптери. Глибоке навчання зараз дуже розкручене, оскільки існує кілька дуже вражаючих результатів для класифікації.

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


Позначаючи, тривимірну оцінку тощо, усі, що ви згадали, дуже можуть бути наближені та вирішені за допомогою DNN відповідної архітектури та відповідних даних.
Тарін Зіяее

1
Так, і ви можете робити щотижневі покупки в Jaguar (але це не тому, що вони побудовані).
mathreadler

1
Так, правда - але це інакше, ніж казати, що ти не можеш робити покупки, використовуючи свій ягуар.
Тарін Зіяее

Легко накласти корисні обмеження на інженерну проблему, з якою DNN досить нерозумно впорається. Наприклад, обмеження, що використовуваний метод не повинен бути упередженим щодо певного набору вхідних даних. Тоді ДНЗ, звичайно, будуть дискваліфіковані за замовчуванням, оскільки всі вони потребують навчання, а тому будуть упереджено використовувати дані тренувань.
mathreadler

Це справедливо для будь-якого інженерного інструменту: Але це не в цьому суть. Справа в тому, що всі ті завдання, які ви згадали вище, насправді дуже добре можна вирішити за допомогою DNN. Так, деякі з останніх подій, але сказати, що вони не можуть бути вирішені за допомогою ДНЗ, неправильно! Це все!
Тарін Зіяее

11

Сьогодні ми мали дискусію з моїм другом. Тут був дощовий день у Мюнхені, тоді як у значної частини Європи була сонячна атмосфера. Люди ділилися фотографіями в соціальних мережах, де вони були в приємних літніх сукнях, блукаючи морями. Вона була роздратована цією ситуацією і звернулася до мене і запитала: "Чи не могли б ви написати програмне забезпечення для блокування картинок у соціальних мережах, які передбачають такі милі фото літа, коли погода тут така погана?". Я сказав, чому ні. Все, що вам потрібно зробити, - це зібрати величезний набір літніх зображень, а негативних прикладів, подавати їх через мережу, яка робить бінарну класифікацію за рівнем "Блок" або "Неблок". Навчайте та налаштовуйте мережу. Це воно.

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

Двокласна класифікація погоди, Cewu Lu§ Di Lin, Jiaya Jia, Chi-Keung Tang , CVPR 2014

Очевидно, я б навіть не переймався цією публікацією CVPR сьогодні, а просто заглиблююся. Отже, наскільки мені подобається глибоке навчання за його надійне виконання у багатьох сценаріях, я також обережно використовую це. Навіть якщо це не вб'є мої знання з обробки зображень, це, як правило, знижує доменний досвід, який мені потрібен. Інтелектуально це не дуже елегантно.

Як тільки людина вирішить тримати себе на шляху і отримувати користь з обох світів, він стане на безпечній стороні.


7

Коротка відповідь: Ні. DL може розпізнати кухоль на фотографії, але це ніяк не вбиває обробку сигналів. Однак, ваше запитання є досить актуальним у ці неспокійні дні. Існує гарна дискусія на цю тему, показуючи Стефан Маллат і т.д., тут .


5

Інженерія даних все ще використовується в машинному навчанні для попередньої обробки та вибору даних, що надходять до DNN, щоб покращити час навчання та ефективність їх оцінки. Обробка зображень (матеріали між датчиком камери та біт-картами RGB / тощо., Що подаються до DNN), форма інженерії даних все ще потрібна.


4

Ретельне розуміння обробки сигналів (поряд з лінійною алгеброю, векторним обчисленням, математичною статистикою тощо) неодмінно необхідне для нетривіальної роботи в галузі глибокого навчання, особливо в комп'ютерному зорі.

Деякі документи з високим впливом у процесі глибокого навчання (тепер, коли більшість плодів, що висіли низько), свідчать про добре розуміння понять обробки сигналів.

Кілька мотиваційних концепцій:

  • Розширені звивини : ознайомтеся з цим поштовим блогом . Одним з перших рівнянь було б хліб з маслом для людини, добре обгрунтованої (га) в концепціях обробки сигналів. Це також тісно пов’язане з жорстким алгоритмом, знайденим у класичній обробці сигналів вейвлетів.
  • Транспоновані згорткові шари / Deconv шари. Знову основні концепції обробки сигналів.
  • Формування конвеєрних фільтрів - потрібне гарне уявлення про операторські норми та зіставлення скорочень. Зазвичай це є або в курсі ЕЕ ступеня в теорії сигналів або в системах управління, або в курсах з математики з аналізу (реального або функціонального).
  • Приклади змагальності : одна з перших робіт, що досліджували це ( "Інтригуючі властивості ..." ), формалізувала це з точки зору збурень і використовувала константи Ліпшица різних шарів і нелінійності в нейронній мережі для верхньої межі чутливості до такі збурення. Погоджений, аналіз був дуже попереднім, але, знову ж таки, я вважаю, що це підтверджує те, що для досягнення нетривіального прогресу в чому-небудь, включаючи глибоке навчання, потрібно нетривіальне розуміння теорії.

Список продовжується. Таким чином, навіть якщо ви закінчите роботу в галузі комп’ютерного зору і глибоке навчання своїм проблемам, фон обробки сигналів зробить вас дуже легко зрозуміти.


1
Так. Будь-який ярлик, узятий для того, щоб не вивчати, що подавати в мережу, доведеться навчитися тяжким шляхом з погіршенням продуктивності.
mathreadler

4

Я насправді не займаюся великою обробкою зображень, але працював у організації (ВМС США), яка робила та фінансувала дослідження класифікації сигналів востаннє, коли «Нейронні сітки» були гарячою темою, з середини до кінця 80-х. Мені довелося пережити велику кількість по суті маркетингових речей. Аргументи були такі:

  • Це Нейрон, як і ваш мозок, і оскільки він перевершив лінійний класифікатор, він перемагає статистичні методи. Я насправді знаю деяких людей, які відхилили документи, оскільки вони використовували статистику для оцінки ефективності.
  • Нейронні мережі є індуктивними, вони можуть правильно класифікувати речі, якщо жоден чи кілька прикладів не були у їх навчальних наборах.
  • DARPA фінансує роботу, і всі ми знаємо, що все, що робить DARPA, є переможцем. (Google ще не було)
  • Це не чудова ефективність, не потрібна матриця плутанини, не потрібні приори класів, я можу просто сказати вам, яка моя ймовірність помилки. Мені не потрібні межі, я просто виконую перемикання та перенавчання.
  • Виберіть деякі функції та перейдіть до цього, його чорна скринька, масштабування, вирівнювання даних, неприйняття безладу, погані мітки, поява декількох класів, не моя проблема.
  • Туман математики, машини Больцмана
  • Давайте кинемо у SVD і, можливо, фрактальний розмір.
  • Під контрольованою / непідконтрольною наживкою і перемикачем я знайду всі ваші приховані схеми. Хіба ця асоціативна пам’ять не є глибокою?

Книга Єпископа знадобилася, щоб придушити мій цинізм.

У більш ніж декількох додатках для оптимального алгоритму обробки сигналів потрібен буде вичерпний пошук перерахунку у великому просторі параметрів, який швидко стає непереборним. Велика ферма серверів може збільшити цей доступний простір пошуку, але в якийсь момент вам потрібно знайти евристику. Здається, DL зможе знайти деякі з цих евристик, але це не вирішує основну оптимізацію NP.


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

3

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


1
Так. Обробка сигналів дуже тісно пов'язана з машинним навчанням. Грунтовне розуміння обробки сигналів допомагає зрозуміти, як будувати та використовувати алгоритми ML та тип даних (не) підходить для їх подачі.
mathreadler

2

Ну так. Так само, як розвиток мов програмування вищого рівня, таких як C ++ та Python, "убив" програмування монтажу. Це не означає, що не важливо вивчати складання, коли ви записуєтесь на курс CS. Це дає велике розуміння того, як працює комп’ютер, що відбувається за лаштунками мов вищого рівня, які основні принципи комп'ютерної мови і т. Д. Але ніхто, хто не знає розуму, не зможе програмувати настільний додаток у зборі.

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