Rozpoznawanie mówców metodą i-wektorów/plda na urządzeniach mobilnych

Podobne dokumenty
Automatyczne rozpoznawanie mowy - wybrane zagadnienia / Ryszard Makowski. Wrocław, Spis treści

Metody systemowe i decyzyjne w informatyce

Seminarium DSP AGH. Przegląd technik zwiększających wydajność obliczeniową algorytmów weryfikacji mówcy opartych o modelowanie GMM-UBM oraz HMM

Rozpoznawanie obrazów

Krzysztof Ślot Biometria Łódź, ul. Wólczańska 211/215, bud. B9 tel

Rozpoznawanie obrazów

AKUSTYKA MOWY. Podstawy rozpoznawania mowy część I

ANALIZA SEMANTYCZNA OBRAZU I DŹWIĘKU

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

SPOTKANIE 6: Klasteryzacja: K-Means, Expectation Maximization

PRACA DYPLOMOWA INŻYNIERSKA

Fuzja sygnałów i filtry bayesowskie

Dokumentacja. Kalibracja parametrów modelu Hestona za rozszerzonego filtra Kalmana. Mikołaj Bińkowski Wiktor Gromniak

MobiBits: Multimodalna baza danych zebrana za pomocą urządzeń mobilnych

Sposoby opisu i modelowania zakłóceń kanałowych

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka Adaline.

Podstawowe modele probabilistyczne

Metody systemowe i decyzyjne w informatyce

Rozkłady wielu zmiennych

ANALIZA SEMANTYCZNA OBRAZU I DŹWIĘKU

ROZPOZNAWANIE GRANIC SŁOWA W SYSTEMIE AUTOMATYCZNEGO ROZPOZNAWANIA IZOLOWANYCH SŁÓW

dr inż. Jacek Naruniec

5. Analiza dyskryminacyjna: FLD, LDA, QDA

Pattern Classification

Metoda weryfikacji mówcy na podstawie nieuzgodnionej wypowiedzi

WYKŁAD 4. Podejmowanie decyzji dla modeli probabilistycznych Modelowanie Gaussowskie. autor: Maciej Zięba. Politechnika Wrocławska

SPOTKANIE 3: Regresja: Regresja liniowa

System do sterowania ruchem kamery przemysłowej za pomocą komend głosowych

Rozpoznawanie mówcy i emocji

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka ADALINE.

LABORATORIUM PODSTAW TELEKOMUNIKACJI

Metody systemowe i decyzyjne w informatyce

Biometryczna Identyfikacja Tożsamości

Pomiary w technice studyjnej. TESTY PESQ i PEAQ

Rozpoznawanie obrazów

Optymalizacja ciągła

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I

Rozpoznawanie obrazów

Monitorowanie i Diagnostyka w Systemach Sterowania na studiach II stopnia specjalności: Systemy Sterowania i Podejmowania Decyzji

P R Z E T W A R Z A N I E S Y G N A Ł Ó W B I O M E T R Y C Z N Y C H

Sieć przesyłająca żetony CP (counter propagation)

WYKŁAD 3. Klasyfikacja: modele probabilistyczne

Optymalizacja systemów

Metoda największej wiarygodności

Metody systemowe i decyzyjne w informatyce

Transformaty. Kodowanie transformujace

Biometryczna Identyfikacja Tożsamości

SYSTEM BIOMETRYCZNY IDENTYFIKUJĄCY OSOBY NA PODSTAWIE CECH OSOBNICZYCH TWARZY. Autorzy: M. Lewicka, K. Stańczyk

DYSKRETNA TRANSFORMACJA FOURIERA

Komputerowa Analiza Danych Doświadczalnych

Algebra Liniowa 2 (INF, TIN), MAP1152 Lista zadań

Metody systemowe i decyzyjne w informatyce

Algorytm do rozpoznawania człowieka na podstawie dynamiki użycia klawiatury. Paweł Kobojek, prof. dr hab. inż. Khalid Saeed

Biometryczna Identyfikacja Tożsamości

Jądrowe klasyfikatory liniowe

ANALIZA SZYBKIEJ IDENTYFIKACJI MÓW- CY IMPLEMENTOWANYCH W ŚRODOWI- SKU MATLAB ORAZ CODE COMPOSER STUDIO

Promotor: dr Marek Pawełczyk. Marcin Picz

Rozdział 2: Metoda największej wiarygodności i nieliniowa metoda najmniejszych kwadratów

Kodowanie transformacyjne. Plan 1. Zasada 2. Rodzaje transformacji 3. Standard JPEG

Sterowanie napędów maszyn i robotów

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Macierze. Rozdział Działania na macierzach

1 Klasyfikator bayesowski

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

KADD Metoda najmniejszych kwadratów funkcje nieliniowe

Algorytmy estymacji stanu (filtry)

Metody eksploracji danych Laboratorium 2. Weka + Python + regresja

Agnieszka Nowak Brzezińska Wykład III

Wstęp do Metod Systemowych i Decyzyjnych Opracowanie: Jakub Tomczak

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm

Analiza obrazów - sprawozdanie nr 2

Zaawansowane algorytmy DSP

Algorytmy, które estymują wprost rozkłady czy też mapowania z nazywamy algorytmami dyskryminacyjnymi.

Procesy stochastyczne

FFT i dyskretny splot. Aplikacje w DSP

Rozpoznawanie obrazów

Algorytm grupowania danych typu kwantyzacji wektorów

Analiza korespondencji

Metody systemowe i decyzyjne w informatyce

Metody eksploracji danych 2. Metody regresji. Piotr Szwed Katedra Informatyki Stosowanej AGH 2017

KATEDRA SYSTEMÓW MULTIMEDIALNYCH. Inteligentne systemy decyzyjne. Ćwiczenie nr 12:

Agnieszka Nowak Brzezińska Wykład III

Hierarchiczna analiza skupień

Biometryczna Identyfikacja Tożsamości

Opis efektów kształcenia dla modułu zajęć

Modele zapisane w przestrzeni stanów

Mikroekonometria 3. Mikołaj Czajkowski Wiktor Budziński

Inteligentna analiza danych

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

Spis treści. I. Skuteczne. Od autora... Obliczenia inżynierskie i naukowe... Ostrzeżenia...XVII

CYFROWE PRZETWARZANIE SYGNAŁÓW

1.7. Eksploracja danych: pogłębianie, przeszukiwanie i wyławianie

Metody statystyczne kontroli jakości i niezawodności Lekcja II: Karty kontrolne.

SYMULACJA KOMPUTEROWA SYSTEMÓW

Procesy stochastyczne

Rozwiązywanie równań liniowych. Transmitancja. Charakterystyki częstotliwościowe

Implementacja filtru Canny ego

Stanisław Cichocki. Natalia Nehrebecka

Elementy modelowania matematycznego

Spis treści Wstęp Estymacja Testowanie. Efekty losowe. Bogumiła Koprowska, Elżbieta Kukla

Transkrypt:

Rozpoznawanie mówców metodą i-wektorów/plda na urządzeniach mobilnych Autor: Radosław Białobrzeski Opiekun: prof. Andrzej Pacut Seminarium Zespołu Biometrii i Uczenia Maszynowego, 24.10.2017 1/27

1. Cel pracy 2. Rozpoznawanie mówców 3. Przetwarzanie wstępne i ekstrakcja cech 4. Modele tła 5. Modelowanie całkowitej zmienności 6. PLDA 7. Badania 8. Implementacja mobilna 9. Podsumowanie 2/27

Cel pracy Cel pracy Celem pracy jest system realizujący niezależne od tekstu, elastyczne rozpoznawanie tożsamości na urządzeniu mobilnym w oparciu o nagrania głosu. W systemie wykorzystano nowoczesne metody rozpoznawania na bazie i-wektorów/plda i zaimplementowano go w postaci przenośnej biblioteki RVLib. Wyniki na dwóch bazach danych porównano z metodami naukowymi oraz jedną komercyjną. 3/27

Rozpoznawanie mówców Znaczenie rozpoznawania mówców Mobilne uwierzytelnianie z użyciem cech biometrycznych staje się codziennością: prawie 700 dostępnych modeli smartfonów z czytnikiem odcisku palca 1, Apple Pay wspierający rozpoznawanie twarzy, postępująca normalizacja (m.in. ISO i NIST). Biometria głosu jako łatwa w użyciu, akceptowalna i coraz dokładniejsza to doskonałe narzędzie do mobilnego uwierzytelniania biometrycznego. 1 https: //www.91mobiles.com/list-of-phones/phones-with-fingerprint-scanner 4/27

Rozpoznawanie mówców Rozwój dziedziny Na przestrzeni lat modelowanie mówców pokonało długą drogę w kierunku maksymalnej generalizacji i niewrażliwości na zakłócenia: 1. Kwantyzacja wektorowa (Soong, 1985). 2. Modele mieszanin gaussowskich (Reynolds, 1995). 3. Adaptowane modele mieszanin gaussowskich (Reynolds, 2000). 4. Modele i-wektorowe (Kenny, 2008). 5. PLDA (Kenny, 2010). 6. Głębokie sieci neuronowe (mowa - Hinton, 2012). 5/27

Rozpoznawanie mówców Struktura ramowa systemu System powinien być możliwie efektywny, a przy tym nie obciążać nadmiernie procesora urządzenia mobilnego. Zdecydowano się na podejście i-wektorowe/plda. 6/27

Przetwarzanie wstępne i ekstrakcja cech Detekcja mowy - SSVAD Przy założeniu, że zakłócenia są stacjonarne (tzn. ich charakterystyka nie zmienia się w czasie), detekcję mowy zrealizować można w następujący sposób: 1. Oszacuj średnie spektrum częstotliwościowe szumu na podstawie pierwszej 0.5s nagrania. 2. W każdej ramce (aplikować okno Hamminga) sygnału: 2.1 Oblicz SNR a posteriori dla ramki. 2.2 Odejmij spektrum szumu od spektrum sygnału zaszumionego odwrotnie proporcjonalnie do SNR. Jeśli wystąpiło szczególnie niskie SNR - ustal w ramce stały, niewielki szum. 3. Zrekonstruuj sygnał przy pomocy odwrotnej transformaty Fouriera i odwrotnego okna Hamminga. 4. Ustal próg detekcji na podstawie średniej amplitudy ramek tła i szczytowych. 5. Porównaj wygładzone amplitudy ramek z progiem i określ ramki zawierające mowę. 7/27

Przetwarzanie wstępne i ekstrakcja cech Ekstrakcja cech MFCC 1. Podziel sygnał na ramki i przemnóż je przez okno Hamminga. 2. Wykonaj FFT na ramkach. 3. Wyznacz spektrogram - podnieś do kwadratu moduły współczynników rozwinięcia Fouriera. 4. Zaaplikuj trójkątne Mel-filtry. 5. Oblicz odwrotną transformatę Fouriera z logarytmów współczynników Mel-częstotliwościowych. 1 0.8 0.6 0.4 0.2 0 0 1000 2000 3000 4000 5000 6000 7000 8000 8/27

Przetwarzanie wstępne i ekstrakcja cech Normalizacja danych Aby zapewnić lepsze warunki numeryczne oraz sprowadzić wektory cech MFCC bliżej rozkładów normalnych (dalej korzysta się z GMM), należy je normalizować: Dla każdego wektora MFCC: 1. Oblicz średnie wartości współczynników i ich odchylenia dla okna o szerokości n. 2. Odejmij od wektora średnie i podziel przez odchylenia standardowe. 9/27

Modele tła Modele tła GMM-UBM Podstawą modelowania mówców 2.5 jest tzw. model tła, który zwykle jest modelem mieszanin 2 1.5 gaussowskich (GMM) nauczonym 1 na zbiorze nagrań repre- zentatywnych dla zbioru użytkowników systemu. Sposób uczenia - popularny algorytm EM, maksymalizujący w każdej iteracji warunkowe wartości oczekiwane funkcji wiarygodności. 0.5 0-0.5-1 -1.5-2 -2.5-2 -1 0 25 cecha MFCC 1 2 26 cecha MFCC 10/27

Modele tła Modele tła - problem płci Typowo uczy się odmienne modele dla kobiet i mężczyzn. Najczęściej powoduje to znaczną poprawę jakości modelu. Model mieszany 26 cecha MFCC 2 1 0-1 -2-2 0 2 y 2 1 0-1 -2-2 0 2 25 cecha MFCC y 2 1 0-1 -2-2 0 2 11/27

Modelowanie całkowitej zmienności Modelowanie całkowitej zmienności Superwektor średnich modelu GMM zależnego od mówcy wyraża się sumą superwektora średnich z modelu tła oraz macierzy całkowitej zmienności wymnożonej przez tzw. i-wektor. I -wektor to punkt w podprzestrzeni największej zmienności mówców rozpinanej przez kolumny T. µ s = µ UBM + T x Macierz T wyznacza się, korzystając z algorytmu EM. Część jego operacji bez zmian wykorzystuje się do ekstrakcji i-wektorów. 12/27

Modelowanie całkowitej zmienności Normalizacja i-wektorów Już na tym etapie i-wektory nadają się do klasyfikacji (choćby dystansem kosinusowym), jednak należy wykonać kilka operacji, aby przystosować je do pracy z PLDA: 1. Centrowanie wokół średniej. 2. Normalizacja długości (dzielenie przez normę euklidesową). 3. Wybielanie, czyli dekorelacja i sprowadzanie macierzy kowariancji do postaci jednostkowej. 13/27

PLDA PLDA - Zasada działania Każdy i-wektor związany jest z oszacowaniem superwektora średnich modelu GMM zależnego od danego mówcy, z czym związana jest istotna niepewność pomiarowa. Ponadto, całkowita zmienność to także zmienność kanałów. W przypadku sygnałów mowy szczególnie pomocna okazuje się probabilistyczna liniowa analiza dyskryminacyjna (PLDA): x ij = µ + Fh i + Gw ij + ɛ ij P(x ij h i, w ij, θ) = N x [µ + Fh i + Gw ij, Σ] 14/27

PLDA Różne warianty W praktyce upraszcza się modele PLDA, wciągając zmienność wewnątrzklasową do macierzy kowariancji - wcześniej tylko diagonalnej, teraz pełnej. Model generatywny przyjmuje wtedy postać: x ij = µ + Fh i + ɛ ij P(x ij h i, w ij, θ) = N x [µ + Fh i, Σ] Dokładnie zapisany algorytm EM dla tej postaci PLDA - Sizov, A. (2014) Unifying Probabilistic Linear Discriminant Analysis Variants in Biometric Authentication 15/27

PLDA Ocenianie podobieństwa Prawdopodobieństwo, z jakim dwa i-wektory należą do jednej klasy to: H 0 - ta sama klasa, H 1 - różne (jakiekolwiek) klasy r lin (x 1, w t ) = r log (x 1, x t ) = x T 1 P(w 1, x t H 0 ) P(w 1 H 1 )P(x t H 1 ) [ x T 1 x T t [ Σ + FF T ] 1 x1 x T t ] [ Σ + FF T FF T FF T Σ + FF T [ ] Σ + FF T 1 xt + C ] 1 [ ] x1 x t 16/27

PLDA Wymagające założenia modelu Założenie dot. i-wektorów x N (...) nie jest spełnione nawet po normalizacji. Ponadto, do porównań N:1 wykorzystywane jest założenie o niezależności i-wektorów referencyjnych. Należy więc porównywać i-wektory 1:1 i agregować wyniki porównań jednej osoby. Niestety, x 1 x 2 = Er(x 1 ) Er(x 2 ) i Er 2 (x 1 ) Er 2 (x 2 ). Należy zatem normalizować wyniki. 17/27

PLDA Normalizacja symetryczna - modyfikacja Schemat dwuwymiarowej kohortowej normalizacji symetrycznej s-norm: r norm (x i,j ) = r(x i,j) µ i, σ i, + r(x i,j) µ,j σ,j. Można go zmodyfikować (s -norm), aby kolejne składniki sumy były obliczane sekwencyjnie, jako funkcje wyników poprzednich kroków. Otrzymuje się lepsze upodobnienie do siebie średnich i wariancji r(x) dla danych x: bez norm. s-norm s -norm σ( r) 4.39 0.22 0.0 σ(s 2 (r)) 60.59 0.57 0.0 18/27

Badania Bazy danych W pracach wykorzystywano dwie bazy danych: MOBIO (konkurs ICB2013) - uczenie, testowanie. MobiBits (baza własna)- testowanie. W bazie MobiBits znajduje się prawie 5 godzin nagrań głosu pracowników NASK. Baza była pobierana latem 2017. Dane zbierano z użyciem smartfona Huawei P9 Lite w ramach czterech sesji - każda sesja miała swój indywidualny charakter. 19/27

Badania Dobór hiperparametrów Hiperparametry systemu dobierano przeszukiwaniem siatki parametrów (ang. grid search) i wyznaczaniem współczynnika EER. Uczono modele niezależne od płci z powodu niewielkiego zróżnicowania danych uczących. Dobrano trzy zestawy hiperparametrów, maksymalizujące efektywność dla każdej z baz i zastosowania mobilnego. Bardzo dobre wyniki pokazują zarówno możliwość dopasowania systemu do bardzo szczególnego typu danych, jak i osiągnięcia satysfakcjonującej generalizacji i wydajności. 20/27

Badania Dane konkursowe - ICB2013 Porównanie na zbiorze DEV bazy ICB2013 dla obu płci. Hiperparametry: 128 komponentów GMM-UBM, 64 kolumny w TVM, 64 kolumny w PLDA. ATVS CDTA GIAPSI EHU EER M/F 14.88/16.83 12.73/19.47 9.68/11.59 11.31/17.93 IDIAP M-T Phonexia RUN EER M/F 9.96/12.01 10.19/11.43 9.60/8.36 24.64/25.4 Własny EER M/F 12.52/8.65 21/27

Badania Dane własne - MobiBits Porównanie na sesjach 3 i 4 bazy MobiBits. Porównanie z Neurotechnology VeriSpeak 10.0 (339 859 /stanowisko). Hiperparametry: 256 komponentów GMM-UBM, 64 kolumny w TVM, 64 kolumny w PLDA. 1 CMC (MobiBits) 0.8 0.6 0.4 0.2 VeriSpeak Własny VeriSpeak EER 10.94% 13.60% Rank 1 54% 78.8% Rank 5 84.6% 92.9% 0 0 10 20 30 40 50 22/27

Implementacja mobilna C# i Math.NET Numerics Poza skryptami pakietu MATLAB, system rozpoznawania mowy zaimplementowano w postaci biblioteki DLL języka C#. Wykorzystano bibliotekę Math.NET Numerics - bibliotekę do obliczeń numerycznych ogólnego przeznaczenia. Niestety, biblioteka Math.NET ma liczne wady. Wydajność platformy jest niska, a kod słabo zoptymalizowany. 23/27

Implementacja mobilna Biblioteka RVLib Utworzona biblioteka jest przenośna (Windows, Linux, Android, ios, MacOS) i wykorzystuje modele nauczone w środowisku MATLAB. Funkcje biblioteki: odczyt nagrań, detekcja mowy, pozyskiwanie i-wektorów, porównywanie i-wektorów, agregacja i normalizacja wyników. Utworzono również aplikację demonstracyjną. 24/27

Implementacja mobilna Aplikacja demonstracyjna Prezentacja zewnętrzna. Model - zaledwie 64 komponenty GMM-UBM, 32 kolumny w TVM i 32 kolumny w PLDA. Jakość rozpoznawania - wysoka. 25/27

Podsumowanie Podsumowanie Zaimplementowano działający system rozpoznawania mówców, również w wersji mobilnej. System nie ma wielkich wymagań sprzętowych ani pamięciowych, jednak cechuje się bardzo dobrą jakością rozpoznawania. Przyszłe prace: Detekcja mowy - niewrażliwy detektor oparty o sieci splotowe. Normalizacja wyników - analityczne obliczanie wartości oczekiwanej i wariancji porównań danego i-wektora ze wszystkimi innymi. Wyeliminowanie zapotrzebowania na kohorty. Optymalizacja - próby modyfikacji kodu Math.NET, aby obliczenia probabilistyczne były wykonywane szybciej. 26/27

Podsumowanie Bibliografia Kasprzak, W. (2009) Rozpoznawanie obrazów i sygnałów mowy Mak, M., Yu, H. (2013) Robust Voice Activity Detection for Interview Speech in NIST Speaker Recognition Evaluation Reynolds, D.A., Rose, R.C. (1995) Robust Text-Independent Speaker Identification Using Gaussian Mixture Speaker Models Kenny, P. (2005) Eigenvoice Modelling With Sparse Training Data Shepstone, S.E. et al. (2016) Total Variability Modelling using Source-specific Priors Prince, S.J.D., Elder, J.H. (2008) Probabilistic Linear Discriminant Analysis for Inferences About Identity Sizov, A. et al. (2014) Unifying Probabilistic Linear Discriminant Analysis Variants in Biometric Authentication Rajan P. et al. (2014) From Single to Multiple Enrollment i-vectors: Practical PLDA Scoring Variants for Speaker Verification 27/27