10. Avaliação do Modelo KNN
A avaliação do modelo KNN é fundamental para verificar se o desempenho obtido durante o treinamento se mantém em dados nunca vistos. As principais métricas utilizadas são: - Acurácia: mede a proporção de acertos do modelo. - Precision, Recall e F1-score: detalham o desempenho para cada classe, mostrando o equilíbrio entre acertos e erros. - Matriz de confusão: permite visualizar os tipos de erro (falsos positivos e negativos) e acertos do modelo.
Interpretar corretamente essas métricas permite validar a qualidade das previsões, identificar possíveis ajustes necessários e comparar o desempenho do KNN com outros modelos, como a árvore de decisão.
from sklearn.metrics import accuracy_score, classification_report, confusion_matrix
import seaborn as sns
import matplotlib.pyplot as plt
y_pred = knn.predict(X_test)
print('Acurácia:', accuracy_score(y_test, y_pred))
print(classification_report(y_test, y_pred))
sns.heatmap(confusion_matrix(y_test, y_pred), annot=True, fmt='d')
plt.xlabel('Predito')
plt.ylabel('Real')
plt.savefig('imagens/matriz_confusao_knn.png')
plt.show()
O desempenho do modelo pode ser comparado com o da árvore de decisão para verificar qual abordagem é mais eficaz para este problema.
| Classe | Precision | Recall | F1-score | Suporte |
|---|---|---|---|---|
| 0 | 0.80 | 0.76 | 0.78 | 100 |
| 1 | 0.77 | 0.81 | 0.79 | 100 |
| Média | 0.78 | 0.78 | 0.78 | 200 |
Acurácia: 0.78
| Predito 0 | Predito 1 | |
|---|---|---|
| Real 0 | 76 | 24 |
| Real 1 | 19 | 81 |
- O modelo apresenta boa acurácia e equilíbrio entre precisão e recall.
- Erra mais ao prever alunos reprovados do que aprovados.
A matriz de confusão apresentada acima permite avaliar quantitativamente os acertos e erros do modelo KNN. Para complementar essa análise, a visualização da fronteira de decisão mostra como o algoritmo separa as classes no espaço das variáveis, evidenciando o comportamento do classificador.
Fronteira de Decisão do KNN
O gráfico acima mostra como o modelo KNN separa as classes com base em duas variáveis categóricas. As regiões coloridas representam as áreas de decisão do algoritmo, ilustrando a capacidade do modelo de classificar os alunos.

