MATLAB Answers

Naive Bayes Classification - Chanig distribution from Normal/Gaussian to other types

1 view (last 30 days)
I am using Naive Bayes for multi-classification using:
Mdl = fitcnb(Features,Label);
Naive Bayes uses a normal distribution but when I checked my data, it doesn't fit as shown in the attachments.
Is there a way to change the type of distribution that best fits my data?
Thanks in advance.

  0 Comments

Sign in to comment.

Accepted Answer

Hrishikesh Borate
Hrishikesh Borate on 18 Jun 2020
Hi,
It’s my understanding that you are using Naïve Bayes classification for a multiclass problem with fitcnb function, and want to try some other distribution apart from Normal Distribution.
You can use Multinomial Distribution, Multivariate Multinomial Distribution, Normal Distribution. To use these, you must specify them as
Mdl = fitcnb(___,Name,Value) ;
where,
Name will be ‘DistributionNames’, and
Value can be ‘mn’ (for Multinomial Distribution), ‘mvmn’ (for Multivariate Multinomial Distribution), ‘normal’ (for Normal Distribution).
For more information, refer to fitcnb Documentation

  1 Comment

Oliver Ramos
Oliver Ramos on 18 Jun 2020
Thank you very much Hrishikesh!
Are you familiar also with discriminant analysis (fitcdiscr)? Are there also other 'DistributionNames' like mvmn, kernel, and mn, for fitcdiscr? I'm thinking of using fitcdiscr to remove the assumption of conditional independence.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by