Bo Kolstrup

Logo

Científico de Datos con experiencia en modelos predictivos y análisis de datos

View the Project on GitHub Bokols/Prediccion-de-Precios-de-Vehiculos

Predicción de Precios de Vehículos Usados Utilizando Aprendizaje Automático

Prueba el modelo aquí:

Introducción

El objetivo de este proyecto es predecir el precio de vehículos usados basándose en varias características como el año del modelo, la marca, el estado, el tipo de combustible, el kilometraje, el tipo de transmisión y la categoría del vehículo. Se aplican técnicas de Random Forest, Gradient Boosting y XGBoost para desarrollar modelos predictivos. Utilizamos GridSearchCV para optimizar los hiperparámetros de estos modelos y evaluamos su rendimiento utilizando el Error Cuadrático Medio Raíz (RMSE).

Este proyecto incluye varias etapas, desde el Análisis Exploratorio de Datos (EDA) hasta el entrenamiento y optimización de modelos, con enfoque en lograr el mejor modelo para predecir los precios de los vehículos.

Análisis Exploratorio de Datos (EDA)

El Análisis Exploratorio de Datos (EDA) es un paso crucial para comprender la estructura y las relaciones dentro del conjunto de datos. A través de EDA, obtenemos información sobre la distribución de las características, su relación con la variable objetivo (precio) y los posibles problemas de datos que deben ser abordados.

1. Visión General de los Datos

El conjunto de datos consta de varias características relacionadas con los atributos de los vehículos, que incluyen:

La variable objetivo es price, que es el precio que deseamos predecir a partir de estas características.

2. Limpieza y Preparación de los Datos

Antes de comenzar cualquier análisis, primero aseguramos que el conjunto de datos esté limpio y listo para el análisis:

3. Estadísticas Resumidas

Calculamos estadísticas descriptivas para cada característica para entender su distribución:

4. Análisis Univariante

Realizamos un análisis univariante para comprender la distribución de las características individuales:

5. Análisis Bivariante

Analizamos las relaciones entre las características individuales y la variable objetivo:

6. Importancia de las Características

Para comprender qué características son más influyentes en la predicción del precio, utilizamos Random Forest para calcular la importancia de las características. Se espera que características como odometer, condition y model_year sean los predictores más significativos del precio.

7. Visualización de Relaciones

Las visualizaciones son clave para descubrir patrones en los datos:

8. Ideas Derivadas del EDA

A partir del EDA, obtenemos varias ideas que guían los siguientes pasos en el proceso de modelado:

Entrenamiento y Optimización del Modelo

Una vez completado el EDA y preparada la data, procedemos con la selección y optimización del modelo. Utilizamos varios modelos de aprendizaje automático para predecir los precios de los vehículos, incluyendo Random Forest, Gradient Boosting y XGBoost. El objetivo es identificar el modelo con mejor rendimiento a través de la optimización de hiperparámetros y validación cruzada.

1. Random Forest Regressor

Entrenamos el modelo Random Forest Regressor para predecir el precio de los vehículos. Utilizamos GridSearchCV para ajustar los hiperparámetros, como max_depth, n_estimators y min_samples_split. El modelo se entrena y calculamos el Error Cuadrático Medio Raíz (RMSE) para evaluar su rendimiento.

2. Gradient Boosting Regressor

De manera similar, entrenamos el Gradient Boosting Regressor utilizando los mejores hiperparámetros obtenidos mediante GridSearchCV. Evaluamos el rendimiento utilizando RMSE y comparamos los resultados con el modelo de Random Forest.

3. XGBoost Regressor

El XGBoost Regressor también se entrena y sus hiperparámetros se optimizan mediante GridSearchCV. Se calcula el RMSE y comparamos el rendimiento con los otros modelos.

4. Evaluación del Modelo

La selección final del modelo se basa en el rendimiento de RMSE. Entre los tres modelos probados, Random Forest Regressor alcanzó el mejor rendimiento con un RMSE de $1,591.18. Los otros modelos, Gradient Boosting y XGBoost, tuvieron un rendimiento ligeramente inferior, con RMSE de $1,969.30 y $3,580.22, respectivamente.

Despliegue del Modelo: Predicción y Guardado del Modelo

Una vez identificado el mejor modelo, lo desplegamos para realizar predicciones con nuevos datos. Preparamos un conjunto de datos de prueba con características de vehículos (por ejemplo, año del modelo, estado, tipo de combustible), transformamos las variables categóricas utilizando los LabelEncoders entrenados y predecimos el precio utilizando el Random Forest Regressor.

Además, el modelo entrenado y los codificadores se guardan utilizando Pickle para su uso posterior, asegurando que el modelo pueda ser cargado y utilizado para futuras predicciones sin necesidad de reentrenarlo.

Tecnologías Utilizadas

Conclusión

Este proyecto ha demostrado cómo aplicar técnicas de aprendizaje automático para predecir el precio de vehículos usados. A través del uso de Random Forest, Gradient Boosting, y XGBoost, hemos identificado que Random Forest es el modelo más adecuado para esta tarea, logrando el mejor rendimiento con un RMSE de $1,591.18.

Prueba el modelo aquí: