R1-Omni: модель с открытым исходным кодом для анализа эмоций через видео и аудио

Общее введение

R1-Omni - это проект с открытым исходным кодом, запущенный на GitHub командой HumanMLLM. В нем впервые применены методы Reinforcement Learning with Verifiable Rewards (RLVR) к мультимодальной большой языковой модели, сфокусированной на распознавании эмоций. Проект анализирует видео- и аудиоданные для определения эмоций персонажей, таких как гнев, счастье или удивление. Он разработан на основе базовой модели HumanOmni-0.5B и предоставляет бесплатный код и модели для скачивания исследователям и разработчикам. R1-Omni хорошо работает на таких наборах данных, как DFEW, MAFW и т. д., и более точно распознает эмоции, особенно в сложных сценах. Проект продолжает постоянно обновляться и планирует открыть больше учебных данных и возможностей.

R1-Omni:通过视频和音频分析情感的开源模型

 

Список функций

  • распознавание эмоций: Анализ видео и аудио для определения эмоционального состояния персонажа, например, гнева, счастья, удивления и т.д.
  • мультимодальная обработка: Объединение визуальных и слуховых данных для повышения точности распознавания эмоций.
  • Оптимизация обучения: Улучшение вывода и адаптации моделей с помощью методов RLVR.
  • Скачать модель: доступны модели HumanOmni-0.5B, EMER-SFT, MAFW-DFEW-SFT и R1-Omni.
  • Поддержка открытых источников: Открытый исходный код и частичные наборы данных для поддержки вторичной разработки пользователями.
  • Производительность: Предоставьте результаты тестирования на нескольких наборах данных, чтобы пользователи могли легко оценить эффект.

 

Использование помощи

Установка и настройка среды

Использование R1-Omni требует определенных навыков. Ниже подробно описаны шаги по установке:

1. системные требования

  • операционная система: Поддержка Linux, Windows или macOS.
  • Версия Python: Рекомендуется Python 3.8 или выше.
  • Поддержка аппаратного обеспечения: Рекомендуется использовать графические процессоры NVIDIA (если требуется ускорение), также можно использовать и центральные процессоры.
  • Подготовка инструментов: Для загрузки кода необходимо установить Git.

2. доступ к коду

Введите в терминале следующую команду, чтобы загрузить код для R1-Omni:

git clone https://github.com/HumanMLLM/R1-Omni.git
cd R1-Omni

3. среда конфигурации

R1-Omni разработан на основе фреймворка R1-V, поэтому для настройки среды обратитесь к репозиторию R1-V. Ниже приведены шаги:

  • Создайте виртуальную среду:
python -m venv venv
source venv/bin/activate  # Linux/macOS
venv\Scripts\activate     # Windows
  • Установка пакетов зависимостей: Официально рекомендуется следующая версия, введите команду для установки:
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

Примечание: Убедитесь, что версия драйвера NVIDIA не ниже 535.54. Если полный список зависимостей отсутствует, обратитесь к репозиторию R1-V.

4. Загрузить модель

R1-Omni предлагает несколько версий моделей, которые можно загрузить с сайта Hugging Face или ModelScope. В качестве примера используется Hugging Face:

  • интервью Обнимающиеся лица R1-Omni.
  • загрузка R1-Omni-0.5B модель, сохраните ее в локальном пути, например /path/to/models/R1-Omni-0.5B.
  • Скачать Модели зависимостей:
  • Аудиомоделирование:шепот - большой - 3Сохранить в /path/to/models/whisper-large-v3.
  • Визуальное моделирование:siglip-base-patch16-224Сохранить в /path/to/models/siglip-base-patch16-224.

5. изменение конфигурационных файлов

существовать R1-Omni-0.5B Найдите в папке config.jsonоткройте его в текстовом редакторе и измените следующие две строки:

"mm_audio_tower": "/path/to/models/whisper-large-v3",
"mm_vision_tower": "/path/to/models/siglip-base-patch16-224"

Сохраните и закройте файл.

Функции Поток операций

1. распознавание эмоций

Предоставлено R1-Omni inference.py Скрипт для анализа настроения одного видео. Этапы работы следующие:

  • Подготовьте видеофайл (например. video.mp4), убедитесь в наличии изображения и звука.
  • Запускается в терминале:
    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."
    
  • Пример вывода:
    <think>视频中一名男子站在彩色壁画前,穿棕色夹克,眉头紧皱,嘴巴张开,表情显得激动。音频中有“降低声音”和“别慌”的词语,语速快且语气紧张。综合分析,他的情绪是愤怒和不安。</think>
    <answer>angry</answer>
    

2. Тестирование производительности модели

Работа модели была официально протестирована на наборах данных DFEW, MAFW и RAVDESS. Пользователи могут загрузить эти наборы данных (см. официальный сайт DFEW или официальный сайт MAFW), а затем проверить локальные эффекты с помощью описанных выше команд. Сравнительные данные приведены ниже:

  • R1-Omni достигает 65,831 TP3T на DFEW (WAR), что лучше, чем 22,641 TP3T у HumanOmni-0.5B.

3. Индивидуальное обучение

  • Обучение холодному старту: Инициализация модели на основе наборов данных Explainable Multimodal Emotion Reasoning (232 образца) и HumanOmni (348 образцов). Пример формата данных:
    [{"video": "MER24/sample_00000967.mp4", "conversations": [{"from": "human", "value": "<video>\n<audio>\n请识别视频中的主要情绪"}, {"from": "gpt", "value": "<think>视频中一名男子在打电话,眉头紧皱,语速快,语气紧张,表现出焦虑。</think>\n<answer>anxious</answer>"}]}]
    

    Данные еще не полностью открыты, поэтому следите за обновлениями на GitHub.

  • Обучение RLVR: Использование наборов данных MAFW и DFEW (всего 15 306 видеороликов). Примеры форматов данных:
    [{"video": "DFEW/videos/1.mp4", "conversations": [{"from": "human", "value": "<video>\n<audio>\n请识别视频中的主要情绪"}, {"from": "gpt", "value": "sad"}]}]
    

    Подробности обучения пока не уточняются.

предостережение

  • Видеозапрос: Поддерживает такие форматы, как MP4, и должен содержать четкое изображение и звук.
  • Выбор модели: R1-Omni - это финальная версия с оптимальными характеристиками; другие модели доступны для сравнительных экспериментов.
  • Техническая поддержка: Отправьте проблему на GitHub, если у вас возникли проблемы, и команда продолжит улучшать документацию.

Выполнив описанные выше действия, пользователи смогут быстро установить и использовать R1-Omni, чтобы испытать его функцию распознавания эмоций.

© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...