¿Confiarías tu vida a la IA?

Hay una historia conocida en los círculos de investigación en IA sobre un modelo de red neuronal al que se entrenó para distinguir entre lobos y huskies. El modelo aprendió a identificarlos correctamente y con una gran precisión cuando se le enseñaban imágenes que no se habían utilizado para su entrenamiento.

Sin embargo, pronto se hizo evidente que algo fallaba, ya que algunas imágenes muy claras se clasificaban erróneamente. Cuando analizaron por qué la red neuronal cometía errores tan graves, los investigadores descubrieron que el modelo había aprendido a clasificar las imágenes en función de si había o no nieve en ellas, ya que todas las imágenes de lobos que se habían utilizado durante el entrenamiento tenían nieve de fondo, mientras que las de huskies no. Como era de esperar, el modelo fallaba.

Ahora, imagina que queremos ayudar a capturar huskies que se hayan extraviado en el medio natural, para lo cual corregimos el modelo y le enseñamos a distinguir correctamente entre lobos y huskies, independientemente del color de fondo. Lo incorporamos a dispositivos con cámaras que luego repartimos entre voluntarios y amigos. Confiamos en que nuestro modelo no diga que es un husky cuando en realidad es un lobo, pero ¿qué grado de confianza podemos tener en que no va a haber nada que altere el modelo? ¿Qué pasará si ve un coyote? ¿Lo clasificará como lobo por su tamaño? ¿Y si es un zorro? ¿O un oso? ¿Nos arriesgamos a decirles a nuestros amigos que se acerquen y confiamos en que se darán cuenta de que el perro extraviado es en realidad un oso antes de salir del coche con un buen filete jugoso?

¿Aprendizaje automático de qué?

Las técnicas de aprendizaje automático, especialmente las redes neuronales, han logrado un éxito tremendo cuando se han aplicado a multitud de problemas, algunos de ellos muy complejos, como la traducción o el reconocimiento de voz. Su utilidad es innegable, y se han vuelto imprescindibles en diversos campos.

A pesar de los avances logrados durante los últimos doce años, a lo que se tiende actualmente en el ámbito de la IA es a la investigación incremental. Se están logrando mejoras en los sistemas de IA mediante el uso de más datos y de modelos más grandes, tal y como expuso mi compañera Catarina en un artículo anterior. Las mejoras en el rendimiento son parciales, y la existencia de cuadros de indicadores ha fomentado esta práctica.

Estos cuadros de indicadores ofrecen conjuntos de datos públicos relacionados con diversas tareas de procesamiento del lenguaje natural (PNL), como preguntas y respuestas, análisis de sentimientos, similitud semántica, etc. En realidad, se trata de una iniciativa genial, ya que anima a los investigadores a que creen sistemas comparables. Sin embargo, también hace que los investigadores adapten demasiado sus sistemas a estos conjuntos de datos. No es que esto no sucediera antes, pero, en medio de todo el bombo que rodea a la IA, parece que se nos ha ido de las manos.

Al igual que en el caso del lobo y el husky, el problema es que cada vez más modelos están logrando un mejor rendimiento mediante el aprendizaje de las idiosincrasias de los datos. Los modelos neuronales son como cajas negras, lo cual dificulta poder asegurarse de que resuelvan los datos en lugar de la tarea. Parece que no hay mucha gente que se preocupe por esto, así que estos modelos se aplican de forma prematura a casos de la vida real, y cuando alguien se da cuenta de que la nieve es un factor que el modelo tiene en cuenta, suele ser demasiado tarde.

Existen dos motivos principales que originan estos problemas de sobreoptimización.

1. Optimización del parámetro equivocado

Los modelos están optimizados para un parámetro que puede calcularse de forma fácil y rápida y que se correlaciona hasta cierto punto con el objetivo que se busca (o «indicador» del éxito). Desde hace décadas, se sabe que, en diversas disciplinas, el hecho de asociar un objetivo deseado a una cantidad que se puede medir fácilmente puede ocasionar problemas. De esto se habla en un documento sobre regulación económica que publicó el economista Charles Goodhart en 1975 y que se popularizó como ley de Goodhart:

«Cuando un indicador se convierte en un parámetro, deja de ser un buen indicador».

O dicho de un modo menos atractivo: «Cualquier regularidad estadística observada tenderá a desaparecer en cuanto se ejerza presión sobre ella con fines de control». Independientemente de cómo se formule, lo que esta ley quiere decir es que, cada vez que se miden los resultados en función de algún número, se optimiza en relación con ese número. En otras palabras, manipulamos el parámetro.

Ley de Goodhart, SKETCHPLANATIONS

Los modelos de redes neuronales terminan haciendo lo mismo. El parámetro para el cual se optimizan es únicamente un indicador de la medida real del rendimiento. No hay forma de garantizar que el modelo vaya a obtener el rendimiento esperado en el mundo real.

Los modelos de traducción automática neuronal, por ejemplo, están optimizados para BLEU, un parámetro que compara los resultados obtenidos por el modelo con una traducción de referencia, que es literal. En el mundo real, lo importante es que la traducción sea fluida y precisa, incluso si la redacción es diferente a la de la oración original.

2. Optimización con datos no representativos

Al igual que en el caso en el que se detectaba la nieve, los modelos potentes logran un mejor rendimiento en cuanto a los parámetros mediante el aprendizaje de las idiosincrasias de los datos de entrenamiento. Pero los datos reales pueden ser algo diferentes y no contener las mismas idiosincrasias o frecuencias generales de términos, clases, antecedentes, etc. Cuando se aplican a situaciones reales, estos modelos estarán condicionados de forma inevitable por la representación que han aprendido de los datos de entrenamiento. Un lobo en un paisaje verde se convertirá fácilmente en un husky.

Cuando se utilizan datos no representativos para el entrenamiento, a veces sin tener en cuenta cómo se han recopilado o de dónde proceden, puede resultar muy problemático aplicar un modelo a situaciones que le resulten desconocidas. El modelo ofrece resultados sesgados. Y aunque este sesgo que se ha aprendido de forma implícita puede parecer poco importante en esta situación concreta (a menos, por supuesto, que alguien sea atacado), cuando esto ocurre en el caso de solicitudes de préstamos, créditos fiscales para la vivienda o incluso entrevistas de trabajo, da miedo pensar en las consecuencias que esto puede llegar a tener.

El año pasado, el tribunal estatal de California determinó que había demasiados prejuicios humanos a la hora de decidir los importes de las fianzas en efectivo. Con el argumento de eliminar este sesgo, aprobaron una ley que ordenaba la utilización de un algoritmo para evaluar el riesgo de que una persona no compareciera ante el tribunal, lo que asumieron que proporcionaría un punto de vista objetivo. Pero ¿de dónde proceden los datos de entrenamiento de este algoritmo? Lo más probable es que provengan de archivos históricos, los cuales contienen exactamente el mismo sesgo que se supone que debe evitar el algoritmo.

Desafíos que plantea el medio natural

Las redes neuronales confían en sus predicciones incluso cuando estas no tiene ningún sentido.

Incluso después de corregir el modelo que distinguía entre lobos y huskies, aún teníamos un problema. ¿Qué va a predecir cuando se enfrente a una imagen de un coyote, un zorro o incluso un oso?

Sabemos que nuestro modelo de distinción entre lobos y huskies no es capaz de reconocer un oso. Intentará clasificarlo como lobo o como husky. Pero el problema que suelen plantear los modelos neuronales es que la probabilidad que asignan a un resultado determinado no refleja la confianza que tienen en esa predicción. Las probabilidades no pueden considerarse como estimaciones de confianza. Las redes neuronales confían en sus predicciones aunque estas no tengan ningún sentido e incluso cuando la información que se les presenta es considerablemente diferente de cualquier cosa que el modelo haya visto durante el entrenamiento. Cuando al modelo se le presenta la imagen de un oso, el resultado que este ofrece puede ir desde 100 % lobo hasta 100 % husky. ¿No sería un alivio que los resultados del modelo fuesen de un 50 % para cada una de las opciones? Porque entonces podríamos tomar todas las medidas de precaución necesarias para evitar acercarnos.

Lo que nos gustaría es que nuestros modelos mostrasen una gran incertidumbre al enfrentarse a datos de regiones que no han visto antes. «Queremos que “fracasen con dignidad” cuando se utilizan en la producción», tal y como señaló Anant Jain en este artículo de Medium. Eso nos permitirá confiar en las predicciones de los modelos.

Desgraciadamente, la práctica actual consiste en confiar en un modelo en función del rendimiento que este obtiene con respecto a un solo parámetro relacionado con un conjunto de datos no representativo.

¿Hay esperanza?

Ninguno de estos problemas puede resolverse fácilmente. Requieren esfuerzo y tiempo por parte de investigadores, ingenieros, reguladores, responsables de la toma de decisiones y legisladores. Pero hay esperanza.

Podemos entrenar modelos con parámetros complementarios para evitar ceñirnos a uno solo que no refleje la medida real deseada. El mejor modelo sería aquel que tuviese un rendimiento similar en todos ellos. Además, deberíamos esforzarnos considerablemente por medir el rendimiento de forma periódica en el mundo real, aunque solo sea para un conjunto parcial de ejemplos (ya que esto generalmente requiere trabajo humano manual).

Obviamente, los datos de entrenamiento más representativos ayudarán a reducir al máximo el sesgo implícito. No obstante, saber qué datos son más representativos constituye todo un reto. Lo que resultaría verdaderamente útil sería disponer de modelos que pudiesen explicar sus predicciones. Esto nos permitiría detectar de forma inmediata el sesgo del lobo y la nieve.

Por último, poder confiar en lo que predicen los modelos permitiría que las aplicaciones de la IA pudiesen utilizarse de una forma mucho más segura. Los humanos podrían intervenir cuando no se alcanzase un cierto grado de fiabilidad, lo que permitiría a los modelos desarrollar el excelente trabajo que llevan a cabo cuando se enfrentan a datos a los que están realmente adaptados.

En Unbabel, nos encontramos constantemente con huskies, lobos y osos. Pero al incluir a personas en el proceso que corrigen los errores y evalúan la verdadera calidad de lo que entregamos, podemos seguir mejorando nuestros modelos, así como el método de evaluación automática que utilizamos.

Parafraseando a nuestro vicepresidente de Tecnologías Lingüísticas, Alon Lavie:

Lo más importante para nosotros es que los resultados experimentales que obtenemos no se generalizan de la forma que se presupone y, de hecho, no son representativos de nuestros supuestos reales de traducción. Esto ocurre continuamente.

La IA tiene visos de continuidad, y ya hemos podido beneficiarnos de ella en muchos ámbitos. Pero estamos llegando a un punto de inflexión en el que las redes neuronales se utilizan tanto que debemos tener más cuidado a la hora de entrenarlas. Cada vez hay más lobos, la nieve se está derritiendo y nuestros amigos están ahí fuera. Tal vez deberíamos centrarnos en corregir lo que no funciona adecuadamente antes de que sea demasiado tarde.