フォレスト(またはツリー)拡張ベイズ分類器(元の紹介、学習)を使用しようとしていますpython
(できればpython 3ですが、python 2も受け入れられます)、最初にそれを学習し(構造とパラメーター学習の両方)、次にそれを使用します離散分類の場合、データが欠落している特徴の確率を取得します。(これが、離散分類だけでなく、優れた単純な分類器でさえ、私にとってあまり役に立たない理由です。)
私のデータが入ってくる方法として、不完全なデータからの増分学習を使用したいと思っていますが、文献でこれらの両方を行うものさえ見つけていないので、構造とパラメーターの学習と推論を行うものは何でも良いです答え。
大まかにこの方向に進んでいる、非常に個別で保守されていない python パッケージがいくつかあるようですが、最近のものは見たことがありません (たとえば、pandas
これらの計算に を使用するのは合理的だと思いますが、OpenBayes
ほとんど使用していませんnumpy
) 、および拡張分類子は、私が見たものにはまったくないようです。
では、フォレスト拡張ベイズ分類器を実装する手間を省くには、どこを見ればよいのでしょうか? Python クラスにパールのメッセージ パッシング アルゴリズムの適切な実装はありますか、それとも拡張ベイズ分類器には不適切でしょうか? Pythonに翻訳できる、他の言語でのTANベイズ分類器の学習と推論のための読み取り可能なオブジェクト指向の実装はありますか?
私が知っているが不適切であると思われる既存のパッケージは
milk
、これは分類をサポートしますが、ベイジアン分類子ではサポートしません (そして、分類と未指定の機能の確率が絶対に必要です)pebl
、構造学習のみを行いますscikit-learn
、単純ベイズ分類器のみを学習しますOpenBayes
に移植されて以来、ほとんど変更されておらずnumarray
、numpy
ドキュメントはごくわずかです。libpgm
、さらに異なる一連のものをサポートすると主張しています。主なドキュメントによると、推論、構造、およびパラメーターの学習を行います。ただし、正確な推論のための方法はないようです。- Reverendは「ベイジアン分類器」であると主張していますが、ドキュメントはほとんどありません。ソース コードを見ると、 Robinsonおよび同様の方法によると、ほとんどがスパム分類器であり、ベイジアン分類器ではないという結論に達しました。
- eBay の
bayesian
Belief Networksは、一般的なベイジアン ネットワークの構築を可能にし、それらに推論 (正確および近似の両方) を実装します。つまり、TAN の構築に使用できますが、そこには学習アルゴリズムはなく、関数から BN を構築する方法はありません。これは、パラメーター学習の実装が、仮想的な別の実装よりも難しいことを意味します。