DAMO-YOLO: un nuevo marco de detección de objetos que equilibra la velocidad y la precisión


inserte la descripción de la imagen aquí Autor: Kevin Luo

1. Introducción

DAMO-YOLO es un marco de detección de objetos que considera la velocidad y la precisión, y su efecto supera los métodos actuales de la serie YOLO y logra SOTA mientras mantiene una alta velocidad de inferencia. DAMO-YOLO introduce una serie de nuevas tecnologías basadas en el marco YOLO y realiza modificaciones importantes en todo el marco de detección. Específicamente, incluye una nueva estructura principal de detección basada en la búsqueda NAS, una estructura intermedia más profunda, una estructura de cabeza simplificada y la introducción de técnicas de destilación para mejorar aún más el efecto. ¡Además de los modelos, DAMO-YOLO también proporciona estrategias de capacitación eficientes y herramientas de implementación fáciles de usar para ayudarlo a resolver rápidamente problemas prácticos en el campo industrial!

inserte la descripción de la imagen aquí

2. Tecnologías clave

2.1 Red troncal NAS: MAE-NAS

La estructura de la red troncal juega un papel importante en la detección de objetos. En las primeras series de YOLO, DarkNet ha sido dominante. Recientemente, algunos trabajos también han comenzado a explorar otras estructuras de red que son efectivas para la detección, como YOLOv6 y YOLOv7. Sin embargo, estas redes todavía se diseñan manualmente. Con el desarrollo de la tecnología de búsqueda de estructura de red neuronal (NAS), hay muchas estructuras de red NAS que se pueden usar para tareas de detección y, en comparación con las redes tradicionales diseñadas manualmente, las estructuras de red NAS pueden lograr buenos resultados de detección. Por lo tanto, utilizan la tecnología NAS para buscar una estructura de red adecuada como columna vertebral de DAMO-YOLO. Aquí, utilizan el MAE-NAS desarrollado por el propio Ali. MAE-NAS es un método de búsqueda NAS basado en heurística y sin entrenamiento que se puede utilizar para buscar rápidamente varias estructuras de red troncal de diferentes tamaños.

MAE-NAS utiliza la teoría de la información para evaluar la entropía de la red inicializada, y el proceso de evaluación no requiere ningún proceso de entrenamiento, resolviendo así las deficiencias de los métodos de búsqueda NAS anteriores que requieren entrenamiento y reevaluación. Realice búsquedas extensas en la red en un corto período de tiempo, reduzca el costo de búsqueda y aumente la posibilidad de encontrar estructuras de red potencialmente mejores. Vale la pena señalar que en la búsqueda MAE-NAS, utilizan K1K3 como módulo de búsqueda básico. Al mismo tiempo, utilizan directamente el retraso de inferencia de GPU (Latencia) como presupuesto objetivo en lugar de fracasos. Después de la búsqueda, aplicaron la agrupación espacial piramidal y los módulos focales a la red troncal final. La Tabla 1 a continuación muestra la comparación de rendimiento de diferentes redes troncales. Se puede ver que el efecto de la red troncal MAE-NAS es significativamente mejor que el de la estructura de la red DarkNet.

Como método de búsqueda de estructura de red neuronal, MAE-NAS es similar a un explorador, que busca la mejor estructura de red troncal en el enorme espacio de estructura de red. Utiliza la idea de la teoría de la información para evaluar el estado de inicialización de diferentes estructuras de red desde la perspectiva de la entropía. Esto es equivalente a medir el grado de exploración de la red, una mayor entropía significa que la estructura de la red es más incierta y hay un mayor potencial de mejora y optimización.
Al utilizar la evaluación de entropía, MAE-NAS puede buscar rápidamente la estructura de red adecuada para la tarea de detección de objetos sin pasar por un pesado proceso de entrenamiento. En comparación con el diseño manual tradicional de la estructura de la red, este método de búsqueda automática tiene mayor eficiencia y flexibilidad. usando la inferencia de GPU

inserte la descripción de la imagen aquí

2.2. Cuello grande: RepGFPN

En Feature Pyramid Network (FPN), la fusión de funciones de múltiples escalas tiene como objetivo agregar salidas de funciones de diferentes etapas de la red troncal, mejorando así la expresividad de las funciones de salida y mejorando el rendimiento del modelo. FPN tradicional presenta una ruta de arriba hacia abajo para fusionar características de múltiples escalas. Teniendo en cuenta la limitación de la transmisión unidireccional, PAFPN agrega una red adicional de agregación de ruta de abajo hacia arriba, pero aumenta el costo computacional. Para reducir la intensidad computacional, la red de detección de la serie YOLO elige PAFPN con CSPNet para fusionar las características de múltiples escalas que genera la red troncal.

El trabajo en ICLR2022 GiraffeDet propuso una nueva red troncal liviana y una estructura de capa intermedia pesada, y logró el rendimiento de SOTA, porque la estructura de capa intermedia dada GFPN (FPN generalizado) puede intercambiar completamente información semántica de alto nivel e información espacial de bajo nivel. En GFPN, la fusión de características multiescala se produce entre características de escala diferente de la capa anterior y la capa actual; además, la conexión log_2(n) entre capas proporciona una transferencia de información más eficiente, que puede extenderse a redes más profundas.

La gran capa intermedia en RepGFPN es como un centro de intercambio de información, que recibe características de múltiples escalas de la red troncal y logra la fusión de características a través de la interacción entre características de diferentes escalas. Similar a un guía turístico inteligente, puede comunicarse e intercambiar información semántica de alto nivel e información espacial de bajo nivel.
inserte la descripción de la imagen aquí
Por lo tanto, intentaron introducir GFPN en DAMO-YOLO, lo compararon con PANet y lograron una mayor precisión, que es el resultado esperado. Al mismo tiempo, sin embargo, GFPN también trae un aumento en la latencia de inferencia del modelo, por lo que la compensación de precisión/latencia no gana mucha ventaja. A través del análisis de la estructura original de GFPN, atribuyeron los siguientes aspectos:

  1. Las funciones en diferentes escalas comparten la misma cantidad de canales, lo que dificulta proporcionar una cantidad óptima de canales para garantizar que las funciones de baja resolución de alto nivel y las funciones de alta resolución de bajo nivel tengan la misma rica expresividad;
  2. GFPN usa Queen-Fusion para mejorar la fusión entre características, y Queen-Fusion contiene una gran cantidad de operaciones de muestreo ascendente y descendente para lograr la fusión de características de escala diferente, lo que afecta en gran medida la velocidad de inferencia;
  3. La eficiencia de la fusión de características a escala cruzada de la convolución 3x3 utilizada en GFPN no es alta, no puede satisfacer las necesidades de la computación liviana y necesita una mayor optimización.

Sobre la base del análisis anterior, propusieron un nuevo Efficient-RepGFPN para cumplir con el diseño de la estructura del cuello en la detección de objetivos en tiempo real, que incluye principalmente las siguientes mejoras:

  1. Use diferentes números de canal para mapas de funciones de diferentes escalas, a fin de controlar de manera flexible la expresividad de las funciones de alto nivel y las funciones de bajo nivel bajo las restricciones de la computación liviana;
  2. Se eliminó la operación de muestreo superior adicional en Queen-Fusion, que reduce en gran medida la latencia de inferencia del modelo con una pequeña disminución en la precisión;
  3. La fusión de características basada en convolución original se mejora a la conexión CSPNet, y se introduce la idea de reparametrización y conexión ELAN para mejorar la precisión del modelo sin agregar más cómputo. La estructura final de la red Efficient-RepGFPN se muestra en la figura anterior. Los resultados de los experimentos de ablación con Efficient-RepGFPN se muestran en la Tabla 2 a continuación.

En la Tabla 2, se puede ver que el control flexible del número de canales de los mapas de características de diferentes escalas puede lograr una mayor precisión que compartir el mismo número de canales para los mapas de características de todas las escalas, lo que indica que el control flexible del poder expresivo de los mapas de características de alta Las funciones de nivel y las funciones de bajo nivel pueden brindar más beneficios. Al mismo tiempo, al controlar el modelo al mismo nivel de computación, también realizaron una comparación de profundidad/ancho en Efficient-RepGFPN Cuando profundidad = 3, ancho = (96, 192, 384), el modelo alcanzó el máxima precisión.

La Tabla 3 compara los resultados del experimento de ablación de la conexión Queen-Fusion, y la estructura del cuello adopta la conexión PANet sin agregar operadores adicionales de muestreo ascendente y descendente. Intentaron agregar solo el operador de muestreo superior, solo el operador de muestreo inferior y la estructura Queen-Fusion completa, y la precisión del modelo mejoró. Sin embargo, agregar solo el operador de muestreo superior agrega 0,6 ms al tiempo de inferencia, al tiempo que mejora la precisión en solo 0,3, mucho menos que la ganancia de precisión/latencia de solo agregar el operador de muestreo adicional adicional, por lo que lo descartaron en el operador de muestreo adicional adicional del diseño final.

En la Tabla 4, compararon experimentalmente los métodos de fusión de características multiescala. En la tabla se puede ver que, con limitaciones computacionales bajas, el método de fusión de características que usa CSPNet es mucho mejor que el método de fusión basado en convolución. Al mismo tiempo, La introducción de ideas de reparametrización y conexiones ELAN puede conducir a grandes mejoras de precisión con poca latencia adicional.

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.3. Cabeza pequeña: cabeza cero

En DAMO-YOLO, se enfocan en el cabezal de detección de objetos (ZeroHead). En la actualidad, en el método de detección de objetivos, se suele utilizar el cabezal de desacoplamiento como cabezal de detección. El cabezal de desacoplamiento puede lograr una mayor precisión promedio (AP), pero aumentará el tiempo de cálculo del modelo hasta cierto punto. Para equilibrar la velocidad y el rendimiento del modelo, experimentaron en la Tabla 5 a continuación para elegir el peso adicional apropiado para el cuello y la cabeza.

inserte la descripción de la imagen aquí

Puede verse en las Tablas 2, 3 y 4 que la estructura de "cuello grande, cabeza pequeña" obtendrá un mejor rendimiento. Por lo tanto, abandonaron el "cabezal de desacoplamiento" comúnmente utilizado en los métodos anteriores y solo retuvieron una capa de proyección lineal para las tareas de clasificación y regresión, a la que llamaron ZeroHead. ZeroHead maximiza la cantidad de cómputo en la detección de cabezas, proporcionando más espacio para cuellos más complejos como los cuellos RepGFPN. Vale la pena señalar que ZeroHead se puede considerar como un cabezal de pareja en esencia, lo que también es una diferencia significativa con el cabezal de desacoplamiento muestreado por métodos anteriores.

2.4 Asignación de etiquetas: AlignOTA

La asignación de etiquetas (asignación de etiquetas) es un componente clave en la detección de objetivos. Los métodos de asignación estática anteriores generalmente solo consideraban la IoU del ancla y la verdad del terreno. Este método de asignación puede conducir fácilmente a tareas de clasificación fuera de foco, como se muestra en el lado izquierdo. de la Figura 3. , el marco de detección de la mano se predice utilizando los puntos del osito de peluche, lo cual no es razonable para el modelo. La etiqueta ideal se muestra en el diagrama a la derecha de la Figura 3. Además, este método se basa en anclajes previos. En aplicaciones industriales, las escalas de los objetos a detectar son diferentes, y es muy complicado encontrar el anclaje previo más adecuado.

inserte la descripción de la imagen aquí

Para superar los problemas anteriores, han aparecido en el círculo académico algunos métodos de asignación de etiquetas que utilizan los valores de predicción de clasificación y regresión del modelo, eliminando en cierta medida el problema del desenfoque. OTA es uno de los trabajos clásicos, calcula la pérdida de asignación en función de los valores de predicción de clasificación y regresión del modelo, y utiliza el algoritmo Sinkhorn-Knopp para resolver la asignación óptima global, que funciona bien en escenarios de asignación complejos. Por eso, aquí usan OTA como estrategia de distribución para acelerar simOTA. Sin embargo, la propia simOTA tiene ciertos problemas: al calcular la distribución, no puede garantizar que se tenga en cuenta el impacto equilibrado de la clasificación y la regresión en la distribución, es decir, el problema de las pérdidas de clasificación y regresión que no coinciden. Para solucionar esto, modificaron cómo se calcula la puntuación asignada de la siguiente manera:
inserte la descripción de la imagen aquí

Para equilibrar las pérdidas de clasificación y regresión en la asignación de etiquetas, introdujeron Focal Loss en la pérdida de clasificación de asignación de etiquetas y reemplazaron la etiqueta One-hot de clasificación con IoU, relajando así la restricción de clasificación. La Tabla 4 compara AlignOTA y simOTA mejorados, y se puede ver que AlignOTA tiene una mejora significativa en el rendimiento.

2.5 Modelo de destilación

La destilación del modelo es un medio eficaz para mejorar el efecto del modelo. YOLOv6 intenta mejorar el modelo utilizando la técnica de autodestilación en su modelo grande. Pero, en general, la aplicación de la destilación no es común en el trabajo actual de la serie YOLO, especialmente la destilación en modelos pequeños. Realizaron una investigación especial sobre DAMO-YOLO y finalmente aplicaron la técnica de destilación a varios modelos a escala de DAMO-YOLO para mejorar el efecto.

El proceso de entrenamiento de DAMO-YOLO se divide en dos fases, la primera fase es un entrenamiento basado en una fuerte mejora de mosaico y la segunda fase es un entrenamiento con mejora de mosaico cerrado. Descubrieron que el uso de la destilación en la primera etapa dio como resultado una convergencia más rápida y mejores resultados; sin embargo, continuar usando la destilación en la segunda etapa no mejoró aún más el efecto. Creen que la distribución de datos en la segunda etapa tiene una gran desviación en comparación con la primera etapa, y la destilación del conocimiento en la segunda etapa destruirá la distribución del conocimiento aprendido en la primera etapa hasta cierto punto. El tiempo de entrenamiento de la segunda etapa es demasiado corto, por lo que el modelo no puede pasar completamente de la distribución del conocimiento de la primera etapa a la distribución del conocimiento de la segunda etapa. Sin embargo, si el período de entrenamiento se extiende por la fuerza o se aumenta la tasa de aprendizaje, por un lado, aumentará el costo y el tiempo de entrenamiento y, por otro lado, debilitará el efecto de la primera etapa de destilación. Así que aquí cierran la operación de destilación de la segunda etapa y solo hacen la destilación de la primera etapa.
inserte la descripción de la imagen aquí
En segundo lugar, introducen dos técnicas en la destilación, una es un módulo de alineación para alinear los tamaños de mapas de características de profesores y estudiantes. La otra es la operación de normalización, que se utiliza para debilitar la influencia de las fluctuaciones de escala numérica entre profesores y alumnos, que puede considerarse como el coeficiente de temperatura dinámica de la pérdida de KL.

Además, también encontraron que la pérdida de peso y el tamaño de la cabeza de la destilación también tienen una gran influencia en el efecto de la destilación. Como se muestra en la Figura 4 anterior, cuando aumenta el peso de la pérdida por destilación, la velocidad de convergencia de la pérdida por clasificación se vuelve más lenta y fluctúa más. Saben que la pérdida de clasificación tiene un gran impacto en la tarea de detección, y su convergencia tardía conducirá a una optimización insuficiente del modelo, lo que afectará el efecto de detección final. Por lo tanto, a diferencia de la experiencia de destilación anterior, en DAMO-YOLO, utilizan pesos de destilación más pequeños para controlar la pérdida por destilación y debilitar el conflicto entre la pérdida por destilación y la pérdida por clasificación.

Al mismo tiempo, utilizaron ZeroHead en la estructura del cabezal de detección. ZeroHead contiene solo una capa lineal para la proyección de tareas. Por lo tanto, es equivalente a optimizar simultáneamente la pérdida por destilación y la pérdida por clasificación en el mismo espacio de características, y el espacio aprendido puede satisfacer las necesidades de optimización de la destilación y la clasificación, y mejorar aún más la consistencia de la pérdida por clasificación y la optimización de la pérdida por destilación.
inserte la descripción de la imagen aquí

3. Pantalla de efectos de rendimiento

El equipo de DAMO-YOLO verificó el desempeño de DAMO-YOLO en el conjunto de validación de MSCOCO. Se puede ver que, combinado con las mejoras anteriores, DAMO-YOLO ha logrado mejoras de precisión significativas bajo estrictas restricciones de retraso, creando una nueva SOTA (State-of-the-Art, la tecnología más avanzada).
inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/weixin_42010722/article/details/131392026
Recomendado
Clasificación