Atribuciones de funciones para clasificación y regresión

Introducción

En esta página se ofrece una breve descripción conceptual de los métodos de atribución de funciones disponibles en Vertex AI. Para obtener información técnica detallada, consulta nuestro informe sobre las explicaciones de la IA.

La importancia global de las funciones (atribuciones de funciones del modelo) muestra cómo influye cada función en un modelo. Los valores son un porcentaje de cada función: cuanto mayor sea el porcentaje, más impacto habrá tenido la función en el entrenamiento del modelo. Para ver la importancia global de las funciones de tu modelo, consulta las métricas de evaluación.

Las atribuciones de características locales de los modelos de series temporales indican la contribución de cada característica de los datos al resultado previsto. Usa esta información para verificar que el modelo se comporta como esperas, detectar sesgos en tus modelos y obtener ideas para mejorar tus modelos y tus datos de entrenamiento. Cuando solicitas inferencias, obtienes los valores predichos que correspondan a tu modelo. Cuando solicitas explicaciones, obtienes las inferencias junto con la información de atribución de las funciones.

Veamos un ejemplo: se entrena una red neuronal profunda para predecir la duración de un trayecto en bicicleta en función de los datos meteorológicos y de los trayectos compartidos anteriores. Si solo solicitas inferencias de este modelo, obtendrás las duraciones previstas de los trayectos en bicicleta en minutos. Si solicitas explicaciones, obtendrás la duración prevista del trayecto en bicicleta, así como una puntuación de atribución para cada función de tu solicitud de explicaciones. Las puntuaciones de atribución muestran cuánto ha afectado la función al cambio en el valor de inferencia en relación con el valor de referencia que especifiques. Elige un valor de referencia significativo que tenga sentido para tu modelo. En este caso, la duración media de los trayectos en bicicleta.

Puedes representar gráficamente las puntuaciones de atribución de las funciones para ver qué funciones han contribuido en mayor medida a la inferencia resultante:

Gráfico de atribución de funciones de la duración prevista de un trayecto en bicicleta

Genera y consulta atribuciones de características locales al realizar un trabajo de inferencia online o un trabajo de inferencia por lotes.

Ventajas

Si inspeccionas instancias específicas y agregas atribuciones de características en tu conjunto de datos de entrenamiento, puedes obtener información más detallada sobre cómo funciona tu modelo. Ten en cuenta las siguientes ventajas:

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

  • Optimizar modelos: puede identificar y eliminar las funciones que sean menos importantes, lo que puede dar lugar a modelos más eficientes.

Limitaciones conceptuales

Tenga en cuenta las siguientes limitaciones de las atribuciones de funciones:

  • Las atribuciones de características, incluida la importancia de las características locales de AutoML, son específicas de las inferencias individuales. Inspeccionar las atribuciones de características de una inferencia concreta puede proporcionar información valiosa, pero es posible que no se pueda generalizar a toda la clase de esa instancia concreta ni a todo el modelo.

    Para obtener información más generalizable sobre los modelos de AutoML, consulta la importancia de las características del modelo. Para obtener estadísticas más generalizables para otros modelos, agregue las atribuciones de subconjuntos de su conjunto de datos o de todo el conjunto de datos.

  • Cada atribución solo muestra cuánto ha afectado la función a la inferencia de ese ejemplo concreto. Una sola atribución puede no reflejar el comportamiento general del modelo. Para entender el comportamiento aproximado del modelo en todo un conjunto de datos, agrega las atribuciones de todo el conjunto de datos.

  • Aunque las atribuciones de las funciones pueden ayudar a depurar modelos, no siempre indican claramente si un problema surge del modelo o de los datos con los que se entrena el modelo. Usa tu buen criterio y diagnostica los problemas de datos habituales para acotar el espacio de las posibles causas.

  • Las atribuciones dependen por completo del modelo y de los datos que se usen para entrenarlo. Solo pueden revelar los patrones que el modelo ha detectado en los datos y no pueden detectar ninguna relación fundamental en los datos. La presencia o ausencia de una atribución sólida a una determinada característica no significa que haya o no una relación entre esa característica y el objetivo. La atribución solo muestra si el modelo usa o no la función en sus inferencias.

  • Las atribuciones por sí solas no pueden determinar si tu modelo es justo, objetivo o de buena calidad. Evalúa detenidamente los datos de entrenamiento y las métricas de evaluación, así como las atribuciones.

Para obtener más información sobre las limitaciones, consulta el informe técnico sobre explicaciones de IA.

Mejorar las atribuciones de funciones

Los siguientes factores son los que más influyen en las atribuciones de funciones:

  • Los métodos de atribución aproximan el valor de Shapley. Puedes aumentar la precisión de la aproximación incrementando el número de rutas del método Shapley muestreado. Por lo tanto, las atribuciones podrían cambiar drásticamente.
  • Las atribuciones solo expresan cuánto ha afectado la función al cambio en el valor de inferencia en relación con el valor de referencia. Asegúrate de elegir una referencia significativa que esté relacionada con la pregunta que le hagas al modelo. Los valores de atribución y su interpretación pueden cambiar significativamente al cambiar de base.

Algoritmo

Vertex AI proporciona atribuciones de características mediante valores de Shapley, un algoritmo de teoría de juegos cooperativo que asigna crédito a cada jugador de un juego por un resultado concreto. Aplicado a los modelos de aprendizaje automático, esto significa que cada característica del modelo se trata como un "jugador" en el juego y la contribución se asigna en proporción al resultado de una inferencia concreta. En el caso de los modelos de datos estructurados, Vertex AI usa una aproximación de muestreo de los valores de Shapley exactos llamada Valores de Shapley muestreados.

Para obtener información detallada sobre cómo funciona el método de Shapley muestreado, consulta el artículo Bounding the Estimation Error of Sampling-based Shapley Value Approximation.

Siguientes pasos

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