I would like to train multiple Naïve Bayes classifiers with different number of categories, and also have a global threshold for how certain one classifier must be in order for the classification to be trusted.
In this specific case, a classifier should be trained for each user in my database, and each user have any number of categories. Now I would like to set a threshold across all classifiers for how certain the classifier should be before suggesting something to the user.
What is a good way to do this?
Messing with the smoothing parameter? If I apply the standard add-one smoothing to all classifiers, then a classifier that has only 2 categories will disagree a lot with one that has 100 categories (when little data is observed).
What is a good way to even this out when only little data is observed?
My solution right now is to use $1/no\_of\_observed\_classes$. And it seems to work well on a few test cases.
Is this fine or am I missing some important implications?