Scikit Learn - Bernoulli Naïve Bayes

Bernoulli Naïve Bayes è un altro utile modello ingenuo di Bayes. Il presupposto in questo modello è che le caratteristiche binarie (0 e 1) in natura. Un'applicazione della classificazione Bernoulli Naïve Bayes è la classificazione del testo con il modello "borsa di parole". Lo Scikit-learn forniscesklearn.naive_bayes.BernoulliNB implementare l'algoritmo Gaussian Naïve Bayes per la classificazione.

Parametri

La tabella seguente è composta dai parametri utilizzati da sklearn.naive_bayes.BernoulliNB metodo -

Suor n Parametro e descrizione
1

alpha - float, opzionale, default = 1.0

Rappresenta il parametro additivo levigante. Se scegli 0 come valore, non ci sarà alcun livellamento.

2

binarize - float o None, opzionale, default = 0.0

Con questo parametro possiamo impostare la soglia per la binarizzazione delle caratteristiche del campione. Binarizzazione qui significa mappatura ai booleani. Se scegli che il suo valore sia Nessuno, significa che l'input è costituito da vettori binari.

3

fit_prior - Booleano, opzionale, predefinito = vero

Indica al modello se apprendere o meno le probabilità a priori della classe. Il valore predefinito è True ma se impostato su False, gli algoritmi useranno una priorità uniforme.

4

class_prior - tipo array, dimensione (n_class,), opzionale, impostazione predefinita = Nessuno

Questo parametro rappresenta le probabilità a priori di ciascuna classe.

Attributi

La tabella seguente è costituita dagli attributi utilizzati da sklearn.naive_bayes.BernoulliNB metodo -

Suor n Attributi e descrizione
1

class_log_prior_ - array, forma (n_class,)

Fornisce la probabilità di log smussata per ogni classe.

2

class_count_ - array, forma (n_class,)

Fornisce il numero effettivo di campioni di addestramento riscontrati per ciascuna classe.

3

feature_log_prob_ - array, forma (n_class, n_features)

Fornisce la probabilità logaritmica empirica delle caratteristiche data una classe $ P \ left (\ begin {array} {c} features \ arrowvert Y \ end {array} \ right) $.

4

feature_count_ - array, forma (n_class, n_features)

Fornisce il numero effettivo di campioni di addestramento incontrati per ciascuna (classe, caratteristica).

I metodi di sklearn.naive_bayes.BernoulliNB sono gli stessi che abbiamo usato in sklearn.naive_bayes.GaussianNB.

Esempio di implementazione

Lo script Python di seguito utilizzerà sklearn.naive_bayes.BernoulliNB metodo per costruire Bernoulli Naïve Bayes Classifier dal nostro set di dati -

import numpy as np
X = np.random.randint(10, size = (10, 1000))
y = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
from sklearn.naive_bayes import BernoulliNB
BNBclf = BernoulliNB()
BNBclf.fit(X, y)

Produzione

BernoulliNB(alpha = 1.0, binarize = 0.0, class_prior = None, fit_prior = True)

Ora, una volta adattato, possiamo prevedere il nuovo valore utilizzando il metodo prediction () come segue:

Esempio

print((BNBclf.predict(X[0:5]))

Produzione

[1 2 3 4 5]