Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Modelos | Modelado
Introducción al ML con Scikit-learn

bookModelos

Ya se han cubierto los fundamentos del preprocesamiento de datos y la construcción de pipelines. El siguiente paso es el modelado.

Un modelo en Scikit-learn es un estimador que proporciona los métodos .predict() y .score(), junto con .fit() heredado de todos los estimadores.

.fit()

Una vez que los datos están preprocesados y listos para ingresar al modelo, el primer paso para construir un modelo es el entrenamiento del modelo. Esto se realiza utilizando .fit(X, y).

Note
Nota

Para entrenar un modelo que realiza una tarea de aprendizaje supervisado (por ejemplo, regresión, clasificación), es necesario pasar tanto X como y al método .fit().

Si se trata de una tarea de aprendizaje no supervisado (por ejemplo, clustering), no se requieren datos etiquetados, por lo que se puede pasar solo la variable X, .fit(X). Sin embargo, usar .fit(X, y) no generará un error. El modelo simplemente ignorará la variable y.

Durante el entrenamiento, un modelo aprende todo lo necesario para realizar predicciones. Lo que el modelo aprende y la duración del entrenamiento dependen del algoritmo seleccionado. Para cada tarea, existen numerosos modelos disponibles, basados en diferentes algoritmos. Algunos entrenan más lento, mientras que otros lo hacen más rápido.

Sin embargo, el entrenamiento suele ser el aspecto más lento del aprendizaje automático. Si el conjunto de entrenamiento es grande, un modelo podría tardar minutos, horas o incluso días en entrenarse.

.predict()

Una vez que el modelo ha sido entrenado utilizando el método .fit(), puede realizar predicciones. Predecir es tan sencillo como llamar al método .predict():

model.fit(X, y) # Train a model
y_pred = model.predict(X_new) # Get a prediction

Normalmente, se desea predecir un objetivo para nuevas instancias, X_new.

.score()

El método .score() se utiliza para medir el rendimiento de un modelo entrenado. Por lo general, se calcula sobre el conjunto de prueba (los siguientes capítulos explicarán qué es). La sintaxis es la siguiente:

model.fit(X, y) # Training the model
model.score(X_test, y_test)

El método .score() requiere valores reales del objetivo (y_test en el ejemplo). Calcula la predicción para las instancias de X_test y compara esta predicción con el objetivo real (y_test) utilizando alguna métrica. Por defecto, esta métrica es la precisión para clasificación.

Note
Nota

X_test se refiere al subconjunto del conjunto de datos, conocido como conjunto de prueba, utilizado para evaluar el rendimiento de un modelo después del entrenamiento. Contiene las características (datos de entrada). y_test es el subconjunto correspondiente de etiquetas reales para X_test. Juntos, permiten evaluar qué tan bien predice el modelo datos nuevos y no vistos.

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 1

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Awesome!

Completion rate improved to 3.13

bookModelos

Desliza para mostrar el menú

Ya se han cubierto los fundamentos del preprocesamiento de datos y la construcción de pipelines. El siguiente paso es el modelado.

Un modelo en Scikit-learn es un estimador que proporciona los métodos .predict() y .score(), junto con .fit() heredado de todos los estimadores.

.fit()

Una vez que los datos están preprocesados y listos para ingresar al modelo, el primer paso para construir un modelo es el entrenamiento del modelo. Esto se realiza utilizando .fit(X, y).

Note
Nota

Para entrenar un modelo que realiza una tarea de aprendizaje supervisado (por ejemplo, regresión, clasificación), es necesario pasar tanto X como y al método .fit().

Si se trata de una tarea de aprendizaje no supervisado (por ejemplo, clustering), no se requieren datos etiquetados, por lo que se puede pasar solo la variable X, .fit(X). Sin embargo, usar .fit(X, y) no generará un error. El modelo simplemente ignorará la variable y.

Durante el entrenamiento, un modelo aprende todo lo necesario para realizar predicciones. Lo que el modelo aprende y la duración del entrenamiento dependen del algoritmo seleccionado. Para cada tarea, existen numerosos modelos disponibles, basados en diferentes algoritmos. Algunos entrenan más lento, mientras que otros lo hacen más rápido.

Sin embargo, el entrenamiento suele ser el aspecto más lento del aprendizaje automático. Si el conjunto de entrenamiento es grande, un modelo podría tardar minutos, horas o incluso días en entrenarse.

.predict()

Una vez que el modelo ha sido entrenado utilizando el método .fit(), puede realizar predicciones. Predecir es tan sencillo como llamar al método .predict():

model.fit(X, y) # Train a model
y_pred = model.predict(X_new) # Get a prediction

Normalmente, se desea predecir un objetivo para nuevas instancias, X_new.

.score()

El método .score() se utiliza para medir el rendimiento de un modelo entrenado. Por lo general, se calcula sobre el conjunto de prueba (los siguientes capítulos explicarán qué es). La sintaxis es la siguiente:

model.fit(X, y) # Training the model
model.score(X_test, y_test)

El método .score() requiere valores reales del objetivo (y_test en el ejemplo). Calcula la predicción para las instancias de X_test y compara esta predicción con el objetivo real (y_test) utilizando alguna métrica. Por defecto, esta métrica es la precisión para clasificación.

Note
Nota

X_test se refiere al subconjunto del conjunto de datos, conocido como conjunto de prueba, utilizado para evaluar el rendimiento de un modelo después del entrenamiento. Contiene las características (datos de entrada). y_test es el subconjunto correspondiente de etiquetas reales para X_test. Juntos, permiten evaluar qué tan bien predice el modelo datos nuevos y no vistos.

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 1
some-alt