R1-Omni : un modèle open source pour l'analyse des émotions à travers la vidéo et l'audio
Introduction générale
R1-Omni est un projet open source lancé sur GitHub par l'équipe HumanMLLM. Il applique pour la première fois des techniques d'apprentissage par renforcement avec récompenses vérifiables (RLVR) à un grand modèle de langage multimodal, en se concentrant sur la reconnaissance des émotions. Le projet analyse des données vidéo et audio pour identifier les émotions des personnages telles que la colère, la joie ou la surprise. Il est développé avec HumanOmni-0.5B comme modèle de base et fournit un code gratuit et des téléchargements de modèles pour les chercheurs et les développeurs. R1-Omni est performant sur des ensembles de données tels que DFEW, MAFW, etc. et comprend les émotions avec plus de précision, en particulier dans les scènes complexes. Le projet est toujours en cours de mise à jour et prévoit d'ouvrir davantage de données d'entraînement et de fonctionnalités.

Liste des fonctions
- reconnaissance des émotionsLa vidéo et l'audio : analyse de la vidéo et de l'audio pour déterminer l'état émotionnel d'un personnage, par exemple la colère, la joie, la surprise, etc.
- traitement multimodal: Combiner les données visuelles et auditives pour améliorer la précision de la reconnaissance des émotions.
- Optimisation de l'apprentissage renforcéAmélioration de l'inférence et de l'adaptation des modèles grâce aux techniques RLVR.
- Modèle à téléchargerLes modèles HumanOmni-0.5B, EMER-SFT, MAFW-DFEW-SFT et R1-Omni sont disponibles.
- Soutien à l'Open SourceLes utilisateurs peuvent utiliser le code source ouvert et des ensembles de données partiels pour soutenir le développement secondaire par les utilisateurs.
- PerformanceLes résultats des tests sur plusieurs ensembles de données sont fournis pour faciliter l'évaluation de l'efficacité par l'utilisateur.
Utiliser l'aide
Installation et configuration de l'environnement
L'utilisation du R1-Omni requiert un certain niveau de compétence. Voici les étapes détaillées de l'installation :
1) Exigences du système
- système d'exploitationLes services d'assistance technique sont disponibles pour Linux, Windows ou macOS.
- Version PythonPython 3.8 ou supérieur est recommandé.
- Support matérielLes GPU NVIDIA sont recommandés (si une accélération est nécessaire), mais les CPU peuvent également être utilisés.
- Préparation des outilsVous devez installer Git pour télécharger le code.
2. accès au code
Entrez la commande suivante dans le terminal pour télécharger le code de R1-Omni :
git clone https://github.com/HumanMLLM/R1-Omni.git
cd R1-Omni
3. environnement de configuration
R1-Omni est développé sur la base du framework R1-V, veuillez vous référer au référentiel R1-V pour la configuration de l'environnement. Les étapes sont les suivantes :
- Créer un environnement virtuel :
python -m venv venv
source venv/bin/activate # Linux/macOS
venv\Scripts\activate # Windows
- Installation des paquets de dépendance : les versions suivantes sont officiellement recommandées, entrez la commande d'installation :
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
Note : Assurez-vous que la version du pilote NVIDIA n'est pas inférieure à 535.54. Si la liste complète des dépendances est manquante, reportez-vous au dépôt R1-V.
4. télécharger le modèle
R1-Omni propose plusieurs versions de modèles qui peuvent être téléchargées depuis Hugging Face ou ModelScope. Hugging Face est utilisé comme exemple :
- entretiens Visage étreint R1-Omni.
- téléchargement
R1-Omni-0.5B
l'enregistrer dans un chemin d'accès local tel que/path/to/models/R1-Omni-0.5B
. - Télécharger les modèles de dépendance :
- Modélisation audio :chuchotement-large-v3Sauvegarder dans
/path/to/models/whisper-large-v3
. - Modélisation visuelle :siglip-base-patch16-224Sauvegarder dans
/path/to/models/siglip-base-patch16-224
.
5. modification des fichiers de configuration
existent R1-Omni-0.5B
Trouver dans le dossier config.json
ouvrez-le avec un éditeur de texte et modifiez les deux lignes suivantes :
"mm_audio_tower": "/path/to/models/whisper-large-v3",
"mm_vision_tower": "/path/to/models/siglip-base-patch16-224"
Enregistrez et fermez le fichier.
Fonction Opération Déroulement
1. le raisonnement de reconnaissance des émotions
Fourni par R1-Omni inference.py
Script pour l'analyse du sentiment d'une seule vidéo. Les étapes de l'opération sont les suivantes :
- Préparer le fichier vidéo (par ex.
video.mp4
), assurez-vous qu'il y a de l'image et du son. - S'exécute dans le 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."
- Exemple de sortie :
<think>视频中一名男子站在彩色壁画前,穿棕色夹克,眉头紧皱,嘴巴张开,表情显得激动。音频中有“降低声音”和“别慌”的词语,语速快且语气紧张。综合分析,他的情绪是愤怒和不安。</think> <answer>angry</answer>
2. tester la performance du modèle
Les performances du modèle ont été officiellement testées sur les jeux de données DFEW, MAFW et RAVDESS. Les utilisateurs peuvent télécharger ces jeux de données (voir le site officiel du DFEW ou le site officiel du MAFW) et vérifier les effets locaux à l'aide des commandes ci-dessus. Les données de comparaison sont les suivantes :
- R1-Omni atteint 65.831 TP3T sur DFEW (WAR), ce qui est mieux que les 22.641 TP3T de HumanOmni-0.5B.
3. formation sur mesure
- Formation au démarrage à froidInitialiser le modèle basé sur les ensembles de données Explainable Multimodal Emotion Reasoning (232 échantillons) et HumanOmni (348 échantillons). Exemple de format de données :
[{"video": "MER24/sample_00000967.mp4", "conversations": [{"from": "human", "value": "<video>\n<audio>\n请识别视频中的主要情绪"}, {"from": "gpt", "value": "<think>视频中一名男子在打电话,眉头紧皱,语速快,语气紧张,表现出焦虑。</think>\n<answer>anxious</answer>"}]}]
Les données ne sont pas encore totalement ouvertes, alors gardez un œil sur GitHub pour les mises à jour.
- Formation RLVRVidéos : Utilisation des ensembles de données MAFW et DFEW (15 306 vidéos au total). Exemples de formats de données :
[{"video": "DFEW/videos/1.mp4", "conversations": [{"from": "human", "value": "<video>\n<audio>\n请识别视频中的主要情绪"}, {"from": "gpt", "value": "sad"}]}]
Les détails de la formation sont en attente de précisions officielles.
mise en garde
- Demande de vidéoLes formats supportés sont les formats MP4, et doivent contenir une image et un son clairs.
- Sélection du modèleLe modèle R1-Omni est la version finale avec des performances optimales ; d'autres modèles sont disponibles pour des expériences comparatives.
- Support techniqueSi vous avez un problème, soumettez un problème sur GitHub et l'équipe continuera à améliorer la documentation.
Avec les étapes ci-dessus, les utilisateurs peuvent rapidement installer et utiliser R1-Omni pour expérimenter sa fonction de reconnaissance des émotions.
© déclaration de droits d'auteur
L'article est protégé par le droit d'auteur et ne doit pas être reproduit sans autorisation.
Articles connexes
Pas de commentaires...