Escolar Documentos
Profissional Documentos
Cultura Documentos
Vooo – Insights
Data Science. Python. Gestão.
Tutorial – Compreensã…
Traduzido de: 6 Easy Steps to Learn Naive Bayes Algorithm (with code in Python)
Introdução
Imagine uma situação como essa: você está trabalhando em um problema de classi cação
e gerou o conjunto de hipóteses, criou os recursos e analisou a importância das variáveis.
E agora, em menos de uma hora, seu chefe quer ver o primeiro resultado do modelo.
O que você vai fazer? Você tem centenas de milhares de pontos de dados e muitas
variáveis no conjunto de dados de treinamento. Nessa situação, se estivesse em seu lugar,
eu teria usado ‘Naive Bayes’, que pode ser extremamente rápido em relação a outros
algoritmos de classi cação. Ele usa o teorema de probabilidade de Bayes para prever a
classe de um conjunto de dados desconhecido.
https://www.vooo.pro/insights/6-passos-faceis-para-aprender-o-algoritmo-naive-bayes-com-o-codigo-em-python/ 1/9
15/04/2019 6 passos fáceis para aprender o algoritmo Naive Bayes (com o código em Python) – Vooo – Insights
Neste artigo, vamos explicar o básico deste algoritmo, para que da próxima vez que você
se deparar com grandes volumes de dados, você possa usar esse algoritmo. Além disso,
mesmo um novato em Python deveria se sentir bem com a quantidade de códigos
disponíveis neste artigo.
Índice
1. O que é o algoritmo Naive Bayes?
2. Como o algoritmo Naive Bayes funciona?
O modelo Naive Bayes é fácil de construir e particularmente útil para grandes volumes de
dados. Além de simples, Naive Bayes é conhecido por ganhar de métodos de classi cação
altamente so sticados.
https://www.vooo.pro/insights/6-passos-faceis-para-aprender-o-algoritmo-naive-bayes-com-o-codigo-em-python/ 2/9
15/04/2019 6 passos fáceis para aprender o algoritmo Naive Bayes (com o código em Python) – Vooo – Insights
Acima,
Passo 3: Agora, use a equação Bayesiana Naive para calcular a probabilidade posterior
para cada classe. A classe com maior probabilidade posterior é o resultado da previsão.
https://www.vooo.pro/insights/6-passos-faceis-para-aprender-o-algoritmo-naive-bayes-com-o-codigo-em-python/ 3/9
15/04/2019 6 passos fáceis para aprender o algoritmo Naive Bayes (com o código em Python) – Vooo – Insights
Problema: Os jogadores irão jogar se o tempo está ensolarado. Esta a rmação está
correta?
Aqui temos P (Ensolarado | Sim) = 3/9 = 0,33, P (Ensolarado) = 5/14 = 0,36, P (Sim) = 9/14 =
0,64
Agora, P (Sim | Ensolarado) = 0,33 * 0,64 / 0,36 = 0,60, que tem maior probabilidade.
Naive Bayes usa um método similar para prever a probabilidade de classe diferente com
base em vários atributos. Este algoritmo é usado principalmente em classi cação de texto
e com os problemas que têm múltiplas classes.
É fácil e rápido para prever o conjunto de dados da classe de teste. Também tem
um bom desempenho na previsão de classes múltiplas.
Contras:
Se a variável categórica tem uma categoria (no conjunto de dados de teste) que
não foi observada no conjunto de dados de treinamento, então o modelo irá
atribuir uma probabilidade de 0 (zero) e não será capaz de fazer uma previsão.
Isso é muitas vezes conhecido como “Zero Frequency”. Para resolver isso,
podemos usar a técnica de alisamento. Uma das técnicas mais simples de
alisamento é a chamada estimativa de Laplace.
Por outro lado naive Bayes é também conhecido como um mau estimador, por
isso, as probabilidades calculadas não devem ser levadas muito a sério.
Outra limitação do Naive Bayes é a suposição de preditores independentes. Na
vida real, é quase impossível que ter um conjunto de indicadores que sejam
completamente independentes.
https://www.vooo.pro/insights/6-passos-faceis-para-aprender-o-algoritmo-naive-bayes-com-o-codigo-em-python/ 4/9
15/04/2019 6 passos fáceis para aprender o algoritmo Naive Bayes (com o código em Python) – Vooo – Insights
Multinomial: É usado para contagem discrete. Por exemplo, digamos que temos um
problema de classi cação de texto. Aqui podemos considerar tentativas de Bernoulli, que
é um passo além e, em vez de “palavra que ocorre no documento”, temos “contar quantas
vezes a palavra ocorre no documento”, você pode pensar nisso como “número de vezes
que o número desfecho x_i é observado durante as n tentativas “.
Bernoulli: O modelo binomial é útil se os vetores são binários (ou seja zeros e uns). Uma
aplicação seria de classi cação de texto com um modelo de ‘saco de palavras’ onde os 1s e
0s são “palavra ocorre no documento” e “palavra não ocorre no documento”,
respectivamente.
Com base no seu conjunto de dados, você pode escolher qualquer um modelo acima
discutidos. Abaixo está o exemplo de modelo de Gauss.
Código Python
https://www.vooo.pro/insights/6-passos-faceis-para-aprender-o-algoritmo-naive-bayes-com-o-codigo-em-python/ 5/9
15/04/2019 6 passos fáceis para aprender o algoritmo Naive Bayes (com o código em Python) – Vooo – Insights
#Resultado de previsão
predicted= model.predict([[1,2],[3,4]])
print(predicted)
Output: ([3,4])
Acima, nós vemos o modelo Naive Bayes básico. Você pode melhorar o poder deste
modelo básico ajustando parâmetros de lidando com premissas de forma inteligente.
Vejamos os métodos para melhorar o desempenho do Naive Bayes Modelo. Eu
recomendo que você passar por este documento para obter mais detalhes sobre a
classi cação de texto usando Naive Bayes.
https://www.vooo.pro/insights/6-passos-faceis-para-aprender-o-algoritmo-naive-bayes-com-o-codigo-em-python/ 6/9
15/04/2019 6 passos fáceis para aprender o algoritmo Naive Bayes (com o código em Python) – Vooo – Insights
Você poderia pensar que aplicar alguma técnica combinação classi cador como
“ensembling”, “bagging” e “boosting”, mas na prática esses métodos não
ajudariam. Na verdade, não ajudariam pois sua nalidade é reduzir a variância.
Naive Bayes não tem variância para minimizar.
Notas nais
Neste artigo, nós olhamos um dos algoritmos de machine learning supervisionado
chamado “Naive Bayes”, usado principalmente para a classi cação. Parabéns, se você tiver
entendido completamente este artigo, você já deu o primeiro passo para dominar este
algoritmo. A partir daqui, tudo que você precisa é de prática.
Veja também:
Guia de acesso rápido Python – Matplotlib
Breve introdução ao Python
Compartilhe isso:
4
Relacionado
MARCADO análise de dados analytics bayes Data Science Estatistica naive bayes Python; naive bayes
https://www.vooo.pro/insights/6-passos-faceis-para-aprender-o-algoritmo-naive-bayes-com-o-codigo-em-python/ 7/9
15/04/2019 6 passos fáceis para aprender o algoritmo Naive Bayes (com o código em Python) – Vooo – Insights
Pesquisa
Posts recentes
Arquivos
abril 2019
março 2019
janeiro 2019
novembro 2018
setembro 2018
junho 2018
maio 2018
abril 2018
janeiro 2018
dezembro 2017
setembro 2017
agosto 2017
junho 2017
maio 2017
abril 2017
março 2017
dezembro 2016
https://www.vooo.pro/insights/6-passos-faceis-para-aprender-o-algoritmo-naive-bayes-com-o-codigo-em-python/ 8/9
15/04/2019 6 passos fáceis para aprender o algoritmo Naive Bayes (com o código em Python) – Vooo – Insights
novembro 2016
outubro 2016
setembro 2016
agosto 2016
julho 2016
maio 2016
abril 2016
https://www.vooo.pro/insights/6-passos-faceis-para-aprender-o-algoritmo-naive-bayes-com-o-codigo-em-python/ 9/9