Spektrogram govora s istaknutim greškama transkripcije.
Tehnika4 min čitanja

Zašto Whisper griješi na hrvatskom

WER od 1,85% do 12,48% na tri hrvatska podcasta. Izmjerili smo i očite popravke: nijedan nije pomogao. Evo što stvarno griješi i što radimo umjesto toga.

Whisper-large-v3 je impresivan model. Koliko je dobar na engleskom, zna se. Koliko je dobar na hrvatskom podcastu, nitko nam nije znao reći. Zato smo to izmjerili prije nego što smo gradili išta drugo.

Kako smo mjerili

Tri isječka od po pet minuta stvarnog hrvatskog audija, namjerno različita:

  • solo monolog: jedan glas cijelo vrijeme,
  • poslovni intervju: imena, tvrtke, brojke,
  • tech podcast: razgovorni, s engleskim izrazima usred hrvatskih rečenica.

Za svaki isječak ručno smo napravili referentni transkript: Whisperov izlaz ispravljen riječ po riječ prema audiju, imena provjerena u objavljenim izvorima, engleski izrazi ostavljeni u engleskom pravopisu.

WER (Word Error Rate) broji pogreške po riječi: zamjene, brisanja i umetanja. Računamo ga nakon pretvaranja u mala slova i uklanjanja interpunkcije, ali dijakritike ostaju, jer čaša i casa nisu ista riječ. Prag za „dovoljno dobro" postavili smo na WER ≤ 5%, 95% točnih imena i sve brojke točne.

Tri isječka od pet minuta mali su uzorak. Dovoljan je da odbaci loše ideje, ali ne i da obeća broj za vaš kanal.

Rezultati

IsječakWERImena točno
Solo monolog1,85%4 od 4
Poslovni intervju5,28%7 od 7
Tech podcast12,48%6 od 8

Monolog je odličan. Intervju je 0,28 postotnih bodova iznad praga. Tech podcast je daleko iznad, a objašnjenje se činilo očitim: sav taj engleski usred hrvatskog mora zbunjivati model kojem smo rekli da sluša hrvatski.

Očiti popravci, izmjereni

Isti dan isprobali smo sve što bi se prvo pokušalo:

PokušajWER na tech podcastuIshod
Bez promjene (osnova)12,48%
Whisper sam prepoznaje jezik12,48%isto, a uz to se pokvarilo vrijeme riječi
Brži model, large-v3-turbo28,12%više nego dvostruko gore, i jedna brojka kriva
Prompt s engleskim izrazima iz epizode17,93%gore
Prompt s hrvatskim tematskim riječima16,79%gore

Ni veća preciznost izračuna ni veći batch nisu promijenili ništa (5,28% i 1,85%, isto kao prije).

Turbo je zanimljiv slučaj: brži je, ali je destiliran i naginje engleskom, pa hrvatski plaća cijenu. Na hrvatskom sadržaju ne isplati se.

Što zapravo griješi

Onda mjerenje koje je objasnilo sve. Usporedili smo Whisperov izlaz s referencama riječ po riječ i tražili ponovljene greške, onakve koje bi rječnik mogao ispraviti.

Nije ih bilo. Nijedna zamjena nije se ponovila ni jednom, ni na jednom isječku. Svaka greška bila je jednokratna:

  • krivi nastavak: vidljivo → vidljiv, dočepano → dočepana,
  • krivo čuta granica riječi: tržište → tržiš to, vještine koje → viši ti neko.

To je srušilo i početnu teoriju. Greške u tech podcastu nisu bile u engleskim dijelovima, nego u samom hrvatskom. Miješanje jezika nije bio problem.

Što radimo umjesto toga

Vlastiti rječnik (imena gostiju, brendovi, žargon kanala) korisnicima i dalje treba. Ali mjerenje je pokazalo da ga ne treba gurati u prepoznavanje govora, jer prompt s riječima pogoršava rezultat. Zato rječnik ide nakon prepoznavanja:

  1. Whisper-large-v3 (WhisperX) prepoznaje govor, bez prompta.
  2. Jezični model pročita gotov transkript zajedno s rječnikom kanala i ispravlja ono što rječnik pokriva: padeže imena, fonetski izobličene brendove, URL-ove. Radi uz temperaturu 0.
  3. Ako jezični model nije dostupan ili je rječnik prazan, ostaje obična zamjena prema rječniku. U najgorem slučaju ništa se ne pogoršava.

Iskreno: taj korak još nismo provukli kroz isti benchmark. To je sljedeći broj koji dugujemo sami sebi, a ovdje ćemo ga objaviti kad ga imamo.

Dio koji WER ne vidi

Transkript može biti savršen, a titlovi svejedno loši. Isto mjerenje pregledalo je i same datoteke titlova:

  • 68–76% redaka bilo je dulje od 42 znaka, uobičajene granice čitljivosti, jer se oznaka govornika dodavala nakon prelamanja retka,
  • 6–9,5% titlova na ekranu je bilo kraće od sekunde, prebrzo za čitanje,
  • titl je znao ostati na ekranu kroz 30 sekundi odjavne glazbe.

To smo ispravili posebno: titl sad završava sa zadnjom izgovorenom riječi i nikad ne stoji dulje od šest sekundi.

Što iz ovoga slijedi

  • Za čist govor jednog govornika Whisper-large-v3 na hrvatskom je već ispod praga.
  • Za brz, razgovorni sadržaj greške su u hrvatskom, ne u engleskom, i rječnik ih ne rješava.
  • Za imena i brendove vaš rječnik pomaže, ali nakon prepoznavanja, a ne u njemu.

Probajte na svom kanalu

Brojke gore su s tri isječka. Najbolja provjera je vaš vlastiti audio: spojite kanal i Titlomat će automatski napraviti titlove za sljedeći video. Ako želite, uključite pregled i odobrite ih prije objave. Probajte besplatno.