Скрытая марковская модель — HMM с Apache Spark

мне нужно знать, как использовать HMM поверх Apache Spark. Его нет в MLlib. Есть ли альтернативы?

Спасибо

Эльсайед


person elsayedhegazy    schedule 29.08.2016    source источник


Ответы (2)


Лучшее, что я могу найти, это 2-летняя реализация на искре.

Возможно, вы захотите исследовать что-то, кроме искры или HMM, или просто стиснуть зубы и реализовать это самостоятельно. Реализация алгоритма Витерби не особенно сложна, здесь моя многолетняя реализация.

person placeybordeaux    schedule 29.08.2016

Алгоритм HMM — выдержки из https://en.wikipedia.org/wiki/Hidden_Markov_model

Hidden Markov Model (HMM) — это статистическая марковская модель, в которой моделируемая система считается Markov process с ненаблюдаемыми (т. е. скрытыми) состояниями. Скрытую марковскую модель можно представить как простейшую dynamic Bayesian network.

Скрытую марковскую модель можно рассматривать как обобщение mixture model, где hidden variables (или latent variables), управляющие компонентом смеси, который должен быть выбран для каждого наблюдения, связаны через марковский процесс, а не независимы друг от друга.

Применяя принцип dynamic programming, эту проблему тоже можно эффективно решить с помощью forward algorithm.

Не видел алгоритмов вокруг вышеуказанных концепций, реализованных на Spark.

Spark может поддерживать не только алгоритмы уменьшения карты, но единственное, что я смог найти с dynamic programming, это https://github.com/bbengfort/brisera

Python-реализация алгоритма распределенного начального числа и сокращения (похожего на BlastReduce и CloudBurst), который использует RDD (устойчивые распределенные наборы данных) для выполнения быстрого итеративного анализа и dynamic programming, не полагаясь на связанные MapReduce задания.

Mahout имеет реализацию HMM, но не уверен, распространяется ли она https://mahout.apache.org/users/classification/hidden-markov-models.html

person SemanticBeeng    schedule 07.08.2017