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:
- Inicio, supervisión y cancelación de las ejecuciones de entrenamiento
- Métricas de registro de las ejecuciones de entrenamientos
- Seguimiento de experimentos con MLflow
- Visualización de ejecuciones con TensorBoard
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.
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
- Consulte Supervisión de la referencia de datos de Azure Machine Learning como referencia de los registros y las métricas.
- Para obtener información sobre cómo trabajar con cuotas relacionadas con Azure Machine Learning, consulte Administración y solicitud de cuotas para recursos de Azure.
- Para más información sobre la supervisión de recursos de Azure, consulte Supervisión de recursos de Azure con Azure Monitor.