Hechos Clave
- El proyecto se denomina Destilación Simbólica de Circuitos.
- Se enfoca en circuitos a nivel de neuronas como los del trabajo 'Sparse Circuits' de OpenAI.
- El pipeline utiliza verificación de equivalencia acotada basada en SMT para probar la equivalencia del programa.
- Las tareas actuales incluyen el cierre de comillas y la detección de profundidad de corchetes.
- Las garantías están acotadas a dominios de tokens finitos.
Resumen Rápido
Un nuevo proyecto de interpretabilidad denominado Destilación Simbólica de Circuitos tiene como objetivo automatizar la conversión de circuitos a nivel de neuronas en programas de Python concisos. El método utiliza un pipeline que comienza con un gráfico de circuito podado extraído de un transformador para comportamientos específicos como el cierre de comillas. Luego entrena una red sustituta ReLU para que coincida con el circuito en un dominio finito y busca en un DSL restringido para sintetizar programas candidatos. Finalmente, la verificación de equivalencia acotada basada en SMT verifica que el programa coincida con el circuito original. Este enfoque busca proporcionar garantías verificables por máquina para el comportamiento del circuito, yendo más allá del análisis manual.
El Pipeline de Destilación
El proyecto Destilación Simbólica de Circuitos introduce un pipeline de cuatro pasos para automatizar la interpretación de circuitos neuronales. El proceso comienza con un gráfico de circuito podado para un comportamiento específico, como el cierre de comillas o la profundidad de corchetes, extraído de un modelo transformador. Este circuito se trata como una función ejecutable.
A continuación, se entrena una pequeña red ReLU para actuar como 'sustituta'. Este sustituto está diseñado para coincidir exactamente con el comportamiento del circuito original en todas las entradas dentro de un dominio acotado, típicamente secuencias de longitud 5 a 10 sobre un pequeño alfabeto de tokens. El sistema luego busca en un Lenguaje Específico de Dominio (DSL) restringido de motivos comunes de transformadores para sintetizar programas candidatos de Python. Estos motivos incluyen contadores, interruptores, detectores de umbrales y pequeñas máquinas de estado.
El paso final utiliza la verificación de equivalencia acotada basada en SMT. Esta tecnología cumple dos propósitos: demuestra que un programa candidato y el sustituto coinciden en todas las entradas del dominio, o produce una entrada de contraejemplo que descarta el programa. Si el solucionador encuentra una prueba, el resultado es una pequeña función de Python legible por humanos acompañada de una garantía verificable por máquina de que coincide con el circuito original en ese dominio acotado.
Motivación y Objetivos
El proyecto se construyó para abordar un cuello de botella específico en la interpretabilidad mecanicista. Si bien este campo se ha vuelto experto en extraer 'circuitos pequeños y nítidos' de grandes modelos, el proceso de convertir esas representaciones gráficas en algoritmos limpios y legibles por humanos sigue siendo en gran medida manual. El objetivo principal de Destilación Simbólica de Circuitos es automatizar este paso final.
Al eliminar la necesidad de asistencia manual, el proyecto busca pasar directamente de 'aquí está un circuito disperso' a 'aquí está un algoritmo verificado que explica lo que hace'. Esta automatización es fundamental para escalar los esfuerzos de interpretabilidad a modelos más grandes y comportamientos más complejos. La dependencia de métodos formales asegura que los algoritmos resultantes no sean solo suposiciones, sino implementaciones verificadas de la lógica del circuito.
Capacidades y Limitaciones Actuales
Según la última actualización, el sistema demuestra funcionalidad en tareas específicas. Maneja con éxito las tareas de cierre de comillas y detección de profundidad de corchetes derivadas del repositorio circuit_sparsity de OpenAI. El pipeline logra un ajuste exacto del sustituto en dominios de tokens finitos y utiliza plantillas DSL para contadores simples, interruptores y pequeñas máquinas de estado. Se establece la equivalencia acotada basada en SMT entre el circuito disperso, el sustituto ReLU y el programa de Python.
Sin embargo, siguen existiendo limitaciones significativas. Las garantías proporcionadas son estrictamente acotadas; la equivalencia solo se prueba en dominios de tokens finitos que consisten en secuencias cortas y un vocabulario pequeño. Actualmente, el proyecto se centra en circuitos muy pequeños. Escalar a circuitos más grandes y contextos más largos representa trabajo de ingeniería e investigación abierto. Además, el DSL está diseñado a mano alrededor de unos pocos motivos específicos. El creador ha señalado que aún no están aprendiendo el DSL en sí ni empleando estrategias de búsqueda avanzadas.
Direcciones Futuras y Retroalimentación
El creador está buscando activamente retroalimentación sobre varios aspectos del proyecto. Específicamente, pregunta si la formulación del problema y las garantías acotadas son interesantes para quienes trabajan en interpretabilidad mecanicista o métodos formales. También se solicitan sugerencias para los próximos puntos de referencia, específicamente qué circuitos o comportamientos la comunidad quisiera ver destilados a continuación.
También se busca retroalimentación con respecto al diseño del DSL, la estrategia de búsqueda y la configuración de SMT. El proyecto invita a preguntas sobre detalles de implementación, la codificación SMT y la integración con repositorios existentes. Este enfoque abierto busca refinar la herramienta según las necesidades de la comunidad y expandir su aplicabilidad a una gama más amplia de comportamientos de redes neuronales.
"La interpretabilidad mecanicista se ha vuelto bastante buena extrayendo 'circuitos pequeños y nítidos' de grandes modelos, pero convertir esos gráficos en algoritmos limpios y legibles por humanos sigue siendo muy manual."
— Creador del Proyecto
Key Facts: 1. El proyecto se denomina Destilación Simbólica de Circuitos. 2. Se enfoca en circuitos a nivel de neuronas como los del trabajo 'Sparse Circuits' de OpenAI. 3. El pipeline utiliza verificación de equivalencia acotada basada en SMT para probar la equivalencia del programa. 4. Las tareas actuales incluyen el cierre de comillas y la detección de profundidad de corchetes. 5. Las garantías están acotadas a dominios de tokens finitos. FAQ: Q1: ¿Qué es la Destilación Simbólica de Circuitos? A1: Es un proyecto que automatiza la recuperación de programas de Python concisos a partir de circuitos a nivel de neuronas, junto con una prueba formal de equivalencia acotada. Q2: ¿Cómo funciona el proceso de verificación? A2: Entrena un sustituto ReLU para que coincida con el circuito, sintetiza programas de Python mediante una búsqueda DSL y utiliza solucionadores SMT para verificar la equivalencia acotada. Q3: ¿Cuáles son las limitaciones actuales? A3: El sistema está actualmente limitado a circuitos pequeños y secuencias cortas, con garantías restringidas a dominios de tokens finitos."Mi objetivo aquí es automatizar ese último paso: pasar de 'aquí está un circuito disperso' a 'aquí está un algoritmo verificado que explica lo que hace', sin asistencia manual."
— Creador del Proyecto



