Skip to content

Latest commit

 

History

History
60 lines (43 loc) · 1.51 KB

File metadata and controls

60 lines (43 loc) · 1.51 KB

Naive Bayes

Probabilistic model

Classifier based on Bayes rule:

Example with jupyter notebook here

Notebook include example of Iris data, Breast Cancer and Digit classification (MNIST)

import numpy as np
import matplotlib.pyplot as plt

# For dataset
from sklearn import datasets
from sklearn.model_selection import train_test_split

# Library provided
from probabilistic import NaiveBayes

data = datasets.load_iris()
X = data.data
y = data.target

Xt,Xs,yt,ys = train_test_split(X,y,test_size=0.3)

print(Xt.shape,yt.shape,Xs.shape,ys.shape)

# Fitting model (estimating the parameters)
clf = NaiveBayes()
clf.fit(Xt,yt)

# Prediction
ytp = clf.predict(Xt)
ysp = clf.predict(Xs)

print('Training Accuracy : ',np.mean(ytp==yt))
print('Testing  Accuracy : ',np.mean(ysp==ys))

print(clf.parameters)

# Visualization
fig = plt.figure(figsize=(12,10))
clf.VizPx()

Iris Data

Breast Cancer Data

(first 16 features)