Introducción a Vertex Explainable AI

Vertex Explainable AI integra atribuciones de atributos en Vertex AI. En esta página, se proporciona una breve descripción general conceptual de los métodos de atribución de atributos disponibles con Vertex AI. Para obtener un análisis técnico detallado, consulta nuestro Informe sobre Explicaciones de IA.

Vertex Explainable AI te ayuda a comprender los resultados del modelo para las tareas de regresión y clasificación. Vertex AI te indica cuánto contribuyó cada atributo de los datos al resultado previsto. Puedes usar esta información para verificar que el modelo se comporte según lo previsto, reconocer sesgos en los modelos y obtener ideas a fin de mejorar el modelo y los datos de entrenamiento.

Vertex AI es compatible con Verplain Explainable AI para los siguientes tipos de modelos:

  • Modelos tabulares de AutoML (solo modelos de clasificación y regresión)
  • Modelos personalizados basados en datos tabulares
  • Modelos personalizados basados en datos de imagen

Para los modelos tabulares de AutoML, las atribuciones de atributos se muestran en Google Cloud Console como importancia de los atributos. Puedes ver la importancia de las características del modelo para el modelo en general y la importancia de las características locales para ambos: predicciones en línea y por lotes.

Atribuciones de atributos

Las atribuciones de atributos indican cuánto contribuyó cada atributo del modelo a las predicciones para cada instancia determinada. Cuando solicitas predicciones, obtienes valores previstos según corresponda para el modelo. Cuando solicitas explicaciones, obtienes las predicciones junto con la información de atribución de atributos.

Las atribuciones de atributos funcionan en datos tabulares y, también, incluyen funciones de visualización integradas para los datos de imagen. Considera los siguientes ejemplos:

  • Una red neuronal profunda está entrenada para predecir la duración de un viaje en bicicleta, según los datos del clima y los datos compartidos de viajes anteriores. Si solo solicitas predicciones de este modelo, obtendrás predicciones de la duración de los viajes en bicicleta en minutos. Si solicitas explicaciones, obtendrás la duración prevista del viaje en bicicleta, y una puntuación de atribución relativa a cada atributo de la solicitud de explicaciones. Las puntuaciones de atribución muestran cuánto influyó el atributo en el cambio del valor de la predicción, en relación con el valor del modelo de referencia que especificaste. Elige un modelo de referencia que sea relevante para el modelo (en este caso, la duración media del viaje en bicicleta). Puedes trazar la puntuación de atribución de atributos para ver cuáles son los atributos que más contribuyeron a la predicción resultante:

    Un gráfico de atribución de atributos para la duración prevista de un viaje en bicicleta

  • Un modelo de clasificación de imágenes está entrenado para predecir si una imagen determinada contiene un perro o un gato. Si solicitas predicciones de este modelo en un conjunto de imágenes nuevo, recibirás una predicción para cada imagen (“perro” o “gato”). Si solicitas explicaciones, obtendrás la clase prevista y una superposición de la imagen, que muestra qué píxeles contribuyeron más a la predicción resultante:

    Una foto de un gato con superposición de atribución de atributos
    Una foto de un gato con superposición de atribución de atributos
    Una foto de un perro con superposición de atribución de atributos
    Una foto de un perro con superposición de atribución de atributos
  • Un modelo de clasificación de imágenes está entrenado para predecir la especie de una flor en una imagen. Si solicitas predicciones de este modelo en un conjunto de imágenes nuevo, recibirás una predicción para cada imagen (“margarita” o “diente de león”). Si solicitas explicaciones, obtendrás la clase prevista y una superposición de la imagen, que muestra qué áreas de la imagen contribuyeron más a la predicción resultante:

    Una foto de una margarita con superposición de atribución de atributos
    Una foto de una margarita con superposición de atribución de atributos

Ventajas

Si inspeccionas instancias específicas y agregas atribuciones de atributos en el conjunto de datos de entrenamiento, puedes obtener estadísticas más detalladas sobre cómo funciona el modelo. Ten en cuenta las siguientes ventajas:

  • Depuración de modelos: Las atribuciones de atributos pueden ayudar a detectar problemas en los datos que las técnicas de evaluación de modelos estándar suelen pasar por alto.

    Por ejemplo, un modelo de patología de imágenes logró resultados sospechosamente buenos en un conjunto de datos de prueba de imágenes de rayos X de tórax. Las atribuciones de atributos revelaron que la exactitud alta del modelo dependía de las marcas del bolígrafo del radiólogo en la imagen. Para obtener más detalles sobre este ejemplo, consulta el Informe sobre Explicaciones de IA.

  • Optimización de modelos: Puedes identificar y quitar atributos que sean menos importantes, lo que puede generar modelos más eficaces.

Limitaciones conceptuales

Ten en cuenta las siguientes limitaciones de las atribuciones de atributos:

  • Las atribuciones de atributos, incluida la importancia de las características locales para AutoML, son específicas de las predicciones individuales. Si inspeccionas atribuciones de funciones para una predicción individual, puedes obtener una buena estadística, pero puede que esta no se aplique a toda la clase de esa instancia individual ni a todo el modelo.

    Para obtener estadísticas más generalizadas de los modelos de AutoML, consulta la importancia de las características del modelo. A fin de obtener estadísticas más generalizables sobre otros modelos, agrega las atribuciones sobre subconjuntos en el conjunto de datos o en todo el conjunto de datos.

  • Aunque las atribuciones de atributos pueden ayudar con la depuración de modelos, no siempre indican con claridad si un problema surge del modelo o de los datos con los que este se entrena. Usa tu mejor criterio y diagnostica problemas de datos comunes para reducir el rango de causas posibles.

  • Las atribuciones de atributos están sujetas a ataques adversarios similares a los que experimentan las predicciones en los modelos complejos.

Para obtener más información sobre las limitaciones, consulta la lista de limitaciones de alto nivel y el Informe sobre Explicaciones de IA.

Compara métodos de atribución de atributos

Vertex Explainable AI ofrece tres métodos para usar las atribuciones de atributos: Shapley con muestreo, gradientes integrados y XRAI.

Método Explicación básica Tipos de modelos recomendados Casos de uso de ejemplo Recursos Model compatibles de Vertex AI
Shapley de muestra Asigna crédito por el resultado de los atributos y considera las diversas permutaciones de estos. Este método proporciona una aproximación de muestreo de los valores exactos de Shapley. Modelos no diferenciables, como ensambles de árboles y redes neuronales
  • Clasificación y regresión en datos tabulares
  • Modelos entrenados personalizados (cualquier contenedor de predicción)
  • Modelos tabulares de AutoML
Gradientes integrados Un método basado en gradientes para procesar de modo eficaz las atribuciones de atributos con las mismas propiedades axiomáticas que el valor de Shapley. Modelos diferenciables, como redes neuronales. Se recomiendan sobre todo para modelos con espacios de atributos grandes.
También se recomiendan para las imágenes de bajo contraste, como rayos X.
  • Clasificación y regresión en datos tabulares
  • Clasificación en datos de imagen
Modelos de TensorFlow con entrenamiento personalizado que usan un contenedor compilado previamente de TensorFlow para entregar predicciones
XRAI (eXplanation with Ranked Area Integrals) (explicación con integrales de área clasificadas) Según el método de gradientes integrados, XRAI evalúa las regiones superpuestas de la imagen para crear un mapa de prominencia, en el que se destacan las regiones relevantes de la imagen en lugar de los píxeles. Modelos que aceptan entradas de imagen. Se recomiendan sobre todo para imágenes naturales, que son escenas reales que contienen varios objetos.
  • Clasificación en datos de imagen
Modelos de TensorFlow con entrenamiento personalizado que usan un contenedor compilado previamente de TensorFlow para entregar predicciones

Para obtener una comparación más detallada de los métodos de atribución, consulta el Informe sobre AI Explanations.

Modelos diferenciables y no diferenciables

En los modelos diferenciables, puedes calcular el derivado de todas las operaciones en el grafo de TensorFlow. Esta propiedad permite la propagación inversa en esos modelos. Por ejemplo, las redes neuronales son diferenciables. A fin de obtener atribuciones de atributos para modelos diferenciables, usa el método de gradientes integrados.

Nota: El método de gradientes integrados no funciona en modelos no diferenciables. Obtén más información sobre cómo codificar entradas no diferenciables para trabajar con el método de gradientes integrados.

Los modelos no diferenciables incluyen operaciones no diferenciables en el grafo de TensorFlow, como las que realizan tareas de decodificación y redondeo. Por ejemplo, un modelo creado como un ensamble de árboles y redes neuronales no es diferenciable. A fin de obtener atribuciones de atributos para modelos no diferenciables, usa el método de Shapley con muestreo. El método de Shapley también funciona en modelos diferenciables, pero en ese caso, tiene un procesamiento más costoso de lo necesario.

Métodos de atribución de atributos

Los métodos de atribución de atributos se basan en valores de Shapley, un algoritmo cooperativo de teoría de juegos que asigna crédito a cada jugador para obtener un resultado en particular. Cuando se aplica a los modelos de aprendizaje automático, cada atributo del modelo se considera un “jugador” del juego. Vertex Explainable AI asigna crédito proporcional a cada atributo para el resultado de una predicción en particular.

Método de Shapley con muestreo

El método de Shapley con muestreo proporciona una aproximación de muestreo de los valores exactos de Shapley. Los modelos tabulares de AutoML usan el método de Shapley con muestreo para la importancia de las características. El Shapley con muestreo funciona bien para estos modelos, que son metaetiquetas de árboles y redes neuronales.

Para obtener información detallada sobre cómo funciona el método de Shapley de muestra, lee el documento Cómo limitar el error de estimación de la aproximación de valores de Shapley basada en la muestra.

Método de gradientes integrados

En el método de gradientes integrados, el gradiente del resultado de la predicción se calcula en función de los atributos de la entrada, a lo largo de una ruta integral.

  1. Los gradientes se calculan en diferentes intervalos de un parámetro de escalamiento. (Para los datos de imágenes, piensa en este parámetro de escalamiento como un “control deslizante” que escala todos los píxeles de la imagen a negro).
  2. Los gradientes están “integrados”:
    1. Los gradientes se promedian.
    2. Se calcula el producto en términos de elementos de los gradientes promediados y la entrada original.

Para obtener una explicación intuitiva de este proceso aplicado a las imágenes, consulta la entrada de blog “Attributing a deep network's prediction to its input features” (Atribuye la predicción de una red profunda a sus atributos de entrada). Los autores del artículo original sobre gradientes integrados (Axiomatic Attribution for Deep Networks) (Atribución axiomática para redes profundas) muestran en la entrada de blog anterior cómo son las imágenes en cada paso del proceso.

Método XRAI

El método XRAI combina el método de gradientes integrados con pasos adicionales para determinar qué regiones de la imagen contribuyen en mayor medida a una predicción de clase determinada.

  1. Atribución a nivel de píxeles: XRAI realiza la atribución a nivel de píxeles para la imagen de entrada. En este paso, XRAI usa el método de gradientes integrados con un modelo de referencia negro y uno blanco.
  2. Sobresegmentación: Más allá de la atribución a nivel de píxeles, XRAI sobresegmenta la imagen para crear un mosaico de regiones pequeñas. XRAI usa el método basado en grafos de Felzenswalb para crear los segmentos de la imagen.
  3. Selección de la región: XRAI agrega la atribución a nivel de píxeles dentro de cada segmento para determinar su densidad de atribución. Mediante estos valores, XRAI clasifica los segmentos y, luego, los ordena del más positivo al menos positivo. Esto determina qué áreas de la imagen se destacan más o contribuyen en mayor medida a una predicción de clase determinada.

Imágenes en las que se muestran los pasos del algoritmo XRAI

Referencias

Las implementaciones de Shapley con muestreo, los gradientes integrados y XRAI se basan en las siguientes referencias, respectivamente:

Para obtener más información sobre la implementación de Explainable AI, consulta el Informe sobre AI Explanations.

Recursos educativos

Los siguientes recursos proporcionan material educativo más útil:

¿Qué sigue?