El principio universal de destilación del conocimiento, compresión de modelos y extracción de reglas.
El entrenamiento de modelos de aprendizaje automático (ML) generalmente sigue un proceso familiar: comience con la recopilación de datos, límpielos y prepárelos, luego continúe con el ajuste del modelo. Pero ¿y si pudiéramos llevar este proceso más lejos? Así como algunos insectos sufren transformaciones dramáticas antes de alcanzar la madurez, los modelos ML pueden evolucionar de manera similar (ver Hinton et al. [1]) – lo que llamaré el metamorfosis ML. Este proceso implica encadenar diferentes modelos, lo que da como resultado un modelo final que logra una calidad significativamente mejor que si se hubiera entrenado directamente desde el principio.
Así es como funciona:
- Comience con algunos conocimientos iniciales, Datos 1.
- Entrenar un modelo de ML, Modelo A (digamos, una red neuronal), sobre estos datos.
- Generar nuevos datos, Datos 2usando Modelo A.
- Finalmente, use Datos 2 para ajustarse a su modelo objetivo, Modelo B.
Es posible que ya esté familiarizado con este concepto por la destilación del conocimiento, donde una red neuronal más pequeña reemplaza a una más grande. Pero la metamorfosis del ML va más allá, y ni el modelo inicial (Modelo A) ni el final (Modelo B) necesitan ser redes neuronales.
Ejemplo: metamorfosis de ML en el conjunto de datos MNIST
Imagine que tiene la tarea de entrenar un árbol de decisión de clases múltiples en el conjunto de datos MNIST de imágenes de dígitos escritos a mano, pero solo 1000 imágenes están etiquetadas. Podría entrenar el árbol directamente con estos datos limitados, pero la precisión tendría un límite de alrededor de 0,67. No es genial, ¿verdad? Alternativamente, puede utilizar la metamorfosis de ML para mejorar sus resultados.
Pero antes de profundizar en la solución, echemos un vistazo rápido a las técnicas y las investigaciones detrás de este enfoque.
1. Destilación del conocimiento (2015)
Incluso si no ha utilizado la destilación de conocimientos, probablemente la haya visto en acción. Por ejemplo, Meta sugiere destilar su modelo Llama 3.2 para adaptarlo a tareas específicas. [2]. O tome DistilBERT, una versión destilada de BERT [3]- o el marco DMD, que destila Stable Diffusion para acelerar la generación de imágenes en un factor de 30 [4].
En esencia, la destilación del conocimiento transfiere conocimiento de un modelo grande y complejo (el maestro) a un modelo más pequeño y eficiente (el alumno). El proceso implica la creación de un conjunto de transferencia que incluye tanto los datos de entrenamiento originales como los datos adicionales (ya sean originales o sintetizados) pseudoetiquetados por el modelo del maestro. Las pseudoetiquetas se conocen como etiquetas suaves — derivado de las probabilidades predichas por el profesor en varias clases. Estas etiquetas suaves proporcionan información más rica que etiquetas duras (indicadores de clase simples) porque reflejan la confianza del maestro y capturan similitudes sutiles entre las clases. Por ejemplo, podrían mostrar que un “1” particular es más similar a un “7” que a un “5”.
Al entrenar con este conjunto de transferencia enriquecido, el modelo de estudiante puede imitar efectivamente el desempeño del maestro y al mismo tiempo ser mucho más liviano, más rápido y más fácil de usar.
El modelo de estudiante obtenido de esta manera es más preciso de lo que habría sido si se hubiera entrenado únicamente con el conjunto de entrenamiento original.
2. Compresión del modelo (2007)
Compresión del modelo [5] A menudo se considera un precursor de la destilación del conocimiento, pero existen diferencias importantes. A diferencia de la destilación del conocimiento, la compresión de modelos no parece utilizar etiquetas suaves, a pesar de algunas afirmaciones en la literatura. [1,6]. No he encontrado ninguna evidencia de que las etiquetas blandas sean parte del proceso. De hecho, el método del artículo original ni siquiera se basa en redes neuronales artificiales (RNA) como Modelo A. En cambio, utiliza un conjunto de modelos, como SVM, árboles de decisión, bosques aleatorios y otros.
La compresión del modelo funciona aproximando la distribución de características. pag(x) para crear un conjunto de transferencia. Este conjunto es luego etiquetado por Modelo Aque proporciona la distribución condicional p(y∣x). La innovación clave en el trabajo original es una técnica llamada MUNGE para aproximar pag(x). Al igual que con la destilación de conocimientos, el objetivo es formar un grupo más pequeño y más eficiente. Modelo B que conserva el rendimiento de los más grandes Modelo A.
Al igual que en la destilación de conocimientos, el modelo comprimido entrenado de esta manera a menudo puede superar a un modelo similar entrenado directamente con los datos originales, gracias a la rica información incorporada en el conjunto de transferencia. [5].
A menudo, «compresión de modelo» se utiliza de manera más amplia para referirse a cualquier técnica que reduce el tamaño de Modelo A [7,8]. Esto incluye métodos como la destilación del conocimiento, pero también técnicas que no dependen de un conjunto de transferencia, como la poda, la cuantificación o la aproximación de bajo rango para redes neuronales.
3. Extracción de reglas (1995)
Cuando el problema no es la complejidad computacional o la memoria, sino la opacidad de la toma de decisiones de un modelo, la extracción de reglas pedagógicas ofrece una solución. [9]. En este enfoque, un modelo más simple e interpretable (Modelo B) está capacitado para replicar el comportamiento del modelo de maestro opaco (Modelo A), con el objetivo de derivar un conjunto de reglas legibles por humanos. El proceso generalmente comienza alimentando ejemplos sin etiquetar (a menudo generados aleatoriamente) en Modelo Aque los etiqueta para crear un conjunto de transferencia. Este conjunto de transferencia se utiliza luego para entrenar el modelo de estudiante transparente. Por ejemplo, en una tarea de clasificación, el modelo de estudiante podría ser un árbol de decisión que genere reglas como: «Si la característica X1 está por encima del umbral T1 y la característica X2 está por debajo del umbral T2, entonces clasifique como positiva».
El objetivo principal de la extracción de reglas pedagógicas es imitar fielmente el comportamiento del modelo docente, con fidelidad – la precisión del modelo de estudiante en relación con el modelo de maestro – que sirve como principal medida de calidad.
Curiosamente, las investigaciones han demostrado que los modelos transparentes creados mediante este método a veces pueden alcanzar una mayor precisión que modelos similares entrenados directamente con los datos originales utilizados para construir el Modelo A. [10,11].
La extracción de reglas pedagógicas pertenece a una familia más amplia de técnicas conocidas como métodos de explicación de modelos “globales”, que también incluyen la extracción de reglas descomposicionales y eclécticas. Ver [12] para más detalles.
4. Simulaciones como el Modelo A
Modelo A no tiene que ser un modelo ML; podría ser fácilmente una simulación por computadora de un proceso económico o físico, como la simulación del flujo de aire alrededor del ala de un avión. En este caso, Datos 1 Consiste en las ecuaciones diferenciales o en diferencias que definen el proceso. Para cualquier entrada dada, la simulación hace predicciones resolviendo estas ecuaciones numéricamente. Sin embargo, cuando estas simulaciones se vuelven computacionalmente costosas, se necesita una alternativa más rápida: un modelo sustituto (Modelo B), que puede acelerar tareas como la optimización [13]. Cuando el objetivo es identificar regiones importantes en el espacio de entrada, como zonas de estabilidad del sistema, un interpretable Modelo B se desarrolla a través de un proceso conocido como descubrimiento de escenarios. [14]. Para generar el conjunto de transferencia (Datos 2) tanto para el modelado sustituto como para el descubrimiento de escenarios, Modelo A se ejecuta en un conjunto diverso de entradas.
Volver a nuestro ejemplo MNIST
De una manera perspicaz artículo en TDS [15], Niklas von Moers muestra cómo el aprendizaje semisupervisado puede mejorar el rendimiento de una red neuronal convolucional (CNN) con los mismos datos de entrada. Este resultado encaja en la primera etapa del proceso de metamorfosis de ML, donde Modelo A es un clasificador CNN entrenado. El conjunto de transferencia, Datos 2luego contiene los 1000 ejemplos de entrenamiento originalmente etiquetados más aproximadamente 55 000 ejemplos pseudoetiquetados por Modelo A con predicciones de alta confianza. Ahora entreno a nuestro objetivo. Modelo Bun clasificador de árbol de decisión, en Datos 2 y lograr una precisión de 0,86, mucho más alta que 0,67 cuando se entrena en la parte etiquetada de Datos 1 solo. Esto significa que encadenar el árbol de decisión a la solución CNN reduce la tasa de error del árbol de decisión de 0,33 a 0,14. Toda una mejora, ¿no crees?
Para obtener el código experimental completo, consulte el GitHub repositorio.
Conclusión
En resumen, la metamorfosis del aprendizaje automático no siempre es necesaria, especialmente si su única preocupación es la precisión y no hay necesidad de interpretabilidad, inferencias más rápidas o requisitos de almacenamiento reducidos. Pero en otros casos, encadenar modelos puede producir resultados significativamente mejores que entrenar el modelo objetivo directamente sobre los datos originales.
Para una tarea de clasificación, el proceso implica:
- Datos 1: Los datos originales, total o parcialmente etiquetados.
- Modelo A: Un modelo entrenado en Datos 1.
- Datos 2: un conjunto de transferencia que incluye datos pseudoetiquetados.
- Modelo B: El modelo final, diseñado para cumplir requisitos adicionales, como interpretabilidad o eficiencia.
Entonces, ¿por qué no siempre utilizamos la metamorfosis de ML? El desafío a menudo reside en encontrar el juego de transferencia adecuado, Datos 2 [9]. Pero ese es un tema para otra historia.
Referencias
[1] Hinton, Geoffrey. “Destilando el conocimiento en una red neuronal.” preimpresión de arXiv arXiv:1503.02531 (2015).
[3] Sanh, Víctor y col. “DistilBERT, una versión destilada de BERT: Más pequeño, más rápido, más barato y más ligero. » preimpresión de arXiv arXiv:1910.01108 (2019).
[4] Yin, Tianwei y otros. “Difusión en un solo paso con destilación coincidente con la distribución.” Actas de la Conferencia IEEE/CVF sobre visión por computadora y reconocimiento de patrones. 2024.
[5] Buciluǎ, Cristian, Rich Caruana y Alexandru Niculescu-Mizil. “Compresión del modelo.» Actas de la 12.ª conferencia internacional ACM SIGKDD sobre descubrimiento de conocimientos y minería de datos. 2006.
[6] Destilación del conocimientoWikipedia
[7] Una descripción general de las técnicas de compresión de modelos para el aprendizaje profundo en el espacioen Medio
[8] Destilación de BERT utilizando un conjunto de datos de preguntas y respuestas sin etiquetarsobre Hacia la ciencia de datos
[9] Arzamasov, Vadim, Benjamin Jochum y Klemens Böhm. “Extracción de reglas pedagógicas para aprender modelos interpretables: un estudio empírico.” preimpresión de arXiv arXiv:2112.13285 (2021).
[10] Domingos, Pedro. “Adquisición de conocimientos a partir de ejemplos a través de múltiples modelos.» MACHINE LEARNING-TALLER INTERNACIONAL LUEGO CONFERENCIA-. EDITORES MORGAN KAUFMANN, INC., 1997.
[11] De Fortuny, Enric Junque y David Martens. “Extracción activa de reglas pedagógicas basada en el aprendizaje..” Transacciones IEEE en redes neuronales y sistemas de aprendizaje. 26.11 (2015): 2664–2677.
[12] Guidotti, Ricardo y col. “Un estudio de métodos para explicar los modelos de caja negra..” Encuestas de informática ACM (CSUR) 51,5 (2018): 1–42.
[13] modelo sustitutoWikipedia
[14] Descubrimiento de escenarios en Pythonpublicación de blog en Programación de agua
[15] Enseñar a su modelo a aprender de sí mismosobre Hacia la ciencia de datos