Kailangang tama ang dalawang sagot sa isang labeled na transcript, at dahil nasa ibabaw ng mga salita ang mga label, maaaring ayusin ang maling label nang hindi ginagalaw ang teksto.
Sabay na sinasagot ng transcript ng isang meeting ang dalawang tanong: ano ang sinabi, at sino ang nagsalita. Ang nakikita ng mambabasa ay iisang trabaho, isang pangalan sa tabi ng linya. Sa ilalim nito ay dalawang magkaibang problema, bawat isa ay may sariling input at sariling paraan ng pagkabigo.
Nakikinig ang speech recognition sa mga salita. Ginagawa nitong teksto ang audio at, kapag mahusay ang pagkakagawa, nagbibigay ito ng simula at dulong oras para sa bawat salita. Wala itong pakialam kung nagbago ang boses sa gitna ng pangungusap; ang trabaho nito ay tama ang pangungusap.
Nakikinig naman ang speaker diarization sa mga boses. Wala itong alam na salita. Ang trabaho nito ay hatiin ang timeline sa mga turn at sabihin kung aling mga turn ang kabilang sa iisang tao: Speaker 1, Speaker 2. Hiniram ang salitang "diary", at patas itong larawan ng output: isang talaan kung sino ang nagsalita, at kailan.
May tatlong magkakatabing termino na madalas malito dito. Sinasabi ng diarization kung sino ang nagsalita kailan, nang hindi alam kung sino sila. Sinasabi ng speaker identification kung aling kilalang tao ang isang bahagi ng pananalita, na pumipili mula sa set ng mga naka-enroll na boses. Sumasagot ang speaker verification sa oo-o-hindi na tanong: totoo bang boses ito ni person X? Mas madaling basahin ang mga claim ng vendor kapag magkakahiwalay ang tatlo, dahil ang "speaker labels" ay maaaring mangahulugan ng kahit ano, mula sa magaspang na hula sa hangganan ng mga turn hanggang sa mga pangalang sumusunod sa isang tao mula sa isang recording patungo sa susunod. Para malaman kung ano ang kayang ipangako ng mga label na iyon, tingnan sa loob ng diarizer.
Karamihan ng diarization system ay gumagana sa tatlong hakbang, at wala sa mga ito ang may kinalaman sa wika.
Maaaring pumalpak ang bawat hakbang nang mag-isa. Nalalampasan ang tahimik na nagsasalita. Pinagsasama ang dalawang magkatulad na boses. Hinahati sa dalawa ang iisang taong lumipat mula sa kalmado tungo sa masigla.
Sinusukat ng larangan ang lahat ng ito gamit ang diarization error rate, o DER: ang bahagi ng oras ng pananalita na nalampasan, maling natukoy bilang pananalita, o naiugnay sa maling nagsasalita, kadalasan na may forgiveness collar na mga isang-kapat ng segundo sa bawat hangganan. Umiiral ang collar dahil walang tao o makina ang makapagtatakda ng pagbabago ng nagsasalita hanggang sa millisecond. Sapat ang toleransyang ito para sukatin ang diarizer nang mag-isa. Hindi ito sapat para sa transcript, kung saan ang hangganang lumihis ng isang-kapat ng segundo ay tatama sa isang salita.
Dito nagtatagpo ang dalawang problema, at dito napagpapasyahan ang kalidad ng isang labeled na transcript. Naglalagay ang diarizer ng mga hangganan nang may kaunting kawalang-katiyakan, kadalasan ilang bahagi ng segundo sa alinmang direksyon. Ang recognizer naman ay naglalagay ng mga salita sa parehong timeline. Kapag basta mo lang pinagpatong ang dalawa, lalagpas ang hangganan sa loob ng isang salita, kaya ang kalahati ng "tomorrow" ay mapupunta sa Speaker 1 at ang kabilang kalahati ay sa Speaker 2.
Maaari ring mali ang mga label sa loob ng ilang sandali bago maging tama. Lalong nagiging sigurado ang diarizer sa mga grupo nito habang mas maraming audio ang naririnig nito, kaya ang maagang label ay maaaring mukhang mali ayon sa pamantayan ng kasunod. Sa live na transcript, maaaring baguhin ang label pagkatapos ipakita ang linya: nagpapadala ang realtime API ng VocalStack ng transcript.amended frame na nagwawasto sa teksto o nagsasalita ng nakomit na linya sa mismong lugar nito, kaya nakikita ng mambabasa ang rebisyon sa halip na isang kontradiksyon.
Kahit ang perpektong nakalagay at matatag na label ay numero pa rin. Sapat ang numero para masundan ang isang usapan; ang pangalan ang gustong basahin ng mga tao.
Nagiging pangalan ang label sa dalawang paraan, at nakabatay ang isa sa isa.
Ang una ay ang pagbibigay ng pangalan sa loob ng isang recording. Bawat nagsasalitang nahanap ng transcription ay may index, na nagsisimula sa 0. Maaaring pangalanan ng sinumang may access ang bawat nagsasalita habang o pagkatapos ng recording. Layer ang pangalan sa ibabaw ng mga salita, kaya maaari itong itakda, palitan o burahin nang hindi ginagalaw ang teksto. Sa API, ito ay PUT /v1/recordings/{id}/speakers/{idx} na may name; binubura ng walang lamang pangalan ang label. Ang linyang may speaker na -1 ay walang label, alinman dahil naka-off ang mga label o, sa live na draft, dahil hindi pa natutukoy ang nagsasalita ng linya.
Ang ikalawa ay ang pagkilala sa mga nagsasalita sa iba't ibang recording, ang identification problem mula sa unang bahagi. Masasabi lamang ng diarizer na magkaiba ang dalawang boses, hindi kung sino sila. Para lumipat mula sa "magkaiba" tungo sa "ito si Ana", kailangan ng sistema ng reference: isang na-save na boses, na kinuha mula sa recording ng taong iyon. Ang minimum ay tatlumpung segundo ng malinis na pananalita, at mas mabuti ang ilang minuto. Dapat ding tunog ang sample na katulad ng mga recording na itutugma dito: ang parehong tao sa laptop mic at sa stage mic ay maaaring magmukhang magkaiba sa makina kaysa dalawang estrangherong na-record sa parehong paraan. Kapag na-save na ang boses, ikinukumpara ang bawat nagsasalitang naririnig ng transcription dito, at ang tugma ay nagdadala ng pangalan papunta sa transcript. Sa VocalStack, nasa ilalim ito ng Voices; awtomatikong tinutugma ng file transcription at ng mga live session sa Dashboard ang iyong mga na-save na boses, at ang realtime API session ay kumikilala lamang sa mga boses na inilista mo sa identifyVoices.
Ang na-save na boses ay biometric data: kaya nitong kilalanin ang isang tao sa anumang recording, at sa VocalStack, nagsisilbi rin itong clone na kayang bigkasin nang malakas ang kanyang mga linya. Hinihingi ng Dashboard ang kumpirmasyon mo na may pahintulot ka ng tao bago mag-save ng isa, at maaaring burahin ang boses anumang oras.
Lahat ng ito ay ipinapalagay na gusto mo ng mga label. Madalas, hindi.
Ang taong nagbabasa ng lecture ay hindi kailangan ng "Speaker 1" sa harap ng bawat linya. Alam na ng audience kung sino ang may hawak ng mikropono. Kaya tatlo ang posisyon ng speaker-labels setting, at pareho ang mga ito sa realtime session, sa broadcast, sa transcription at sa recording.
auto sa API). Nilalagyan ng label ang mga linya ng kanilang nagsasalita kapag may higit sa isang boses na naririnig; ang recording na iisang nagsasalita ay nananatiling plain text, at ang pangalawang boses na sumali nang huli ay natutukoy pa rin. Dito nagsisimula ang bagong live transcription form ng Dashboard.Pareho ang speakerLabels option sa file upload, at maaari mo itong baguhin habang umaandar ang stream sa realtime API; nasa API reference ang mga detalye. Hindi nadadagdagan ng speaker separation at pagbibigay ng pangalan ang bill (nasa pricing page ang rate card), kaya ang pagpili ay tungkol sa kung ano ang dapat makita ng mambabasa, hindi kung magkano ang gastos.
Kapag naka-on, mahusay ang diarization pero hindi mahiwaga. May dalawang sitwasyon pa rin itong hindi kayang harapin.
Ang una ay ang overlap. Kapag sabay na nagsasalita ang dalawang tao, may dalawang boses ang iisang bahagi ng audio. May mga overlap-aware na diarizer sa pananaliksik at, lalong dumarami, sa mga produkto: halimbawa, tinatrato ng end-to-end neural diarization (EEND) ang "sino ang nagsasalita" bilang set ng sabay-sabay na oo-o-hindi na tanong sa halip na iisang sagot. Gayunpaman, karamihan ng production system ay nagtatalaga pa rin ng isang nagsasalita bawat bahagi, at ang recognizer sa ibabaw nila ay nagta-transcribe ng isang boses sa bawat pagkakataon. Ang crosstalk sa mainit na panel ang pinakamahirap na audio sa larangan, at lumalala roon ang label ng bawat vendor. Ito rin ang bahaging tiyak na gustong sipiin ng lahat pagkatapos.
Ang ikalawa ay ang magkakatulad na boses. Maaaring masyadong magkalapit ang embedding ng magkakapatid para mapaghiwalay nang maaasahan, lalo na kapag nagpapalitan sila ng maikling turn sa loob ng isang oras. Lalong lumalala ito para sa lahat sa telephone audio: sinusubukan ang narrowband na linya sa 8 kHz at walang dala na anumang nasa itaas ng humigit-kumulang 3.4 kHz, kahit na malaking bahagi ng nagpapaiba sa isang boses sa iba ay nasa itaas ng hangganang iyon. Ang dalawang taong nasa iisang linya ng telepono ay mas magkahawig ang tunog sa diarizer kaysa sa tunog nila sa iyo.
Ang pinakapraktikal na lunas sa dalawa ay nasa itaas ng anumang model: bigyan ng sariling mikropono ang bawat tao. Sa isang channel bawat nagsasalita, nababawasan ang diarization sa pagtatanong kung aling channel ang malakas; nagiging dalawang malinis na track ang overlap sa halip na isang magulong track; at hindi na kailangang gawin ng mga embedding ang mahirap na bahagi. Mas mura ang isang table mic, at halos palaging iyon ang meron ka, kaya iyon ang dahilan ng natitirang bahagi ng artikulong ito.
Hindi kailangang umabot sa mambabasa ang alinman sa dalawang limitasyon nang hindi nababago. Dahil layer ang mga label sa ibabaw ng mga salita, hindi ka nawawalan ng teksto dahil sa maling label: maaaring itakda o burahin ang mga pangalan ng nagsasalita sa isang recording anumang oras, at sa live na transcription, maaaring muling isulat ng host ang anumang salita o linya habang tumatakbo pa, at bawat pagwawasto ay minamarkahan at maaaring i-undo.
Para sa panig ng mga salita, sakop ng kung ano ang sinusukat ng word error rate at kung ano ang hindi nito nakikita ang mga correction layer nang detalyado; ang WER ay sa recognizer ang katumbas ng DER sa diarizer, at kailangang mababa ang dalawa para maging maayos ang isang transcript.