Řečové technologie – výzkum a využití Honza Černocký BUT Speech@FIT Fakulta informačních technologií VUT v Brně ZRE #1, 14.2.2014
klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví Agenda skupina Speech@FIT klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví rozpoznávání mluvčího identifikace jazyka přepis řeči na text detekce klíčových slov organisace a projekty ZRE#1, Honza Černocký 14.2.2014
Kdo jsme - Speech@FIT Skupina založena v 1997 (1 člověk) Fakultní posice Výzkumníci na projektech PhD a mladší studenti Podpora Bosses: Výzkum: Lukáš Burget Management: Honza Černocký Guru: Hynek Heřmanský Skupina založena v 1997 (1 člověk) ~20 lidí v 2012 ZRE#1, Honza Černocký 14.2.2014
Funding ~ 1 M$ / year – the usual slide Faculty (faculty members, research funds) EU projects (FP[4567]) Past: SpeechDat, SpeeCon, M4, AMI, CareTaker, AMIDA, MOBIO, weKnowIt, DIRAC, GLOCAL Running: ApiMod US funding – Air Force EOARD, IARPA, DARPA Local funding agencies - Grant Agency of CR, Technology Agency of CR, Ministries of Education, Trade and Commerce, Defense, Interior IT4I supporting academia-industry cooperation ZRE#1, Honza Černocký 14.2.2014
Steel and soft … HW Blade centers with 2400 CPU cores + Many more computers in class-rooms + GPUs >120 TB of disk space Professional administration by Center of Computing Resources. SW commercial (Matlab) free (HTK, SGE) own (TNet, STK, KALDI) ZRE#1, Honza Černocký 14.2.2014
Co děláme ? Automatická extrakce informací ze spontánní řeči Rozpoznávání mluvčího Identita Jan Novák Rozpoznávání pohlaví Pohlaví Muž nebo žena Řeč Rozpoznávání jazyka Jazyk Angličtina ? Němčina ? Rozpoznávání řeči Přepis Sejdeme se u Pavouka. Detekce klíčových slov Detekce “Pavouk” ZRE#1, Honza Černocký 14.2.2014
Evaluace “Úspěšnost 100% ? Jasně!” … pokud si sami definujeme data, podmínky a evaluační metriky. NIST – agentura vlády USA http://www.nist.gov/speech Pravidelné „benchmark campaigns“ – evaluace – řečových technologií Všichni účastníci mají ta samá data a stejný časový rámec na jejich zpracování a zaslání výsledků => objektivní hodnocení Výsledky a detaily systémů jsou diskutovány na NIST workshopech BUT Speech@FIT se účastní … Transcription 2005, 2006, 2007, 2009 Language ID 2003, 2005, 2007, 2009, 2011 Speaker Verification 1998, 1999, 2006, 2008, 2010, IARPA 2011 Spoken term detection 2006 Proč to děláme? Porovnání s ostatními, zajištění (občas i definice ) „state of the art“ Nechceme dělat hovadiny, které lidé vyzkoušeli a nefungovaly.
klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví Agenda skupina Speech@FIT klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví rozpoznávání mluvčího identifikace jazyka přepis řeči na text detekce klíčových slov organisace a projekty ZRE#1, Honza Černocký 14.2.2014
Trochu detailněji – jak se dělá rozpoznávač ? Podle obecného receptu z jakékoliv knihy o detekci nebo rozpoznávání … Nasbírat data Zvolit parametry Apriorní znalost problému Zvolit model Natrénovat model Evaluaovat klasifikátor nasazení ZRE#1, Honza Černocký 14.2.2014
Klasifikace a rozpoznávání IKR pondělí 13:00 do 16:00, D0206 Lukáš Burget ZRE#1, Honza Černocký 14.2.2014
Vyhodnocení pravděpodobností nebo věrohodností (skóre hypotéz) A co je výsledkem ? Už jste asi viděli … Modely Výpočet příznaků Vyhodnocení pravděpodobností nebo věrohodností (skóre hypotéz) “Dekódování” vstup rozhodnutí ZRE#1, Honza Černocký 14.2.2014
klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví Agenda skupina Speech@FIT klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví rozpoznávání mluvčího identifikace jazyka přepis řeči na text detekce klíčových slov organisace a projekty ZRE#1, Honza Černocký 14.2.2014
Nejjednodušší případ – rozpoznávání pohlaví (GID) Nejjednuší aplikace pro implementaci, trénování a nasazení. … a také nejpřesnější (>96% na reálných kanálech) Omezení vyhledávacího prostoru na 50% Sem dat obrazek spkID a zaramovat sloupec s pohlavim !!!
Gaussian Mixture models – kluci, holky Jak se dělá ? Gaussian Mixture models – kluci, holky Vyhodnocení GMM skóre MFCC vstup Rozhodnutí kluk, holka ZRE#1, Honza Černocký 14.2.2014
Parametry – Mel frekvenční cepstrální koeficienty Signál není stacionární => rámce A slyšení není lineární – banka filtrů a log. ZRE#1, Honza Černocký 14.2.2014
Matice parametrů O – sada čísel každých 10ms ZRE#1, Honza Černocký 14.2.2014
Vyhodenocení skóre kluků a holek Směs Gaussovek se středními hodnotami, kovariančními maticemi a váhami Vyhodnocení modelu nad maticí parametrů O: ZRE#1, Honza Černocký 14.2.2014
Rozhodnutí - „dekódování“ ZRE#1, Honza Černocký 14.2.2014
klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví Agenda skupina Speech@FIT klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví rozpoznávání mluvčího identifikace jazyka přepis řeči na text detekce klíčových slov organisace a projekty ZRE#1, Honza Černocký 14.2.2014
Rozpoznávání mluvčího Verifikace Je pan Vopička v nahrávce opravdu pan Vopička ? Enrollment Test Identifikace Mám nahrávku, kdo to je ? Search Najít pana Vopičku v tisících hovorů Identifikace i search se dají převést na N krát verifikaci. ZRE#1, Honza Černocký 14.2.2014
Základní schéma 2 hypotézy Log likelihood ratio H0: mluvčí v testovací nahrávce není ten, kterého jsme viděli v enrollmentu. H1: mluvčí v testovací nahrávce je ten, kterého jsme viděli v enrollmentu. Log likelihood ratio ZRE#1, Honza Černocký 14.2.2014
Parametry ZRE#1, Honza Černocký 14.2.2014
Směs Gaussovek se středními hodnotami, kovariančními maticemi a váhami GMM Směs Gaussovek se středními hodnotami, kovariančními maticemi a váhami Vyhodnocení modelu nad maticí parametrů O: ZRE#1, Honza Černocký 14.2.2014
UBM – background model Na co je ? Jak se trénuje ? Produkuje likelihood hypotézy H0 „toto není cílový mluvčí“ – nutné pro normalizaci. Adaptuje se z něj model cílového mluvčího, protože pro plné trénování není dost cílových dat. Jak se trénuje ? Ideálně na nahrávkách všech >8.000.000.000 lidí, každý z několika různých kanálů. Reálně na stovkách mluvčích z dostupných databází (LDC, dotrénování na cílová data). ZRE#1, Honza Černocký 14.2.2014
Inter-session variability Popsaný systém dokáže postavit průměrně zdatný student s Matlabem za půl dne (IKR). Bude uspokojivě fungovat, pokud bude koherence mezi enrollmentem a testováním. ALE ONA NENÍ - Inter-session variabilita Variabilita mluvčího Jazyk Emoce, stres, Lombard effect Zdravotní stav Obsah promluvy, atd Variabilita mimo mluvčího Šum Přenosový kanál – mikrofon, kodek, záznamové zařízení… Toto vše snižuje přesnost systému. Vyhrává ten, kdo Dokáže lépe popsat DOBROU VARIABILITU (rozdíly mezi mluvčími) Dokáže lépe zničit ŠPATNOU (inter-session) VARIABILITU ZRE#1, Honza Černocký 14.2.2014
Boj s inter-session variabilitou Feature domain Model domain Score domain Target model Adapt Front-end processing LR score normalization S L Background model Speaker Model Synthesis Eigenchannel compensation Joint Factor Analysis Nuisance Attribute Projection Noise removal Tone removal Cepstral mean subtraction RASTA filtering Mean & variance normalization Feature warping Feature Mapping Eigenchannel adaptation in feature domain 2006 Z-norm T-norm ZT-norm ZRE#1, Honza Černocký 14.2.2014
Princip kompensace ŠPATNÉ variability 1. Příklad: jedna Gaussovka s 2D parametry Model cílového mluvčího UBM Vysoká variabilita mezi mluvčími Rici, ze realny prostor není 2D, ale ze mame podpostory o nekolika stovkach dimensi – dobry a spatny. Vysoká inter-session variabilita 27 ZRE#1, Honza Černocký 14.2.2014 27
Princip kompensace ŠPATNÉ variability 2. Rozpoznávání: nech oba modely pohybovat ve směru vysoké inter-session variability a nastav je tak, aby dávaly co nejvíce pro testovací data Target speaker model Test data UBM Vysoká variabilita mezi mluvčími Vysoká inter-session variabilita 28 ZRE#1, Honza Černocký 14.2.2014 28
Boj s inter-session variabilitou Feature domain Model domain Score domain Target model Adapt Front-end processing LR score normalization S L Background model Speaker Model Synthesis Eigenchannel compensation Joint Factor Analysis Nuisance Attribute Projection Noise removal Tone removal Cepstral mean subtraction RASTA filtering Mean & variance normalization Feature warping Feature Mapping Eigenchannel adaptation in feature domain Z-norm T-norm ZT-norm 2008 ZRE#1, Honza Černocký 14.2.2014
Od složitého k jednoduchému – total variability 2009-2010 i-vectors Zjednodušená verze JFA, s jediným podprostorem, který definuje celkovou variabilitu (nerozlišujeme dobrou a špatnou) Podobně jako u speaker/channel faktorů nám jde o representaci nahrávky pomocí malého počtu parametrů. Už při jednoduchém skórování pomocí skalárního součinu i-vektorů dostáváme výsledky lepší než plná JFA iVectors? i-vectors ! ZRE#1, Honza Černocký 14.2.2014 30
Od jednoduchého zase ke složitému - PLDA Probabilistic LDA i-vectors jsou samy modelovány pomocí zjednodušené verze JFA. Inspirace [Prince ’07] PLDA pro verifikaci obličejů Model, který umožňuje Rychlé skórování Nejprve extrakce i-vectoru – “voice/print” Pak jednoduché srovnání Symetrické skórování – enrollment vs. test => skóre pro pár dvou nahrávek Funguje pro krátké nahrávky Velmi zajímavé pro masivní zpracování dat N nahrávek proti M mluvčím, Speaker clustering Dříve: 10ky – 100ky párů nahrávka/model za 1s na 1 CPU Nyní: desetitisíce Dá se ořezat, dokonce máme demo na mobilu. ZRE#1, Honza Černocký 14.2.2014 31
NIST SRE 2006 - STBU BUT STBU consortium Spescom datavoice TNO ZRE#1, Honza Černocký 14.2.2014
NIST SRE 2008 ZRE#1, Honza Černocký 14.2.2014
NIST SRE 2010 ABC systém: Agnitio (Jižní Afrika) BUT CRIM (Kanada) 2012 (také ABC) Také moc dobré! ZRE#1, Honza Černocký 14.2.2014
NIST SRE 2012 ABC system ZRE#1, Honza Černocký 14.2.2014
Umíme teorii klasifikace a rozpoznávání vzorů. Jak to ? Umíme teorii klasifikace a rozpoznávání vzorů. Jsme v kontaktu s lidmi, kteří jsou světovými špičkami – Patrick Kenny, Niko Brümmer, další. dokážeme rychle implementovat nové nápady, a testovat Analyzujeme výsledky a přemýšlíme o nich Dokážeme se dívat mimo obor (uvnitř zpracování řeči – rozpoznávání jazyka, přepis, detekce klíčových slov) i jinde (grafika - Prince) a rychle aplikovat nápady. A máme hodně POČÍTAČŮ, takže kolegy občas pobijeme HRUBOU SILOU. ZRE#1, Honza Černocký 14.2.2014
Spolupráce v rozpoznávání mluvčího Komunita NIST SRE 2010 workshop na FITu. Odyssey 2010: The Speaker and Language Recognition Workshop také na FITu. BOSARIS – 5ti týdenní výzkumný workshop v červenci (incl. Patrick Kenny a Niko Brümmer) také na FITu. Software pro svět: JFA demo na http://speech.fit.vutbr.cz/software BOSARIS toolkit http://speech.fit.vutbr.cz/workshops/bosaris2010 Lidi, co se jezdí naučit JFA, i-vectors, a spol. ZRE#1, Honza Černocký 14.2.2014
klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví Agenda skupina Speech@FIT klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví rozpoznávání mluvčího identifikace jazyka přepis řeči na text detekce klíčových slov organisace a projekty ZRE#1, Honza Černocký 14.2.2014
Identifikace jazyka - LID Jakým jazykem se mluvilo LID ZRE#1, Honza Černocký 14.2.2014
Dva hlavní přístupy Akustika – zase Gaussovky … Fonotaktika – fonémový rozpoznávač + fonotaktický model. ZRE#1, Honza Černocký 14.2.2014
Nahrávky (mnoho) daného jazyka. Možnost automatického získávání Na čem trénovat LID ? Nahrávky (mnoho) daného jazyka. Možnost automatického získávání detekce telefonních hovorů v internetových archívech vysílání Pomoc LDC pro NIST LRE 2008 Projekt US Air Force EOARD. Dá se i u klienta na ostrých datech. Současná práce JFA, i-vectors a spol. – i v LID je nutné bojovat s inter-session (a tentokrát i s inter-speaker) variabilitou. ZRE#1, Honza Černocký 14.2.2014
klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví Agenda skupina Speech@FIT klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví rozpoznávání mluvčího identifikace jazyka přepis řeči na text detekce klíčových slov organisace a projekty ZRE#1, Honza Černocký 14.2.2014
Vyhodnocení pravděpodobností nebo věrohodností (skóre hypotéz) Přepis řeči na text Voice2text V2T Speech2text S2T Large vocabulary continuous speech recognition LVCSR Akustické modely Jazykový model Výslovnostní slovník Rozponávací SÍŤ Výpočet příznaků Vyhodnocení pravděpodobností nebo věrohodností (skóre hypotéz) “Dekódování” vstup rozhodnutí ZRE#1, Honza Černocký 14.2.2014
Rozpoznávací síť ZRE#1, Honza Černocký 14.2.2014
Závislé na jazyce a na doméně Na čem se trénuje V2T ? Korpus mluvené řeči + textové popisy Fonetická sada, výslovnostní slovník Textový korpus Systém pro rozpoznávání řeči Závislé na jazyce a na doméně Problémem je fonetická sada a slovník Snaha o přístupy, které budou pracovat automaticky ZRE#1, Honza Černocký 14.2.2014
BABEL IARPA projekt Jazyky pro 2013 2014 Cantonese Turkish Pashto Tagalog Surprise - Vietnamese 2014 Bengali Assamese Zulu Haiti Creole Lao Surprise ?? ZRE#1, Honza Černocký 14.2.2014
klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví Agenda skupina Speech@FIT klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví rozpoznávání mluvčího identifikace jazyka přepis řeči na text detekce klíčových slov organisace a projekty ZRE#1, Honza Černocký 14.2.2014
Detekce klíčových slov - KWS Co ? Kde ? S jakou konfidencí ? Model klíčového slova vs. anti-model. Volby: Jaký je požadovaný poměr mezi rychlostí a přesností ? Bude se zpracovávat jen jednou (taktické aplikace) nebo prohledávat (intelligence) ? Vadí nám slova mimo slovník - Out of Vocabulary (OOV) words? Přístupy Akustický KWS Prohledávání výstupu LVCSR Prohledávání výstupu LVCSR s pod-slovními (sub-word) jednotkami
Model klíčového slova proti modelu pozadí Bez modelu jazyka Akustika Model klíčového slova proti modelu pozadí Bez modelu jazyka J není problém s OOVs Indexování není možné J až 0.01xRT Nemá sílu jazykového modelu, problém s krátkými slovy. ZRE#1, Honza Černocký 14.2.2014
Prohledávání výstupu LVCSR LVCSR, pak vyhledávání V 1-best nebo lattici. Možnost indexování ! J rychlost vyhledávání J přesnější na častých slovech L limitován slovníkem LVCSR vocabulary – OOV problém LVCSR je složitější a pomalejší než jen akustika. ZRE#1, Honza Černocký 14.2.2014
Prohledávání výstupu LVCSR + sub-words J Zachována rychlost vyhledávání Zachována přesnost na častých slovech. Dají se vyhledávat OOV – bez nového zpracování dat! LVCSR a indexování jsou složitější. LVCSR se slovy a pod-slovními jednotkami Indexování slov i pod-slovních jednotek ZRE#1, Honza Černocký 14.2.2014
klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví Agenda skupina Speech@FIT klasifikace a rozpoznávání vzorů jak to funguje - detekce pohlaví rozpoznávání mluvčího identifikace jazyka přepis řeči na text detekce klíčových slov organisace a projekty ZRE#1, Honza Černocký 14.2.2014
Výzkum, vývoj a produktizace a jejich výstupy Články, reporty, experimentální kód (Matlab, C++, lepidlo ve skriptech), datové soubory Cílem je přesnost Opakovatelnost, stabilita, rychlost, dokumentace Vývoj technologií Cílem je stabilita (zpracování chyb, verifikace kódu, testování na různých úrovních) Pravidelné vývojové cykly a plánování Dobře definovaná rozhraní (APIs) Dokumentace Vývoj produktů Integrace s dalšími technologiemi Zaměření na funkcionalitu integrovaného řešení Uživatelská rozhraní ZRE#1, Honza Černocký 14.2.2014
Ze Speech@FIT do aplikací Phonexia s.r.o. Existuje od r. 2006 Vývoja komercializace modulů a systémů pro dolování informací z řeči pro Zákazníky z oblasti bezpečnosti a obrany Call Centra http://phonexia.com/ - kontakt: Petr Schwarz, Ph.D. Podporováno reklamní agenturou: ZRE#1, Honza Černocký 14.2.2014
Ze Speech@FIT do aplikací ReplayWell s.r.o Existuje od r. 2011 Vývoj a komercializace systému pro prohlížení přednášek pro konference a výuku http://www.superlectures.com/ - kontakt: Igor Szöke, Ph.D. ZRE#1, Honza Černocký 14.2.2014