Exemplo de Naive Bayes

Beginner

This tutorial is from open-source community. Access the source code

Introdução

Neste laboratório, iremos percorrer um exemplo de utilização de classificadores Naive Bayes da biblioteca scikit-learn em Python. Os classificadores Naive Bayes são um conjunto de algoritmos de aprendizagem supervisionada frequentemente utilizados para tarefas de classificação. Estes classificadores baseiam-se na aplicação do teorema de Bayes com a suposição de independência condicional entre cada par de características, dado o valor da variável de classe.

Neste exemplo, utilizaremos o classificador Gaussian Naive Bayes da scikit-learn para classificar o conjunto de dados iris, um conjunto de dados popular em aprendizagem automática. O objetivo é prever a espécie de uma flor de iris com base nas dimensões das suas pétalas e sépalas.

Dicas da Máquina Virtual

Após o arranque da máquina virtual, clique no canto superior esquerdo para mudar para a aba Notebook para aceder ao Jupyter Notebook para a prática.

Por vezes, pode ser necessário esperar alguns segundos para o Jupyter Notebook terminar o carregamento. A validação das operações não pode ser automatizada devido a limitações no Jupyter Notebook.

Se tiver problemas durante a aprendizagem, não hesite em contactar o Labby. Forneça feedback após a sessão e resolveremos prontamente o problema para si.

Este é um Lab Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para completar cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível iniciante com uma taxa de conclusão de 91%. Recebeu uma taxa de avaliações positivas de 100% dos estudantes.

Importar Bibliotecas e Carregar o Conjunto de Dados

Comecemos importando as bibliotecas necessárias e carregando o conjunto de dados iris. Usaremos a função load_iris do módulo sklearn.datasets para carregar o conjunto de dados.

from sklearn.datasets import load_iris

## Carregar o conjunto de dados iris
iris = load_iris()
X = iris.data  ## Características
y = iris.target  ## Variável alvo

print("Número de amostras:", X.shape[0])
print("Número de características:", X.shape[1])
print("Número de classes:", len(set(y)))

Dividir o Conjunto de Dados em Conjuntos de Treino e Teste

Em seguida, dividiremos o conjunto de dados em conjuntos de treino e teste utilizando a função train_test_split do módulo sklearn.model_selection. O conjunto de treino será utilizado para treinar o classificador Naive Bayes, e o conjunto de teste será utilizado para avaliar o seu desempenho.

from sklearn.model_selection import train_test_split

## Dividir o conjunto de dados em conjuntos de treino e teste
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

Treinar e Avaliar o Classificador Gaussian Naive Bayes

Agora, treinaremos o classificador Gaussian Naive Bayes no conjunto de treino e avaliaremos seu desempenho no conjunto de teste. Usaremos a classe GaussianNB do módulo sklearn.naive_bayes.

from sklearn.naive_bayes import GaussianNB

## Criar um classificador Gaussian Naive Bayes
gnb = GaussianNB()

## Treinar o classificador
gnb.fit(X_train, y_train)

## Prever a variável alvo para o conjunto de teste
y_pred = gnb.predict(X_test)

## Calcular a precisão do classificador
accuracy = (y_pred == y_test).sum() / len(y_test)
print("Precisão:", accuracy)

Interpretar os Resultados

Com base na precisão obtida, podemos interpretar o desempenho do classificador Gaussian Naive Bayes no conjunto de dados iris. A precisão representa a proporção de valores da variável alvo previstos corretamente no conjunto de teste. Neste caso, a precisão representa a proporção de espécies de flores iris classificadas corretamente.

Resumo

Neste laboratório, analisamos um exemplo de utilização do classificador Gaussian Naive Bayes do scikit-learn. Carregamos o conjunto de dados iris, dividimos-o em conjuntos de treino e teste, treinámos o classificador no conjunto de treino e avaliámos o seu desempenho no conjunto de teste. A precisão obtida fornece-nos uma indicação de quão bem o classificador se desempenhou na previsão das espécies de flores iris. Os classificadores Naive Bayes são algoritmos simples, mas eficazes, para tarefas de classificação e são frequentemente utilizados em diversas aplicações do mundo real.