質問:
バイオインフォマティクスにおける一般的なHMMソルバー?
Daniel Standage
2017-06-02 12:13:13 UTC
view on stackexchange narkive permalink

隠れマルコフモデル(HMM)は、バイオインフォマティクスで広く使用されており、遺伝子予測、タンパク質ファミリー分類、およびその他のさまざまな問題に適合しています。確かに、 Durbin、Eddy、および同僚による論文は、この分野の決定的なボリュームの1つです。

HMMのこれらのさまざまなアプリケーションのそれぞれの詳細は異なりますが、コア数学モデルは変更されておらず、モデルが与えられた場合に観測されたシーケンスの確率、または(おそらくより有用な)観測された状態のシーケンスが与えられた場合に最も可能性の高い隠れシーケンスを計算するための効率的なアルゴリズムがあります。

したがって、 HMMを解くための一般的なソフトウェアライブラリが存在する可能性があると考えられます。私の知る限りではそうではなく、ほとんどのバイオインフォマティシャンはHMMを最初から作成することになります。おそらくこれには正当な理由がありますか? (オープンソースの科学ソフトウェアを構築し、長期的なサポートを提供するための資金を調達することはすでに困難であり、ほぼ不可能であるという明らかな事実は別として。学術的な圧力により、構築するよりもはるかに多くの論文を公開できる新しいツールを構築することが奨励されます。既存のツールを拡張します。)

一般的なHMMソルバーライブラリは存在しますか?もしそうなら、これはバイオインフォマティシャンが自分で一から書くのではなく、使うのに十分魅力的でしょうか?

「HMMを最初から作成する」というのは大変な努力のように聞こえます。 ;-)とはいえ、もちろん、関連するアルゴリズムの既存の実装を持つことは理にかなっています。
三 答え:
#1
+6
Lucas van Dijk
2017-06-02 18:16:01 UTC
view on stackexchange narkive permalink

また、確率的グラフィカルモデル用の優れたPythonパッケージである pomegranateもご覧になることをお勧めします。これには、HMMなどのソルバーが含まれています。内部では、Cythonisedコードを使用しているため、非常に高速です。

#2
+4
Konrad Rudolph
2017-06-02 15:59:48 UTC
view on stackexchange narkive permalink

HMMを操作するためのソフトウェアライブラリは確かにあります。 C ++での汎用実装については、 SeqAnHMMアルゴリズムをご覧ください。

目的に応じて、つまり「計算…観察されたシーケンスを前提として最も可能性の高い隠れシーケンス」状態」、観察されたシーケンスとHMMグラフを使用して viterbiAlgorithm を呼び出します。

より基本的に、ほとんどの既存の成熟した実装は、おそらく信号処理の領域にあると思います。 、生物学よりも長くそれらを使用しており、基礎となる理論のほとんどが開発された場所です。

#3
+4
Matt Bashton
2017-06-04 18:31:13 UTC
view on stackexchange narkive permalink

ISMB 1997で発表されたEwanBirneyのダイナマイト(コンパイラ-コンパイラ)にこの機能があったことを正しく覚えている場合は、GitHub にもいくつかのコードがあります。 https://github.com/birney/wise3少なくともダイナマイトについて言及しています。容疑者のユアンは最近忙しくてこれに取り組むことができませんが、彼は古いダイナマイトのほこりを吹き飛ばすことについてツイートしています。申し訳ありませんが、ダイナマイトのコード: https://twitter.com/ewanbirney/status/788121636973142016



このQ&Aは英語から自動的に翻訳されました。オリジナルのコンテンツはstackexchangeで入手できます。これは、配布されているcc by-sa 3.0ライセンスに感謝します。
Loading...