Усі статті

Що таке діаризація спікерів і як вона працює

·18 хв читання

Діаризація спікерів — це технологія, яка відповідає на запитання «хто говорив коли». Вона розділяє аудіозапис на сегменти, що належать різним мовцям, і позначає кожен сегмент відповідною міткою. У цій статті ми розберемо, як працює speaker diarization зсередини, які алгоритми використовуються, де це застосовується і які обмеження існують.


Що таке діаризація спікерів

Уявіть, що у вас є годинний запис наради з п'ятьма учасниками. Сервіс розпізнавання мовлення перетворить звук на текст, але ви отримаєте суцільний потік слів без вказівки, хто що сказав. Діаризація спікерів розв'язує саме цю проблему — вона визначає, хто говорив у кожен момент часу.

Важливо розрізняти три суміжні технології:

Діаризація не знає імен — вона просто присвоює мітки: Спікер 1, Спікер 2, Спікер 3. Але у поєднанні з профілями голосів (про це нижче) мітки можна замінити на справжні імена.

Практичний приклад: ви записали нараду, де обговорювався бюджет проєкту. Без діаризації ви побачите просто текст. З діаризацією — структурований діалог:

Спікер 1 (00:00–00:45): Пропоную збільшити бюджет на маркетинг на 20%. Спікер 2 (00:46–01:12): Не погоджуюся. Давайте спочатку подивимось результати поточної кампанії. Спікер 3 (01:13–01:40): Можу підготувати звіт до п'ятниці.

Тепер зрозуміло не лише що обговорювалося, а й хто яку позицію зайняв.


Навіщо потрібна діаризація

Розділення спікерів критично важливе в десятках сценаріїв. Ось основні:

Протоколи нарад

Найпоширеніший сценарій. Коли в нараді беруть участь 5–10 людей, без діаризації неможливо зрозуміти, хто прийняв рішення, хто заперечив, хто взяв завдання на себе. Протокол без імен — марна стенограма.

Інтерв'ю та журналістика

Журналісту потрібно точно розділити свої запитання та відповіді респондента. При розшифровці двогодинного інтерв'ю ручне розділення займає години. Діаризація робить це автоматично.

Подкасти

Ведучий і гість (або кілька гостей) мають бути чітко розділені — для створення стенограми, субтитрів, цитат та SEO-оптимізованих описів випуску.

Судові засідання

Суддя, прокурор, адвокат, підсудний, свідки — кожне висловлювання має бути точно атрибутовано. Помилка в атрибуції може вплинути на судове рішення.

Медичні консультації

Розмова лікаря та пацієнта: хто описав симптоми, хто призначив лікування. Важливо для медичної документації та страхових випадків.

Кол-центри

Оператор проти клієнта. Діаризація дозволяє аналізувати якість обслуговування, час відповіді, дотримання скриптів. Компанії обробляють тисячі дзвінків на день — ручна розмітка неможлива.

Освіта

Лекції із запитаннями студентів: розділення мовлення викладача та запитань з аудиторії. Корисно для створення навчальних матеріалів.


Як працює діаризація: технічний розбір

Діаризація спікерів — це конвеєр (pipeline) з кількох послідовних етапів. Кожен етап розв'язує своє завдання, і якість кожного впливає на кінцевий результат.

Етап 1: Voice Activity Detection (VAD)

Перший крок — визначити, де в аудіо взагалі є мовлення. Аудіозапис містить тишу, фоновий шум, музику, стукіт клавіатури та інші не-мовленнєві звуки. VAD (детектор голосової активності) розділяє аудіо на ділянки з мовленням і без нього.

Сучасні підходи до VAD:

Результат VAD — часові мітки ділянок з мовленням: [(0.5с–3.2с), (4.1с–7.8с), (8.5с–12.0с), ...].

Етап 2: Сегментація

Тепер потрібно розбити ділянки мовлення на однорідні сегменти — так, щоб кожен сегмент належав одному спікеру.

Ключове завдання — детектування зміни спікера (Speaker Change Detection). Алгоритм шукає моменти, коли один голос змінюється іншим. Це складне завдання, бо:

Сучасні системи (наприклад, pyannote.audio) використовують нейромережеві моделі, навчені визначати межі сегментів з точністю до 200–500 мілісекунд.

Етап 3: Витягування ембеддингів

Це ключовий етап. Для кожного сегмента мовлення нейромережа обчислює голосовий ембеддинг — числовий вектор, який є своєрідним «відбитком голосу».

Що кодує ембеддинг:

Нейромережі для витягування ембеддингів:

Типовий ембеддинг — це вектор з 192–512 чисел. Два сегменти від одного й того ж спікера матимуть схожі ембеддинги (близькі вектори), а від різних — далекі.

Етап 4: Кластеризація

Маючи ембеддинги всіх сегментів, потрібно згрупувати їх за спікерами. Це задача кластеризації — класична задача машинного навчання.

Основні алгоритми:

Окреме завдання — визначення кількості спікерів. Якщо кількість відома заздалегідь (наприклад, «у дзвінку було 2 учасники»), задача спрощується. Якщо ні — алгоритм має визначити її сам, використовуючи метрики на кшталт BIC (Bayesian Information Criterion) або silhouette score.

Етап 5: Фінальна розмітка

На останньому етапі кожному сегменту присвоюється мітка спікера. Результат — часова розмітка:

Окрема складність — обробка перекриттів (overlapping speech). Коли двоє людей говорять одночасно, один сегмент має бути розмічений двома мітками. Сучасні системи (pyannote.audio 3.x) вміють обробляти перекриття, використовуючи спеціальні моделі сегментації, навчені на даних з багатоканальних мікрофонів.


Метрики якості діаризації

Як оцінити, наскільки добре працює діаризація? Стандартна метрика — DER (Diarization Error Rate).

DER складається з трьох компонентів:

Формула: DER = (missed + false alarm + confusion) / загальна тривалість мовлення

Сучасні результати:

Для більшості практичних завдань DER нижче 10% вважається хорошим результатом. Більше про бенчмарки точності, включаючи WER (Word Error Rate), читайте в нашому огляді ринку транскрипції.


Профілі спікерів: наступний рівень

Стандартна діаризація присвоює безособові мітки: Спікер 1, Спікер 2. Але що, якщо система може впізнати знайомий голос?

Голосові ембеддинги, витягнуті на етапі діаризації, можна зберегти як профіль спікера. При обробці нового запису система порівнює ембеддинги нових сегментів зі збереженими профілями та автоматично підставляє імена.

Діктовка підтримує цю функцію — профілі голосів (voice profiles). При першому записі система створює ембеддинг кожного нового спікера та пропонує присвоїти йому ім'я. У наступних записах Діктовка автоматично впізнає голос і підставляє збережене ім'я.

Для порівняння ембеддингів використовується косинусна подібність (cosine similarity). Два вектори вважаються такими, що належать одній людині, якщо cosine similarity >= 0.75. Це поріг, що забезпечує баланс між точністю (не сплутати різних людей) та повнотою (впізнати ту ж людину за різних умов запису).

Профілі спікерів особливо корисні для:


Обмеження та складнощі

Діаризація — вражаюча технологія, але далеко не досконала. Ось основні складнощі:

Перекриття мовлення

Коли двоє або більше людей говорять одночасно, алгоритму надзвичайно складно розділити голоси. Це найчастіше джерело помилок на реальних нарадах, особливо в емоційних дискусіях.

Схожі голоси

Якщо в записі беруть участь люди з дуже схожими голосами (одностатева група близького віку, близнюки), ембеддинги можуть бути надто схожими, і алгоритм сплутає спікерів.

Шумне оточення

Фоновий шум (кав'ярні, вулиці, вентиляція) знижує якість ембеддингів та ускладнює VAD. Особливо проблематичні нестаціонарні шуми — хлопки, сирени, музика.

Телефонний зв'язок

Телефонні канали передають частоти лише в діапазоні 300–3400 Гц (у широкосмугового аудіо — 50–8000 Гц і більше). Це обрізає акустичну інформацію та знижує точність ембеддингів.

Невідома кількість спікерів

Коли алгоритм не знає заздалегідь, скільки людей брали участь у записі, він може помилитися: об'єднати двох схожих спікерів в одного або, навпаки, розділити одного на двох.

Короткі репліки

Для якісного ембеддингу потрібно мінімум 1–2 секунди мовлення. Короткі репліки («Так», «Ні», «Згоден») не містять достатньо інформації для надійної ідентифікації.


Інструменти з підтримкою діаризації

ІнструментТехнологіяМакс. спікерівТочністьЦіна
ДіктовкаWhisper + pyannoteБез обмеженьВисока (DER ~8–12%)Безкоштовно (бета)
Otter.aiПропрієтарнаДо 10ВисокаВід $16.99/міс
AssemblyAIПропрієтарнаБез обмеженьДуже високаВід $0.65/год
DeepgramПропрієтарнаБез обмеженьВисокаВід $0.25/год
RevЛюдина + AIБез обмеженьНайвищаВід $1.50/хв
pyannote.audioOpen-sourceБез обмеженьВисокаБезкоштовно

Діктовка використовує комбінацію Whisper (для розпізнавання мовлення) та pyannote (для діаризації) з додатковою функцією профілів голосів. Це дозволяє не лише розділяти спікерів, а й впізнавати їх у нових записах — унікальна функція серед безкоштовних інструментів. Детальний огляд застосунків для транскрипції з підтримкою діаризації читайте в нашому порівнянні застосунків для транскрипції.


Майбутнє діаризації

Технологія активно розвивається. Ось ключові напрямки:

Real-time діаризація

Сьогодні більшість систем працюють у пакетному режимі — спочатку весь запис обробляється, потім видається результат. Майбутнє за потоковою діаризацією в реальному часі, коли мітки спікерів з'являються із затримкою в 1–2 секунди. Це критично важливо для live-субтитрів на конференціях та відеодзвінках.

Мультимодальна діаризація

Навіщо покладатися лише на аудіо, якщо є відео? Комбінація аудіо-ембеддингів з візуальною інформацією (розпізнавання облич, відстеження руху губ) значно підвищує точність. Особливо корисно при перекритті мовлення — камера показує, хто ворушить губами.

Персоналізація через профілі

Системи зберігатимуть дедалі більше профілів і використовуватимуть їх не лише для ідентифікації, а й для адаптації моделі під конкретних спікерів — враховуючи їхній акцент, темп мовлення, словниковий запас.

Покращення обробки перекриттів

Найслабше місце сучасної діаризації — мовлення, що перекривається. Нові моделі (multi-speaker ASR, target speaker extraction) вчаться розділяти накладені голоси з дедалі більшою точністю.

End-to-end моделі

Тренд на об'єднання всіх етапів (VAD → сегментація → ембеддинги → кластеризація) в єдину модель, навчену від початку до кінця. Такі системи простіші у розгортанні й потенційно точніші, бо етапи не втрачають інформацію при передачі між собою.


Висновок

Діаризація спікерів перетворює безликий потік тексту на структурований діалог з атрибуцією кожного висловлювання. За простою ідеєю «хто говорив коли» стоїть складний конвеєр із детекції мовлення, сегментації, витягування голосових відбитків та кластеризації.

Технологія вже достатньо зріла для практичного застосування — DER 5–15% покриває більшість сценаріїв. А у поєднанні з профілями спікерів, які підтримує Діктовка, система не просто розділяє голоси, а й впізнає знайомих людей у нових записах.

Якщо ви працюєте із записами нарад, інтерв'ю чи подкастів — діаризація економить години ручної розмітки та перетворює аудіо на справді корисний документ. Якщо вас турбує конфіденційність аудіоданих, ознайомтеся з нашим порівнянням локальної та хмарної транскрипції.

FAQ

Що таке діаризація спікерів?

Діаризація спікерів — це технологія, яка визначає, хто говорив у кожен момент аудіозапису. Вона розділяє запис на сегменти, що належать різним мовцям, і позначає їх мітками — Спікер 1, Спікер 2 і так далі.

Наскільки точна автоматична діаризація?

На чистих студійних записах DER (Diarization Error Rate) становить 3–8%. На записах нарад з одного мікрофона — 8–15%. На телеконференціях — 12–25%. Для більшості практичних завдань DER нижче 10% вважається хорошим результатом.

Скільки спікерів може визначити діаризація?

Сучасні системи діаризації (наприклад, pyannote.audio) не мають жорсткого обмеження на кількість спікерів. Однак точність знижується при великій кількості учасників, особливо якщо голоси схожі або люди говорять одночасно.

Які інструменти підтримують діаризацію спікерів?

Безкоштовні: Діктовка (Whisper + pyannote, з профілями голосів) та pyannote.audio (бібліотека з відкритим кодом). Платні: Otter.ai, AssemblyAI, Deepgram, Rev. Діктовка — єдиний безкоштовний сервіс з функцією автоматичного розпізнавання знайомих голосів.

Чим діаризація відрізняється від розпізнавання мовлення?

Розпізнавання мовлення (ASR) відповідає на запитання «що сказано» — перетворює звук на текст. Діаризація відповідає на запитання «хто говорив коли» — розділяє аудіо за мовцями. Це різні технології, які працюють разом для створення структурованих транскриптів.