mojolearn.GaussianNB#
- class mojolearn.GaussianNB(*, priors=None, var_smoothing=1e-09)#
Gaussian naive Bayes classifier.
Follows scikit-learn’s
GaussianNB. Fit learns each class’s per-feature mean and population variance, addsvar_smoothingtimes the largest feature variance to every variance, and predicts with the Gaussian likelihood. Computation is float32.fitacceptssample_weight, which weights the class means, variances and counts as in scikit-learn.partial_fit(X, y, classes=None, sample_weight=None)merges each batch into the running counts, means and variances;classesis required on the first call (ValueErrorotherwise) and may only be repeated unchanged afterwards.- Parameters:
priors (array-like of shape (n_classes,), default None) – Class prior probabilities; nonnegative and summing to one (
ValueErrorotherwise). None uses the class frequencies in the training data.var_smoothing (float, default 1e-9) – Fraction of the largest feature variance added to every variance.
- Variables:
classes_ (array of shape (n_classes,)) – Class labels.
class_count_ (array of shape (n_classes,)) – Number (or weighted number) of training rows per class.
class_prior_ (array of shape (n_classes,)) – Probability of each class.
theta_ (array of shape (n_classes, n_features)) – Mean of each feature per class.
var_ (array of shape (n_classes, n_features)) – Smoothed variance of each feature per class.
epsilon_ (float) – Value added to the variances.
n_features_in_ (int) – Number of columns seen in fit.
numeric_mode_ (str) – Numeric mode the estimator was fitted in; prediction runs in the same mode.
Examples
>>> import numpy as np, mojolearn >>> rng = np.random.default_rng(0) >>> X = rng.random((1000, 8), dtype=np.float32) >>> y = (X[:, 0] > 0.5).astype(np.int64) >>> model = mojolearn.GaussianNB().fit(X, y) >>> model.predict(X[:5])
Methods
fit(X, y[, sample_weight])fit_transform(X[, y])Fit to
X, then transformX.get_params([deep])Return the constructor parameters as a dict.
partial_fit(X, y[, classes, sample_weight])predict(X)Predict the class of each row.
Return the unnormalized log score of each row and class.
Return the log of the class probabilities for each row.
Return class probabilities for each row.
score(X, y)Return the mean accuracy on the given rows and labels.
set_params(**params)Set constructor parameters.
- fit_transform(X, y=None, **fit_params)#
Fit to
X, then transformX.- Returns:
array – The transformed data.
- get_params(deep=True)#
Return the constructor parameters as a dict.
- Parameters:
deep (bool, default True) – Accepted for scikit-learn compatibility.
- Returns:
dict – Parameter names mapped to their values.
- predict(X)#
Predict the class of each row.
- Parameters:
X (array-like of shape (n_samples, n_features)) – Rows to classify.
- Returns:
array of shape (n_samples,) – Predicted class labels.
- predict_joint_log_proba(X)#
Return the unnormalized log score of each row and class.
- Parameters:
X (array-like of shape (n_samples, n_features)) – Rows to score.
- Returns:
array of shape (n_samples, n_classes) – Log scores that
predict_log_probanormalizes, in the order ofclasses_.
- predict_log_proba(X)#
Return the log of the class probabilities for each row.
- Parameters:
X (array-like of shape (n_samples, n_features)) – Rows to score.
- Returns:
array of shape (n_samples, n_classes) – Log probability of each class, in the order of
classes_.
- predict_proba(X)#
Return class probabilities for each row.
Probabilities are float32 in
identicalmode. Infastmode (Apple), they are float64, so that a very confident prediction does not round to exactly 1.0.- Parameters:
X (array-like of shape (n_samples, n_features)) – Rows to score.
- Returns:
array of shape (n_samples, n_classes) – Probability of each class, in the order of
classes_.
- score(X, y)#
Return the mean accuracy on the given rows and labels.
- Parameters:
X (array-like of shape (n_samples, n_features)) – Rows to classify.
y (array-like of shape (n_samples,)) – True labels.
- Returns:
float – Fraction of rows classified correctly.
- set_params(**params)#
Set constructor parameters.
An unknown parameter name raises
ValueError.- Returns:
self