Структура періодичної нейронної мережі (LSTM, GRU)


10

Я намагаюся зрозуміти архітектуру RNN. Я знайшов цей підручник, який був дуже корисним: http://colah.github.io/posts/2015-08-U Understanding-LSTMs/

Особливо це зображення: введіть тут опис зображення

Як це вписується у мережу передачі даних? Це зображення лише черговий вузол у кожному шарі?


Або так виглядає кожен нейрон?
Adam12344

Відповіді:


8

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

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


Зробіть годт, cт і хтмають однакову довжину?
користувач_1177868

6

На вашому зображенні A - це один прихований шар з одним прихованим нейроном. Зліва направо - вісь часу, а внизу ви отримуєте вхід кожного разу. Угорі мережу можна було б розширити, додавши шари.

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

Сподіваюся, що це відповість на ваше запитання.


3

Я хотів би пояснити цю просту діаграму у відносно складному контексті: механізм уваги в декодері моделі seq2seq.

На схемі потоку нижче, год0 до годк-1- це етапи часу (такої ж довжини, що і номер вводу з PAD для пробілів). Кожного разу, коли слово вводиться в нейтральний L-ть (часовий крок) LSTM (або клітинку ядра, те саме, що будь-хто із трьох на вашому зображенні), воно обчислює вихідний вивід відповідно до його попереднього стану ((i-1) -го виводу) та i-й вхідхi. Я ілюструю вашу проблему, використовуючи це, тому що всі стани часового кроку зберігаються для механізму уваги, а не просто відкидаються лише для отримання останнього. Це лише один нейронний і розглядається як шар (кілька шарів можна складати, щоб утворити, наприклад, двонаправлений кодер в деяких моделях seq2seq, щоб отримати більш абстрактну інформацію у більш високих шарах).

Потім воно кодує речення (зі словами L, і кожне з них представлене як вектор фігури: embedding_dimention * 1) у список тензорів L (кожна з фігури: num_hidden / num_units * 1). І минуле стан декодера - це лише останній вектор, як речення, що вбудовує однакову форму кожного елемента в список.

введіть тут опис зображення
Джерело зображення: Механізм уваги

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