Connect with us

ШІ 101

Що таке RNN та LSTMs у глибокому навчанні?

mm

Багато з найбільш вражаючих досягнень у галузі обробки природної мови та чат-ботів штучного інтелекту спонукаються рекурентними нейронними мережами (RNN) та мережами з довготривалою короткочасною пам’яттю (LSTM). RNN та LSTMs є спеціальними архітектурами нейронних мереж, які здатні обробляти послідовні дані, дані, у яких хронологічний порядок має значення. LSTMs є по суті покращеними версіями RNN, здатними інтерпретувати довші послідовності даних. Давайте розглянемо, як структуровані RNN та LSTMs, і як вони дозволяють створювати складні системи обробки природної мови.

Що таке нейронні мережі прямого поширення?

Отже, перш ніж ми поговоримо про те, як працюють довготривала короткочасна пам’ять (LSTM) та конволюційні нейронні мережі (CNN), ми повинні обговорити формат нейронної мережі в цілому.

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

Вхідний шар приймає дані до нейронної мережі, тоді як приховані шари вчаться на основі закономірностей у даних. Приховані шари в наборі даних пов’язані з вхідним та вихідним шарами за допомогою “ваг” та “зміщень”, які є просто припущеннями щодо того, як дані пов’язані між собою. Ці ваги регулюються під час навчання. Коли мережа навчається, порівнюються припущення моделі щодо навчальних даних (вихідні значення) з фактичними навчальними мітками. Під час навчання мережа повинна (сподіваємося) ставати все більш точною у передбаченні відносин між даними, щоб могла точно класифікувати нові дані. Глибокі нейронні мережі – це мережі, які мають більше шарів посередині/більше прихованих шарів. Чим більше прихованих шарів та нейронів/вузлів у моделі, тим краще модель може розпізнавати закономірності у даних.

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

Що таке RNN (рекурентні нейронні мережі)?

Рекурентні нейронні мережі приймають загальне принцип нейронних мереж прямого поширення та дозволяють їм обробляти послідовні дані, надаючи моделі внутрішню пам’ять. “Рекурентна” частина назви RNN походить від того факту, що вхід та вихід петлі. Як тільки вихід мережі виробляється, вихід копіюється та повертається до мережі як вхід. Під час прийняття рішення аналізуються не тільки поточний вхід та вихід, але також попередній вхід. Інакше кажучи, якщо початковий вхід для мережі – X, а вихід – H, то H та X1 (наступний вхід у послідовності даних) подаються до мережі для наступного раунду навчання. Таким чином, контекст даних (попередні входи) зберігається під час навчання мережі.

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

Довжина послідовностей, яку може інтерпретувати RNN, досить обмежена, особливо у порівнянні з LSTMs.

Що таке LSTMs (мережі з довготривалою короткочасною пам’яттю)?

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

Моделі LSTMs складаються з трьох різних компонентів, або воріт. Є вхідне ворота, вихідне ворота та ворота забуття. Як і RNN, LSTMs приймають до уваги входи з попереднього часу при зміні пам’яті моделі та ваг входів. Вхідне ворота приймають рішення про те, які значення важливі та повинні бути пропущені через модель. Сигмоїдна функція використовується у вхідному вороті, яка приймає рішення про те, які значення пропустити через рекурентну мережу. Нуль відкидає значення, тоді як 1 зберігає його. Тангенсна гіперболічна функція також використовується тут, яка приймає рішення про те, наскільки важливі вхідні значення для моделі, в діапазоні від -1 до 1.

Після того, як поточні входи та стан пам’яті враховані, вихідне ворота вирішують, які значення потрібно передати до наступного часу. У вихідному вороті значення аналізуються та присвоюється важливість у діапазоні від -1 до 1. Це регулює дані перед тим, як вони передаються до наступного часу розрахунку. Нарешті, завдання воріт забуття полягає у відкиданні інформації, яку модель вважає зайвою для прийняття рішення про природу входних значень. Ворота забуття використовують сигмоїдну функцію на значеннях, виводячи числа між 0 (забути це) та 1 (зберегти це).

Мережа LSTMs складається з спеціальних шарів LSTMs, які можуть інтерпретувати послідовні дані слів, та густо пов’язаних шарів, як описано вище. Як тільки дані проходять через шари LSTMs, вони переходять до густо пов’язаних шарів.

Блогер і програміст з спеціалізацією у темах Machine Learning і Deep Learning. Даніель сподівається допомогти іншим використовувати силу штучного інтелекту для соціальної добробути.