Generación de Datos VQA Sintéticos con BLIP y PaliGemma

Pyimagesearch

En el ámbito de la inteligencia artificial, particularmente para tareas como la Respuesta a Preguntas Visuales (VQA), la demanda de conjuntos de datos de alta calidad y a gran escala a menudo choca con los costos y el tiempo prohibitivos asociados con la anotación manual. La generación de datos sintéticos, aprovechando los Modelos de Visión-Lenguaje (VLM) avanzados, presenta una solución convincente. Esta primera entrega de una serie de dos partes detalla un paso fundamental en la construcción de dicho conjunto de datos utilizando una metodología de “VLM-como-Juez”. Aquí, demostramos la generación inicial de anotaciones VQA en bruto por dos VLMs de código abierto prominentes: BLIP de Salesforce y PaliGemma de Google.

Nuestro proceso comenzó adquiriendo una colección sustancial de imágenes para servir como base de nuestro conjunto de datos sintéticos. Extraímos 21,435 imágenes de la división de validación de un subconjunto más pequeño del conjunto de datos completo VQAv2. Estas imágenes proporcionaron el contexto visual para las tareas posteriores de preguntas y respuestas.

Con las imágenes preparadas, la siguiente fase implicó ejecutar la inferencia utilizando el modelo BLIP (Bootstrapping Language-Image Pre-training) de Salesforce. Se plantearon cuatro preguntas genéricas para cada imagen: “¿Qué está sucediendo en esta imagen?”, “¿Cuántas personas hay en la imagen?”, “¿Qué objetos ves?” y “¿Cuál es el tema principal de la imagen?”. El modelo BLIP, configurado como una tubería de respuesta a preguntas visuales y optimizado para la ejecución en GPU cuando estuviera disponible, procesó cada par imagen-pregunta, generando una única respuesta mejor clasificada. Las respuestas para las 21,435 imágenes se recopilaron sistemáticamente y se guardaron en un archivo JSON, un proceso que, a pesar de aprovechar una GPU A100, requirió aproximadamente 2.5 horas para completarse.

Para asegurar la accesibilidad y facilidad de uso para la comunidad de investigación más amplia, estas anotaciones en bruto generadas por BLIP se convirtieron luego al formato estandarizado de Hugging Face Dataset. Esto implicó transformar la estructura JSON anidada en una lista plana de ejemplos, cada uno compuesto por una imagen, su pregunta correspondiente y la respuesta generada por el modelo. Crucialmente, el esquema del conjunto de datos se definió explícitamente para cargar correctamente los datos de la imagen en lugar de solo las rutas de archivo, junto con los valores de cadena para preguntas y respuestas. El conjunto de datos resultante se subió posteriormente al Hugging Face Hub, haciéndolo públicamente disponible para futuras investigaciones y desarrollo.

Después de las anotaciones de BLIP, se generó un segundo conjunto independiente de respuestas utilizando el modelo PaliGemma de Google, específicamente la variante paligemma2-3b-mix-224. Las mismas 21,435 imágenes se procesaron con el conjunto idéntico de cuatro preguntas, aunque adaptadas al formato de prompt preferido de PaliGemma: “Question: \nAnswer:”. Este modelo de generación condicional recibió la imagen y el prompt, luego produjo una respuesta, que posteriormente se limpió para eliminar cualquier texto redundante del prompt. Esta extensa ejecución de inferencia, también realizada en una GPU A100, tomó un tiempo considerablemente mayor de 4 horas, produciendo un archivo JSON separado que contenía el conjunto completo de anotaciones VQA sintéticas de PaliGemma.

Reflejando el proceso para las salidas de BLIP, las anotaciones de PaliGemma también se transformaron al formato de Hugging Face Dataset. Esto implicó cargar los datos JSON, reestructurarlos en ejemplos individuales y aplicar un paso de limpieza para asegurar que las respuestas estuvieran libres de formato extraño o elementos de prompt repetidos. Con el esquema correctamente definido para manejar imágenes y campos de texto, este segundo conjunto de datos sintéticos también se cargó en el Hugging Face Hub, proporcionando un conjunto complementario de anotaciones VQA derivadas de un VLM de vanguardia diferente.

Esta fase inicial estableció con éxito dos conjuntos de datos de Respuesta a Preguntas Visuales sintéticos distintos, cada uno poblado con respuestas generadas por modelos para más de 21,000 imágenes, derivadas de Salesforce BLIP y Google PaliGemma respectivamente. Estos conjuntos de datos representan un paso significativo hacia la investigación VQA escalable, mitigando la necesidad de una costosa anotación manual. El escenario está ahora preparado para la segunda parte de esta serie, donde un tercer VLM asumirá el papel de “juez”, evaluando y curando estos dos conjuntos de anotaciones para producir un conjunto de datos VQA sintético final de alta calidad a través de la comparación y selección automatizada.