Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
SE APLICA A:Extensión ML de la CLI de Azure v2 (actual)
SDK de Python azure-ai-ml v2 (actual)
El panel De IA responsable (RAI) reúne varias herramientas RAI en una sola interfaz para ayudar a informar a las decisiones controladas por datos sobre los modelos. Comprender los modelos de Computer Vision puede ser diferente de evaluar los datos tabulares o de texto. La depuración y las visualizaciones del modelo del panel RAI ahora admiten datos de imagen.
El panel de texto De ia responsable proporciona varias herramientas RAI maduras en las áreas de rendimiento del modelo, exploración de datos e interpretación del modelo. El panel admite la evaluación holística y la depuración de modelos de Computer Vision, lo que conduce a mitigaciones informadas para problemas de equidad y transparencia entre las partes interesadas para crear confianza.
En este artículo se describe el componente Información de visión de ia responsable y cómo usarlo en un trabajo de canalización para generar un panel de imágenes de IA responsable. En las secciones siguientes se proporcionan especificaciones y requisitos para el componente vision Insights y fragmentos de código de ejemplo en YAML y Python. Para ver el código completo, consulte los cuadernos de YAML y Python de ejemplo para la inteligencia artificialresponsable.
Importante
El componente de visión de la IA responsable se encuentra actualmente en fase de vista previa pública. Esta versión preliminar se ofrece sin un contrato de nivel de servicio y no es aconsejable usarla para cargas de trabajo de producción. Es posible que algunas características no sean compatibles o que tengan sus funcionalidades limitadas. Para más información, consulte Términos de uso complementarios de las Versiones Preliminares de Microsoft Azure.
Componente responsable de la visión de la IA
El componente principal para construir el panel de imágenes de IA responsable en Azure Machine Learning es el componente RAI Vision Insights, que difiere de cómo construir el panel de IA responsable para los datos tabulares.
Requisitos y limitaciones
- Todos los modelos deben estar registrados en Azure Machine Learning.
- Se admiten modelos de MLflow con el tipo PyTorch y los modelos HuggingFace.
- Las entradas del conjunto de datos deben estar en formato
mltable
. - El conjunto de datos de prueba está restringido a 5000 filas por motivos de rendimiento de la interfaz de usuario de visualización.
- Los objetos complejos, como listas de nombres de columna, se deben proporcionar como cadenas codificadas en JSON únicas.
- No se admite la denominación jerárquica de cohortes ni la creación de una nueva cohorte a partir de un subconjunto de una cohorte existente, ni tampoco la adición de imágenes a una cohorte existente.
Guided_gradcam
no funciona con modelos de transformador de visión.- SHapley Additive ExPlanations (SHAP) no se admite para los modelos de Computer Vision de AutoML.
Parámetros
El componente Información de visión de ia responsable admite los siguientes escenarios a través del task_type
parámetro :
Nombre | Descripción | Nombre de parámetro en el componente RAI Vision Insights |
---|---|---|
Clasificación de imágenes (binaria y multiclase) | Predecir una sola clase para la imagen especificada | task_type="image_classification" |
Clasificación multietiqueta de imagen | Predecir varias etiquetas para la imagen especificada | task_type="multilabel_image_classification" |
Detección de objetos | Busque e identifique clases de varios objetos para una imagen determinada y defina objetos con un cuadro de límite. | task_type="object_detection" |
El componente RAI Vision Insights también acepta los parámetros siguientes:
Nombre de parámetro | Descripción | Tipo |
---|---|---|
title |
Descripción breve del panel. | Cadena |
maximum_rows_for_test_dataset |
Número máximo de filas permitidas en el conjunto de datos de prueba. El valor predeterminado es 5,000. | Entero |
classes |
Lista completa de etiquetas de clase en el conjunto de datos de entrenamiento. | Lista de cadenas |
precompute_explanation |
Habilite la generación de una explicación para el modelo. | Booleano |
enable_error_analysis |
Habilite la generación de un análisis de errores para el modelo. | Booleano |
use_model_dependency |
El entorno de IA responsable no incluye las dependencias del modelo de forma predeterminada. Cuando se establece en True , instala los paquetes de dependencia del modelo. |
Booleano |
use_conda |
Instale los paquetes de dependencia del modelo mediante conda si True , de lo contrario, usa pip . |
Booleano |
Puertos
El componente de información de visión de IA responsable tiene tres puertos de entrada principales:
- Un modelo de Machine Learning
- Conjunto de datos de entrenamiento
- Conjunto de datos de prueba
Para empezar, registre su modelo de entrada en Azure Machine Learning y haga referencia al mismo modelo en el puerto model_input
del componente Responsible AI vision insights.
Para generar información sobre la depuración de modelos del panel de imágenes RAI, como el rendimiento del modelo, el explorador de datos y la interpretación del modelo, y rellenar visualizaciones, use los mismos conjuntos de datos de entrenamiento y prueba que para entrenar el modelo. Los conjuntos de datos deben estar en mltable
formato y no tienen que ser, pero pueden ser el mismo conjunto de datos.
En el ejemplo siguiente se muestra el esquema del conjunto de datos para el tipo de tarea de clasificación de imágenes:
DataFrame({ 'image_path_1' : 'label_1', 'image_path_2' : 'label_2' ... })
En el ejemplo siguiente se muestra el esquema del conjunto de datos para el tipo de tarea de detección de objetos:
DataFrame({
'image_path_1' : [
[object_1, topX1, topY1, bottomX1, bottomY1, (optional) confidence_score],
[object_2, topX2, topY2, bottomX2, bottomY2, (optional) confidence_score],
[object_3, topX3, topY3, bottomX3, bottomY3, (optional) confidence_score]
],
'image_path_2': [
[object_1, topX4, topY4, bottomX4, bottomY4, (optional) confidence_score],
[object_2, topX5, topY5, bottomX5, bottomY5, (optional) confidence_score]
]
})
Este componente ensambla la información generada en un único panel imágenes de IA responsable. Hay dos puertos de salida:
- El puerto
insights_pipeline_job.outputs.dashboard
contiene el objeto completadoRAIVisionInsights
. - El puerto
insights_pipeline_job.outputs.ux_json
contiene los datos necesarios para mostrar un panel mínimo.
Trabajo de canalización
Para crear el panel imagen de IA responsable, defina los componentes RAI en una canalización y envíe el trabajo de canalización.
Puede especificar la canalización en un archivo YAML, como en el ejemplo siguiente.
analyse_model:
type: command
component: azureml://registries/AzureML-RAI-preview/components/rai_vision_insights/versions/2
inputs:
title: From YAML
task_type: image_classification
model_input:
type: mlflow_model
path: azureml:<registered_model_name>:<registered model version>
model_info: ${{parent.inputs.model_info}}
test_dataset:
type: mltable
path: ${{parent.inputs.my_test_data}}
target_column_name: ${{parent.inputs.target_column_name}}
maximum_rows_for_test_dataset: 5000
classes: '["cat", "dog"]'
precompute_explanation: True
enable_error_analysis: True
Puede enviar la canalización mediante el comando de la CLI az ml job create
de Azure.
También puede usar la interfaz de usuario del diseñador en Azure Machine Learning Studio para crear y enviar una canalización de componentes de RAI-Vision Insights.
Después de especificar y enviar la canalización y ejecutarla, el panel debe aparecer en Machine Learning Studio en la vista de modelo registrado.
Integración con AutoML Image
El aprendizaje automático en Azure Machine Learning admite el entrenamiento de modelos para tareas de visión artificial como la clasificación de imágenes y la detección de objetos. Los modelos de AutoML para Computer Vision se integran con el panel de imágenes RAI para depurar modelos de AutoML Vision y explicar las predicciones del modelo.
Para generar información de IA responsable para los modelos de visión artificial de AutoML, registre el mejor modelo de AutoML en el área de trabajo de Azure Machine Learning y ejecútelo a través de la canalización de información de visión de IA responsable. Para más información, consulte Configurar AutoML para entrenar modelos de visión por ordenador.
Para ver cuadernos relacionados con las tareas de Computer Vision compatibles con AutoML, consulte Panel de RAI Vision y cuadernos de cuadros de mandos y trabajos automl-independientes.
Parámetros específicos de RAI Vision Insights específicos de AutoML
Además de los parámetros de la sección anterior, los modelos de AutoML pueden usar los siguientes parámetros de componentes de visión RAI específicos de AutoML.
Nota:
Algunos parámetros son específicos del algoritmo XAI elegido y son opcionales para otros algoritmos.
Nombre de parámetro | Descripción | Tipo | Valores |
---|---|---|---|
model_type |
Tipos del modelo. Seleccione pyfunc los modelos de AutoML. |
Enum | pyfunc , fastai |
dataset_type |
Si las imágenes del conjunto de datos se leen desde la dirección URL disponible públicamente o se almacenan en el almacén de datos del usuario. En el caso de los modelos de AutoML, las imágenes siempre se leen desde el almacén de datos del área de trabajo del usuario, por lo que el tipo de conjunto de datos para los modelos de AutoML es private . Para el tipo de conjunto de datos privado private , descargamos las imágenes en el proceso antes de generar las explicaciones. |
Enum | public , private |
xai_algorithm |
Tipo de algoritmo XAI compatible con los modelos de AutoML Nota: no se admite SHAP para los modelos de AutoML. |
Enum | guided_backprop , guided_gradCAM , integrated_gradients , xrai |
xrai_fast |
Si desea utilizar la versión más rápida de xrai . Si es True , el tiempo de cálculo de las explicaciones es más rápido, pero conlleva explicaciones menos precisas (atribuciones). |
Booleano | |
approximation_method |
Este parámetro es específico de integrated gradients . Método para aproximar la integral. |
Enum | riemann_middle , gausslegendre |
n_steps |
Este parámetro es específico de integrated gradients y xrai . El número de pasos utilizados por el método de aproximación. Un mayor número de pasos lleva a mejores aproximaciones de las atribuciones (explicaciones). El intervalo de n_steps es [2, inf), pero el rendimiento de las atribuciones comienza a converger después de 50 pasos. |
Entero | |
confidence_score_threshold_multilabel |
Este parámetro solo es específico de la clasificación multietiqueta. Umbral de puntuación de confianza por encima de las etiquetas que se seleccionan para generar explicaciones. | Flotante |
Generación de explicaciones del modelo para modelos de AutoML
Una vez completada la canalización de AutoML y se genera el panel De visión de IA responsable, debe conectar el panel a una instancia de proceso en ejecución para generar explicaciones. Una vez conectada la instancia de cálculo, puede seleccionar la imagen de entrada, y las explicaciones que utilizan el algoritmo XAI seleccionado aparecen en la barra lateral de la derecha.
Nota:
En el caso de los modelos de clasificación de imágenes, los métodos como xrai
y integrated gradients
suelen proporcionar explicaciones visuales mejores que guided_backprop
y guided_gradCAM
, pero son mucho más intensivos en proceso.
Contenido relacionado
- Aprenda a utilizar el panel de imágenes de IA responsable en Azure Machine Learning studio.
- Obtenga más información sobre los conceptos y técnicas detrás del panel de inteligencia artificial responsable.
- Vea los ejemplos de cuadernos de YAML y Python.
- Obtenga más información sobre cómo se puede usar el panel de imágenes de inteligencia artificial responsable para depurar datos y modelos de imágenes e informar mejor sobre la toma de decisiones en esta entrada de blog de la comunidad tecnológica.
- Obtenga información sobre cómo Clearsight usó el panel de inteligencia artificial responsable en una historia real de un cliente.