Scikit Learn - Completa Naïve Bayes

Un altro utile e ingenuo modello di Bayes, progettato per correggere i severi presupposti del classificatore multinomiale di Bayes. Questo tipo di classificatore NB è adatto per set di dati sbilanciati. Lo Scikit-learn forniscesklearn.naive_bayes.ComplementNB implementare l'algoritmo Gaussian Naïve Bayes per la classificazione.

Parametri

La tabella seguente è composta dai parametri utilizzati da sklearn.naive_bayes.ComplementNB 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

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. Questo parametro viene utilizzato solo in caso limite con una singola classe nel set di dati di addestramento.

3

class_prior - size (n_classes,), opzionale, Default = None

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

4

norm - Booleano, opzionale, predefinito = False

Indica al modello se eseguire o meno la seconda normalizzazione dei pesi.

Attributi

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

Suor n Attributi e descrizione
1

class_log_prior_ - array, forma (n_class,)

Fornisce la probabilità logaritmica empirica livellata per ogni classe. Questo attributo viene utilizzato solo in caso limite con una singola classe nel set di dati di addestramento.

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 i pesi empirici per i componenti di classe.

4

feature_count_ - array, forma (n_class, n_features)

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

5

feature_all_ - array, forma (n_features,)

Fornisce il numero effettivo di campioni di addestramento rilevati per ciascuna funzionalità.

I metodi di sklearn.naive_bayes.ComplementNB 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 -

Esempio

import numpy as np
X = np.random.randint(15, size = (15, 1000))
y = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15])
from sklearn.naive_bayes import ComplementNB
CNBclf = ComplementNB()
CNBclf.fit(X, y)

Produzione

ComplementNB(alpha = 1.0, class_prior = None, fit_prior = True, norm = False)

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

Esempio

print((CNBclf.predict(X[10:15]))

Produzione

[11 12 13 14 15]