Прихована модель Маркова проти періодичної нейронної мережі


13

Які послідовні проблеми з введенням найкраще підходять для кожної? Чи визначає розмірність входу, яка краще відповідає? Чи проблеми, які потребують "більшої пам'яті", краще підходять для RNN LSTM, тоді як проблеми з циклічними вхідними моделями (фондовий ринок, погода) легше вирішуються HMM?

Здається, перекриття багато; Мені цікаво, які тонкі відмінності існують між ними.


+1, але питання може бути занадто широким ... Також, наскільки мені відомо, вони зовсім інші ...
Haitao Du

я додав більше роз'яснень
відшкодування

В якості бічної записки ви можете розмістити CRF поверх RNN, наприклад github.com/Franck-Dernoncourt/NeuroNER
Franck Dernoncourt

Відповіді:


8

Підсумок

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

RNN може працювати краще, якщо у вас дуже великий набір даних, оскільки додаткова складність може краще скористатися інформацією, що міститься у ваших даних. Це може бути правдою, навіть якщо припущення HMM є істинними у вашому випадку.

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

Як завжди, найкращий спосіб дізнатися, яка модель найкраща - це виготовити моделі та виміряти продуктивність на випробуваному наборі.

Сильні припущення HMM

Державні переходи залежать лише від поточного стану, а не від нічого в минулому.

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

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

Ви повинні заздалегідь визначити загальну кількість штатів.

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

Труднощі з RNN

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

У деяких випадках я виявив, що найкраща модель послідовних даних - це стиль UNet ( https://arxiv.org/pdf/1505.04597.pdf ) Модель конволюційної нейронної мережі, оскільки її легше і швидше тренувати, і вона здатна враховувати повний контекст сигналу.


1

Давайте спочатку побачимо відмінності між HMM та RNN.

З цієї статті: Підручник із прихованих моделей Маркова та вибраних застосунків для розпізнавання мовлення ми можемо дізнатися, що HMM повинні характеризуватися трьома основними проблемами:

Задача 1 (Ймовірність): Давши HMM λ = (A, B) та послідовність спостереження O, визначте ймовірність P (O | λ).
Задача 2 (Розшифровка): Давши послідовність спостереження O та HMM λ = (A, B), виявіть найкращу послідовність прихованих станів Q.
Задача 3 (Навчання): Дана послідовність спостереження O та набір станів у HMM, вивчити параметри HMM A і B.

Ми можемо порівняти HMM з RNN з цих трьох позицій.

Ймовірність

сума за всіма прихованими послідовностями Ймовірність отримання HMM (Малюнок A.5) Мовна модель в RNN
просто отримайте ймовірність від функцій softmax

П(О)=QП(О,Q)=QП(О|Q)П(Q)Q1p(Х)=т=1Т1p(хт|х(т-1),...,х(1))Т

Розшифровка

vт(j)=махi=1Nvт-1(i)аijб(от)та визначення того, яка послідовність змінних є основним джерелом деякої послідовності спостережень за допомогою алгоритму Вітербі, а довжина результату зазвичай дорівнює спостереженню; тоді як в RNN декодування обчислюєтьсяП(у1,...,уО|х1,...,хТ)=о=1ОП(уо|у1,...,уо-1,cо) і довжина Y зазвичай не дорівнює спостереженню Х.

сміливий шлях
Розшифровка в HMM (мал. A.10)

частина декодера
Розшифровка в RNN

Навчання

Навчання в HMM набагато складніше, ніж у RNN. У HMM він зазвичай використовував алгоритм Баума-Велча (особливий випадок алгоритму очікування-максимізації), тоді як в RNN це зазвичай спуск градієнта.

Для ваших підпитів:

Які послідовні проблеми з введенням найкраще підходять для кожної?

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

Чи визначає розмірність входу, яка краще відповідає?

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

Чи проблеми, які потребують "більшої пам'яті", краще підходять для RNN LSTM, тоді як проблеми з циклічними вхідними моделями (фондовий ринок, погода) легше вирішуються HMM?

У HMM на поточний стан також впливають попередні стани та спостереження (батьківські стани), і ви можете спробувати модель прихованого Маркова другого порядку для "довшої пам'яті".

Я думаю, ви можете використовувати RNN майже для цього

посилання

  1. Обробка природних мов за допомогою поглибленого вивчення CS224N / Ling284
  2. Приховані Маркові моделі

Але у згаданому документі йдеться про те, що HMM має прихований стан, хоча дискретний?
Олег Афанасьєв

@OlegAfanasyev Так. Я думаю, що я помиляюся, але повернусь до цієї відповіді пізніше.
Лернер Чжан

Це було виправлено?
GENIVI-НАВЧАЛЬНИЙ

1
@ GENIVI-LEARNER Я переписав відповідь і сподіваюся, що це допоможе вам, а також сподіваюся, що ви дасте мені кілька пропозицій, як зробити це краще.
Лернер Чжан

0

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

HMM - це так звані генеративні моделі, якщо у вас є HMM, ви можете генерувати з неї деякі спостереження як є. Це принципово відрізняється від RNN, тому що навіть якщо у вас є навчений RNN, вам потрібно ввести його.

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

Але, використовуючи RNN, вам потрібно забезпечити принаймні деяке вхідне насіння, щоб отримати вихід. Ви можете стверджувати, що в HMM вам також потрібно надати початковий розподіл, тому це схоже. Але якщо ми будемо дотримуватися прикладу синтезу мови, це не тому, що початковий розподіл буде фіксованим (починаючи завжди з перших телефонів слова).

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

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