Označeni transkript treba oba odgovora na pravom mjestu, a budući da oznake stoje iznad riječi, pogrešnu oznaku može se ispraviti bez diranja teksta.
Transkript sastanka odgovara na dva pitanja odjednom: što je rečeno i tko je to rekao. Čitatelj vidi jedan zadatak, ime pokraj retka. Ispod toga stoje dva problema, svaki sa svojim ulazima i svojim načinima neuspjeha.
Prepoznavanje govora sluša riječi. Pretvara zvuk u tekst i, kad je dobro izvedeno, daje početno i završno vrijeme svake riječi. Ne mari se za to je li glas usred rečenice promijenio ton; njegov je posao da rečenica bude točna.
Dijarizacija govornika sluša glasove. Riječi ne poznaje. Njezin je posao podijeliti vremensku crtu na izmjene i reći koje izmjene pripadaju istoj osobi: Govornik 1, Govornik 2. Riječ je posuđena iz engleske riječi „diary” (dnevnik), i to je vjerna slika rezultata: zapisnik o tome tko je držao riječ i kada.
Uz nju se vežu tri srodna pojma. Dijarizacija kaže tko je govorio kada, bez poznavanja ikoga. Identifikacija govornika kaže kojoj poznatoj osobi pripada neki dio govora, birajući među unaprijed upisanim glasovima. Verifikacija govornika daje odgovor da ili ne: je li ovaj glas doista osoba X? Tvrdnje dobavljača lakše je čitati kad se ta tri pojma drže odvojeno, jer „oznake govornika” mogu značiti sve od grube procjene granica izmjena do imena koja prate osobu iz jedne snimke u drugu. Da bismo vidjeli što te oznake mogu, a što ne mogu obećati, pogledajmo unutrašnjost dijarizatora.
Većina sustava za dijarizaciju radi u tri koraka, a nijedan ne uključuje jezik.
Svaki korak može sam po sebi pogriješiti. Tihi govornik se propusti. Dva slična glasa se spoje. Jedna osoba koja prelazi iz smirenog u uzbuđeni ton podijeli se u dvije.
Područje sve to mjeri stopom greške dijarizacije, DER: udjelom govornog vremena koje je propušteno, lažno prepoznato kao govor ili pripisano pogrešnom govorniku, obično uz „oprost” od otprilike četvrt sekunde oko svake granice. Ta tolerancija postoji zato što nitko, ni čovjek ni stroj, ne može smjestiti promjenu govornika na milisekundu. Za ocjenjivanje dijarizatora samog po sebi ta tolerancija je dovoljna. Za transkript nije, jer granica pomaknuta za četvrt sekunde pada na riječ.
Tu se ta dva problema susreću i tu se odlučuje o kvaliteti označenog transkripta. Dijarizator postavlja granice s određenom nepreciznošću, često za djelić sekunde u jednu ili drugu stranu. Prepoznavač riječi postavlja riječi na istu vremensku crtu. Ako se jedno naivno položi preko drugog, granica padne unutar riječi, pa pola riječi „sutra” pripada Govorniku 1, a druga pola Govorniku 2.
Oznake također mogu neko vrijeme biti pogrešne prije nego što postanu točne. Dijarizator je sigurniji u svoje skupine što je više zvuka čuo, pa rana oznaka može izgledati pogrešno u odnosu na ono što dolazi kasnije. Na transkriptu uživo oznaka se može revidirati nakon što je redak prikazan: VocalStack-ov realtime API šalje okvir transcript.amended koji ispravlja tekst ili govornika već potvrđenog retka na mjestu, pa čitatelj vidi reviziju, a ne proturječje.
Čak i savršeno smještena, savršeno stabilna oznaka ostaje samo broj. Broj je dovoljan za praćenje razgovora; ime je ono što ljudi žele čitati.
Oznaka postaje ime na dva načina, a jedan se nadograđuje na drugi.
Prvi je imenovanje unutar jedne snimke. Svaki govornik koji transkripcija pronađe dobiva indeks, počevši od 0. Svatko tko ima pristup može imenovati svakog govornika tijekom ili nakon snimke. Ime je sloj iznad riječi, pa se može postaviti, promijeniti ili obrisati bez diranja teksta. Preko API-ja to je PUT /v1/recordings/{id}/speakers/{idx} s poljem name; prazno ime briše oznaku. Redak čiji je speaker -1 nema oznaku, bilo zato što su oznake isključene ili, u nacrtu uživo, zato što redak još nije pripisan nekome.
Drugi je prepoznavanje kroz više snimki, problem identifikacije iz prvog odjeljka. Dijarizator može reći samo da su dva glasa različita, nikada tko su. Da bi se od „različiti” stiglo do „ovo je Ana”, sustavu treba referenca: spremljeni glas, uzet iz snimke te jedne osobe. Najmanje je potrebno trideset sekundi čistog govora, a bolje je nekoliko minuta. Uzorak također treba zvučati kao snimke s kojima će se uspoređivati: ista osoba na mikrofonu laptopa i na pozorničkom mikrofonu može stroju zvučati manje slično nego dvije nepoznate osobe snimljene na isti način. Kad je glas spremljen, svaki govornik koji transkripcija čuje uspoređuje se s njim, a podudaranje prenosi ime u transkript. U VocalStack-u to se nalazi pod Voices; transkripcije datoteka i sesije uživo na nadzornoj ploči automatski se podudaraju sa spremljenim glasovima, a sesija realtime API-ja prepoznaje samo glasove koje navedete u identifyVoices.
Spremljeni glas je biometrijski podatak: može prepoznati osobu u bilo kojoj snimci, a u VocalStack-u služi i kao kloniranje koje može čitati njezine replike naglas. Nadzorna ploča traži da potvrdite kako imate dopuštenje te osobe prije spremanja glasa, a glas se može obrisati u bilo kojem trenutku.
Sve ovo pretpostavlja da uopće želite oznake. Često ne želite.
Jedna osoba koja čita predavanje ne treba „Govornik 1” ispred svakog retka. Publika već zna tko drži mikrofon. Zato postavka oznaka govornika ima tri položaja i isti su na sesiji uživo, prijenosu, transkripciji i snimci.
auto u API-ju). Retci se označavaju govornikom čim se čuje više od jednog glasa; snimka s jednim govornikom ostaje običan tekst, a drugi glas koji se pridruži kasnije ipak se uhvati. Obrazac za novu transkripciju uživo na nadzornoj ploči počinje ovdje.Prijenos datoteke uzima istu opciju speakerLabels, a realtime API dopušta da je mijenjate usred toka; pojedinosti su u API referenci. Razdvajanje i imenovanje govornika nikad ne povećavaju račun (stranica s cijenama ima cjenik), pa je izbor o tome što čitatelj treba vidjeti, a ne o tome što to košta.
Kad je uključena, dijarizacija je dobra, ali nije čarobna. Dvije situacije je i dalje nadilaze.
Prva je preklapanje. Kad dvije osobe govore istovremeno, jedan dio zvuka nosi dva glasa. Dijarizatori svjesni preklapanja postoje u istraživanjima i sve češće u proizvodima; primjerice, end-to-end neuronska dijarizacija (EEND) tretira pitanje „tko govori” kao skup istovremenih pitanja s da ili ne, a ne kao jedan odgovor. Većina proizvodnih sustava, međutim, i dalje dodjeljuje jednog govornika po dijelu zvuka, a prepoznavač iznad njih transkribira jedan glas u isto vrijeme. Preklapanje u žustroj raspravi najteži je zvuk u tom području, a oznake svakog dobavljača tu se pogoršavaju. To je također, pouzdano, dio koji svi žele citirati poslije.
Druga su vrlo slični glasovi. Braća i sestre mogu proizvesti ugradnje previše bliske da bi se pouzdano razdvojile, pogotovo kad satima izmjenjuju kratke replike. Telefonski zvuk to pogoršava za sve: uskopojasna linija uzorkuje se na 8 kHz i ne prenosi ništa iznad otprilike 3,4 kHz, a mnogo toga po čemu se jedan glas razlikuje od drugoga leži upravo iznad te granice. Dvije osobe na istoj telefonskoj liniji dijarizatoru zvuče sličnije nego što vama zvuče.
Najpraktičniji lijek za oboje nalazi se prije svakog modela: dajte svakoj osobi vlastiti mikrofon. S jednim kanalom po govorniku dijarizacija se svodi na pitanje koji je kanal glasniji, preklapanje postaje dvije čiste staze umjesto jedne mutne, a ugradnjama se nikad ne traži da rade najteži dio. Jedan stolni mikrofon jeftiniji je i gotovo uvijek ono što imate, zato ovaj članak uopće postoji.
Nijedno ograničenje ne mora doći do čitatelja nepromijenjeno. Budući da su oznake sloj iznad riječi, pogrešna oznaka nikad vas ne košta tekst: imena govornika mogu se postaviti ili obrisati na snimci u bilo kojem trenutku, a kod transkripcije uživo domaćin može prepisati bilo koju riječ ili redak dok još traje, pri čemu je svaka ispravka označena i može se poništiti.
Za dio o riječima, što mjeri stopa pogreške riječi (WER) i što joj promiče detaljno objašnjava slojeve ispravaka; WER je za prepoznavač ono što je DER za dijarizator, a transkript treba oboje držati niskim.