A deck of Naive Bayes algorithms with sklearn-like API.
- Complement Naive Bayes
- Negation Naive Bayes
- Universal-set Naive Bayes
- Selective Naive Bayes
You can install this module directly from GitHub repo with command:
python3.7 -m pip install git+https://github.com/krzjoa/bace.git
or as a PyPI package
python3.7 -m pip install bace
bace API mimics scikit-learn API, so usage is very simple.
from bace import ComplementNB
from sklearn.datasets import fetch_20newsgroups
from sklearn.feature_extraction.text import CountVectorizer
vectorizer = CountVectorizer()
# Train set
newsgroups_train = fetch_20newsgroups(subset='train', shuffle=True)
X_train = vectorizer.fit_transform(newsgroups_train.data)
y_train = newsgroups_train.target
# Test set
newsgroups_test = fetch_20newsgroups(subset='test', shuffle=True)
X_test = vectorizer.fit_transform(newsgroups_test.data)
y_test = newsgroups_test.target
# Score
cnb = ComplementNB()
cnb.fit(X_train, y_train).accuracy_score(X_test, y_test)