Descripción de cómo entrenar modelos de Machine Learning
La forma en que entrena un modelo de Machine Learning depende del tipo de modelo que desea entrenar. Vamos a explorar algunos marcos de trabajo usados habitualmente que puede usar para entrenar un modelo de aprendizaje automático en Microsoft Fabric.
Exploración de marcos de aprendizaje automático
Muchos científicos de datos trabajan en Python y muchas bibliotecas de aprendizaje automático están diseñadas para funcionar bien con Python.
Algunas bibliotecas y sus usos populares con los que puede trabajar en Microsoft Fabric son:
- Scikit-learn: entrene modelos de Machine Learning tradicionales para tareas como clasificación, regresión y agrupación en clústeres.
- PyTorch y TensorFlow: entrenamiento de modelos de aprendizaje profundo para tareas de procesamiento de lenguaje natural o computer vision.
- SynapseML: permite crear canalizaciones de aprendizaje automático escalables para un entrenamiento del modelo más óptimo.
Trabajo con cuadernos en Microsoft Fabric
Cuando quiera entrenar un modelo en Microsoft Fabric, puede usar cuadernos.
Como científico de datos, es posible que ya esté familiarizado con los cuadernos de Jupyter Notebook. Los cuadernos disponibles en el área de trabajo de Microsoft Fabric son similares a los cuadernos de Jupyter Notebook, lo que facilita la ejecución del código según lo previsto.
Los cuadernos de Microsoft Fabric tienen tecnología de proceso de Spark, lo que significa que puede usar PySpark y Python. La mayoría de los marcos de aprendizaje automático como scikit-learn, PyTorch y TensorFlow funcionan con DataFrames de Python y Pandas.
PySpark es una biblioteca de Python creada para el procesamiento de datos distribuido. Siempre que observe la necesidad de una canalización de entrenamiento automático más escalable, puede explorar el uso de PySpark y SynapseML en los proyectos.
Entrenamiento de un modelo
La forma de enfocar el entrenamiento de un aprendizaje automático depende del tipo de modelo que se entrene. Un enfoque común con los modelos tradicionales es iterar a través de los siguientes pasos:
- Cargue los datos haciendo que estén disponibles en el cuaderno como DataFrame.
- Explore los datos mediante la visualización de los datos y la comprensión de la relación entre las características (entrada del modelo) y cómo afecta a la etiqueta (salida del modelo).
- Prepare los datos, también conocido como ingeniería de características.
- Divida los datos en un conjunto de datos de entrenamiento y en un conjunto de datos de prueba.
- Entrene el modelo.
- Evalúe el modelo inspeccionando las métricas de rendimiento.
Vamos a explorar un ejemplo y supongamos que ya tiene un conjunto de datos que ha explorado y preparado para el entrenamiento del modelo. Imagine que quiere entrenar un modelo de regresión y decide usar scikit-learn.
Puede dividir el conjunto de datos preparado con el código siguiente:
from sklearn.model_selection import train_test_split
X, y = df[['feature1','feature2','feature3']].values, df['label'].values
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.30, random_state=0)
Como resultado de dividir el conjunto de datos, tendrá cuatro DataFrames:
X_train
: conjunto de datos de entrenamiento que incluye solo las características.X_test
: conjunto de datos de prueba que incluye solo las características.y_train
: conjunto de datos de entrenamiento que incluye solo la etiqueta.y_test
: conjunto de datos de prueba que incluye solo la etiqueta.
Cuando quiera entrenar un modelo, puede seleccionar uno de los algoritmos (por ejemplo, regresión lineal) para la tarea (por ejemplo, regresión) que están disponibles en el marco de su elección (por ejemplo, scikit-learn). En el código siguiente se muestra un ejemplo de entrenamiento de un modelo de regresión:
from sklearn.linear_model import LinearRegression
model = LinearRegression()
model.fit(X_train, y_train)
Después de ajustar el modelo, puede usar el modelo para generar predicciones en el conjunto de datos de prueba para crear métricas de rendimiento del modelo. Al usar MLflow para realizar un seguimiento del modelo, puede realizar un seguimiento de las métricas de rendimiento que calcule. Como alternativa, puede permitir que MLflow cree y realice un seguimiento de las métricas de rendimiento estándar.
Al realizar el seguimiento con MLflow, también puede asegurarse de que el modelo se guarda en un formato para habilitar la puntuación del modelo en una fase posterior.