For binary features (word present / absent), Bernoulli naive Bayes models each feature as a coin flip per class, and an absent word counts as evidence too.
Implement BernoulliNB(alpha=1.0) with:
fit(X, y): class log-priors and per-class feature probabilities predict_log_proba_unnormalized(X): for each class (shape (n, n_classes), classes in sorted order)predict(X): the argmax class label