Crea una cuenta o inicia sesión

¡Continúa aprendiendo sin ningún costo! Únete y comienza a potenciar tu carrera

Revisión de notebooks y modelado

6/24
Recursos

Aportes 14

Preguntas 4

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

la metrica del data set de train es: 0.96677 y del dataset de Test es: 0.76, luego de la hiperparametrizacion, es claro que el modelo tiene Overfitting.
Aunque el ejercicio es sobre despliegue es bueno anotar que se debe hacer una etapa de seleccion de modelos, pero se ve que el modelo seleccionado tiene Min_samples_leaf=1, este puede ser el principal parametro que esta haciendo el sobreajuste.
es bueno probar con numeros minimos por hoja mucho mas grande como 5.

la verdad está muy interesante el curso.

Los que estan usando GItBash desde Windonws deberán poner :

source venv/Scripts/activate en lugar de

source venv/bin/activate

Yo voy a usar este proyecto, es de un dataset de kaggle que me intereso, dejo el notebook con la parte donde elijo el modelo de machine learning.

Dejo este comentario aca, para que se vea, solucione el overfitting del modelo:

estimator = Pipeline([
    ('imputer', imputer),
    ('core_model', GradientBoostingRegressor(n_estimators=260,
                                            #  alpha=0.9,
                                             ccp_alpha=0.0,
                                             criterion='friedman_mse',
                                             init=None,
                                             learning_rate=0.02,
                                             loss='huber',
                                             max_depth=4,
                                             max_features=None,
                                             max_leaf_nodes=None,
                                             min_impurity_decrease=0.0,
                                             min_samples_leaf=2,
                                             min_samples_split=3,
                                             min_weight_fraction_leaf=0.0,
                                             n_iter_no_change=None,
                                             random_state=None,
                                             subsample=1,
                                             tol=0.0001,
                                             validation_fraction=0.14,
                                             verbose=0,
                                             warm_start=False))
])

No es el regresor con el mejor performance, pero es el que se nos dio en la clase. Y es mucho mejor que un regresor aleatorio.

seguiré el curso con el Notebook actual pero al finalizar lo haré también con este problema que me llamó la atención de Kaggle https://www.kaggle.com/sakshigoyal7/credit-card-customers

El profesor hace todo excesiva e innecesariamente rápido. No parece un tutorial sino un overview.

En el notebook hay errorcitos en el codigo, cuando hacemos el ultimo pipeline, pasamos al regresor alpha:

GradientBoostingRegressor(n_estimators=270,
                                            #  alpha=0.9,
                                             ccp_alpha=0.0,

Pero este parametro, no hace nada, ya que solo funciona si loss=‘huber’ o loss=‘quantile’, y pasamos loss=‘squared_error’.

Ademas, esta bastante mal optimizado el regresor,

yo logre con un poquito de pericia lograr un 0.8 para test modificando los valores de la funcion, para bajar la distancia entre el score de train y el de test.

estimator = Pipeline([
    ('imputer', imputer),
    ('core_model', GradientBoostingRegressor(n_estimators=270,
                                            #  alpha=0.9,
                                             ccp_alpha=0.0,
                                             criterion='friedman_mse',
                                             init=None,
                                             learning_rate=0.04,
                                             loss='squared_error',
                                             max_depth=4,
                                             max_features=None,
                                             max_leaf_nodes=None,
                                             min_impurity_decrease=0.0,
                                             min_samples_leaf=1,
                                             min_samples_split=3,
                                             min_weight_fraction_leaf=0.0,
                                             n_iter_no_change=None,
                                             random_state=None,
                                             subsample=1.0,
                                             tol=0.0001,
                                             validation_fraction=0.1,
                                             verbose=0,
                                             warm_start=False))
])

Mas que esto creo que no le podemos exigir a este modelo.

Quizá a alguien le sea de utilidad: en el archivo notebooks/requirements.txt explícitamente sólo se listan para instalar pandas y scikit-learn, pero implícitamente se instalan joblib y las demás librerías que Gerson menciona.

¡Es hermoso!, por el momento me está gustando mucho.

Creo sólo veré el curso porque está muy avanzado.

pip3 install virtualenv
Para instalar desde GitHub

**En caso de correr el comando **

Jupyter notebook

y les pida contraseña si no se acuerdan pueden hacer los siguientes pasos:

  1. Establecer una contraseña por defecto usando

jupyter notebook password

y escribir la contraseña nueva que tendra su notebook luego de confirmar si intentan ingresar verán que aún no les permite hacerlo y es por que deben correr nuevamente el aplicativo para que corra los nuevos cambios.

  1. Listar los notebooks abiertos

jupyter notebook list
jupyter notebook stop ####

y corren nuevamente su notebook usando

jupyter notebook