Descubra qué hace cada neurona en el modelo Llama | de Ben Hagag | octubre de 2024

La nueva herramienta de Transluce está cambiando el juego de la transparencia de la IA: un caso de prueba y algo de reflexión

Imagen del autor: ¡atrapado en el acto de jugar con la nueva herramienta!

translúcidoun nuevo laboratorio de investigación sin fines de lucro con una misión inspiradora, acaba de lanzar (23.10.24) una herramienta fascinante que proporciona información sobre el comportamiento de las neuronas en los LLM. O en sus propias palabras:

Cuando un sistema de IA se comporta inesperadamente, nos gustaría entender el “proceso de pensamiento” que explica por qué ocurrió el comportamiento. Esto nos permite predecir y solucionar problemas con los modelos de IA, sacar a la luz conocimientos ocultos y descubrir sesgos aprendidos y correlaciones espurias.

Para cumplir su misión, han lanzado una interfaz de observabilidad donde puedes ingresar tus propias indicaciones, recibir respuestas y ver qué neuronas están activadas. Luego puede explorar las neuronas activadas y su atribución a la salida del modelo, todo ello habilitado por su novedoso enfoque para producir automáticamente descripciones de alta calidad de las neuronas dentro de los modelos de lenguaje.

Si quieres probar la herramienta, ve aquí. También ofrecen algunos tutoriales útiles. En este artículo, intentaré brindar otro caso de uso y compartir mi propia experiencia.

Probablemente haya muchas cosas que saber (dependiendo de su experiencia), pero me centraré en dos características clave: Activación y Atribución.

Activación Mide el valor de activación (normalizado) de la neurona. Llama utiliza MLP cerrados, lo que significa que las activaciones pueden ser positivas o negativas. Normalizamos por el valor del cuantil 10-5 de la neurona en un gran conjunto de datos de ejemplos.

Atribución Mide cuánto afecta la neurona a la salida del modelo. La atribución debe estar condicionada a un token de salida específico y es igual al gradiente de probabilidad de ese token de salida con respecto a la activación de la neurona, multiplicado por el valor de activación de la neurona. Los valores de atribución no están normalizados y se informan como valores absolutos.

Usando estas dos características puedes explorar el comportamiento del modelo, el comportamiento de las neuronas e incluso detectar patrones (o como ellos lo llaman “grupos”) de fenómenos de comportamiento de las neuronas.

Si el resultado del modelo no es el esperado, o si el modelo se equivoca, la herramienta le permite dirigir las neuronas y “solucionar” el problema fortaleciendo o suprimiendo las neuronas relacionadas con conceptos (existen excelentes trabajos sobre cómo dirigir basado en conceptos, uno de ellos es este gran trabajo).

Entonces, por curiosidad, probé esto con mi propio mensaje.

Tomé una pregunta lógica simple que la mayoría de los modelos actuales no logran resolver.

P: “𝗔𝗹𝗶𝗰𝗲 𝗵𝗮𝘀 𝟰 𝗯𝗿𝗼𝘁𝗵𝗲𝗿𝘀 𝗮𝗻𝗱 𝟮 𝘀𝗶𝘀𝘁𝗲𝗿𝘀. 𝗛𝗼𝘄 𝗺𝗮𝗻𝘆 𝘀𝗶𝘀𝘁𝗲𝗿𝘀 𝗱𝗼𝗲𝘀 𝗔𝗹𝗶𝗰𝗲’𝘀 𝗲𝗿 𝗵𝗮𝘃𝗲?”

Página principal. Imagen vía monitor.transluce.org

Y listo….

Llama se equivoca. Imagen vía monitor.transluce.org

O no.

En el lado izquierdo, puede ver el mensaje y el resultado. En el lado derecho, puedes ver las neuronas que más se “disparan” y observar los grupos principales en los que se agrupan estas neuronas.

Si pasa el cursor sobre los tokens de la izquierda, podrá ver las principales probabilidades. Si hace clic en uno de los tokens, podrá descubrir qué neuronas contribuyeron a predecir ese token.

Pase el cursor sobre “dentro”. Podemos ver tokens con las mayores probabilidades. Imagen vía monitor.transluce.org

Como puedes ver, tanto la lógica como la respuesta son erróneas.

“Como Alice tiene 4 hermanos, necesitamos saber cuántas hermanas tienen en común” >>> ¡Uf! Eso ya lo sabes.

Y, por supuesto, si Alice tiene dos hermanas (lo cual se indica en la entrada), no significa que el hermano de Alice tenga 2 hermanas 🙁

Entonces, intentemos arreglar esto. Después de examinar las neuronas, noté que el concepto de “diversidad” estaba demasiado activo (¿quizás estaba confundido acerca de la identidad de Alice?). Entonces intenté dirigir estas neuronas.

Ventana de dirección. Imagen vía monitor.transluce.org

Suprimí las neuronas relacionadas con este concepto y lo intenté de nuevo:

Modelo ajustado después de la dirección. Imagen vía monitor.transluce.org

Como puede ver, todavía genera una respuesta incorrecta. Pero si miras de cerca el resultado, la lógica ha cambiado y parece bastante mejor: se da cuenta de que necesitamos “cambiar” a “la perspectiva de uno de sus hermanos”. Y además, entendió que Alice es una hermana (¡Por fin!).

Sin embargo, la respuesta final sigue siendo incorrecta.

Decidí fortalecer el concepto de “roles de género”, pensando que ayudaría al modelo a comprender mejor los roles del hermano y la hermana en esta pregunta, manteniendo al mismo tiempo su comprensión de la relación de Alice con sus hermanos.

Otro ajuste. Imagen vía monitor.transluce.org

Ok, la respuesta seguía siendo incorrecta, pero parecía que el proceso de razonamiento mejoró ligeramente. La modelo afirmó que “se están haciendo referencia a las 2 hermanas de Alice”. La primera mitad de la oración indicó cierta comprensión (Sí, esto también está en la entrada. Y no, no estoy diciendo que el modelo o cualquier modelo pueda entender realmente, pero eso es una discusión para otro momento) que Alice tiene dos hermanas. . También reconoce que Alice es una hermana (“…el hermano tiene 2 hermanas: Alice y otra hermana…”). Pero aun así, la respuesta fue incorrecta. Tan cerca…

Ahora que estamos cerca, noté un concepto no relacionado (“compuestos y reacciones químicos”) que influye en la ficha “2” (resaltada en naranja en el lado izquierdo). No estoy seguro de por qué este concepto tuvo tanta influencia, pero decidí que era irrelevante para la pregunta y lo suprimí.

¿El resultado?

Resultado final. Imagen vía monitor.transluce.org

¡¡Éxito!! (más o menos)

Como puede ver arriba, finalmente dio la respuesta correcta.

Pero… ¿cómo fue el razonamiento?

Bueno…

Salida final. Imagen vía monitor.transluce.org

Siguió un proceso lógico extraño con cierta confusión en el juego de roles, pero aún así terminó con la respuesta correcta (si puedes explicarlo, compártelo).

Entonces, después de algunas pruebas y errores, lo logré… casi. Después de ajustar las neuronas relacionadas con el género y los compuestos químicos, el modelo produjo la respuesta correcta, pero el razonamiento no estaba del todo ahí. No estoy seguro, tal vez con más ajustes y ajustes (y tal vez mejores opciones de conceptos y neuronas), obtendría tanto la respuesta correcta como la lógica correcta. Te reto a que lo intentes.

Esto todavía es experimental y no utilicé ningún enfoque sistemático, pero para ser honesto, estoy impresionado y creo que es increíblemente prometedor. ¿Por qué? Porque la capacidad de observar y obtener descripciones de cada neurona, comprender (incluso parcialmente) su influencia y dirigir el comportamiento (sin reentrenamiento ni indicaciones) en tiempo real es impresionante y, sí, también un poco adictiva, ¡así que ten cuidado!

Otro pensamiento que tengo: si las descripciones son precisas (reflejan el comportamiento real) y si podemos experimentar con diferentes configuraciones manualmente, ¿por qué no intentar construir un modelo basado en activaciones neuronales y valores de atribución? Equipo Transluce, si estás leyendo esto… ¿qué piensas?

Considerándolo todo, gran trabajo. Recomiendo encarecidamente profundizar en esto. La facilidad de uso y la capacidad de observar el comportamiento de las neuronas son convincentes y creo que veremos más herramientas que adoptarán estas técnicas para ayudarnos a comprender mejor nuestros modelos.

Ahora voy a probar esto en algunos de nuestros casos de uso de razonamiento legal más desafiantes, para ver cómo captura estructuras lógicas más complejas.