In this guide, we will discuss Gaussian Naïve Bayes in Scikit-Learn. As the name suggest, Gaussian Naïve Bayes classifier assumes that the data from each label is drawn from a simple Gaussian distribution. The Scikit-learn provides sklearn.naive_bayes.GaussianNB to implement the Gaussian Naïve Bayes algorithm for classification.
Parameters
Following table consist the parameters used by sklearn.naive_bayes.GaussianNB method −
Sr.No | Parameter & Description |
---|---|
1 | priors − arrray-like, shape(n_classes)It represents the prior probabilities of the classes. If we specify this parameter while fitting the data, then the prior probabilities will not be justified according to the data. |
2 | Var_smoothing − float, optional, default = 1e-9This parameter gives the portion of the largest variance of the features that is added to variance in order to stabilize calculation. |
Attributes
Following table consist the attributes used by sklearn.naive_bayes.GaussianNB method −
Sr.No | Attributes & Description |
---|---|
1 | class_prior_ − array, shape(n_classes,)It provides the probability of every class. |
2 | class_count_ − array, shape(n_classes,)It provides the actual number of training samples observed in every class. |
3 | theta_ − array, shape (n_classes, n_features)It gives the mean of each feature per class. |
4 | sigma_ − array, shape (n_classes, n_features)It gives the variance of each feature per class. |
5 | epsilon_ − floatThese are the absolute additive value to variance. |
Methods
Following table consist the methods used by sklearn.naive_bayes.GaussianNB method −
Sr.No | Method & Description |
---|---|
1 | fit(self, X, y[, sample_weight])This method will Fit Gaussian Naive Bayes classifier according to X and y. |
2 | get_params(self[, deep])With the help of this method we can get the parameters for this estimator. |
3 | partial_fit(self, X, y[,classes, sample_weight])This method allows the incremental fit on a batch of samples. |
4 | predict(self, X)This method will perform classification on an array of test vectors X. |
5 | predict_log_proba(self, X)This method will return the log-probability estimates for the test vector X. |
6 | predict_proba(self, X)This method will return the probability estimates for the test vector X. |
7 | score(self, X, y[, sample_weight])With this method we can get the mean accuracy on the given test data and labels. |
9 | set_params(self, \*\*params)This method allows us to set the parameters of this estimator. |
Implementation Example
The Python script below will use sklearn.naive_bayes.GaussianNB method to construct Gaussian Naïve Bayes Classifier from our data set −
Example
import numpy as np X = np.array([[-1, -1], [-2, -4], [-4, -6], [1, 2]]) Y = np.array([1, 1, 2, 2]) from sklearn.naive_bayes import GaussianNB GNBclf = GaussianNB() GNBclf.fit(X, Y)
Output
GaussianNB(priors = None, var_smoothing = 1e-09)
Now, once fitted we can predict the new value by using predict() method as follows −
Example
print((GNBclf.predict([[-0.5, 2]]))
Output
[2]
Next Topic : Click Here
Pingback: Scikit-Learn : Classification with Naïve Bayes | Adglob Infosystem Pvt Ltd