Перейти до вмісту

Нейронна мережа з часовою затримкою

Матеріал з Вікіпедії — вільної енциклопедії.
діаграма TDNN

Нейронна мережа з часовою затримкою ( TDNN )[1] — це архітектура штучної нейронної мережі, основною метою якої є класифікація паттернів незалежно від зсуву, тобто не вимагає явного попереднього визначення початкової та кінцевої точок схеми. TDNN вперше запропонував класифікувати фонеми в мовних сигналах для автоматичного розпізнавання мови, де автоматичне визначення точних сегментів або меж фіч є складним чи неможливим. TDNN розпізнає фонеми та їхні основні акустичні / фонетичні особливості, незалежно від часових зрушень, тобто положення в часі.

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

У оригінальному документі була представлена мережа з персептронами, ваги якої пройшли навчання за допомогою алгоритму зворотного поширення помилки, це може бути здійснено партійно або в реальному часі. Прикладом є Штутгартський нейромережний симулятор[2].

Огляд

[ред. | ред. код]

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

Для досягнення інваріантності зсуву часу, до входу додаються набір затримок (аудіофайл, зображення тощо), так що дані представлені в різні моменти часу. Ці затримки є довільними та специфічними, що, як правило, означає, що вхідні дані налаштованні на певний шаблон затримки. Це і є вся виконана робота по створенню адаптивної часової затримки TDNN[3], де цю ручну настройку викорінено. Затримки є спробою додати часовий вимір до мережі, який відсутній в рекурентних нейронних мережах або багатошарових персептронах зі змінним вікном. Поєднання попередніх входів із поточними вкладами робить підхід TDNN унікальним.

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

Програми

[ред. | ред. код]

Розпізнавання мови

TDNN використовується для вирішення проблем розпізнавання мовлення, які були введені в 1989 році і спочатку зосереджувались на виявленні фонем. Мова чудово підходить для TDNN, оскільки розмовні звуки рідко мають однакову довжину. Вивчаючи звук, який змінюється в минулому та в майбутньому, TDNN здатний побудувати модель для цього звуку, який є незмінним у часі. Це особливо корисно для розпізнавання мови, оскільки різні діалекти та мови вимовляють однакові звуки з різною довжиною. Спектральні коефіцієнти використовуються для опису співвідношення між вхідними зразками.

Аналіз відео

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

Загальні бібліотеки

  • Matlab: панель інструментів нейронної мережі має функціональні можливості, призначені для створення нейронної мережі з часовою затримкою, передаючи в неї розмір шагу часової затримки та опціональну функцію навчання. Алгоритм навчання за замовчуванням — це алгоритм «Supervised Learning», що оновлює фільтри на основі оптимізації Левенберга-Маркварда. Функція timedelaynet (затримки, hidden_layers, train_fnc) і повертає архітектуру нейронної мережі з затримкою часу, яку користувач може тренувати та надавати вхідні дані.[5]
  • Torch: Бібліотека Torch може створювати складні моделі, такі як TDNN, шляхом об'єднання декількох вбудованих модулів Multi-layer Perceptrons (MLP).[6]
  • Caffe (програмне забезпечення): Наразі не підтримує TDNN.

Див. також

[ред. | ред. код]
  • Згорткова нейронна мережа — нейронна мережа, де відбувається згортка вздовж осі часу даних, дуже схожа на TDNN.
  • Рекурентна нейронна мережа — рекурентна нейронна мережа також обробляє часові дані, хоча й інакше. Замість різноманітного введення, RNN підтримує внутрішні приховані шари, щоб стежити за минулим (і у випадку двонаправлених RNN, майбутніх) входів.

Література

[ред. | ред. код]
  1. Alexander Waibel et al, Phoneme Recognition Using Time-Delay Neural Networks IEEE Transactions on Acoustics, Speech and Signal Processing, Volume 37, No. 3, pp. 328. — 339 March 1989.
  2. TDNN Fundamentals, Kapitel aus dem Online Handbuch des SNNS
  3. Wöhler, Christian, and Joachim K. Anlauf. «An adaptable time-delay neural-network algorithm for image sequence analysis.» IEEE Transactions on Neural Networks 10.6 (1999): 1531—1536
  4. Wöhler, Christian, and Joachim K. Anlauf. «Real-time object recognition on image sequences with the adaptable time delay neural network algorithm—applications for autonomous vehicles.» Image and Vision Computing 19.9 (2001): 593—618.
  5. Time Series and Dynamic Systems - MATLAB & Simulink. mathworks.com. Процитовано 21 червня 2016.
  6. Collobert, Ronan, Samy Bengio, and Johnny Mariéthoz. Torch: a modular machine learning software library. No. EPFL-REPORT-82802. IDIAP, 2002