2011-02-24 9 views
2

誰でもNaive Bayes Classifier Implementationへのポインタがありますか?C. 5次元バイナリデータセットがあります。クラスラベルもバイナリです。私はMatlabのNaive Bayes Classifierを使って良い結果を得ました。しかし、クラスラベルからデータを推論することができる機械学習アルゴリズムとその実装はありますか?ここでは、バイナリクラスラベルから推論された5次元バイナリデータが必要です。データのサンプルを[1 1 0 1 0]とクラスであるR-プロジェクトのこのパッケージを見て0Naive Bayesクラスラベルからのデータのインプリメンテーション

答えて

2

バイナリデータセットを持っているとして、ここではCを使用して素敵な実装です:

http://users.ics.tkk.fi/jhollmen/BernoulliMix/ 

それは私達が私達の過程で、現在使用しているオープンソースソフトウェアで、あなたは実際に彼はアルゴリズムを実装する方法を確認することができます。

あなたが作った質問については、ここに私の理解があります。

naive bayesクラシファイア(NBC)が行うことは、データとラベルが与えられた場合にP(C | X)を予測することです。ベイズの定理によれば、

P(C|X) = \frac{P(X|C)P(C)}{P(X)} 

これは、未知のデータのクラスを予測することができることを意味します。逆に、あなたがしたいことはP(X | C)です。そのため、あなたはしたがって、このよう

P(X|C) = \frac{P(C|X)P(X)}{P(C)} 

をあなたのモデルをトレーニングすることができ、あなたのデータの分布を仮定...そのようなものは、あなたと間違って仮定を持っている場合、したがって、それはとても正確であるかもしれませんしなければなりませんデータ。あなたのケースでは、あなたが想定した場合の属性が解決するのは容易ではありません

P(C|X_1,X_2,X_3,X_4,X_5) \proportional P(X_1|C)P(X_2|C)P(X_3|C)P(X_4|C)P(X_5|C)P(C) 

は、あなたがするが、このようなものです必要なものを、独立しており、ラベルクラスから推定することが望まれるバイナリ属性Xを持っています。 ....

関連する問題