WER (Word Error Rate): як вимірюють точність розпізнавання мовлення
Word Error Rate (WER) — головна метрика якості розпізнавання мовлення. Розбираємо формулу, рахуємо на прикладі, пояснюємо, що означають різні значення WER і від чого залежить точність транскрибування. Якщо ви колись замислювалися, чому один сервіс транскрибування видає майже ідеальний текст, а інший — кашу зі слів, відповідь майже завжди криється у трьох літерах: WER.
Що таке WER
Word Error Rate (WER, коефіцієнт пословної помилки) — це стандартна метрика, якою вимірюють точність систем автоматичного розпізнавання мовлення (ASR — Automatic Speech Recognition). Простіше кажучи, WER показує, який відсоток слів система розпізнала неправильно.
Ідея проста: беремо еталонний текст (те, що було сказано насправді), порівнюємо його з тим, що видала система, і рахуємо кількість помилок. Що нижчий WER — тим краще працює розпізнавання.
WER використовується повсюдно: у наукових статтях, у документації до API розпізнавання мовлення, у порівняльних оглядах моделей. Це lingua franca індустрії — єдина мова, якою говорять розробники, дослідники та користувачі.
Формула WER
Формула WER виглядає так:
WER = (S + D + I) / N x 100%
Де:
- S (Substitutions, заміни) — слова, які система розпізнала неправильно, замінивши одне слово іншим
- D (Deletions, пропуски) — слова з еталонного тексту, які система пропустила
- I (Insertions, вставки) — слова, які система додала, хоча в оригіналі їх не було
- N — загальна кількість слів в еталонному тексті
Зверніть увагу: в чисельнику — три типи помилок, а в знаменнику — лише кількість слів в еталоні. Це означає, що теоретично WER може перевищувати 100% (якщо вставок дуже багато), хоча на практиці таке трапляється рідко.
Як рахується WER: розбір на прикладі
Розглянемо конкретний приклад.
Еталон (що було сказано): "Я хочу замовити квиток на потяг"
Результат розпізнавання: "Я хочу замовити квитки на потяги"
Порівнюємо слово за словом:
| Позиція | Еталон | Розпізнано | Тип помилки |
|---|---|---|---|
| 1 | Я | Я | Вірно |
| 2 | хочу | хочу | Вірно |
| 3 | замовити | замовити | Вірно |
| 4 | квиток | квитки | Заміна (S) |
| 5 | на | на | Вірно |
| 6 | потяг | потяги | Заміна (S) |
Підсумок:
- S = 2 (дві заміни: "квиток" на "квитки", "потяг" на "потяги")
- D = 0 (нічого не пропущено)
- I = 0 (нічого зайвого не додано)
- N = 6 (шість слів в еталоні)
WER = (2 + 0 + 0) / 6 x 100% = 33,3%
Це доволі високий WER — система переплутала відмінкові форми двох слів. Для людини текст цілком зрозумілий, але формально третина слів розпізнана невірно.
Розглянемо інший приклад, де зустрічаються всі три типи помилок:
Еталон: "Зустріч відбудеться завтра о десятій ранку"
Розпізнано: "Зустріч відбудеться о десятій годині ранку"
| Позиція | Еталон | Розпізнано | Тип помилки |
|---|---|---|---|
| 1 | Зустріч | Зустріч | Вірно |
| 2 | відбудеться | відбудеться | Вірно |
| 3 | завтра | — | Пропуск (D) |
| 4 | о | о | Вірно |
| 5 | десятій | десятій | Вірно |
| 6 | — | годині | Вставка (I) |
| 7 | ранку | ранку | Вірно |
- S = 0, D = 1 ("завтра" пропущено), I = 1 ("годині" додано), N = 6
WER = (0 + 1 + 1) / 6 x 100% = 33,3%
Цікаво, що WER однаковий, але помилки зовсім різні. У першому випадку текст читабельний, у другому — втрачено важливий сенс (слово "завтра"). Це одне з обмежень WER як метрики, про які ми поговоримо нижче.
Що означають різні значення WER
Не всі значення WER рівнозначні за практичним впливом. Ось орієнтовна шкала:
| WER | Якість | Практичне значення |
|---|---|---|
| менше 5% | Відмінна | Професійне використання без правки. Текст можна публікувати як є |
| 5–10% | Добра | Мінімальна правка. Підходить для нотаток, протоколів, субтитрів |
| 10–20% | Прийнятна | Потрібна значна правка, але основний зміст зрозумілий |
| 20–30% | Погана | Текст потребує переслуховування та суттєвої редактури |
| понад 30% | Неприйнятна | Практично марна — швидше набрати вручну |
Важливо розуміти контекст. Для медичної документації навіть 5% WER може бути неприпустимим — помилка у назві ліків критична. Для особистих нотаток 15% WER цілком терпимі, якщо основні думки передані вірно.
Фактори, що впливають на WER
Точність розпізнавання мовлення залежить від багатьох факторів. Розуміння цих факторів допомагає не лише обрати правильний інструмент, а й підготувати аудіо для кращого результату.
Якість аудіо
Це головний фактор, що впливає на WER більше, ніж вибір моделі.
Фоновий шум — найпоширеніший ворог точності. Шум кондиціонера, розмови за стіною, вуличний шум, музика — все це збільшує WER на 5–20 відсоткових пунктів залежно від інтенсивності. Співвідношення сигнал/шум (SNR) нижче 10 дБ робить транскрибування практично безглуздим для більшості систем.
Якість мікрофона суттєво впливає на результат. Хороший мікрофон з близьким розташуванням до мовця знижує WER на 3–10% порівняно з вбудованим мікрофоном ноутбука на відстані метра. Гарнітура або петличка — найкращі друзі транскрибування.
Реверберація та ехо додають 5–15% до WER. Запис у великому порожньому приміщенні або через гучний зв'язок (speakerphone) значно погіршує розпізнавання. М'які поверхні, килими, штори — все, що поглинає звук, допомагає.
Характеристики мовлення
Акцент і діалект збільшують WER на 5–15%. Моделі навчені переважно на стандартній вимові. Сильний регіональний акцент або діалект помітно знижує точність. Для української мови це стосується відмінностей між західноукраїнським та східноукраїнським мовленням, а також суржику.
Швидкість мовлення при швидкому темпі додає 3–10% до WER. Коли людина тараторить, слова зливаються, межі між ними розмиваються, і моделі складніше їх розділити.
Перебивання та накладання мовлення — найскладніший випадок для ASR-систем. Коли дві людини говорять одночасно, WER може зрости на 10–30%. Навіть моделі з діаризацією (розділенням за мовцями) справляються з перебиваннями погано.
Спеціалізована лексика — професійні терміни, абревіатури, назви компаній та продуктів додають 5–15% до WER. Модель може не знати слово "деконтамінація" або назву ліків "Амоксиклав" і замінити їх на щось подібне за звучанням.
Мова
Не всі мови розпізнаються однаково добре.
Англійська традиційно показує найкращі результати, тому що на ній навчено найбільше даних. Whisper large-v3 досягає 3–4% WER на чистому англійському аудіо.
Українська — мова з хорошою підтримкою у Whisper, хоча й дещо поступається російській через менший обсяг навчальних даних. На чистому аудіо Whisper large-v3 показує приблизно 6–9% WER, на реальних записах — 15–22%. Специфічні виклики для української: чергування о/і, варіанти закінчень, запозичення з інших мов.
Малоресурсні мови показують значно вищий WER — від 15% до 40%+ навіть на чистому аудіо, просто тому що моделі навчені на значно меншому обсязі даних.
WER для різних моделей
Порівняльні результати популярних моделей на стандартних бенчмарках (чисте мовлення, студійна якість):
| Модель | Англійська | Російська | Іспанська | Німецька |
|---|---|---|---|---|
| Whisper large-v3 | 3–4% | 5–7% | 4–5% | 5–6% |
| Google Speech-to-Text (V2) | 4–5% | 6–8% | 5–7% | 6–8% |
| Azure Speech | 4–5% | 6–9% | 5–7% | 5–7% |
| Deepgram Nova-2 | 3–4% | 7–10% | 5–7% | 6–8% |
Важливо: ці цифри — на чистому аудіо в контрольованих умовах. На реальних записах WER буде вищим у 1,5–3 рази. Також різні бенчмарки дають різні результати, тому порівнювати цифри з різних джерел потрібно з обережністю. Детальне порівняння моделей та сервісів транскрибування для російської мови дивіться у нашому огляді ринку.
Обмеження WER як метрики
Попри повсюдне використання, WER — далеко не ідеальна метрика. У неї є суттєві обмеження.
Не враховує пунктуацію. WER порівнює лише слова, ігноруючи коми, крапки та інші розділові знаки. А пунктуація може кардинально змінювати зміст.
Не враховує регістр. "Київ" та "київ" для WER — одне й те саме, хоча в тексті це може бути важливо.
Не розрізняє серйозність помилок. Заміна "конференція" на "конференції" (відмінкова форма) і заміна "схвалено" на "скасовано" вважаються однаковими помилками, хоча друга повністю змінює зміст.
Не враховує нормалізацію. "15" і "п'ятнадцять", "п." і "пан", "%" і "відсотків" — це різні рядки з точки зору WER, хоча семантично ідентичні.
WER може перевищувати 100%. Якщо система додає багато зайвих слів (insertions), чисельник може виявитися більшим за знаменник. На практиці це рідкість, але формально можливо.
Не відображає читабельність. Текст з WER 10%, де помилки рівномірно розподілені, може читатися краще, ніж текст з WER 5%, де всі помилки сконцентровані в одному ключовому абзаці.
Альтернативні метрики
Через обмеження WER дослідники та розробники використовують й інші метрики.
CER (Character Error Rate)
Аналог WER, але на рівні окремих символів, а не слів. Формула та сама, тільки замість слів рахуються символи. CER особливо корисний для мов, де слова не розділяються пробілами (китайська, японська, тайська), а також для оцінки морфологічних помилок у флективних мовах на кшталт української: "квиток" vs "квитки" — це 100% помилка по WER, але лише близько 17% по CER (змінився один символ із шести).
MER (Match Error Rate)
Нормалізована версія WER, яка враховує відповідність між словами еталону та гіпотези. MER завжди знаходиться в діапазоні від 0 до 1, на відміну від WER, який може перевищувати 100%.
WIL (Word Information Lost)
Метрика, що враховує не тільки точність (precision), а й повноту (recall) розпізнавання. WIL показує, яка частка інформації була втрачена. Вона вважається більш збалансованою оцінкою, ніж WER.
Суб'єктивна оцінка
MOS (Mean Opinion Score) — середня експертна оцінка за шкалою від 1 до 5. Група людей оцінює якість транскрипції, і їхні оцінки усереднюються. Це дорого і повільно, але найточніше відображає реальну якість.
Оцінка читабельності — замість пословного порівняння експерти оцінюють, наскільки текст передає зміст оригіналу і наскільки легко його читати.
Як покращити WER для ваших задач
Якщо вас не влаштовує якість транскрибування, ось що можна зробити — в порядку зменшення ефективності.
1. Покращити якість аудіо. Це найдієвіший спосіб. Використовуйте зовнішній мікрофон, мінімізуйте фоновий шум, записуйте у тихому приміщенні. Один лише перехід зі вбудованого мікрофона ноутбука на петличку може знизити WER на 5–10%.
2. Обрати відповідну модель. Для максимальної точності використовуйте великі моделі: Whisper large-v3 для мультимовних задач. Моделі меншого розміру (tiny, small) працюють швидше, але й помиляються частіше.
3. Застосувати постобробку. Автоматична розстановка пунктуації, нормалізація чисел та абревіатур, виправлення типових помилок — все це покращує читабельність тексту, навіть якщо формально не знижує WER.
4. Використати fine-tuning. Якщо ви працюєте з вузькоспеціалізованою лексикою (медицина, юриспруденція, IT), донавчання моделі на вашій термінології може знизити WER на 20–40% відносно для таких термінів.
5. Скористатися готовим сервісом з оптимізованим пайплайном. Сервіси на кшталт Диктовки комбінують Whisper large-v3 з діаризацією мовців, нормалізацією та AI-сумаризацією, щоб дати максимально якісний результат без ручних налаштувань.
Підсумки
WER залишається золотим стандартом оцінки якості розпізнавання мовлення, попри свої обмеження. Розуміння цієї метрики допомагає:
- Свідомо обирати інструменти транскрибування
- Реалістично оцінювати, чого очікувати від ASR-систем
- Вживати заходів для покращення якості розпізнавання
- Не потрапляти на маркетингові обіцянки "99% точності"
Пам'ятайте: WER 5% не означає, що текст ідеальний — це означає, що з кожних 20 слів одне буде з помилкою. Для коротких записів це може бути непомітно, для годинної лекції — це десятки помилок. Контекст, якість аудіо та правильний вибір інструменту вирішують все.
FAQ
Який WER вважається хорошим для розпізнавання мовлення?
WER менше 5% — відмінна якість, текст можна використовувати без правки. 5-10% — добра якість з мінімальною правкою. 10-20% — прийнятно, основний зміст зрозумілий. Вище 20% — погана якість, що потребує переслуховування.
Як розрахувати WER?
WER = (S + D + I) / N x 100%, де S — заміни (неправильно розпізнані слова), D — пропуски (пропущені слова), I — вставки (зайві слова), N — загальна кількість слів в еталонному тексті.
Чим WER відрізняється від CER?
WER рахує помилки на рівні слів, а CER (Character Error Rate) — на рівні окремих символів. CER корисніший для оцінки морфологічних помилок: заміна «квиток» на «квитки» — це 100% помилка по WER, але лише близько 17% по CER.
Чому WER може перевищувати 100%?
WER може перевищувати 100%, тому що в чисельнику формули враховуються вставки — слова, які система додала, хоча в оригіналі їх не було. Якщо вставок дуже багато, чисельник стає більшим за знаменник. На практиці таке трапляється рідко.
Який WER показують сучасні моделі для основних мов?
Whisper large-v3 показує 3-4% WER на чистому англійському аудіо та 5-7% для російської. На реальних записах (наради, телефонні дзвінки) показник сягає 12-18% через шум, акценти та перебивання.