/ Модель

Характеристики

Лицензия
MIT

pyannote-segmentation-3.0

Поиск речи в аудиоАудио → label5 профессий

Производная модели pyannote/segmentation-3.0. Модель сегментирует 10-секундные аудиофрагменты по активности и сочетаниям говорящих, включая перекрывающуюся речь.

330скачиваний за 30 дней0лайковвеса обновлены10 мая 2024

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Карточка модели ubitec/pyannote-segmentation-3.0 на Hugging Face совпадает с карточкой pyannote/segmentation-3.0, поэтому описание составлено по ней.

pyannote/segmentation-3.0 — модель сегментации речи и активности говорящих от Séverin Baroudi, обученная с помощью pyannote.audio 3.0. Она принимает монофонический звук длительностью 10 секунд с частотой 16 кГц и выдаёт матрицу по временным кадрам с семью классами: тишина или неречевая активность, три отдельных говорящих и три возможные пары говорящих при перекрытии речи. Модель подходит для определения голосовой активности, сегментации говорящих и обнаружения одновременной речи в аудиофрагментах; сама по себе она не выполняет диаризацию целых записей, для которой нужен дополнительный пайплайн и модель эмбеддингов говорящих.

Обучение проводилось на объединении наборов AISHELL, AliMeeting, AMI, AVA-AVD, DIHARD, Ego4D, MSDWild, REPERE и VoxConverse. Для использования требуется pyannote.audio 3.0, принятие условий модели на Hugging Face и токен доступа. Модель распространяется по лицензии MIT; README рекомендует рассмотреть сервис pyannoteAI для более быстрого и качественного промышленного применения.

Сценарии применения

  • определение участков речи в аудиозаписи
  • сегментация коротких фрагментов по говорящим
  • обнаружение одновременной речи нескольких участников
  • подготовка сегментов аудио для диаризации записи
  • анализ активности голоса в разговорных аудиофрагментах

Ограничения

Обрабатывает только 10-секундные монофрагменты с частотой 16 кГц и сама не выполняет диаризацию полных записей. Для работы необходимы pyannote.audio 3.0, принятие условий модели на Hugging Face и токен доступа.

Для каких профессий подходит5

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Также подходит для

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Using this open-source model in production?
Consider switching to pyannoteAI for better and faster options.

🎹 "Powerset" speaker segmentation

This model ingests 10 seconds of mono audio sampled at 16kHz and outputs speaker diarization as a (num_frames, num_classes) matrix where the 7 classes are non-speech, speaker #1, speaker #2, speaker #3, speakers #1 and #2, speakers #1 and #3, and speakers #2 and #3.

Example output

# waveform (first row)
duration, sample_rate, num_channels = 10, 16000, 1
waveform = torch.randn(batch_size, num_channels, duration * sample_rate) 

# powerset multi-class encoding (second row)
powerset_encoding = model(waveform)

# multi-label encoding (third row)
from pyannote.audio.utils.powerset import Powerset
max_speakers_per_chunk, max_speakers_per_frame = 3, 2
to_multilabel = Powerset(
    max_speakers_per_chunk, 
    max_speakers_per_frame).to_multilabel
multilabel_encoding = to_multilabel(powerset_encoding)

The various concepts behind this model are described in details in this paper.

It has been trained by Séverin Baroudi with pyannote.audio 3.0.0 using the combination of the training sets of AISHELL, AliMeeting, AMI, AVA-AVD, DIHARD, Ego4D, MSDWild, REPERE, and VoxConverse.

This companion repository by Alexis Plaquet also provides instructions on how to train or finetune such a model on your own data.

Requirements

  1. Install pyannote.audio 3.0 with pip install pyannote.audio
  2. Accept pyannote/segmentation-3.0 user conditions
  3. Create access token at hf.co/settings/tokens.

Usage

# instantiate the model
from pyannote.audio import Model
model = Model.from_pretrained(
  "pyannote/segmentation-3.0", 
  use_auth_token="HUGGINGFACE_ACCESS_TOKEN_GOES_HERE")

Speaker diarization

This model cannot be used to perform speaker diarization of full recordings on its own (it only processes 10s chunks).

See pyannote/speaker-diarization-3.0 pipeline that uses an additional speaker embedding model to perform full recording speaker diarization.

Voice activity detection

from pyannote.audio.pipelines import VoiceActivityDetection
pipeline = VoiceActivityDetection(segmentation=model)
HYPER_PARAMETERS = {
  # remove speech regions shorter than that many seconds.
  "min_duration_on": 0.0,
  # fill non-speech regions shorter than that many seconds.
  "min_duration_off": 0.0
}
pipeline.instantiate(HYPER_PARAMETERS)
vad = pipeline("audio.wav")
# `vad` is a pyannote.core.Annotation instance containing speech regions

Overlapped speech detection

from pyannote.audio.pipelines import OverlappedSpeechDetection
pipeline = OverlappedSpeechDetection(segmentation=model)
HYPER_PARAMETERS = {
  # remove overlapped speech regions shorter than that many seconds.
  "min_duration_on": 0.0,
  # fill non-overlapped speech regions shorter than that many seconds.
  "min_duration_off": 0.0
}
pipeline.instantiate(HYPER_PARAMETERS)
osd = pipeline("audio.wav")
# `osd` is a pyannote.core.Annotation instance containing overlapped speech regions

Citations

@inproceedings{Plaquet23,
  author={Alexis Plaquet and Hervé Bredin},
  title={{Powerset multi-class cross entropy loss for neural speaker diarization}},
  year=2023,
  booktitle={Proc. INTERSPEECH 2023},
}
@inproceedings{Bredin23,
  author={Hervé Bredin},
  title={{pyannote.audio 2.1 speaker diarization pipeline: principle, benchmark, and recipe}},
  year=2023,
  booktitle={Proc. INTERSPEECH 2023},
}

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм

Нельзя запустить

Модели pyannote требуют отдельного рантайма.

Ревизия весов
e66f3d3

0 моделей