Projeto desenvolvido para o Tech Challenge - Fase 2 da Pós-Graduação em Data Analytics (POSTECH).
Desenvolver um modelo de classificação capaz de prever a qualidade de um vinho tinto com base em suas características físico-químicas, utilizando o Wine Quality Dataset (UCI Machine Learning Repository / Kaggle).
A variável de qualidade original (nota de 0 a 10) foi transformada em uma classificação binária:
- Alta Qualidade: nota ≥ 7
- Baixa/Média Qualidade: nota < 7
wine-quality-classification/ │ ├── data/ # Base de dados utilizada (winequality-red.csv) ├── notebooks/ # Notebook com a análise exploratória e modelagem ├── src/ # Scripts auxiliares ├── results/ # Gráficos e métricas geradas pelos modelos ├── requirements.txt # Bibliotecas utilizadas no projeto └── README.md # Este arquivo
O dataset contém variáveis físico-químicas de amostras de vinho tinto, como:
- Acidez fixa (fixed acidity)
- Acidez volátil (volatile acidity)
- Ácido cítrico (citric acid)
- Açúcar residual (residual sugar)
- Cloretos (chlorides)
- Dióxido de enxofre livre e total (free/total sulfur dioxide)
- Densidade (density)
- pH
- Sulfatos (sulphates)
- Teor alcoólico (alcohol)
- Qualidade (quality) — variável alvo
Fonte: UCI Machine Learning Repository
O projeto seguiu as seguintes etapas:
- Compreensão do problema e transformação da variável alvo em classificação binária
- Análise exploratória de dados (EDA): distribuições, correlações e detecção de outliers
- Pré-processamento: separação treino/teste estratificada e padronização das variáveis
- Desenvolvimento de modelos: Decision Tree e Random Forest
- Avaliação: comparação de acurácia, precisão, recall e F1-score
- Interpretação dos resultados: identificação das variáveis mais relevantes
| Modelo | Acurácia | Precisão | Recall | F1-Score |
|---|---|---|---|---|
| Decision Tree | 0.75 | 0.34 | 0.91 | 0.49 |
| Random Forest | 0.88 | 0.52 | 0.84 | 0.64 |
O Random Forest apresentou o melhor desempenho geral, sendo o modelo recomendado para este problema.
- O teor alcoólico (alcohol) é a variável mais determinante para a qualidade do vinho
- A acidez volátil (volatile acidity) tem relação inversa com a qualidade
- A base de dados apresenta desbalanceamento de classes (86,4% vs 13,6%), tratado com
o parâmetro
class_weight='balanced'nos modelos
# Clonar o repositório
git clone https://github.com/SEU_USUARIO/wine-quality-classification.git
cd wine-quality-classification
# Criar e ativar o ambiente virtual
python -m venv .venv
.venv\Scripts\Activate.ps1 # Windows
# Instalar as dependências
pip install -r requirements.txt
# Abrir o notebook
jupyter notebook notebooks/modelo_de_classificação.ipynbWillian Luiz — Pós-Graduação em Data Analytics, POSTECH