VLM-R1: un modelo de lenguaje visual para localizar objetivos de imagen mediante lenguaje natural
Últimos recursos sobre IAPublicado hace 6 meses Círculo de intercambio de inteligencia artificial 13K 00
Introducción general
VLM-R1 es un proyecto de modelado visual del lenguaje de código abierto desarrollado por Om AI Lab y alojado en GitHub. El proyecto se basa en DeepSeek El método R1, combinado con el Qwen2.5-VL VLM-R1 es especialmente hábil en el manejo de la Comprensión de Expresiones Representacionales (REC), por ejemplo, respondiendo a preguntas como "¿Dónde está la taza roja en el dibujo?" y señalando objetivos en una imagen. Objetivos. El proyecto proporciona scripts de instalación detallados, soporte de conjuntos de datos y código de formación para que desarrolladores e investigadores exploren y desarrollen tareas de lenguaje visual. En febrero de 2025, el proyecto había recibido casi 2.000 estrellas en GitHub, lo que demuestra su gran interés en la IA multimodal.

Dirección de demostración: https://huggingface.co/spaces/omlab/VLM-R1-Referral-Expression
Lista de funciones
- Se refiere a la Expresión Representacional de la Comprensión (REC)La capacidad de analizar comandos de lenguaje natural para localizar objetivos específicos en una imagen.
- Tratamiento conjunto de imágenes y texto: Admite la introducción simultánea de imágenes y texto para generar resultados de análisis precisos.
- Optimización del aprendizajeMejora del rendimiento del modelo en tareas visuales complejas mediante el entrenamiento con el método R1.
- Código de formación de código abiertoSe proporcionan guiones de entrenamiento y archivos de configuración completos para facilitar la personalización del modelo.
- Soporte de conjuntos de datosFunciones integradas de descarga y procesamiento de conjuntos de datos COCO y RefCOCO que simplifican el proceso de desarrollo.
- Soporte de inferencia de alto rendimiento: Compatible con Flash Attention y otras tecnologías para mejorar la eficiencia informática.
Utilizar la ayuda
Proceso de instalación
VLM-R1 es un proyecto basado en Python que requiere cierta configuración del entorno para ejecutarse. Aquí están los pasos detallados de instalación y uso para ayudar a los usuarios a empezar rápidamente.
1. Preparación medioambiental
- Instalación de AnacondaSe recomienda utilizar Anaconda para gestionar su entorno Python y garantizar la compatibilidad del sistema. Descarga: Sitio web oficial de Anaconda. Una vez finalizada la instalación, abra el terminal.
- Creación de un entorno virtualEscribe el siguiente comando en el terminal para crear un archivo llamado
vlm-r1
Entorno Python 3.10:conda create -n vlm-r1 python=3.10
- entorno de activaciónActiva el entorno que acabas de crear:
conda activate vlm-r1
2. Instalar las dependencias del proyecto
- proyecto de clonaciónDescarga el repositorio de código para VLM-R1 localmente. Abra un terminal y escriba:
git clone https://github.com/om-ai-lab/VLM-R1.git cd VLM-R1
- Ejecute el script de instalaciónEl proyecto ofrece
setup.sh
Script para la instalación automática de dependencias. Ejecútelo en el terminal:bash setup.sh
Este script instala librerías centrales como PyTorch, Transformers, etc. para asegurarse de que el entorno está listo.
3. Preparación de los datos
- Descargar el conjunto de datos COCOVLM-R1 se entrenó utilizando el conjunto de datos de imágenes COCO Train2014. Ejecute el siguiente comando para descargarlo y descomprimirlo:
wget http://images.cocodataset.org/train2014/train2014.zip unzip train2014.zip -d <your_image_root>
Anote la ruta de descompresión
<your_image_root>
que se necesitará en configuraciones posteriores. - Descargar el archivo de etiquetado RefCOCOEl conjunto de datos RefCOCO se utiliza para referirse a las tareas de representación. El enlace de descarga se encuentra en la documentación del proyecto; descomprímalo y colóquelo en el directorio adecuado.
4. Modelos de formación
- Configuración de los parámetros de entrenamiento: Acceso
src/open-r1-multimodal
edite los parámetros del script de entrenamiento. Ejemplo:cd src/open-r1-multimodal
modificaciones
grpo_rec.py
o especificar parámetros al ejecutar el comando. A continuación se muestra un comando de ejemplo:torchrun --nproc_per_node=8 --nnodes=1 --node_rank=0 --master_addr="127.0.0.1" --master_port="12346" \ src/open_r1/grpo_rec.py \ --deepspeed local_scripts/zero3.json \ --output_dir output/my_model \ --model_name_or_path Qwen/Qwen2.5-VL-3B-Instruct \ --dataset_name data_config/rec.yaml \ --image_root <your_image_root> \ --max_prompt_length 1024 \ --num_generations 8 \ --per_device_train_batch_size 1 \ --gradient_accumulation_steps 2 \ --logging_steps 1 \ --bf16 \ --torch_dtype bfloat16 \ --num_train_epochs 2 \ --save_steps 100
- Descripción de los parámetros:
--nproc_per_node
: Número de GPUs, a ajustar a su hardware.--image_root
Sustitúyalo por la ruta de su conjunto de datos COCO.--output_dir
Ruta de guardado del modelo.
- Descripción de los parámetros:
5. Flujo de operaciones funcionales
Se refiere a la Expresión Representacional de la Comprensión (REC)
- Ejecución de guiones de pruebaUna vez finalizado el entrenamiento, utilice el script de prueba proporcionado para verificar la eficacia del modelo. Introduzca
src/eval
Catálogo:cd src/eval python test_rec_r1.py --model_path <your_trained_model> --image_root <your_image_root> --annotation_path <refcoco_annotation>
- Ejemplo de entrada: Sube una foto e introduce una pregunta como "¿Dónde está el coche azul de la foto?". . El modelo devolverá las coordenadas o la descripción de la ubicación del objetivo.
Análisis de imágenes y textos
- Prepárese para entrar: Coloca el archivo de imagen y el texto de la pregunta en el directorio especificado, o especifica la ruta directamente en el script.
- razonamiento en funcionamientoAnálisis del contenido de la imagen: con el script de prueba anterior, el modelo realiza un análisis del contenido de la imagen, por ejemplo, la categoría del objeto, su posición, etc.
Formación a medida
- Modificar el conjunto de datosSi desea utilizar su propio conjunto de datos, edite el archivo
data_config/rec.yaml
añadir rutas de imágenes y archivos etiquetados. - Ajuste de los hiperparámetros: Modificado para responder a las necesidades del mandato
grpo_rec.py
Parámetros como la tasa de aprendizaje, el tamaño del lote, etc. en el
6. Precauciones
- requisitos de hardwareSe recomienda utilizar una GPU con al menos 8 GB de RAM, o menos si los recursos son limitados.
num_generations
para reducir la huella de memoria. - modo depuraciónPuede ajustarse durante el entrenamiento
export DEBUG_MODE="true"
Ver el registro detallado. - Apoyo comunitarioSi tienes problemas, pregunta en la página de problemas de GitHub y el equipo y la comunidad de Om AI Lab te ayudarán.
Siguiendo los pasos anteriores, los usuarios pueden instalar y utilizar completamente el VLM-R1 para empezar a trabajar rápidamente y aprovechar sus potentes funciones, tanto si están investigando sobre tareas de visión como si están desarrollando aplicaciones para el mundo real.
© declaración de copyright
Derechos de autor del artículo Círculo de intercambio de inteligencia artificial Todos, por favor no reproducir sin permiso.
Artículos relacionados
Sin comentarios...