Pensamiento extendido de los algoritmos de reconocimiento visual: cómo profundizar mejor la comprensión de los algoritmos de reconocimiento visual

Escrito en el frente: este es un artículo con solo ideas y sin experimentos específicos, que a menudo se denomina artículo de opinión. Espero transmitir mi pensamiento sobre el tema del reconocimiento visual a través de este artículo. Es cierto que la gente habla a la ligera, y también espero compartir estos pensamientos preliminares con esta comunidad, para que algunas personas puedan sentirse inspiradas a explorar nuevas direcciones.
El nivel es limitado, y hay miles de personas que cuelgan. Si tiene opiniones diferentes, o encuentra que mi idea ha sido propuesta por los predecesores, dígame de cualquier manera, ¡muchas gracias!

originales: enlace

I. Introducción

El reconocimiento visual es la tarea más importante en el campo de la visión artificial. Aunque la tecnología de aprendizaje profundo ha tenido un profundo impacto en este campo, y el SOTA de muchas tareas ha avanzado a pasos agigantados en comparación con hace diez años, hasta el momento, no existe un conjunto de métodos que puedan resolver el problema del reconocimiento en general. sentido. Hay muchas deficiencias en el algoritmo actual, y la dirección de desarrollo futuro reconocida por el círculo académico se divide principalmente endatos, modelos, conocimientoTres aspectos. Entre ellos, el conocimiento es un concepto relativamente vago, hasta el momento no existe una definición precisa y clara en los círculos académicos. Los datos y modelos constituyen la principal dificultad de la mayoría de los algoritmos de visión actuales.

Mirando hacia atrás en el último año, en el campo del reconocimiento visual, dos tipos de métodos han recibido una gran atención. Uno es el aprendizaje autosupervisado, que intenta mejorar el rendimiento de generalización del algoritmo desde la perspectiva de los datos; el otro es Transformer, que intenta introducir un nuevo diseño de modelo para mejorar la capacidad de ajuste y la capacidad de generalización de la red neuronal. Estos dos tipos de enfoques proporcionaron nuevas pistas para el reconocimiento visual, pero rápidamente revelaron sus limitaciones.

En la brecha entre la introversión desesperada y la actualización de varios indicadores, a menudo me hago una pregunta: ¿Hay algún problema descuidado pero muy importante en el campo de la visión por computadora? Después de un período de reflexión, tengo algunas ideas inmaduras a nivel de datos y modelo. Escriba sobre sus pensamientos sobre los datos hoy.

2. Motivación de la investigación

inserte la descripción de la imagen aquí
Figura 1 Los conjuntos de datos existentes (como MS-COCO) están lejos de reconocer completamente toda la información semántica. Las fuentes subrayadas y rojas son el contenido semántico que no se presenta en el conjunto de datos, pero los humanos pueden identificarlo o describirlo fácilmente.

Tomemos la imagen de arriba como ejemplo. Esta es una imagen del conjunto de datos MS-COCO, que contiene principalmente la categoría "persona". Aunque MS-COCO ha proporcionado anotaciones a nivel de píxel, casi el mejor nivel disponible actualmente, todavía hay una gran cantidad de información semántica que no se puede anotar. El hecho más importante es que incluso si se proporcionan suficientes costos de mano de obra, es difícil para nosotros definir un conjunto de estándares normativos para completar la anotación de "toda la información semántica" . Por ejemplo: después de marcar "persona", podemos marcar más "brazo" y luego marcar "mano", "dedo", "nudillo", "huella digital" o incluso "espacio en la huella digital". Incluso si alguna información semántica ha alcanzado el "nivel de subpíxel", siempre que los humanos estén dispuestos , pueden reconocerla en la imagen a través del lenguaje, la caracterización y otros métodos.

A través del ejemplo anterior, podemos sacar las siguientes dos conclusiones:

  1. Es difícil para nosotros definir el límite de la capacidad de reconocimiento humano, aunque para la mayoría de las personas, este límite debería ser aproximadamente el mismo
  2. Las señales de supervisión que la visión por computadora actual puede obtener a través del etiquetado están muy por debajo de este límite; incluso si se invierte mucha mano de obra, es difícil acercarse a este límite.

Así que pienso: si desea obtener un resultado de reconocimiento completo, no puede confiar en el etiquetado manual para aprender. ¿En qué confías? Creo que debería basarse en la compresión de datos. Los experimentos en la ciencia cognitiva han proporcionado una pista importante: cuando los humanos reconocen imágenes, tienden a ser las menos problemáticas: es decir, los humanos buscarán una forma que sea más fácil de recordar, y el reconocimiento solo se realiza por la comodidad de la compresión. Una especie de cuantificación .

Siguiendo esta línea de pensamiento, diseñé las siguientes tareas de pre-entrenamiento.

3. Aprendizaje por compresión

Este concepto es relativo al "aprendizaje por compresión". Por supuesto, la implementación debe explicar que este concepto no es nuevo: el autocodificador en los primeros años se basó en ideas similares. Si desea ver trabajos relacionados , puede consultar el texto original. Lo que quiero enfatizar aquí es que volvemos a proponer este concepto basándonos en el juicio de que el "aprendizaje de etiquetas" no puede resolver la brecha anterior . La mayor diferencia entre nuestra propuesta y el método del codificador automático es que cambiamos el enfoque del diseño de la estructura de la red a la evaluación de la calidad de restauración de la imagen.

inserte la descripción de la imagen aquí
Figura 2. El marco de aprendizaje previsto, que consta de un codificador, un decodificador y un estimador, donde el estimador es el módulo más difícil de diseñar

Como se muestra en la figura anterior, nuestra idea es muy simple: el codificador comprime una imagen en un vector con la menor dimensionalidad posible, y luego el decodificador la restaura en una imagen con la menor diferencia posible con respecto a la imagen original. Tanto el codificador como el decodificador pueden ser redes neuronales estándar (no limitadas a CNN o Transformer ), y el evaluador puede ser una red neuronal de autoaprendizaje, una función predefinida o incluso un humano en el circuito (retroalimentación humana). mecanismo) manera de diseñar. Como diremos más adelante, el evaluador es el módulo más difícil de diseñar en todo el marco, y también es el mayor obstáculo que nos impide convertir esta idea en realidad.

Para explicar el propósito de esto en algunos puntos:

  1. Nuestra hipótesis es: si se puede diseñar un par de codificador y decodificador para que la imagen de entrada se pueda comprimir en el vector más corto posible, y este vector de baja dimensión se puede usar para generar una salida de alta calidad , entonces pensamos que el codificador Solo hay un camino a seguir con el decodificador: aprender características semánticas eficientes y usarlas para codificar y decodificar imágenes.
  2. Si la relación de compresión es lo suficientemente alta , entonces el algoritmo no debe poder restaurar con precisión todos los detalles de la imagen original. Esto parece contradecir los "resultados completos de reconocimiento visual", pero podemos controlar la calidad de la recuperación ajustando la tasa de compresión (como insertar algunas capas de mapeo lineal entre el codificador y el decodificador, vea el texto original para más detalles). Entonces, siempre que haya un estimador razonable, podemos obtener un conjunto de compensaciones de tasa de compresión y calidad de recuperación en cualquier par de codificador y decodificador , como se muestra en la figura a continuación.
  3. Por cierto, quiero señalar: No hay almuerzo gratis en el mundo. La búsqueda de una relación de compresión más alta y la compensación de restaurar la calidad significa que el codificador y el decodificador almacenan más características visuales (que pueden entenderse como un diccionario visual más grande) para que el algoritmo las recuerde. Esto también proporciona otra perspectiva para los modelos grandes de preentrenamiento visual actualmente populares.

inserte la descripción de la imagen aquí
Figura 3 Izquierda: la compensación de la tasa de compresión y la calidad de la restauración que imaginamos; derecha: la compensación popular actual de los parámetros del modelo y la precisión del reconocimiento; si nuestra iniciativa se convierte en realidad, la industria puede dirigir su atención a la figura de la izquierda tal compensación

Al final, si mi visión se hace realidad, la atención de la industria se centrará más en buscar el equilibrio en el lado izquierdo de la imagen de arriba que en el lado derecho. Aunque el lado derecho también es importante, creo que el lado izquierdo puede estar más cerca de la esencia.

3. Dificultades en la evaluación de algoritmos

Todos los algoritmos de aprendizaje autosupervisados ​​anteriores se basan en una función de evaluación razonable. Sin embargo, no es difícil imaginar que esta función de evaluación sea difícil de diseñar. Sabemos que la comprensión humana de las imágenes es jerárquica. En el caso de muy poca información que se pueda almacenar (es decir, la tasa de compresión es alta), los humanos tienden a prestar atención a la información global de la imagen e ignorar los detalles de la imagen. Solo en términos de satisfacer esta característica, es muy difícil diseñar una función de evaluación razonable. Me atrevo a adivinar: la dificultad de diseñar esta función de evaluación no es ni siquiera menor que el propio problema del reconocimiento visual . Es decir, en cierto sentido, el diseño de funciones de evaluación puede proporcionar otra perspectiva sobre los problemas de reconocimiento visual o inspirar algunas ideas nuevas.

inserte la descripción de la imagen aquí
Figura 4 Los algoritmos de evaluación son el mayor obstáculo para implementar este marco. Izquierda: la mayoría de las texturas de la imagen original y la imagen restaurada son diferentes, pero la calidad de la restauración debe considerarse alta; Derecha: la mayoría de las áreas son iguales, solo los objetos de primer plano son inconsistentes y la calidad de la restauración debe considerarse bajo en este momento

Por cierto, aquí se explica que la mayoría de los algoritmos representados por autoencoder se basan en la restauración indiscriminada de píxeles de la imagen, y este no es el efecto que queremos lograr. En otras palabras, una vez que haya decidido comprimir los datos, no debe esperar poder recuperar todos los detalles. Entonces, imaginé varias posibilidades para evaluar algoritmos :

  1. Supervisión semántica débil : si a algunas imágenes se les asignan etiquetas semánticas en el enorme conjunto de datos previos al entrenamiento, estas imágenes pueden usar supervisión de nivel semántico para medir la similitud. Por ejemplo, si las imágenes antes y después de la restauración tienen los mismos resultados en un cierto algoritmo de detección, entonces se puede considerar aproximadamente que el algoritmo de restauración retiene cierta información semántica. En el artículo original, también concebí un algoritmo iterativo basado en esta idea, que no se ampliará aquí.
  2. Utilice la idea de human-in-the-loop : introduzca el mecanismo de retroalimentación humana en el proceso de entrenamiento. Cuando sea necesario evaluar la imagen restaurada, deje que el sujeto señale la imagen con mejor recuperación o mala recuperación en varias imágenes. , o señalar Un área restaurada mejor o peor en una imagen. Estas retroalimentaciones se pueden usar como información de supervisión débil para permitir que el algoritmo itere continuamente.

Eso sí, queremos recalcar que ninguna de las dos soluciones anteriores es perfecta. En términos de supervisión semántica, sabemos por nuestra motivación de investigación que toda la información semántica solo puede proporcionar una supervisión débil sesgada, por lo que es imposible entrenar un modelo eficiente de principio a fin ; el uso de retroalimentación humana requiere mucho trabajo humano y, al mismo tiempo, Al mismo tiempo, a medida que avanza el entrenamiento, se vuelve cada vez más difícil para los sujetos distinguir objetivamente entre buenos y malos efectos de recuperación, lo que conduce a un cuello de botella en el proceso de preentrenamiento .

4. Aplicación de tareas posteriores

Si se implementa el algoritmo anterior, entonces tendremos un modelo de preentrenamiento de visión general. Dado que este modelo no está sesgado hacia ningún algoritmo de reconocimiento en particular e incluye tanto un codificador como un decodificador, podemos usarlo para varias tareas posteriores.

  1. Si desea clasificar o detectar , puede heredar directamente el codificador y agregar una cabeza liviana para un ajuste fino
  2. Si desea hacer una segmentación , puede heredar el codificador y el decodificador al mismo tiempo, y ajustar el decodificador; impulsado por una alta tasa de compresión, el codificador y el decodificador serán mejores para distinguir diferentes objetos, de lo contrario, es difícil generar imágenes de alta calidad
  3. Si desea realizar tareas visuales de bajo nivel (como la superresolución de imágenes), herede el codificador y el decodificador al mismo tiempo e inserte algunas conexiones de acceso directo en posiciones razonables para ajustar el decodificador.
  4. Si desea realizar una tarea de generación de imágenes, puede heredar directamente la distribución del decodificador y el peso del decodificador y la generación de muestras; si es una tarea de generación condicional, puede ajustar el codificador con anticipación para adaptarse a la distribución dada
  5. La aplicación más interesante es el reconocimiento de video : los datos de video tienen dimensiones más altas que los datos de imagen y son más difíciles de aprender; para este propósito, se puede diseñar un método de aprendizaje de características en dos etapas: use el codificador anterior para extraer características cuadro por cuadro, y luego, envíe características de secuencia al modelo de serie temporal (como seq2seq o Transformer ) se comprime aún más para obtener un modelo de preentrenamiento adecuado para el reconocimiento de video

En esta etapa, ninguno de estos puede convertirse en una realidad.

Resumen y Outlook

En primer lugar, señalamos que todas las tareas de reconocimiento visual actuales aún están lejos de ser un reconocimiento completo, y esta brecha es difícil de salvar aumentando la cantidad de anotaciones y la granularidad de las anotaciones. En base a este juicio, proponemos una nueva tarea de pre-entrenamiento de visión, el aprendizaje por compresión . La dificultad de esta tarea se refleja principalmente en la función de evaluación, e incluso pensamos que esta puede ser otra manifestación del problema de la esencia de la visión, que puede aportar ideas novedosas.

De cara al futuro, creemos que los modelos de preentrenamiento a gran escala son la tendencia general de la visión artificial e incluso de todo el campo de la inteligencia artificial. Sin embargo, el modelo actual de preentrenamiento es relativamente engorroso y no existe un canal completo para liberar sus capacidades, excepto para extraer funciones potentes. Más importante aún, parece haber un conflicto natural entre el entrenamiento previo de modelos grandes y el ajuste fino de muestras pequeñas: los modelos grandes quieren ver una distribución de datos más general y buscan la solución óptima en el sentido de amortización; mientras que las muestras pequeñas a menudo apuntan a un campo específico, para buscar la solución óptima en un solo punto . Por lo tanto, cuanto mayor sea el tamaño del modelo, más difícil será ajustarlo ; el modelo grande actual es más para convencer a las aplicaciones posteriores de que no es necesario ajustarlo y, a menudo, es difícil lograr buenos resultados para escenarios con grandes diferencias en los dominios descendentes. Este también es un problema que los algoritmos de implementación de IA deben enfocarse en resolver.

El contenido de este artículo es solo para aprender, compartir y pensar, comuníquese para eliminar la infracción.

Supongo que te gusta

Origin blog.csdn.net/qq_53250079/article/details/127700417
Recomendado
Clasificación