Supervisión de Azure Machine Learning

Si tiene aplicaciones y procesos empresariales críticos que dependen de recursos de Azure, querrá supervisar esos recursos para su disponibilidad, rendimiento y funcionamiento. En este artículo se describen los datos de supervisión que ha generado Azure Machine Learning y cómo analizar y alertar sobre estos datos con Azure Monitor.

Sugerencia

La información de este documento va dirigida principalmente a los administradores, ya que describe la supervisión de Azure Machine Learning Service y de los servicios de Azure asociados. Los científicos de datos o desarrolladores que quieran supervisar información específica de las ejecuciones de entrenamiento de un modelo pueden consultar los siguientes documentos:

Si desea supervisar la información generada por los modelos implementados en puntos de conexión en línea, consulte Supervisión de puntos de conexión en línea.

¿Qué es Azure Monitor?

Azure Machine Learning crea los datos de supervisión mediante Azure Monitor, que es un servicio de supervisión de pila completo en Azure. Azure Monitor proporciona un conjunto completo de características para supervisar los recursos de Azure. También puede supervisar los recursos de otras nubes y de forma local.

Comience leyendo el artículo Supervisión de recursos de Azure con Azure Monitor, en el que se describen los conceptos siguientes:

  • ¿Qué es Azure Monitor?
  • Costos asociados con la supervisión
  • Datos de supervisión recopilados en Azure
  • Configuración de la recolección de datos
  • Herramientas estándar en Azure para analizar datos de supervisión y alertar sobre ellos

Las secciones siguientes complementan este artículo mediante la descripción de los datos específicos que se recopilan de Azure Machine Learning. En estas secciones también se proporcionan ejemplos para configurar la recopilación y el análisis de datos con Azure Tools.

Sugerencia

Para comprender los costos asociados a Azure Monitor, consulte Uso y costos estimados. Para comprender el tiempo necesario para que los datos aparezcan en Azure Monitor, consulte Tiempo de ingesta de datos de registro.

Supervisión de datos de Azure Machine Learning

Azure Machine Learning recopila los mismos tipos de datos de supervisión que otros recursos de Azure que se describen en Supervisión de datos de recursos de Azure.

Consulte Referencia de datos de supervisión de Azure Machine Learning para obtener una referencia detallada de los registros y las métricas creados por Azure Machine Learning.

Recopilación y enrutamiento

Las métricas de la plataforma y el registro de actividad se recopilan y almacenan de forma automática, pero se pueden enrutar a otras ubicaciones mediante una configuración de diagnóstico.

Los registros de recursos no se recopilan ni almacenan hasta que se crea una configuración de diagnóstico y se enrutan a una o varias ubicaciones. Cuando tenga que administrar varias áreas de trabajo de Azure Machine Learning, puede enrutar los registros de todas las áreas de trabajo al mismo destino de registro y consultar todos los registros desde un solo lugar.

Consulte Creación de una configuración de diagnóstico para recopilar registros de plataforma y métricas en Azure para ver el proceso detallado para crear una configuración de diagnóstico mediante Azure Portal, la CLI de Azure o PowerShell. Cuando se crea una configuración de diagnóstico, se especifican las categorías de registros que se van a recopilar. Las categorías de Azure Machine Learning se muestran en la Referencia de datos de supervisión de Azure Machine Learning.

Importante

La habilitación de esta configuración requiere servicios adicionales de Azure (cuenta de almacenamiento, centro de eventos o Log Analytics), lo que puede aumentar el costo. Para calcular un costo estimado, visite la Calculadora de precios de Azure.

Puede configurar los siguientes registros para Azure Machine Learning:

Category Descripción
AmlComputeClusterEvent Eventos de clústeres de proceso de Azure Machine Learning.
AmlComputeClusterNodeEvent (deprecated) Eventos de nodos dentro de un clúster de proceso de Azure Machine Learning.
AmlComputeJobEvent Eventos de trabajos en ejecución en un proceso de Azure Machine Learning.
AmlComputeCpuGpuUtilization Los servicios de ML calculan los registros de uso de CPU y GPU.
AmlRunStatusChangedEvent ML ejecuta cambios de estado.
ModelsChangeEvent Eventos cuando se accede al modelo de ML, se crea o se elimina.
ModelsReadEvent Eventos cuando se lee el modelo de ML.
ModelsActionEvent Eventos cuando se accede al modelo de ML.
DeploymentReadEvent Eventos cuando se lee una implementación de modelo.
DeploymentEventACI Eventos cuando se produce una implementación de modelo en ACI (muy activos).
DeploymentEventAKS Eventos cuando se produce una implementación de modelo en AKS (muy activos).
InferencingOperationAKS Eventos para la inferencia u operación relacionada en el tipo de proceso de AKS.
InferencingOperationACI Eventos para la inferencia u operación relacionada en el tipo de proceso de ACI.
EnvironmentChangeEvent Eventos cuando se crean o se eliminan las configuraciones de entorno de ML.
EnvironmentReadEvent Eventos cuando se leen las configuraciones de entorno de ML (muy activos).
DataLabelChangeEvent Eventos cuando se crean o se eliminan las etiquetas de datos o sus proyectos.
DataLabelReadEvent Eventos cuando se leen las etiquetas de datos o sus proyectos.
ComputeInstanceEvent Eventos cuando se accede a la instancia de proceso de ML (muy activos).
DataStoreChangeEvent Eventos cuando se crea o se elimina un almacén de datos de ML.
DataStoreReadEvent Eventos cuando se lee un almacén de datos de ML.
DataSetChangeEvent Eventos cuando se crea o se elimina un almacén de datos de ML.
DataSetReadEvent Eventos cuando se lee un almacén de datos de ML.
PipelineChangeEvent Eventos cuando se crea o se elimina un módulo, un punto de conexión o un borrador de canalización de ML.
PipelineReadEvent Eventos cuando se lee un módulo, un punto de conexión o un borrador de canalización de ML.
RunEvent Eventos cuando se crean o se eliminan experimentos de ML.
RunReadEvent Eventos cuando se leen experimentos de ML.

Nota

A partir de febrero de 2022, la categoría AmlComputeClusterNodeEvent quedará en desuso. En su lugar, se recomienda usar la categoría AmlComputeClusterEvent.

Nota

Cuando se habilitan las métricas en una configuración de diagnóstico, la información de dimensión no se incluye actualmente como parte de la información que se envía a una cuenta de almacenamiento, a un centro de eventos o al análisis de registros.

En las secciones siguientes se describen las métricas y los registros que se pueden recopilar.

Análisis de métricas

Puede analizar las métricas de Azure Machine Learning con métricas de otros servicios de Azure mediante la opción Métricas del menú de Azure Monitor. Consulte Introducción al explorador de métricas de Azure para más información sobre esta herramienta.

Para obtener una lista de las métricas de la plataforma recopiladas, consulte Supervisión de las métricas de referencia de datos Azure Machine Learning.

Todas las métricas de Azure Machine Learning se encuentran en el espacio de nombres Área de trabajo de servicio de Machine Learning.

Explorador de métricas con Machine Learning Service Workspace seleccionada

Como referencia, puede ver una lista de todas las métricas de recursos que se admiten en Azure Monitor.

Sugerencia

Los datos de métricas de Azure Monitor están disponibles durante 90 días. Sin embargo, cuando se crean gráficos, solo se pueden visualizar durante 30 días. Por ejemplo, si quiere visualizar un período de 90 días, debe dividirlo en tres gráficos de 30 días dentro de ese período.

Filtrar y dividir

En el caso de las métricas que admiten dimensiones, puede aplicar filtros con un valor de dimensión. Por ejemplo, el filtrado de Núcleos activos para un Nombre de clúster de cpu-cluster.

Puede dividir una métrica por dimensión para visualizar la comparación de unos segmentos de la métrica con otros. Por ejemplo, dividir el Tipo de paso de canalización para ver un recuento de los tipos de pasos que se usan en la canalización.

Para más información sobre el filtrado y la división, vea Características avanzadas de Azure Monitor.

Análisis de datos

El uso de Log Analytics de Azure Monitor requiere la creación de una configuración de diagnóstico y habilitar Enviar información a Log Analytics. Para obtener más información, consulte la sección Recolección y enrutamiento.

Los datos de los registros de Azure Monitor se almacenan en tablas, cada tabla tiene su propio conjunto de propiedades únicas. Azure Machine Learning almacena los datos en las tablas siguientes:

Tabla Descripción
AmlComputeClusterEvent Eventos de clústeres de proceso de Azure Machine Learning.
AmlComputeClusterNodeEvent (deprecated) Eventos de nodos dentro de un clúster de proceso de Azure Machine Learning.
AmlComputeJobEvent Eventos de trabajos en ejecución en un proceso de Azure Machine Learning.
AmlComputeInstanceEvent Eventos cuando se accede a la instancia de proceso de ML (lectura/escritura). Categoría includes:ComputeInstanceEvent (very chatty).
AmlDataLabelEvent Eventos cuando se accede a las etiquetas de datos o a sus proyectos (lectura, creación o eliminación). Categoría includes:DataLabelReadEvent,DataLabelChangeEvent.
AmlDataSetEvent Eventos cuando se accede a un conjunto de datos de ML registrado o no registrado (lectura, creación o eliminación). Categoría includes:DataSetReadEvent,DataSetChangeEvent.
AmlDataStoreEvent Eventos cuando se accede al almacén de datos de ML (lectura, creación o eliminación). Categoría includes:DataStoreReadEvent,DataStoreChangeEvent.
AmlDeploymentEvent Eventos cuando se produce una implementación de modelo en ACI o AKS. Categoría includes:DeploymentReadEvent,DeploymentEventACI,DeploymentEventAKS.
AmlInferencingEvent Eventos para la inferencia u operación relacionada en el tipo de proceso de AKS o ACI. Categoría includes:InferencingOperationACI (very chatty),InferencingOperationAKS (very chatty).
AmlModelsEvent Eventos cuando se accede al modelo de ML (lectura, creación o eliminación). Incluye eventos cuando el empaquetado de modelos y recursos tiene lugar en paquetes listos para compilarse. Categoría includes:ModelsReadEvent,ModelsActionEvent.
AmlPipelineEvent Eventos cuando se accede a un borrador de canalización o punto de conexión o módulo de ML (lectura, creación o eliminación). Categoría includes:PipelineReadEvent,PipelineChangeEvent.
AmlRunEvent Eventos cuando se accede a los experimentos de ML (lectura, creación o eliminación). Categoría includes:RunReadEvent,RunEvent.
AmlEnvironmentEvent Eventos cuando se accede a las configuraciones de entorno de ML (lectura, creación o eliminación). Categoría includes:EnvironmentReadEvent (very chatty),EnvironmentChangeEvent.

Nota

A partir de febrero de 2022, la tabla AmlComputeClusterNodeEvent quedará en desuso. En su lugar, se recomienda usar la tabla AmlComputeClusterEvent.

Importante

Al seleccionar Registros en el menú Azure Machine Learning, Log Analytics se abre con el ámbito de la consulta establecido en el área de trabajo actual. Esto significa que las consultas de registro solo incluirán datos de ese recurso. Si desea ejecutar una consulta que incluya datos de otras bases de datos o de otros servicios de Azure, elija Registros en el menú Azure Monitor. Consulte Ámbito e intervalo de tiempo de una consulta de registro en Log Analytics de Azure Monitor para obtener más información.

Consulte Referencia de datos de supervisión de Azure Machine Learning para una referencia detallada de los registros y las métricas.

Ejemplos de consultas de Kusto

Importante

Al seleccionar Registros del menú de [service-name], Log Analytics se abre con el ámbito de la consulta establecido en el área de trabajo actual de Azure Machine Learning. Esto significa que las consultas de registro solo incluirán datos de ese recurso. Si quiere ejecutar una consulta que incluya datos de otras áreas de trabajo o de otros servicios de Azure, seleccione Registros en el menú de Azure Monitor. Consulte Ámbito e intervalo de tiempo de una consulta de registro en Log Analytics de Azure Monitor para obtener más información.

A continuación se muestran las consultas que puede usar para supervisar los recursos de Azure Machine Learning:

  • Obtener trabajos con errores en los últimos cinco días:

    AmlComputeJobEvent
    | where TimeGenerated > ago(5d) and EventType == "JobFailed"
    | project  TimeGenerated , ClusterId , EventType , ExecutionState , ToolType
    
  • Obtener registros para un nombre de trabajo específico:

    AmlComputeJobEvent
    | where JobName == "automl_a9940991-dedb-4262-9763-2fd08b79d8fb_setup"
    | project  TimeGenerated , ClusterId , EventType , ExecutionState , ToolType
    
  • Obtiene los eventos de clúster en los últimos cinco días para los clústeres en los que el tamaño de la máquina virtual es Standard_D1_V2:

    AmlComputeClusterEvent
    | where TimeGenerated > ago(4d) and VmSize == "STANDARD_D1_V2"
    | project  ClusterName , InitialNodeCount , MaximumNodeCount , QuotaAllocated , QuotaUtilized
    
  • Obtenga las asignaciones de nodos de clúster de los últimos ocho días:

    AmlComputeClusterEvent
    | where TimeGenerated > ago(8d) and TargetNodeCount  > CurrentNodeCount
    | project TimeGenerated, ClusterName, CurrentNodeCount, TargetNodeCount
    

Al conectar varias áreas de trabajo de Azure Machine Learning a la misma área de trabajo de Log Analytics, puede consultar en todos los recursos.

  • Obtenga el número de nodos en ejecución entre áreas de trabajo y clústeres en el último día:

    AmlComputeClusterEvent
    | where TimeGenerated > ago(1d)
    | summarize avgRunningNodes=avg(TargetNodeCount), maxRunningNodes=max(TargetNodeCount)
             by Workspace=tostring(split(_ResourceId, "/")[8]), ClusterName, ClusterType, VmSize, VmPriority
    

Creación de un panel de supervisión de áreas de trabajo mediante una plantilla

En Azure Portal, un panel es una vista centrada y organizada de los recursos en la nube. Para obtener más información sobre la creación de paneles, consulte Creación, visualización y administración de alertas de métricas mediante Azure Monitor.

Para implementar un panel de ejemplo, puede usar una plantilla disponible públicamente. El panel de ejemplo se basa en consultas de Kusto, por lo que debe habilitar la recopilación de datos de Log Analytics para el área de trabajo de Azure Machine Learning antes de implementar el panel.

Alertas

Puede acceder a las métricas de Azure Machine Learning abriendo Alertas en el menú Azure Monitor. Vea Creación, visualización y administración de alertas de métricas mediante Azure Monitor para más detalles sobre la creación de alertas.

En la tabla siguiente se enumeran las reglas de alertas de métricas comunes y recomendadas para Azure Machine Learning:

Tipo de alerta Condición Descripción
Error al realizar la implementación de modelo Tipo de agregación: Total, operador: Mayor que, valor de umbral: 0 Cuando se han producido errores en una o varias implementaciones de modelos
Porcentaje de uso de la cuota Tipo de agregación: Media, operador: Mayor que, valor de umbral: 90 Cuando el porcentaje de uso de la cuota es superior al 90 %
Nodos no utilizables Tipo de agregación: Total, operador: Mayor que, valor de umbral: 0 Cuando hay uno o más nodos no utilizables

Pasos siguientes