WER nima va nutqni tanib olish aniqligi qanday o‘lchanadi
Asoslar4 daqInnovialabs tahririyati
Qisqacha
WER — nutqni tanib olish tizimi namunaviy matnga nisbatan almashtirgan, tushirib qoldirgan yoki qo‘shgan so‘zlar ulushi; uni o‘z yozuvlaringizda o‘lchash kerak, chunki vendorlar raqamlari toza nutqda olingan va shovqin, telefoniya hamda tillar aralashuvini hisobga olmaydi.
Qisqa javob
WER (Word Error Rate) — nutqni tanib olish (ASR) aniqligining asosiy metrikasi. U inson tomonidan tayyorlangan namunaviy transkripsiyaga nisbatan so‘zlarning qancha qismi xato tanib olinganini ko‘rsatadi.
Formula:
WER = (S + D + I) / N
- S (substitutions) — almashtirilgan so‘zlar;
- D (deletions) — tushirib qoldirilgan so‘zlar;
- I (insertions) — ortiqcha qo‘shilgan so‘zlar;
- N — namunadagi so‘zlar soni.
WER qancha past bo‘lsa, shuncha yaxshi. Qo‘shimchalar tufayli WER 100% dan oshishi mumkin.
Hisoblash misoli
Namuna: «hisob raqamini ertaga ochib bering» — 5 so‘z. Tanib olingan: «hisob raqamni ochib bering iltimos».
- «raqamini» → «raqamni» — almashtirish (S = 1);
- «ertaga» tushib qolgan (D = 1);
- «iltimos» qo‘shilgan (I = 1).
WER = 3 / 5 = 60%. E’tibor bering: bitta qo‘shimchadagi xato butun so‘zni xato qiladi. Xuddi shunday, katta-kichik harflar, tinish belgilari, apostrof turlari yoki raqamlarning yozilishidagi farqlar ikkala matn bir xil normallashtirilmasa, WER’ni sun’iy oshiradi. Yagona normallashtirishsiz raqamlarni solishtirish ma’nosiz.
Bog‘liq metrikalar
| Metrika | Nimani o‘lchaydi | Qachon foydali |
|---|---|---|
| CER (Character Error Rate) | Belgilar darajasidagi xatolar | Uzun so‘zlar va qo‘shimchalar ko‘p tillar, masalan o‘zbek tili |
| SER (Sentence Error Rate) | Kamida bitta xatosi bor iboralar ulushi | Qisqa buyruqlar, ovozli menyular |
| Asosiy obyektlar aniqligi | Ismlar, raqamlar, summalar, mahsulot nomlari to‘g‘ri tanib olinganmi | Har bir so‘z emas, aniq ma’lumot muhim bo‘lgan call-markazlar |
| Diarizatsiya aniqligi | Operator va mijoz gaplari to‘g‘ri ajratilganmi | Qo‘ng‘iroqlar tahlili |
Biznes uchun ko‘pincha umumiy WER emas, balki tizim shartnoma raqami, summa va xizmat nomini to‘g‘ri tanib olishi muhimroq.
O‘z qo‘ng‘iroqlaringizda WER’ni qanday o‘lchash mumkin
- Tanlanma yig‘ing. Sharoitingizni aks ettiruvchi haqiqiy yozuvlarni oling: turli operator va mijozlar, shovqin, yomon aloqa, rus, o‘zbek va aralash nutq. Faqat toza yozuvlarni tanlamang.
- Namunaviy transkripsiyalar tayyorlang. Inson yozuvlarni so‘zma-so‘z, yagona qoidalar bo‘yicha yozib chiqadi: raqamlar, qisqartmalar, parazit so‘zlar va til almashuvlari qanday yoziladi.
- Matnni normallashtiring. Namuna va tizim natijasini bir xil ko‘rinishga keltiring: kichik harflar, tinish belgilarisiz, apostrof, harflar va raqamlarning yagona yozilishi.
- Metrikalarni hisoblang — har bir sharoit guruhi uchun alohida: shovqinli va toza qo‘ng‘iroqlar, rus, o‘zbek, aralash.
- Xatolarni qo‘lda tahlil qiling. Qaysi so‘zlar ko‘proq adashtirilishini ko‘ring — bu atamalar lug‘ati yoki qo‘shimcha o‘qitish qayerda kerakligini ko‘rsatadi.
Hisoblash uchun, masalan, Python’dagi jiwer kutubxonasi qulay:
import re
import jiwer
def normalize(text: str) -> str:
text = text.lower()
text = re.sub(r"[‘’ʻʼ`]", "'", text)
text = re.sub(r"[^\w\s']", "", text)
return " ".join(text.split())
reference = normalize("Hisob raqamini ertaga ochib bering.")
hypothesis = normalize("hisob raqamni ochib bering iltimos")
print(jiwer.wer(reference, hypothesis)) # 0.6
print(jiwer.cer(reference, hypothesis))
Nega vendorlar raqamlari sizniki bilan mos kelmaydi
E’lon qilingan aniqlik odatda ommaviy benchmarklarda o‘lchanadi — ko‘pincha yaxshi mikrofonga ovoz chiqarib o‘qilgan toza nutq. Sizning qo‘ng‘iroqlaringiz deyarli hamma jihatdan farq qiladi:
- Telefon kanali. Tor chastota diapazoni va siqish ovoz sifatini pasaytiradi.
- Shovqin. Ko‘cha, do‘kon, mashina, orqa fondagi suhbatlar.
- Tillar aralashuvi. Mijoz o‘zbekcha boshlaydi, ruscha so‘z va atamalar qo‘shadi — bitta tilda o‘qitilgan modellar bunday iboralarda ko‘proq xato qiladi.
- O‘zbek tili xususiyatlari. U agglyutinativ: bitta noto‘g‘ri qo‘shimcha butun so‘zni xatoga aylantiradi, shuning uchun WER haqiqiy tushunishdan yomonroq ko‘rinadi. Bunga lotin va kirill yozuvlari hamda o‘ va g‘ dagi apostrofning bir nechta varianti qo‘shiladi.
- Soha leksikasi. Mahsulotlaringiz, tariflaringiz, ko‘chalar nomlari va ismlar.
- Turlicha normallashtirish. Vendor WER’ni o‘z qoidalari bo‘yicha hisoblagan bo‘lishi mumkin, ularni siznikiga solishtirib bo‘lmaydi.
Shuning uchun tizimni faqat o‘z tanlanmangizda, barcha nomzodlarga bir xil qoidalarni qo‘llab sinab ko‘rgandan keyin tanlang.
Ko‘p uchraydigan xatolar
- Turli ma’lumotlarda hisoblangan turli vendorlar WER’ini solishtirish.
- Bir nechta omadli yozuvlarda test qilish.
- Faqat o‘rtacha WER’ga qarab, sharoitlar bo‘yicha ajratmaslik.
- Vazifa uchun barcha so‘zlar emas, aniq obyektlar muhimligini unutish.