On Fri, 2004-12-10 at 17:45, Wayne Snyder wrote:
> I understand just about everything that=A2s going on in this package,
> except for the following method:
>
> Class BayesianClassifier
> protected static double normaliseSignificance(double sig)
> Could you please explain the role it plays.
I am not a Classifier4J developer but I've used Classifier4J quite a bit
and have done a lot of research on Naive Bayesian Classifiers.
Stated simply, probabilities of 0 mess up a Naive Bayesian Classifier
and probabilities of 1 don't change anything. It basically boils down
to the fact that anything multiplied by 0 is 0 and multiplying by 1
doesn't change anything.=20
BayesianClassifer.normaliseSignificance(double) simply removes the 1's
and the 0's and replaces them with 0.99 and 0.01, respectively.
For a good explanation of the magic that is Naive Bayesian
Classification, check out:
http://en.wikipedia.org/wiki/Naive_Bayesian_classifier
-Mike
|