Generación y guardado de predicciones en una tabla Delta

Completado

Para generar predicciones, es necesario aplicar un modelo entrenado a nuevos datos. Los datos a los que desee aplicar el modelo deberían almacenarse en una tabla Delta y el modelo debería guardarse en el área de trabajo de Microsoft Fabric. Después, use la función PREDICT para aplicar el modelo a los datos y obtener predicciones por lotes.

Uso del asistente para generar la función PREDICT

Una manera sencilla de desarrollar el código para generar predicciones por lotes consiste en usar el asistente disponible en Microsoft Fabric.

Una vez que haya guardado un modelo, vaya a la página del modelo en Microsoft Fabric. Al seleccionar la opción Aplicar esta versión en el asistente, aparecerá un elemento emergente:

Screenshot of model wizard for a custom model.

Gracias al asistente, es posible seleccionar la tabla de entrada, asignar las columnas de entrada a las entradas esperadas del modelo, además de definir la tabla de salida y las columnas. Por último, el código necesario para ejecutar las predicciones por lotes se genera automáticamente.

Ejecución de la función PREDICT para aplicar el modelo

Use el asistente o cree directamente el código para generar predicciones. Para aplicar un modelo en un cuaderno, cree el objeto MLFlowTransformer con los parámetros siguientes:

  • inputCols: Los nombres de columna del dataframe pasados como entradas del modelo.
  • outputCols: El nombre de las columnas de la salida o las predicciones.
  • modelName: El nombre del modelo guardado en Microsoft Fabric.
  • modelVersion: La versión del modelo guardado.
from synapse.ml.predict import MLFlowTransformer

model = MLFlowTransformer(
    inputCols=["AGE","SEX","BMI","BP","S1","S2","S3","S4","S5","S6"],
    outputCol='predictions',
    modelName='diabetes-model',
    modelVersion=1
)

Después de crear el objeto MLFlowTransformer, podrá usarlo para generar las predicciones por lotes en el dataframe df ejecutando el código siguiente:

model.transform(df).show()

Por último, guarde las predicciones en una tabla Delta. Elija guardarla en una nueva tabla o anexe las predicciones a una tabla existente. Si desea especificar una tabla existente:

df.write.format("delta").mode("overwrite").save(f"Tables/your_delta_table")

Nota:

Al acceder a una tabla Delta a través de la interfaz de usuario del área de trabajo de Microsoft Fabric, es posible copiar fácilmente la ruta de acceso de una tabla Delta. El formato de la ruta de acceso debería ser similar a abfss://XXXX@msit-onelake.dfs.fabric.microsoft.com/XXX/Tables/your_delta_table y se puede usar siempre que quiera leer o escribir datos en la tabla.