Destilación del conocimiento---notas de estudio

Destilación de conocimiento (destilación de posicionamiento y destilación de clasificación)

1. ¿Qué es la destilación del conocimiento?

	知识蒸馏指的是模型压缩的思想,通过使用一个较大的已经训练好的网络去教导一个较小的网络确切地去做什么。
	蒸馏的核心思想在于好模型的目标不是拟合训练数据,而是学习如何泛化到新的数据。所以蒸馏的目标是让学生模型学习到教师模型的泛化能力,理论上得到的结果会比单纯拟合训练数据的学生模型要好。
	在蒸馏的过程中,我们将原始大模型称为教师模型(teacher),新的小模型称为学生模型(student),训练集中的标签称为hard label,教师模型预测的概率输出为soft label,temperature(T)是用来调整soft label的超参数。
	![在这里插入图片描述](https://img-blog.csdnimg.cn/4cd905865a37452dbae3b34466e861b9.png)

2. ¿Por qué la destilación del conocimiento?

Existe cierta inconsistencia en los modelos utilizados para el entrenamiento y el despliegue:
en el proceso de entrenamiento, necesitamos usar modelos complejos y una gran cantidad de recursos informáticos para extraer información de conjuntos de datos muy grandes y altamente redundantes. En los experimentos, los modelos con los mejores resultados suelen ser de gran escala e incluso se obtienen mediante conjuntos de múltiples modelos. Sin embargo, los modelos grandes son inconvenientes para implementar en los servicios. Los cuellos de botella comunes son los siguientes:
• Velocidad de inferencia lenta
• Altos requisitos para los recursos de implementación (memoria, memoria de video, etc.)
• Durante la implementación, tenemos restricciones estrictas sobre la latencia y los recursos informáticos .
Por lo tanto, la compresión del modelo (reducir el número de parámetros del modelo y garantizar el rendimiento) se ha convertido en un tema importante. Y la "destilación de modelos" es un método de compresión de modelos.

3. Base teórica de la destilación del conocimiento

Modelo profesor-alumno: el profesor es el exportador de "conocimientos" y el alumno es el receptor de "conocimientos".
El proceso de destilación del conocimiento se divide en dos etapas:
• Entrenamiento del modelo original:
entrenamiento del "Modelo de maestro" Net-T, que se caracteriza por un modelo relativamente complejo, y el "Modelo de maestro" no impone ninguna restricción en la arquitectura del modelo, cantidad de parámetros e integración, el único requisito es que los indicadores ROC/mAP/mIoU
no tengan un sesgo obvio
• Entrenamiento de modelo simplificado:
entrene el "Modelo de estudiante" Net-S, que es un modelo único con una pequeña cantidad de parámetros y un estructura modelo simple. De manera similar,
por ejemplo, el modelo de clasificación también puede generar el valor de probabilidad de la categoría correspondiente después de softmax.

4. Los puntos clave de la destilación del conocimiento

(1) Obtener un modelo con una gran capacidad de generalización al aumentar la capacidad de la red:
puede reflejar bien la relación entre la entrada y la salida en todos los datos de un determinado problema, ya sean datos de entrenamiento, datos de prueba o cualquier otro dato que pertenezca al problema Datos desconocidos para el problema.
(2) Cuando usamos Net-T para destilar y entrenar Net-S, podemos dejar que Net-S aprenda directamente la capacidad de generalización de Net-T.
(3) La forma directa y eficiente de transferir la capacidad de generalización es usar
la probabilidad de la salida de categoría por la capa softmax como el "objetivo suave"
[Comparación entre el proceso de entrenamiento KD y el proceso de entrenamiento tradicional]:
el proceso de entrenamiento tradicional (objetivos duros): Encuentre la máxima probabilidad de la verdad básica, la relación entre la entropía cruzada y la máxima probabilidad
Proceso de entrenamiento KD (objetivos blandos): utilice las probabilidades de clase del modelo grande como objetivos blandos
(4) Función de máxima verosimilitud
inserte la descripción de la imagen aquí

(5) La divergencia KL
se usa para medir la distancia entre dos subdivisiones P y Q
inserte la descripción de la imagen aquí

(6) Entropía cruzada y entropía
inserte la descripción de la imagen aquí

(7) Función de pérdida de entropía cruzada

inserte la descripción de la imagen aquí

5. Por qué el proceso de formación de KD es más eficaz

La salida de la capa softmax, además de ejemplos positivos, las etiquetas negativas también contienen mucha información, como que la probabilidad de algunas etiquetas negativas es mucho mayor que otras etiquetas negativas (BMW, conejo y camión de basura).
En el proceso de entrenamiento tradicional (objetivo duro), todas las etiquetas negativas se convierten a 0 después de la codificación one-hot, descartando así la información que llevan las etiquetas negativas. Al final, Net-T solo destila la información de muestras positivas para entrenar muestras negativas.
inserte la descripción de la imagen aquí
(En el proceso de entrenamiento tradicional, solo se retiene la información de las muestras positivas después de one-hot)
y el método de entrenamiento KD no usa codificación one-hot, por lo que se retiene la información de cada muestra, de modo que la cantidad de información aportada a Net-S es mayor que el tradicional Método de entrenamiento
inserte la descripción de la imagen aquí
(proceso de entrenamiento KD, retención de información de todas las muestras negativas)

Ejemplo:
en la tarea de reconocimiento de dígitos escritos a mano MNIST, hay 10 categorías de salida. Suponiendo que el "2" de una entrada es más similar a "3", la probabilidad correspondiente a "3" en el valor de salida de softmax es 0,1, mientras que los valores correspondientes a otras etiquetas negativas son muy pequeños, y el otro "2" es más parecido a "7", "7" corresponde a una probabilidad de 0,1. Los valores de los objetivos duros correspondientes a los dos "2" son los mismos, pero sus objetivos suaves son diferentes. De esto podemos ver que el objetivo suave contiene más información que el objetivo duro. Y cuando la entropía de la distribución del objetivo suave es relativamente alta, el conocimiento contenido en el objetivo suave es más rico.
inserte la descripción de la imagen aquí

6. Softmax con "temperatura"

Primero revise la función softmax originalinserte la descripción de la imagen aquí

Pero si usa directamente el valor de salida de la capa softmax como el objetivo suave, esto traerá otro problema: cuando la entropía de distribución de probabilidad de la salida softmax es relativamente pequeña, el valor de la etiqueta negativa está muy cerca de 0, y el La contribución a la función de pérdida es muy pequeña, de pequeña a insignificante. Entonces, la variable "temperatura" es útil.
La siguiente fórmula es la función softmax después de agregar la variable de temperatura: 
inserte la descripción de la imagen aquí

Aquí T es la temperatura.
La función softmax original es un caso especial de T=1. Cuanto mayor sea T, más suave será la distribución de probabilidad de salida de softmax, mayor será la entropía de la distribución, la información transportada por la etiqueta negativa se amplificará relativamente y el entrenamiento del modelo prestará más atención a la etiqueta negativa.
inserte la descripción de la imagen aquí

7. El método específico de destilación del conocimiento (red de clasificación)

1. Método de destilación de conocimientos generales:
(1) Capacitar bien a la red de docentes Net-T 
(2) A alta temperatura T, destilar el conocimiento de Net-T a Net-S
 El proceso de capacitación de Net-T es muy simple , detallado a continuación Hable sobre el segundo paso: el proceso de destilación a alta temperatura. La función objetivo del proceso de destilación a alta temperatura
está ponderada por la pérdida de destilación (correspondiente al objetivo suave) y la pérdida de estudiantes (correspondiente al objetivo duro). esquema ej.
inserte la descripción de la imagen aquí

2. Proceso de destilación a alta temperatura
(1) Función de pérdida:
inserte la descripción de la imagen aquí

a) La primera parte de la función de pérdida,
Net-T y Net-S, se ingresan en el conjunto de transferencia al mismo tiempo (el conjunto de entrenamiento utilizado para entrenar Net-T se puede reutilizar directamente aquí
), y la distribución softmax ( con alta temperatura) generado por Net-T se
usa como objetivo suave, la salida softmax de Net-S a la misma temperatura T
y la entropía cruzada del objetivo suave son la primera parte de la función Lossinserte la descripción de la imagen aquí

b) La segunda parte de la función de pérdida es
la salida softmax de Net-S bajo la condición de T=1 y la entropía cruzada de la verdad básica es la segunda parte de la función de pérdida.inserte la descripción de la imagen aquí

c) Por qué la segunda parte de la pérdida
Net-T también tiene una cierta tasa de error, el uso de la verdad en tierra puede reducir efectivamente la posibilidad de que los errores se propaguen a Net-S. Por ejemplo, aunque el conocimiento del maestro supera con creces al de los estudiantes, todavía tiene la posibilidad de cometer errores. En este momento, si los estudiantes pueden referirse a las respuestas estándar al mismo tiempo fuera de la enseñanza del maestro, puede reducir efectivamente el errores ocasionales cometidos por el profesor.” La posibilidad de “sesgo”
d) Análisis de división de pérdidas
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí

(2) Derivación de la función de pérdida:

inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí

8. Destilación de ubicación (LD)

1. Por qué hay destilación de posicionamiento:
distribución de bbox y ambigüedad de posicionamiento
Hablando de LD, tenemos que hablar sobre el modelado de distribución de bbox, que proviene principalmente de GFocalV1 (NeurIPS 2020) [1] y Offset-bin (CVPR 2020) [2] Estos dos papeles
Sabemos que la representación de bbox suele ser de 4 valores, uno es la distancia del punto en FCOS a los cuatro lados (tblr), y el otro es el offset que se usa en el detector basado en ancla, es decir, la caja ancla a GT Mapeo de cajas (codificado xywh).
GFocalV1 modela la distribución de bbox para bbox en la forma tblr, y Offset-bin modela la distribución de bbox para la forma xywh codificada. Lo que tienen en común es que tratan la regresión de bbox como un problema de clasificación. Y la ventaja de esto es que se puede modelar la ambigüedad de posicionamiento del bbox.
inserte la descripción de la imagen aquí

Luego use n valores de probabilidad para describir un borde, que puede mostrar la estimación difusa del modelo de la posición de una posición. La distribución más nítida indica que esta posición casi no tiene ambigüedad (como el límite superior de un elefante), y la una distribución más plana indica esta posición Hay una fuerte ambigüedad (límite inferior del elefante). Por supuesto, no solo la planitud de la distribución de bbox, sino también la forma se puede dividir en unimodal, bimodal e incluso multimodal.
2. Destilación de posicionamiento:
la idea de LD se explica por sí misma. Un lado de un bbox es n logits, y hay 4 logits en un bbox. Cada función actúa sobre una función softmax con temperatura para suavizar el conocimiento de posicionamiento, y luego la misma pérdida de KL, deje que la distribución de bbox del estudiante se ajuste a la distribución de bbox del maestro.
Para verificar la efectividad de LD, primero lo realizamos en la ubicación positiva del detector, es decir, donde se realiza la regresión bbox, allí se realiza LD. El maestro modelo grande es un detector de alta precisión (como ResNet-101) que ha sido entrenado durante 24 épocas, y el estudiante modelo pequeño puede ser ResNet-50. En el conjunto de datos COCO, solo necesitamos ajustar ligeramente la temperatura para aumentar 1.0AP sobre la base de GFocalV1, especialmente la mejora de AP75 es la más significativa, lo que indica que LD ha mejorado significativamente la precisión de posicionamiento.
inserte la descripción de la imagen aquí

La destilación de posicionamiento LD y la destilación de clasificación KD son completamente consistentes en términos de fórmula. Ambos están dirigidos a los logits de salida del cabezal para la transferencia de conocimiento, lo que proporciona un marco de simulación de logit unificado para la destilación de conocimiento de detección de objetivos.

9. Destilación del mapa de características

1. Por qué y destilación del mapa de características:
Ineficiencia de la clasificación KD:
muchos trabajos anteriores han señalado que la eficiencia de destilación de la clasificación KD es baja (punto de crecimiento bajo), que tiene principalmente dos aspectos:
en diferentes conjuntos de datos, el número de categorías cambio, menos categorías pueden no proporcionar mucha información útil para el estudiante.
Durante mucho tiempo, la imitación logit solo se puede operar en el cabezal de clasificación, pero no en el cabezal de posicionamiento, lo que naturalmente ignora la importancia de la transferencia de conocimiento de posicionamiento.
Por estas dos razones, la gente centró su atención en otro método prometedor de destilación de conocimiento, la imitación de características. Este método está inspirado principalmente en FitNet. En una palabra, no solo se trata de imitar logit en el encabezado de clasificación, sino también de permitir que el estudiante coloque al maestro en la capa oculta del medio (mapa de funciones) al minimizar la pérdida de L2.
Entonces se forma el siguiente marco de destilación de conocimiento de detección de objetivos:
inserte la descripción de la imagen aquí

El encabezado de clasificación es una imitación logit (clasificación KD), el mapa de características es una imitación de características (pérdida de L2 entre el mapa de características del maestro y el estudiante) y el encabezado de posicionamiento es una regresión de pseudo bbox, es decir, el cuadro de predicción del maestro se considera como un elemento adicional. objetivo de regresión.
La imitación de características impone supervisión en los mapas de características de profesores y estudiantes. El método más común es alinear primero el tamaño del mapa de características del estudiante con el mapa de características del profesor y luego seleccionar algunas regiones de interés como regiones de destilación, como FitNet (ICLR 2015) [3 ] Destilado en toda la imagen; Grano fino (CVPR 2019) [4] Destilado en la ubicación de algunas cajas de anclaje; y DeFeat (CVPR 2021) [5] Use una pequeña pérdida de peso dentro de la caja GT y use fuera de la caja GT Gran pérdida de peso o el área de destilación dinámica de imitación GI (CVPR 2021) [6], pero no importa qué área se seleccione, la pérdida L2 de los dos finalmente se calcula en el área de destilación. Los beneficios de la imitación de características
:
en el marco de aprendizaje multitarea, el mapa de características es equivalente a la raíz del árbol, y cada cabeza descendente es equivalente a las hojas del árbol. Entonces, el mapa de características obviamente contiene el conocimiento requerido por todas las hojas. Realizar la imitación de características transferirá naturalmente el conocimiento de clasificación y el conocimiento de posicionamiento al mismo tiempo, pero la clasificación KD no puede transferir el conocimiento de posicionamiento.
3. Desventajas de la imitación de características:
la respuesta es, naturalmente, que transferirá simultáneamente el conocimiento de clasificación y el conocimiento de posicionamiento en cada ubicación en el área de destilación.
Comparar el antes y el después, ¿no es contradictorio a primera vista? Dejame explicar.
El conocimiento de clasificación se distribuye de manera diferente al conocimiento de localización. Este punto ha sido mencionado en trabajos anteriores, como Sibling Head (CVPR 2020) [7].
La distribución de los dos tipos de conocimiento es diferente, lo que naturalmente conduce al hecho de que no es beneficioso transferir conocimiento de clasificación y conocimiento de ubicación al mismo tiempo. Es muy posible que algunas regiones solo sean beneficiosas para la transferencia de conocimientos taxonómicos, y también es posible que algunas regiones solo sean beneficiosas para la transferencia de conocimientos localizados. En otras palabras, necesitamos dividir y conquistar y transferir conocimiento de acuerdo a las condiciones locales. Obviamente, esto es algo que la imitación de características no puede hacer, porque solo transferirá conocimientos mixtos.
inserte la descripción de la imagen aquí

Por lo tanto, utilizamos el aprendizaje multitarea para desacoplar naturalmente el conocimiento en diferentes tipos, lo que nos permite llevar a cabo selectivamente la destilación del conocimiento en un área. Con este fin, presentamos un concepto de VLR (Región Valiosa de Localización) para ayudarnos a dividir y conquistar.
inserte la descripción de la imagen aquí

A diferencia del método de imitación de características anterior, nuestra destilación se divide en dos regiones:
Región de destilación principal (main destilación región): la ubicación positiva del detector, obtenida a través de la asignación de etiquetas.
VLR: similar al método de asignación de etiquetas general, pero el área es más grande, incluida la región principal, pero se elimina la región principal. VLR puede considerarse como la expansión hacia el exterior de la región principal.

Supongo que te gusta

Origin blog.csdn.net/weixin_43391596/article/details/128903746
Recomendado
Clasificación