Cómo el modelado de IA generativa puede provocar fallos de funcionamiento
Las opiniones y discusiones aquí son completamente mías y no reflejan en absoluto los puntos de vista de Meta o de mi equipo ni ningún conocimiento interno o propietario.
Trabajo en la división de IA generativa de Meta. Específicamente trabajo en generación de texto → imagen para Meta. Nuestros primeros productos se lanzaron aquí y puedes probarlos aquí . Cuando le pedí "Una familia de alemanes en 2024", obtuve la siguiente imagen ampliada, pero también obtuve otras 3 imágenes en la parte inferior.
Aquí están los resultados de ampliar 2 de las otras sugerencias:
Como puede ver, aquí hay cierta diversidad étnica que representa a las familias. Sin embargo, no lo hace excluyendo lo que sería “tradicionalmente” una familia alemana.
Mientras tanto, aquí hay algunos ejemplos más:
Aquí hay otro mensaje para representar algunas figuras históricas:
Por supuesto, hay muchos fallos y la gente de mi equipo, incluido yo mismo, estamos trabajando para mejorarlo. El mensaje anterior, por ejemplo, pensaba que "indio" significaba un poco tanto de gente de la India como de "indios nativos" de Estados Unidos.
Sin embargo, si prestaste atención al fiasco Gemini de Google la semana pasada, los resultados del modelo no se parecían a los anteriores y tenían resultados mucho más preocupantes. Aquí hay un hilo que describe algunos de esos obstáculos.
Si no puede acceder al hilo completo en Twitter, aquí está el hilo sin comprimir .
Hay muchas más imágenes que causaron revuelo, pero estas serían suficientes para sacar las siguientes conclusiones:
Esto desencadenaría muchas reacciones, desde la indignación por el “borrado” de la “gente blanca” por parte de las “corporaciones despiertas”, algunas otras publicaciones de los medios que intentan centrarse en cómo Géminis mostraría a “la gente de color como nazis” o algún comentario sobre cómo se está exagerando la cuestión o se está refutando el “sesgo liberal”. Estas reacciones a menudo siguen líneas políticas y no es mi intención profundizar en ellas aquí.
Sin embargo, lo que puedo contribuir positivamente es cierta comprensión como ingeniero que trabaja en este espacio específico para explicar cómo funciona el ciclo de desarrollo para el desarrollo de modelos, especialmente en IA generativa, además de usarlo para comprender (especulativamente) cómo resultados como los anteriores pueden volverse dominantes. No quiero utilizar ninguna jerga técnica ni explicar los aspectos internos de las redes neuronales; tampoco creo que sean relevantes aquí. Quiero reiterar que nada aquí debería ser información patentada y no tengo ningún conocimiento interno del problema ni del funcionamiento interno de Google.
Antes de profundizar en algunas de las etapas, quiero explicar una invariante muy importante. Un modelo es tan bueno como los datos con los que se entrena . Eso no significa que otros componentes del modelo (como la arquitectura) no sean importantes o incluso menos importantes. De hecho, en los últimos años se han realizado excelentes investigaciones en el área del aprendizaje automático que ha acelerado el crecimiento exponencial en este campo desde los LLM, la generación de imágenes, la generación de videos, etc. Sin embargo, una limitación que enfrenta cada modelo, independientemente de los avances, es que puede No dará los resultados deseados si no está capacitado en un buen conjunto de datos representativo.
Para aquellos que no están familiarizados con los conceptos del aprendizaje automático, un modelo recibe (o “entrena”) múltiples ejemplos de un determinado concepto (perro, por ejemplo), tanto positivos (que contienen) como negativos (que no contienen), con la expectativa de que, dada cualquier entrada aleatoria, el modelo debería poder predecir con alta confianza si contiene una instancia de ese concepto. Se pueden realizar muchos aumentos para casos de uso específicos (por ejemplo, identificación de coordenadas del perro).
Entrenamiento a gran escala (también conocido como preentrenamiento): identificar un perro es solo un ejemplo. El problema generalizado aquí sería: dado cualquier texto, generar la imagen correspondiente. Para hacerlo, un modelo primero necesitaría identificar (“aprender”) qué significan ciertas palabras. Por lo tanto, sería necesario reconocer un elefante, un hombre, una mujer, un perro, una montaña, etc. observando muchos ejemplos de cada criterio (“concepto”). Sin embargo, para que el modelo genere buenas imágenes para cada escenario, necesita comprender una gran variedad de conceptos, que incluirán no sólo los más comunes, sino también una larga lista de conceptos menos utilizados y menos familiares. Para hacerlo con una confianza razonablemente alta, necesitaríamos entrenar el modelo con un gran volumen de datos (de millones a miles de millones). Esta etapa se conoce como preentrenamiento, donde una gran escala de datos ingeridos ayuda al modelo a generar una calidad suficientemente buena de los resultados deseados.
Un corolario del aprendizaje de modelos basado en datos ingeridos es que el modelo aprendería los patrones de su conjunto de entrenamiento junto con todos los sesgos que tiene. Entonces, si su conjunto de datos de entrenamiento canino solo tiene imágenes de shiba inus y corgis (perros súper dulces, por cierto), todos los perros generados se parecerán a estas razas. Por lo tanto, si desea que los resultados de su modelo no se "adapten demasiado" a tipos particulares como se describe anteriormente, deberá agregar diversidad a su fuente. Entonces, en el ejemplo anterior, desea asegurarse de que los datos de entrenamiento tengan un buen volumen de las razas principales que desea que se reflejen en la muestra de manera uniforme.
Esto también se aplica a los humanos. Así como la sobrerrepresentación de ciertas razas de perros no es deseable, lo mismo ocurre con los humanos. Sin embargo, para los humanos, a diferencia de las razas, esas líneas divisorias ocurren a través de géneros, nacionalidades, etnias y líneas raciales. Idealmente, queremos que nuestra etapa previa al entrenamiento refleje una uniformidad relativa en estas dimensiones para evitar que ciertas características dominen en los resultados del modelo.
Por lo tanto, en la etapa de preentrenamiento, el modelo ingiere enormes volúmenes de datos mientras intenta encontrar cierta diversidad en conceptos (humanos, mascotas, vida silvestre, naturaleza, muebles, paisajes, etc.) y luego cierta diversidad dentro de estos conceptos (razas, nacionalidades, dimensiones). ).
Ajuste fino : sin embargo, después de entrenar un modelo con grandes escalas de datos, en un paso final se “ajusta” con datos muy pequeños y de alta calidad. Aquí , pequeños cambios pueden tener cambios agresivos en el resultado del modelo. Por lo tanto, si desea cambiar la calidad visual, la distribución, este sería el lugar para hacerlo. Sin embargo, tenga en cuenta que los datos previos al entrenamiento, dada su gran escala, siguen siendo dominantes y es difícil determinar qué parte de la salida del modelo se ve afectada por cada etapa del entrenamiento del modelo.
Seguridad : la comprensión anterior se ha centrado principalmente en explicar las etapas centrales y los aspectos importantes de la salida del modelo. Sin embargo, también debemos comprender las implicaciones del sesgo y las restricciones legales en el mundo real y garantizar que los modelos no contribuyan negativamente. Si bien seguir las leyes puede ser relativamente más fácil ya que están consagradas (aunque todavía hay mucho margen de interpretación, como lo demuestran los tribunales), abordar otras cuestiones que no son ilegales pero sí potencialmente dañinas genera muchas controversias y expone la división política. Ha surgido un campo de la IA llamado “ ética de la IA ” o “ IA responsable ” para abordar cuestiones de este último tipo: no ilegales, pero sí potencialmente dañinas.
En el ejemplo de sesgo anterior, es relativamente poco controvertido, por ejemplo, decir que necesitamos muestras representativas de hombres y mujeres en el conjunto de datos de entrenamiento. O personas de India, China, EE. UU., Reino Unido, Brasil y Nigeria para reflejar a los humanos. Otras mitigaciones similares relativamente poco controvertidas serían evitar la desnudez (de adultos, no completamente ilegal, así como la de niños, ilegal), no divulgar información personal (incluida la financiera y de salud) de ningún individuo contra su consentimiento, posibles infracciones de propiedad intelectual. Pero el campo de la IA responsable va más allá, ya que también existe el objetivo de no perpetuar "estereotipos dañinos".
Aquí hay un ejemplo: si le pides a un modelo que genere imágenes de un médico y una enfermera, y 99 de cada 100 veces muestra a un hombre como médico y a una mujer como enfermera, eso definitivamente está perpetuando estereotipos sociales indeseables.
Algunos otros ejemplos: si le pides al modelo que genere un hombre musulmán, podría terminar mostrando a un terrorista violento.
¿Por qué el modelo haría eso?, te preguntarás. Recuerde, el modelo es tan bueno como los datos de entrenamiento . Y resulta que se debe a una combinación de distribuciones en el mundo real (como más mujeres en enfermería que en médicos, a menudo debido a limitaciones sociales), definiciones de ciertas palabras en diferentes áreas (el extremismo violento está asociado con actos de ciertos grupos y no otros) o cobertura mediática sesgada hacia ciertos grupos en localidades específicas (chinos que comen perros/murciélagos, por ejemplo), los datos que consumiría el modelo amplificarían muchos de estos sesgos. Por lo tanto, es probable que un modelo entrenado con tales datos genere casi siempre a mujeres como enfermeras, hombres como médicos, hombres musulmanes como extremistas violentos o chinos/asiáticos como una persona que come murciélagos.
Estos se denominan sesgos "inconscientes" del modelo y los datos. ¿Es necesario arreglar esto? Legalmente, no (aunque en algunas jurisdicciones probablemente sí). ¿Moralmente? Ésta es una pregunta complicada y bastante controvertida. Un instinto obvio sería “sí”: evitar que se amplifiquen los estereotipos dañinos. Sin embargo, podría haber alguna objeción sobre hasta qué punto deberían intervenir los humanos para torcer los resultados, especialmente si refleja un hecho empírico (incluso si es el resultado de un prejuicio o discriminación social). Incluso si estamos de acuerdo en que es deseable hacerlo, ¿qué humanos pueden hacerlo y cuáles son las limitaciones, si las hay (como sus propios prejuicios)? ¿Intervenir también puede tener efectos secundarios negativos? De todos modos, como se mencionó anteriormente, la intención de este artículo no es entrar en tales discusiones, sino simplemente reconocer algunas controversias y argumentos fundamentales.
Independientemente de cuál sea su posición sobre estos temas, considérelo suficiente con decir: la mayoría de las grandes corporaciones (incluida Meta) que desarrollan modelos generativos de IA (tanto de texto como de imagen) responden afirmativamente a la pregunta de "¿es necesario arreglarlo?" y están tomando medidas. Hay muchas medidas para mitigar esto. Algunos ejemplos de cómo incluirían la limpieza de datos detectando y posiblemente eliminando emparejamientos dañinos, o alejando agresivamente el modelo de resultados no deseados específicos en la etapa de ajuste para alterar los resultados de los que obtendría al ingerir corpus de Internet.
Como resultado, puede ver que las indicaciones que podrían haber sido muy problemáticas, como lo demuestran los resultados de búsqueda de imágenes de Google, están distribuidas de manera muy uniforme.
Como se puede ver arriba, se generan 4 imágenes. Existe una distribución bastante buena de hombres y mujeres en ambos roles.
Mitigaciones legales y de privacidad: lo anterior podría generar muchas preocupaciones para algunas personas, como que empleados aleatorios inyectan sus propios prejuicios y alteran los resultados del modelo utilizando características inmutables de la forma que quieran. Sin embargo, todas las grandes empresas de tecnología tienen enormes divisiones legales y algunas de ellas cuentan con personal exclusivamente para ocuparse de revisar los riesgos legales y sobrepasar los límites al introducir parámetros para modelar la generación de resultados. ¿Cómo lo hicieron? ¿Leen todo el código? No.
Sin embargo, antes de que cualquier desarrollo comience a escala, mucho antes del lanzamiento a producción, los desarrolladores, gerentes de productos, científicos de datos y gerentes deben presentar una visión de cómo van a lograr sus objetivos, los sesgos que podría introducir y las preocupaciones sobre privacidad que podrían plantear. acceder o exponer datos que no deberían hacerlo, y también el uso de parámetros controvertidos. Entonces, ¿podemos simplemente codificar la raza en nuestro modelo? ¿Qué pasa con la nacionalidad? Cada pregunta como esta tiene una respuesta diferente según la empresa, y no divulgaría ninguna de las decisiones dentro de Meta, pero cada una de ellas se considera y responde en la fase de diseño para satisfacción de los representantes legales. No cumplir con estos es un obstáculo para el lanzamiento, lo que impide el envío, independientemente de lo buenos que sean sus resultados.
Evaluación del modelo : Hay una etapa final y muy importante : la evaluación. Después de todo, si usted ha pasado por el enorme dolor de desarrollar estos modelos de gran complejidad, ¿no le gustaría probarlo? Hay muchos métodos para hacer esto: muchos de ellos manuales, algunos automáticos, pero uno muy común implica enviar algunos resultados generados a un conjunto de evaluadores y pedirles que los evalúen a través de algunas dimensiones como la calidad visual, la fidelidad inmediata y posiblemente también interacciones dañinas. Los métodos difieren según el equipo y la empresa, pero esencialmente, el lanzamiento generalmente requeriría satisfacer algunas métricas internas para convencerse de que está funcionando mejor que sus versiones anteriores. Además, existen " barandillas de seguridad ", lo que significa que no es necesario mejorarlas, pero no se puede retroceder para poder lanzarlas. La generación de contenido dañino es generalmente una barrera de seguridad, ya que cada versión del modelo debe asegurarse de que no aumente accidentalmente las posibilidades de generar contenido dañino, incluso si mejora otras dimensiones necesarias y rentables.
Ahora que comprendemos todas las piezas que intervienen en el desarrollo de un modelo de generación de imágenes de IA generativa, podría valer la pena comprender dónde comenzaron los problemas. Es bastante obvio que la capa de seguridad tiene un papel; después de todo, los resultados de Google definitivamente parecen ajustar algunos parámetros relacionados con la raza. Basándome en mi trabajo, plantearía la siguiente hipótesis:
Se estaba llevando a cabo un experimento para garantizar que se aplicara alguna indicación genérica, no se omitía a las minorías y se producía sólo gente blanca.
Este experimento se realizó en una capa de ajuste fino para lograr los resultados de manera agresiva.
Generalmente, se tomaría una muestra de un conjunto de datos con algunas razones/proporciones para garantizar que un conjunto de datos no se vuelva completamente dominante.
Por error, esto no se configuró correctamente, lo que diluyó las otras imágenes del sobreajuste de ajuste fino a un conjunto de datos sin personas blancas.
Los pocos casos en los que finalmente mostraría a algunas personas blancas se deben a que, afortunadamente, el conjunto de datos previo al entrenamiento todavía tiene diversidad racial y étnica.
Esa sería mi evaluación técnica, y espero que los lectores comprendan partes del proceso de desarrollo del modelo, cómo se abordan algunas preguntas difíciles y qué tan sensible es todo el proceso a cometer errores. No abordé algunas partes aquí, incluidas las discusiones controvertidas sobre cómo corregir estereotipos y metodología dañinos, quién tiene la "culpa" y, lo más importante, cómo un modelo tan erróneo pasa por una evaluación (supuestamente) rigurosa del modelo y los equipos legales antes de enviarlo. uno de los goliats más grandes del espacio. Abordaré la última parte con algunas hipótesis en mi próxima publicación (por supuesto, no tengo información privilegiada).
Las opiniones y discusiones aquí son completamente mías y no reflejan en absoluto los puntos de vista de Meta o de mi equipo. No tengo conocimiento interno y ninguna información compartida es propiedad de Meta y las diversas fases del ciclo de vida del modelo son una práctica estándar de la industria y están ampliamente disponibles en línea.
También publicado aquí .