R1-Omni: un modelo de código abierto para analizar emociones a través de vídeo y audio
Últimos recursos sobre IAPublicado hace 5 meses Círculo de intercambio de inteligencia artificial 2.1K 00
Introducción general
R1-Omni es un proyecto de código abierto lanzado en GitHub por el equipo HumanMLLM. Aplica por primera vez técnicas de Aprendizaje por Refuerzo con Recompensas Verificables (RLVR) a un gran modelo de lenguaje multimodal, centrándose en el reconocimiento de emociones. El proyecto analiza datos de vídeo y audio para identificar las emociones de personajes como la ira, la felicidad o la sorpresa. Está desarrollado con HumanOmni-0.5B como modelo base y ofrece descargas gratuitas de código y modelos para investigadores y desarrolladores.R1-Omni obtiene buenos resultados en conjuntos de datos como DFEW, MAFW, etc., y comprende las emociones con mayor precisión, especialmente en escenas complejas. El proyecto sigue actualizándose continuamente y tiene previsto abrir más datos de entrenamiento y funciones.

Lista de funciones
- reconocimiento de emociones: Análisis de vídeo y audio para determinar el estado emocional de un personaje, por ejemplo, enfado, felicidad, sorpresa, etc.
- procesamiento multimodalCombinación de datos visuales y auditivos para mejorar la precisión del reconocimiento de emociones.
- Optimización del aprendizajeMejora de la inferencia y adaptación de modelos mediante técnicas de RLVR.
- Descarga de modelosModelos disponibles: HumanOmni-0.5B, EMER-SFT, MAFW-DFEW-SFT y R1-Omni.
- Soporte de código abiertoCódigo fuente abierto y conjuntos de datos parciales para apoyar el desarrollo secundario por parte de los usuarios.
- Rendimiento: Proporcione resultados de pruebas en múltiples conjuntos de datos para facilitar la evaluación de la eficacia por parte del usuario.
Utilizar la ayuda
Instalación y configuración del entorno
El uso del R1-Omni requiere un cierto nivel de destreza. A continuación se detallan los pasos de instalación:
1. Requisitos del sistema
- sistema operativoSoporte para Linux, Windows o macOS.
- Versión PythonSe recomienda Python 3.8 o superior.
- Soporte de hardware: Se recomiendan las GPU NVIDIA (si se requiere aceleración), aunque también pueden funcionar CPU.
- Preparación de herramientasNecesita instalar Git para descargar el código.
2. Acceso al código
Introduzca el siguiente comando en el terminal para descargar el código de R1-Omni:
git clone https://github.com/HumanMLLM/R1-Omni.git
cd R1-Omni
3. Entorno de configuración
R1-Omni está desarrollado en base al framework R1-V, por favor consulte el repositorio R1-V para la configuración del entorno. Los pasos son los siguientes:
- Crear un entorno virtual:
python -m venv venv
source venv/bin/activate # Linux/macOS
venv\Scripts\activate # Windows
- Instalación de paquetes de dependencia: Se recomienda oficialmente la siguiente versión, introduzca el comando para instalar:
pip install torch==2.5.1+cu124 torchvision==0.20.1+cu124 torchaudio==2.5.1+cu124 -f https://download.pytorch.org/whl/torch_stable.html
pip install transformers==4.49.0 flash-attn==2.7.4
Nota: Asegúrate de que la versión del controlador NVIDIA no sea inferior a 535.54. Si falta la lista completa de dependencias, consulta el repositorio R1-V.
4. Descargar modelo
R1-Omni ofrece varias versiones de modelos que pueden descargarse de Hugging Face o ModelScope. Hugging Face se utiliza como ejemplo:
- entrevistas Cara de abrazo R1-Omni.
- descargando
R1-Omni-0.5B
guárdelo en una ruta local como/path/to/models/R1-Omni-0.5B
. - Descargar Modelos de dependencia:
- Modelado de audio:whisper-large-v3Guardar en
/path/to/models/whisper-large-v3
. - Modelización visual:siglip-base-patch16-224Guardar en
/path/to/models/siglip-base-patch16-224
.
5. Modificación de los archivos de configuración
existe R1-Omni-0.5B
Buscar en la carpeta config.json
ábralo con un editor de texto y modifique las dos líneas siguientes:
"mm_audio_tower": "/path/to/models/whisper-large-v3",
"mm_vision_tower": "/path/to/models/siglip-base-patch16-224"
Guarde y cierre el archivo.
Función Flujo de operaciones
1. Razonamiento basado en el reconocimiento de emociones
Proporcionado por R1-Omni inference.py
Script para analizar el sentimiento de un único vídeo. Los pasos de la operación son los siguientes:
- Prepare el archivo de vídeo (por ejemplo
video.mp4
), asegúrate de que hay imagen y sonido. - Se ejecuta en el terminal:
python inference.py --modal video_audio \ --model_path /path/to/models/R1-Omni-0.5B \ --video_path video.mp4 \ --instruct "As an emotional recognition expert; throughout the video, which emotion conveyed by the characters is the most obvious to you? Output the thinking process in <think> </think> and final emotion in <answer> </answer> tags."
- Ejemplo de salida:
<think>视频中一名男子站在彩色壁画前,穿棕色夹克,眉头紧皱,嘴巴张开,表情显得激动。音频中有“降低声音”和“别慌”的词语,语速快且语气紧张。综合分析,他的情绪是愤怒和不安。</think> <answer>angry</answer>
2. Comprobación del rendimiento del modelo
El rendimiento del modelo se ha probado oficialmente con los conjuntos de datos DFEW, MAFW y RAVDESS. Los usuarios pueden descargar estos conjuntos de datos (véase el sitio web oficial de DFEW o el sitio web oficial de MAFW) y, a continuación, comprobar los efectos locales con los comandos anteriores. Los datos de comparación son los siguientes:
- R1-Omni alcanza 65,831 TP3T en DFEW (WAR), que es mejor que los 22,641 TP3T de HumanOmni-0.5B.
3. Formación a medida
- Entrenamiento de arranque en fríoInicialización del modelo basado en los conjuntos de datos Explainable Multimodal Emotion Reasoning (232 muestras) y HumanOmni (348 muestras). Ejemplo de formato de datos:
[{"video": "MER24/sample_00000967.mp4", "conversations": [{"from": "human", "value": "<video>\n<audio>\n请识别视频中的主要情绪"}, {"from": "gpt", "value": "<think>视频中一名男子在打电话,眉头紧皱,语速快,语气紧张,表现出焦虑。</think>\n<answer>anxious</answer>"}]}]
Los datos aún no son totalmente de código abierto, así que mantente atento a GitHub para estar al día.
- Formación RLVRUso de los conjuntos de datos MAFW y DFEW (15.306 vídeos en total). Ejemplos de formatos de datos:
[{"video": "DFEW/videos/1.mp4", "conversations": [{"from": "human", "value": "<video>\n<audio>\n请识别视频中的主要情绪"}, {"from": "gpt", "value": "sad"}]}]
Los detalles de la formación están pendientes de aclaración oficial.
advertencia
- Solicitud de vídeo: Admite formatos como MP4, y debe contener imagen y audio nítidos.
- Selección de modelosEl modelo R1-Omni es la versión final con un rendimiento óptimo; otros modelos están disponibles para experimentos de comparación.
- Asistencia técnicaEnvía una incidencia a GitHub si tienes algún problema y el equipo seguirá mejorando la documentación.
Con los pasos anteriores, los usuarios pueden instalar y utilizar rápidamente R1-Omni para experimentar su función de reconocimiento de emociones.
© 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...