Підсумок
Моделі прихованих марків (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 ) Модель конволюційної нейронної мережі, оскільки її легше і швидше тренувати, і вона здатна враховувати повний контекст сигналу.