Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Ajustando modelos de machine learning

from sklearn.datasets import fetch_california_housing
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeRegressor
from sklearn.model_selection import GridSearchCV

california = fetch_california_housing()
X = california.data
y = california.target

# Dividiendo los datos entre entrenamiento y prueba
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=42)

# Definición de los hiperparámetros a ser probados
param_grid = {
    'max_depth': [5, 10, 15, 20],
    'min_samples_split': [3, 6, 11],
    'min_samples_leaf': [2, 4, 6]
}

# Creando el modelo
model = DecisionTreeRegressor()

# Aplicando Grid Search
grid_search = GridSearchCV(model, param_grid, cv=5, scoring='neg_mean_squared_error')
grid_search.fit(X_train, y_train)

# Mostrando los mejores parámetros encontrados
print(f"Mejores parámetros: {grid_search.best_params_}")
import pandas as pd
from sklearn.datasets import load_diabetes
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestRegressor
import matplotlib.pyplot as plt

# Cargar los datos
diabetes = load_diabetes()
X = diabetes.data
y = diabetes.target

# Dividir los datos entre entrenamiento y prueba
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=42)

# Entrenar el modelo
model = RandomForestRegressor()
model.fit(X_train, y_train)

df_importancia = pd.DataFrame({'Feature': feature_names, 'Importance': importances})
df_importancia = df_importancia.sort_values(by='Importance', ascending=True) 

plt.figure(figsize=(10, 6))
plt.barh(df_importancia['Feature'], df_importancia['Importance'], color='skyblue')
plt.title("Importancia de las Características - Dataset Diabetes")
plt.xlabel("Nivel de Importancia")
plt.ylabel("Características Predictoras")
plt.show()
1 respuesta

Hola, Alberto. ¿Cómo vas?

Gracias por compartir tus reflexiones y aprendizajes con la comunidad Alura.

Veo que realizaste la actividad copiando y ejecutando los ejemplos del curso, tanto con GridSearchCV para ajustar los hiperparámetros como con RandomForestRegressor para analizar la importancia de las características. Es una buena forma de familiarizarte con el flujo de trabajo y entender cómo estas herramientas ayudan a mejorar el rendimiento de un modelo de Machine Learning. Sigue practicando, ya que comparar distintos algoritmos te ayudará a comprender mejor cuándo conviene utilizar cada uno.

Consejo: después de ejecutar el código, intenta modificar uno o dos parámetros, como max_depth o n_estimators, y compara los resultados obtenidos. Así podrás observar qué cambia y cómo cada ajuste influye en el desempeño del modelo.

Cuenta con el apoyo del foro en tu viaje. Saludos y buenos estudios.