Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

Clasificación de calidad de ramen con Machine Learning

Proyecto de clasificación binaria que predice si un paquete de ramen va a ser bien valorado ("bueno") o no ("malo"), a partir de atributos categóricos como marca, estilo de preparación y país de origen.

Contexto

El dataset utilizado (Ramen Ratings, ~2.500 reseñas de theramenrater.com) incluye marca, variedad, estilo, país y una calificación en estrellas (0 a 5) por producto. A partir de esa calificación se construyó una variable binaria de calidad (Stars >= 4 → "bueno") y se entrenaron modelos para predecirla usando únicamente atributos categóricos del producto, sin acceso directo a la calificación.

Enfoque

  1. Calidad de datos: limpieza de nulos, normalización del campo Stars (manejo del valor "Unrated"), tratamiento de la columna Top Ten, eliminación de columnas irrelevantes para el modelo (Review #, Variety).
  2. Definición del target: is_good = 1 si Stars >= 4, 0 en caso contrario.
  3. Preprocesamiento: codificación one-hot de variables categóricas (Brand, Style, Country) y separación train/test estratificada.
  4. Modelado: entrenamiento y ajuste de hiperparámetros (GridSearchCV, 5-fold CV, scoring F1) para dos modelos:
    • Regresión Logística
    • SVM (kernel lineal y RBF)
  5. Evaluación: Accuracy, Precision, Recall, F1-score y AUC-ROC, con matrices de confusión y curvas ROC comparativas.

Nota metodológica: data leakage

Una primera versión de este análisis incluía Stars (la variable de la que depende directamente el target) entre las features del modelo, lo que producía métricas perfectas (1.0) de forma artificial — el modelo no estaba aprendiendo un patrón real, sino replicando el umbral usado para construir el target. En la versión final, Stars y Top Ten fueron excluidas de las variables predictoras, dejando como features únicamente Brand, Style y Country. Esto refleja un problema más realista y más difícil: predecir calidad percibida a partir de atributos del producto conocidos de antemano, no a partir de la calificación misma.

Resultados

Métrica Regresión Logística SVM (kernel lineal)
Accuracy 0.70 0.72
Precision 0.65 0.68
Recall 0.70 0.66
F1-score 0.67 0.67
AUC-ROC 0.73 0.72

Ambos modelos muestran un desempeño similar. Se optó por la Regresión Logística como modelo final por su interpretabilidad y menor costo computacional, dado el empate técnico en F1-score.

Tecnologías

  • Python (pandas, scikit-learn, seaborn, matplotlib)
  • Regresión Logística, SVM
  • GridSearchCV para búsqueda de hiperparámetros

Contenido

  • ramen_clasificacion_calidad.ipynb: notebook completo con EDA, preprocesamiento, entrenamiento, ajuste de hiperparámetros y evaluación de modelos.

Proyecto desarrollado como parte de mi formación en Data Science (bootcamp Desafío Latam).

About

Clasificación de calidad de ramen con Regresión Logística y SVM

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages