I have trained a naive Bayes classifier in MATLAB using fitcnb (description link) and 11 variables, seven of which are numeric (normal) and four of which are categorical ("mvmn" distribution name). I am then using predict (description link) in the normal fashion to classify new data.
For a little more than half of the items I am attempting to classify, I am getting a posterior distribution equal to the prior distribution. This does not seem to be due to missing data.
This seems an unintuitive result to me and, while I realize this is a general question, can anyone point me in the right direction as to what might be the problem (if any)? What should I be looking for to ensure this is an accurate result?
EDIT: In response to Dave, I have 327 training data examples, which includes four categories with unique attributes totaling 15, 56, 86, and 202, respectively. I removed two of the categories: the ones with 56 and 202 entries (the one with 56 entries was just a finer breakdown of the one with only 15 entries, and the one with 202 categories clearly was not contributing much since it has almost as many unique values as the total training set). I also condensed the category with 86 unique entries to just 12. These adjustments fixed the issue; namely, I am now producing unique posterior probabilities for all the items in my classification set.