Scikit Learn - Multinomial Naïve Bayes
É outro classificador Naïve Bayes útil. Ele pressupõe que os recursos são extraídos de uma distribuição multinomial simples. O Scikit-learn fornecesklearn.naive_bayes.MultinomialNB implementar o algoritmo Multinomial Naïve Bayes para classificação.
Parâmetros
A tabela a seguir consiste nos parâmetros usados por sklearn.naive_bayes.MultinomialNB método -
Sr. Não | Parâmetro e Descrição |
---|---|
1 | alpha - flutuante, opcional, padrão = 1,0 Ele representa o parâmetro de suavização aditivo. Se você escolher 0 como valor, não haverá suavização. |
2 | fit_prior - Booleano, opcional, padrão = verdadeiro Diz ao modelo se deve aprender as probabilidades anteriores da aula ou não. O valor padrão é True, mas se definido como False, os algoritmos usarão uma anterior uniforme. |
3 | class_prior - semelhante a matriz, tamanho (n_classes,), opcional, Padrão = Nenhum Este parâmetro representa as probabilidades anteriores de cada classe. |
Atributos
A tabela a seguir consiste nos atributos usados por sklearn.naive_bayes.MultinomialNB método -
Sr. Não | Atributos e descrição |
---|---|
1 | class_log_prior_ - matriz, forma (n_classes,) Ele fornece a probabilidade de log suavizada para cada classe. |
2 | class_count_ - matriz, forma (n_classes,) Ele fornece o número real de exemplos de treinamento encontrados para cada classe. |
3 | intercept_ - matriz, forma (n_classes,) Estes são os espelhos class_log_prior_ para interpretar o modelo MultinomilaNB como um modelo linear. |
4 | feature_log_prob_ - matriz, forma (n_classes, n_features) Ele fornece o log empírico da probabilidade de características dadas uma classe $ P \ left (\ begin {array} {c} features \ arrowvert Y \ end {array} \ right) $. |
5 | coef_ - matriz, forma (n_classes, n_features) Estes são os espelhos feature_log_prior_ para interpretar o modelo MultinomilaNB como um modelo linear. |
6 | feature_count_ - matriz, forma (n_classes, n_features) Ele fornece o número real de exemplos de treinamento encontrados para cada (classe, recurso). |
Os métodos de sklearn.naive_bayes. MultinomialNB são os mesmos que usamos em sklearn.naive_bayes.GaussianNB.
Exemplo de Implementação
O script Python abaixo usará sklearn.naive_bayes.GaussianNB método para construir o classificador Gaussian Naïve Bayes de nosso conjunto de dados -
Exemplo
import numpy as np
X = np.random.randint(8, size = (8, 100))
y = np.array([1, 2, 3, 4, 5, 6, 7, 8])
from sklearn.naive_bayes import MultinomialNB
MNBclf = MultinomialNB()
MNBclf.fit(X, y)
Resultado
MultinomialNB(alpha = 1.0, class_prior = None, fit_prior = True)
Agora, uma vez ajustado, podemos prever o novo valor aby usando o método predict () como segue -
Exemplo
print((MNBclf.predict(X[4:5]))
Resultado
[5]