Wystąpienie będzie szybkim wprowadzeniem do zagadnień rozpoznawani mowy i mówców oraz syntezy mowy, ze szczególnym naciskiem na projekty obecnie realizowane na AGH w tych tematach. Przedstawionych zostanie kilka ciekawostek związanych z historią technologii mowy oraz językiem polskim. Omówione zostaną różne dostępne zasoby komputerowe dotyczące języka polskiego. Zaprezentowane będą również podstawy parametryzowania mowy i jej modelowania, jak i przetwarzania języka naturalnego na potrzeby technologii mowy. Pokazane zostaną różne przykłady zastosowań dla języka polskiego jak i angielskiego.
4. Pierwsze syntezatory mowy
1779 - Christian Kratzenstein - urządzenie
umożliwiające generowanie dźwięków
przypominających 5 różnych głosek
Równolegle, nad
swoją akustycznomechaniczną
maszyną imitującą
mowę pracował
Wolfgang von
Kempelen
4
7. REX - 1920
Przymocowany do
płytki reagującej obrotem na
drgania o częstotliwości 500
[Hz] odpowiadającej
między innymi głosce „e”.
Przy tej częstotliwości
pojawiał się rezonans, który
odcinał prąd, wypychając
psa z budy. W ten sposób
zabawka reagowała na
imię Rex.
7
8. VOCODER – Bell Labs
Posiadał klawiaturę i mógł między innymi syntezować
mowę. Służył także do kodowania mowy na potrzeby
transmisji. Działał w oparciu o bank filtrów.
Z urządzenia
najprawdopodobniej korzystali
Churchill i Roosevelt do
przeprowadzania
transkontynentalnych
konferencji. Po wojnie zaczęto
wykorzystywać ulepszone
urządzenia oparte na
VOCODERZE w muzyce.
8
9. Bell Labs digit recogniser - 1952
• Analiza spektrum podzielonego na 2 pasma
częstotliwości (powyżej i poniżej 900 Hz).
• Rozpoznawał cyfry wypowiadane po angielsku z
błędem mniejszym niż 2%, zakładając, że
użytkownik nie zmienił położenia ust względem
mikrofonu pomiędzy fazą ustalania parametrów
głosu a testowaniem.
9
14. Podstawowe technologie mowy
•
•
•
•
•
•
•
•
Automatyczne rozpoznawanie mowy
Synteza mowy
Rozpoznawanie mówcy
Rozpoznawanie emocji
Generowanie emocji
Synteza z ruchem ust
Tłumaczenie mowa-mowa
Aplikacje w nauce języków obcych
14
15. Zalety technologii mowy
• Naturalność (nie wymagają przeszkolenia)
• Pozostawiają swobodę rąk i oczu
• Szybkie (3 razy szybciej mówimy niż
piszemy na klawiaturze)
• Ekonomiczność (tekst zajmuje dużo mniej
bajtów niż sygnał akustyczny)
Szczególnie istotne dla osób
nieprzyzwyczajonych do komputerów,
niepełnosprawnych oraz w zastosowaniach
telefonicznych
15
20. Możliwe zastosowania ASR
• Głównie jako wejście
– Proste komendy i sterowanie
– Krótkie wprowadzanie danych (np. przez
telefon)
– Dyktowanie
• Interaktywne (z rozumieniem)
– Punkty informacyjne
– Przetwarzanie transakcji
– Wirtualni doradcy
20
21. Zakres mowy i słuchu człowieka
(Tadeusiewicz, 1988)
21
22. Cechy systemów mowy
•
•
•
•
•
Mowa izolowana lub ciągła
Czytana lub spontaniczna
Zależny lub niezależny od mówcy
Mały (20 słów) lub duży (>50 000) słownik
Model językowy stały lub zależny od
Miara nieokreśloności
kontekstu
k
H
pi log 2 pi
• Perpleksja (entropia) wypowiedzi
i 1
2^H
• SNR (<10 dB niski, >30 dB wysoki)
• Sposób rejestracji (telefon, komputer,
mikrofon z niwelowaniem szumu)
22
23. Fonem i trifon
• Pojęcie fonemu, jako pierwszy wprowadził
Jan Niecisław Ignacy Baudouin de
Courtenay. Obecnie fonem najczęściej
definiuje się jako najmniejszą
rozróżnialną jednostkę mowy. Szerzej
znane pojęcie głoski, opisuje realizację
konkretnego fonemu w jakiejś
wypowiedzi. Zbiór fonemów, opisujących
dany język całościowo jest więc alfabetem
fonetycznym.
• Trifon to fonem w lewym i prawym
kontekście, a NIE trzy fonemy
23
27. Dialekt
●
●
●
Dialekt charakteryzują
swoiste cechy fonetyczne,
leksykalne, semantyczne i
fleksyjne odróżniające go od
ogólnonarodowego języka,
używanego przez ogół
społeczności
Zespół gwar ludowych
używanych na większym
obszarze, termin nadrzędny
w stosunku do gwary ludowej
Dialekt jest pojęciem
szerszym
a gwara
●
Mówiony wariant
terytorialny (lokalny)
języka narodowego
używany na stosunkowo
niewielkim terenie
29. Język kaszubski
●
Od 2005 roku język regionalny z możliwością
wprowadzenia do urzędów jako język
pomocniczy
●
W województwie pomorskim
●
Można zdawać maturę z języka kaszubskiego
●
Inne znaki fonetyczne niż w języku polskim
●
Spółgłoski które w wielu gwarach polskich
ulegają mazurzeniu w kaszubszczyźnie
upodabniają się do ś, ź, ć, dź - kaszubienie
31. Znaczenie korpusów
• Większość metod w przetwarzaniu
mowy opiera się na statystykach =>
• Jakość i wielkość korpusów jest
kluczowa dla jakości systemów
31
32. Korpus a zbiór danych
•
•
•
•
Przetwarzalny przez maszyny
Autentyczne dane językowe
Reprezentatywny
Zwykle anotowany (transkrypcje
do mowy, funkcje gramatyczne do
tekstów, osoby wypowiadające się
itd.)
32
34. Anotacje
• Wykonanie wszelkiego rodzaju anotacji jest
procesem bardzo czasochłonnym i uciążliwym
(1 min mowy -> 20 min pracy) =>
• Korpusy są dużo kosztowniejsze niż ich nie
przetworzona zawartość
• Stosuje się coraz częściej także podejścia
automatyczne, bez anotacji przez ludzi
(Google)
34
36. Polskie korpusy mowy
•Grocholewski CORPORA
•Jurisdic
•GlobalPhone
•Luna
•SpeechDat(E)
•EPPS European Parliament corpus
•Szklanny corpus (PJWSTK)
•AGH corpus
36
37. Polskie korpusy tekstów
IPI PAN (z POS tagami)
NKJP
Rzeczpospolita
Literatura
Transkrypcje Sejmu i zjazdów Solidarności
Nazwiska (Lista Wildsteina, PESEL, Korporacje)
Notatki PAP
Wikipedia
Inne strony (crawling)
http://clip.ipipan.waw.pl/LRT
37
40. Inne typy korpusów
• Wielojęzyczne (do uczenia tłumaczeń)
• Wielomodalne (np. audiovideo)
• Emocjonalne (z pracy mgr inż. Magdaleny
Igras)
• „medyczne”
40
41. Korpusy Ultrasonograficzne
Thomas Hueber 1, Elie-Laurent Benaroya2,
Bruce Denby 3,2, Gérard Chollet
1GIPSA-lab,
2Sigma Laboratory, ESPCI Paristech,
3Université Pierre et Marie Curie, Paris,
France
4LTCI/CNRS, Telecom ParisTech
41
45. Korpusy mowy i tekstów – czym się
kierować przy wyborze
•Jakość i wielkość – potrzebna optymalna
decyzja
•Format nagrań lub tekstów
•Anotacje
•Zgodność z tekstem
•Szczegółowość (zdania, słowa, fonemy)
•Dodatkowe informacje
•Kim byli mówcy
•O czym jest korpus
•Czy mówcy powtarzają te same wypowiedzi
•Cena (od 2000 Euro do 50 000 Euro)
45
46. Słowniki języka polskiego
• Synonimy Open Office http://synonimy.ux.pl/,
• Wielki Słownik Języka Polskiego
http://www.wsjp.pl/,
• Słownik wyrazów obcych i zwrotów obcojęzycznych
Władysława Kopalińskiego
http://www.slownik-online.pl/index.php,
• Wikisłownik http://pl.wiktionary.org/,
• Słownik synonimów i antonimów Piotra
Żmigrodzkiego
http://leksykony.interia.pl/synonim,
• Słownik Języka Polskiego http://sjp.pl/,
• N-gramowy słownik frekwencyjny języka polskiego
46
47. Słowniki do rozpoznawania mowy …
… zawsze będą mieć
transkrypcję fonetyczną.
może moZe
Morze moZe
tak tak
tak tag
47
48. Wybór silnika bazy danych
Potrzeby:
- Duża szybkość odczytu
- Odpowiednia licencja
- Małe zużycie zasobów
- Prostota
- Łatwość „instalacji” (brak serwera usług)
- Przenośność danych
Dawid Skurzok
49. SQL vs noSQL
SQL – Structured Query Language – relacyjne
bazy danych (MySQL, Ms SQL, Oracle, SQLite
...)
NoSQL - „not only SQL” - wszystkie inne –
key-value store, document store, graph DB,
object DB, tabular ,… (BerkeleyDB, BigTable,
CouchDB, …)
Dawid Skurzok
50. Wybór silnika bazy danych
Dostępność
Relational
Key-Value
Tabular
Document
Tokyo Cabinet,
CouchDB,
Cassandra
RDBMS (MySQL,
Postgres, MS SQL)
Wybierz dwa!
Spójność
BerkeleyDB,
BigTable (Google),
MongoDB
„Podzielność”
Dawid Skurzok
51. Wybór silnika bazy danych
Dostępność
Tylko czytanie
danych
Wybierz dwa!
Spójność
„Podzielność”
Dawid Skurzok
52. Wybór silnika bazy danych
Dostępność
Tylko czytanie
danych
Wybierz dwa!
Spójność
Zapis danych
jednowątkowo
„Podzielność”
Dawid Skurzok
53. Wybór silnika bazy danych
Dostępność
Tylko czytanie
danych
Wybierz dwa!
Spójność
Zapis danych
jednowątkowo
„Podzielność”
Dane przechowywane
tylko lokalnie Dawid Skurzok
54. Wybór silnika bazy danych
Dostępność
Tylko czytanie
danych
Spójność
Zapis danych
jednowątkowo
HODB
key-value store
(DSP AGH)
- Duża szybkość odczytu
- Własna licencja
- Prosta implementacja
„Podzielność”
Dane przechowywane
tylko lokalnie Dawid Skurzok
55. Testowane silniki baz danych
SQLite – lekki silnik relacyjnych baz danych
BerkeleyDB – nierelacyjna baza danych
przechowuje dane w oparciu o schemat kluczwartość
HODB – własna implementacja bazy danych w
oparciu o tablicę mieszającą (hash table)
Dawid Skurzok
58. Czym jest HTK
• Zbiór programów implementujących Niejawne
Łańcuchy Markowa - Hidden Markov Models
(HMMs)
• ASR, synteza mowa, rozpoznawanie liter, badania
nad sekwencjami DNA
• Analiza mowy, wyćwiczenie HMM, testowanie i
analiza rezultatów
• HTK dopasowuje hipotezę każdego rozpoznania
do
jednego
z
elementów
słownika
przygotowanego przez użytkownika
• Porównanie transkrypcji fonetycznych słów
58
70. Klasyfikowanie i dekodowanie w
ASR poza HMM
• Klasyfikator k-NN
• Artificial Neural Networks (ANN),
Sztuczne sieci neuronowe
• Support Vector Machine (SVM), Maszyna
wektorów nośnych
• Dynamic Bayesian Networks (DBN),
Dynamiczne sieci Bayesa
• Graphical Model Toolkit (GMTK)
• Maximum Entropy Direct Model
70
• Conditional Random Fields (CRF)
87. Analizator morfologiczny / POS tager
Proces zaznaczania słów w tekście jako
odpowiadających szczególnym częściom mowy,
oparty zarówno na ich definicjach, jak i ich
kontekstach.
87
88. 1-gramy słów (wybrane korpusy)
1) się 1 780 825 (2,6%)
9) że 760 078
17) tak 279 877
2) i 1 632 596 (2,4%)
10) a 479 713
18) za 263 700
3) w 1 569 027 (2,3%)
11) o 396 011
19) od 225 843
4) nie 1 445 832 (2,1%)
12) jak 368 386
20) jego 219 587
5) na 1 283 268 (1,9%)
13) ale 343 482
21) go 217 036
6) z 1 116 819 (1,6 %)
14) po 330 381
22) już 201 735
7) do 816 874 (1,2 %)
15) co 329 270
23) tym 199 894
8) to 801 472 (1,2 %)
16) jest 302 011
24) czy 196 565
88
89. 2-gramy słów (wybrane korpusy)
1) się w 116 446 (0,17%) 10) to nie 39 087 19) nie jest 31 615
20) a potem 31 196
2) się na 93 751 (0,14%) 11) się i 38 772
3) się z 83 610 (0,12%)
12) się nie 38 622 21) nigdy nie 31 082
4) się do 83 524 (0,12%) 13) i nie 38 177
22) mu się 27 209
5) się że 57 126 (0,08%)
14) ale nie 35 241 23) po prostu 26 047
6) że nie 50 222 (0,07%)
15) na to 34 259
24) w tej 25 461
7) w tym 48 035 (0,07%) 16) że to 34 171 25) to co 24 661
8) nie ma 43 633 (0,06%) 17) mi się 33 441 26) w końcu 23 863
9) o tym 42 041 (0,06%) 18) nie było 31682 27) co się 23 762
89
90. 3-gramy słów (wybrane korpusy)
1) w ten sposób 10 119 (0,015%)
2) na to że 8 619 (0,012%)
3) w tej chwili 8 121 (0,012%)
10) zwrócił się do 5 349
11) wydaje mi się 4 855
12) od czasu do 4 742
4) w każdym razie 7 587 (0,011%) 13) się z nim 4 609
5) po raz pierwszy 7 266 (0,010%) 14) to nie jest 4 538
6) mi się że 6 395 (0,009%)
15) czasu do czasu 4 470
7) sobie sprawę że 5 514 (0,008%) 16) w tym momencie 4 455
8) mam nadzieję że 5 499 (0,008%) 17) po drugiej stronie 4 445
9) w takim razie 5 462 (0,008%)
18) w ogóle nie 4 309
90