Projetos

ClassifiersCommittee

Comitê de Classificadores | Projeto N1

Faculdade
Jupyter Notebook
Arquivos

Pasta vazia.

README

Comitê de Classificadores | Projeto N1

Google Colab: https://colab.research.google.com/drive/1djx2s_zzAdDCwhxLfm3WgwBZnAHMP3Ze?usp=sharing

  • O Colab está com problemas no versionamento, recomendo visualizar o arquivo .ipynb aqui deste repo para ver a versão mais recente.

Grupo:

  • Gustavo Henrique Martins
  • Ícaro Botelho
  • Maria Clara Seixa Scheffel
  • Maruan Biasi El Achkar
  • Ricardo Falcão Schlieper

Dataset escolhido: Rain in Australia

Algoritmos escolhidos:

  • K-Nearest Neighbors (KNN)
  • Decision Tree Classifier (Tree-Based)
  • Random Forest Classifier (Tree-Based)
  • XGBoost Classifier (Tree-Based)
  • LightGBM Classifier (Tree-Based)
  • CatBoost Classifier (Tree-Based)
  • Perceptron
  • Gaussian Naive Bayes (Naive Bayes)
  • Support Vector Classification (SVC)
  • Multi-Layer Perceptron (MLPClassifier)
  • AdaBoost Classifier (Ensemble Methods)
  • Quadratic Discriminant Analysis (QDA)

Relatório Final

download (1)

Relatório de Desempenho dos Algoritmos:

ModelAccuracyPrecisionRecallF1-score
LightGBM0.86460.75740.56660.6483
CatBoost0.86330.76180.55210.6402
Random Forest0.86000.76260.52880.6245
SVC0.85850.78650.49050.6042
MLPClassifier0.85810.74560.54000.6264
XGBoost0.85690.73190.55250.6297
AdaBoost0.85020.72520.51510.6024
KNN0.84050.68520.50990.5847
QDA0.83810.65680.55450.6014
Perceptron0.82980.62050.58550.6025
Decision Tree0.79790.54090.54530.5431
Gaussian Naive Bayes0.73150.43740.71780.5435

Melhor Algoritmo (baseado na Acurácia):

  • Algoritmo: LightGBM
  • Acurácia: 0.8646
  • Precisão: 0.7574
  • Recall: 0.5666
  • F1-score: 0.6483

Pior Algoritmo (baseado na Acurácia):

  • Algoritmo: Gaussian Naive Bayes
  • Acurácia: 0.7315
  • Precisão: 0.4374
  • Recall: 0.7178
  • F1-score: 0.5435

Roteiro de atividades:

Objetivo:

  • Criar um programa classificador (comitê de Classificadores) com aprendizagem supervisionada e empregando ao menos 2 (dois) classificadores em um Data Set que possua rótulos verdadeiros da classe. Deve escolher um Data Set para aplicar a classificação. Após a classificação, deverá comparar os classificadores para chegar à conclusão de qual algoritmo de aprendizado de máquinas teve o melhor resultado.

Algoritmos Sugeridos:

  • KNN
  • Árvores de Decisão
  • Redes Neurais
  • Naive Bayes
  • SVM
  • etc.

Etapas para documentação:

  • Pesquisar e escolher um Data Set. Estudar o Data Set para conhecer as instâncias, as classes, as características dos atributos e as quantidades de instâncias e atributos, entre outras informações pertinentes.

  • Definir as informações do Data Set, das Instâncias e dos Atributos. Deve descrever a Base de Dados, explicando as variáveis, o que cada uma representa, quais os tipos de variáveis.

  • Definir qual será a variável target (rótulo da classe) que usará no projeto. Variável target será a variável de saída, a variável que se deseja “prever” algo, qual será a conclusão que se quer chegar.

  • Escolher no mínimo 2 (dois) algoritmos de Machine Learning para criar o comitê de classificadores.

  • O documento deve conter os resultados obtidos em cada Classificador. Apresentar as seguintes métricas: acurácia (taxa de acerto); taxa de erro; matriz de confusão com as métricas Precisão e Sensibilidade/Recall, F1. Esses resultados devem estar justificados.

  • Comparar os resultados do Comitê de Classificadores. Usar um gráfico do tipo Curva ROC (Receiver Operating Characteristics) para exibir a comparação entre os classificadores.

  • A entrega deve ser feita por um link Google Colab (outros formatos devem ser solicitados a priori).