*

Historia Sztucznej InteligencjiArtificial Intelligence Experts

Systemy rozpoznawania mowy i rozumienie

Przetwarzanie mowy

Opisane już systemy NLP wymagały, aby ich angielski był wprowadzany w formacie tekstowym. Istnieje jednak kilka przypadków, w których rozmowa z komputerem byłaby lepsza niż pisanie na raz. Ludzie zazwyczaj mówią szybciej niż potrafią pisać (około trzech słów na sekundę w porównaniu z jednym słowem na sekundę) i mogą mówić podczas ruchu. Ponadto mówienie nie wiąże rąk ani oczu. Przy omawianiu problemu komputerowego przetwarzania mowy ważne jest, aby wprowadzić pewne rozróżnienia. Jedna dotyczy różnicy między rozpoznaniem izolowanego słowa mówionego a przetwarzaniem ciągłego strumienia mowy. Większość badań nad AI koncentruje się na drugim i trudniejszym z tych problemów. Kolejnym rozróżnieniem jest rozpoznawanie mowy i rozumienie mowy. Przez rozpoznawanie mowy rozumie się proces przekształcania strumienia akustycznego mowy wprowadzonej przez mikrofon i powiązany sprzęt elektroniczny w tekstową reprezentację słów składowych. Proces ten jest trudny, ponieważ wiele strumieni akustycznych brzmi podobnie, ale składa się z zupełnie innych słów. (Rozważmy na przykład wypowiadane wersje "Istnieje wiele sposobów rozpoznawania mowy" i "Istnieje wiele sposobów na zniszczenie ładnej plaży"). Z kolei rozumienie mowy wymaga zrozumienia tego, co się mówi. Można powiedzieć, że wypowiedź należy rozumieć, jeśli wywołuje ona odpowiednie działanie lub odpowiedź, a może to być nawet możliwe bez rozpoznania wszystkich jej słów. Zrozumienie mowy jest trudniejsze niż zrozumienie tekstu, ponieważ istnieje dodatkowy problem przetwarzania kształtu fali mowy w celu wyodrębnienia wypowiadanych słów. Mowa uchwycona przez mikrofon jest przekształcana na sygnał elektroniczny lub przebieg, który można wyświetlić na oscyloskopie. Na poniższym rysunku pokazano przebieg wygenerowany przez osobę mówiącą: "To jest test".



Ten schemat pokazuje amplitudę (napięcie) wykreślonego sygnału mowy w funkcji czasu. Sekcje kształtu fali odpowiadające słowom są oznaczone ramkami u góry diagramu. Pola u dołu pokazują akustyczne elementy tych słów, które nazywane są "telefonami". Zasadniczo telefony to dźwięki odpowiadające samogłosek i spółgłosek. Uważa się, że angielska mowa składa się z około czterdziestu różnych telefonów. Opracowano specjalne alfabety do reprezentowania telefonów. Jednym z nich jest Międzynarodowy Alfabet Fonetyczny (IPA), który zawiera telefony wszystkich znanych języków. IPA używa kilku znaków specjalnych, które nie mają standardowych kodów komputerowych (ASCII). Kolejnym, zawierającym tylko telefony używane w amerykańskim języku angielskim i używającymi tylko standardowych znaków, jest ARPAbet, który został opracowany podczas badań przetwarzania mowy sponsorowanych przez DARPA. Telefony pokazane na ryc. 17.1 używają notacji ARPAbet. Tabela pokazuje telefony ARPAbet i przykładowe słowa je zawierające.



Wczesne systemy rozpoznawania mowy próbowały najpierw podzielić segment fali mowy na telefony składowe, a następnie złożyć telefony w porządki. Aby to zrobić, sygnał mowy został najpierw zdigitalizowany i wyodrębniono różne parametry, takie jak częstotliwość lub wysokość tonu. Sposoby zmiany wartości tych parametrów w czasie wykorzystano do podzielenia kształtu fali na jednostki zawierające telefony. Używając słowników, które łączą wartości parametrów kształtu fali z telefonami i telefonami ze słowami, kształt fali został ostatecznie przekształcony w tekst. Proces ten wydaje się prosty, ale w rzeczywistości jest dość złożony, ponieważ między innymi początki i zakończenia wypowiadanych słów oraz ich składowe telefony nakładają się na siebie w złożone wzory, a ludzie często wymawiają te same słowa na różne sposoby. Na przykład słowo "ty" można wymawiać inaczej w "czy jesteś" [aa r y uw] i "did you" [d ih d jh uh]. Próby rozpoznania mowy rozpoczęły się w Bell Laboratories już w latach 30. XX wieku. W 1952 r. Inżynierowie z Bell Labs zbudowali system rozpoznawania liczb od "zero" do "dziewięć" wypowiadanych przez jeden głośnik. Inne prace wykonano w latach 50. i 60. w RCA Laboratories, w MIT, w Japonii, w Anglii i w Związku Radzieckim Praca przyspieszyła w latach 70. XX wieku, a niektóre z nich opiszę później.

Grupa analityczna rozumiejąca mowę

Larry Roberts, który pod koniec 1966 r. Wyjechał do DARPA jako "główny naukowiec" w biurze technik przetwarzania informacji (IPTO), a później został jego dyrektorem, zaintrygował pomysł budowy systemów, które mogłyby rozumieć mowę. Cordell Green, pełniąc wówczas funkcję porucznika w armii amerykańskiej, został przydzielony do IPTO pod rządami Robertsa na początku 1970 r. I powierzono mu finansowanie i monitorowanie projektów badawczych dotyczących AI. Według Greena Roberts powiedział mu: "Wykonaj studium wykonalności systemu rozpoznającego mowę". A pod koniec marca 1970 roku Green zorganizował spotkanie na Carnegie Mellon University z kilkoma kontrahentami DARPA i innymi zainteresowanymi przetwarzaniem mowy, aby omówić wykonalność rozumienia mowy przez komputer. Uczestnikami spotkania byli badacze z SDC, Lincoln Laboratory, MIT, CMU, SRI i BBN. Na spotkaniu zdecydowano o utworzeniu "grupy analitycznej" w celu oceny stanu techniki i sformułowaniu zaleceń dotyczących uruchomienia dużego projektu wspieranego przez DARPA w zakresie rozumienia mowy. Grupie miał przewodniczyć Allen Newell z CMU. Podczas marcowego spotkania przekonano Robertsa do rozmowy o rodzaju systemu rozumienia mowy, który miał na myśli. Zgodnie z interpretacją uwag przedstawionych w raporcie, Roberts myślał o systemie, który mógłby zaakceptować ciągłą mowę od wielu współpracujących użytkowników, przez telefon, przy użyciu słownictwa 10 000 słów, z mniej niż 10% błędem semantycznym, w kilku przypadkach realnego czasu. Grupa analityczna odbyła swoje pierwsze spotkanie w BBN w dniach 26 i 27 maja 1970 r. Podczas tego spotkania grupa rozważyła niektóre szczególne zadania, w które mógłby się zaangażować system rozumienia. Odpowiadanie na pytania dotyczące zarządzania danymi, odpowiadanie na pytania dotyczące stanu operacyjnego komputera i konsultowanie systemu operacyjnego komputera. Ostatnie spotkanie grupy odbyło się w SDC w Santa Monica w dniu 28 lipca 1970 r. Zaleceniem grupy (w skrócie) było dążenie do systemu, który byłby w stanie zaakceptować nieprzerwaną mowę od wielu współpracujących mówców "ogólnego dialektu amerykańskiego" przez mikrofon dobrej jakości (nie przez telefon), przy użyciu wybranego słownictwa złożonego z 1000 słów (a nie 10 000 słów), z "wysoce sztuczną składnią", obejmującą zadania takie jak zarządzanie danymi lub status komputera (ale bez konsultacji), z mniejszym niż 10% błędem, kilka razy w czasie rzeczywistym, i być możliwe do wykazania w 1976 (nie 1973) z umiarkowanym szansa na sukces. Raport końcowy grupy został sporządzony po spotkaniu, dostarczony do DARPA i ostatecznie opublikowany w 1973 roku. Chociaż wcześniej wiele badań dotyczących przetwarzania mowy przez komputer (ładnie podsumowane w raporcie grupy analitycznej), nie wszyscy byli optymistami co do sukcesu . Jednym z niewiadomych był John R. Pierce, badacz z Bell Laboratories, gdzie już wiele pracy nad rozpoznawaniem mowy miało miejsce. W 1969 r. Pierce napisał list do Journal of Acoustical Society of America, w którym stwierdził, że większość ludzi pracujących nad mową

"zachowywało się jak szaleni naukowcy i niewiarygodni inżynierowie. Typowy rozpoznawca wpada mu do głowy, że może rozwiązać problem".

W tym samym liście napisał również, że

"… wydajność byłaby nadal bardzo ograniczona, chyba że urządzenie do rozpoznawania będzie rozumieć, co mówi się w jakimś sensie o rodzimym języku mówionym (to znaczy lepiej niż obcokrajowiec, który zna język). Jeśli tak, to czy ludzie powinni kontynuować prace nad rozpoznawaniem mowy? Być może to decyzja należy do ludzi w tej dziedzinie."

Program badawczy dotyczący rozumienia mowy DARPA

Praca w BBN

SPEECHLIS był pierwszym systemem rozumienia mowy opracowanym w BBN. Został zaprojektowany, aby odpowiadać na pytania mówione na temat bazy danych skał księżycowych (tej używanej we wcześniejszym systemie LUNAR BBN). Był raczej powolny i nie był systematycznie testowany. HWIM został zaprojektowany jako automatyczny asystent menedżera budżetu podróży i był w stanie odpowiedzieć na pytania mówione, takie jak "Ile pozostało w budżecie na rozumienie mowy?" W swojej ostatecznej wersji HWIM został przetestowany na dwóch wersjach, z których każda ma sześćdziesiąt cztery różne wypowiedzi przez trzy męskie głośniki. Trzydzieści jeden z tych zdań było wcześniej używanych przez system w trakcie jego projektowania, więc mogła istnieć jakaś domyślna (choć niezamierzona) wbudowana dodatkowa możliwość radzenia sobie z tymi zdaniami. Zdania miały długość od trzech do trzynastu słów. HWIM był w stanie poprawnie odpowiedzieć na 41% zdań i "zamknąć" poprawnie na 23% więcej zdań. System w ogóle nie zareagował na 20% zdań. Chociaż zarówno SPEECHLIS, jak i HWIM były pionierami nowych i ważnych metod rozumienia mowy, wydajność HWIM była ogólnie uważana za niespełniającą pierwotnych celów DARPA. (Ich projektanci twierdzili, że test nie wskazywał na potencjał HWIM i że mogliby zrobić to lepiej, mając więcej czasu.)

Praca w CMU

W 1969 r. Raj Reddy opuścił Stanford, aby zostać członkiem wydziału Carnegie Mellon University. Jeden z pierwszych systemów mowy, nad którymi pracował wraz z kolegami w CMU, nazywał się HEARSAY (później przemianowany na HEARSAY-I) .1Używał wielu niezależnych procesów obliczeniowych do rozpoznawania mówionych ruchów w szachach z danej pozycji na planszy, takich jak " pionek króla przenosi się do gońca czwartego. "Na wczesnych etapach tej pracy DARPA utworzyła Grupę Badającą Zrozumienie Mowy i rozpoczęła pracę nad rozumieniem mowy. W czerwcu 1972 r. odbyła się publiczna demonstracja HEARSAY-I rozpoznawania powiązanej mowy. Trzy różne systemy rozpoznawania i rozumienia mowy zostały opracowane w CMU pod patronatem wysiłków badawczych DARPA w zakresie rozumienia mowy. Były to DRAGON, HARPY i HEARSAY-II i wszystkie one wniosły ważne pomysły na sztuczną inteligencję. Prace nad tymi systemami prowadzili Allen Newell, Raj Reddy, James Baker, Bruce Lowerre, Lee Erman, Victor Lesser i Rick Hayes-Roth.

DRAGON

We wczesnych dniach badań nad zrozumieniem mowy CMU, doktorat. James K. Baker, rozpoczął pracę nad systemem rozumienia mowy, który nazwał "DRAGON". (Według Allena Newella nazwa DRAGON miała na celu "wskazać, że była to zupełnie inna bestia niż systemy AI rozważane w pozostałej części mowy". Podobnie jak HEARSAY-I, DRAGON został zaprojektowany tak, aby zrozumieć zdania o ruchy szachowe DRAGON wprowadził nowe, potężne techniki przetwarzania mowy - których opracowania są stosowane w większości nowoczesnych systemów rozpoznawania mowy. Wykorzystał techniki statystyczne do zgadywania najbardziej prawdopodobnych ciągów słów, które mogły wytworzyć obserwowany sygnał mowy. wczesny przykład importu reprezentacji probabilistycznych i powiązanych metod obliczeniowych do AI. Spróbuję wyjaśnić główne idee bez użycia dużej matematyki. Załóżmy, że pozwalamy x stać na ciąg słów i y oznacza falę mowy, która powstaje, gdy wypowiadane jest x. (W rzeczywistości pozwolimy y być pewną zachowującą informację reprezentacją fali pod względem jej łatwo mierzalne właściwości, takie jak ilość energii zawartej w kształcie fali w różnych pasmach częstotliwości. Dla uproszczenia będę nadal nazywał przebieg falowy, chociaż mam na myśli jego reprezentację, która może być różna dla różnych systemów rozumienia mowy.) Ponieważ ten sam mówca może wypowiadać te same słowa nieco inaczej przy różnych okazjach, a różni mówcy z pewnością będą powiedzmy inaczej, ciąg słowa x nie określa całkowicie, jaki będzie przebieg fali mowy y. To znaczy, biorąc pod uwagę dowolny x, możemy jedynie powiedzieć, jakie są prawdopodobieństwa różnych y. Te prawdopodobieństwa zapisano w formie funkcjonalnej jako p(y | x) (odczytywane jako "prawdopodobieństwo y podane x"). Zasadniczo rzeczywiste wartości p(y|x) dla niektórych szczególnych x, powiedzmy x = X, można oszacować, na przykład, przez liczbę głośników wypowiadających ciąg słów X wiele razy i zestawienie, jak często różne przebiegi mowy y pojawić się. Ten proces musiałby zostać powtórzony dla wielu różnych ciągów słów. SMOK uniknął tego żmudnego zestawienia w sposób, który zostanie wkrótce wyjaśniony. Jednak do rozpoznawania mowy chcemy poznać prawdopodobieństwo ciągu słów x, biorąc pod uwagę sygnał mowy y, abyśmy mogli wybrać najbardziej prawdopodobne x. Oznacza to, że chcemy p (x | y) zamiast p (y | x). Możemy użyć reguły Bayesa jak wcześniej, aby uzyskać pożądane prawdopodobieństwo w następujący sposób:

p (x | y) = p (y | x) p (x) = p (y):

Po zaobserwowaniu określonego kształtu fali, powiedzmy y = Y, oto, w jaki sposób użyjemy wielkości w tej formule, aby zdecydować, który ciąg słowa x najprawdopodobniej został wypowiedziany:

1. Wyszukaj wszystkie wartości p (Y | x) dla wszystkich rozważanych wartości x. (Nie musimy tego robić dla wszystkich możliwych ciągów słów, ale tylko dla tych dozwolonych przez słownictwo i składnię specjalistycznego obszaru odpowiedniego do zadania rozumienia mowy - szachy porusza się w przypadku DRAGON).

2. Pomnóż każdą z tych wartości przez p(x). (Decyzja powinna być stronnicza w stosunku do prawdopodobnych ciągów słów).

3. Wybierz x, powiedzmy X, dla którego produkt jest największy. [Możemy zignorować dzielenie przez p (y), ponieważ jego wartość nie wpływa na to, które p (x | Y) jest największe.]

Chociaż proces ten działałby w zasadzie, jest jednak niepraktyczny obliczeniowo. Zamiast tego DRAGON i inne nowoczesne systemy rozpoznawania mowy wykorzystują hierarchiczną strukturę zaangażowaną w sposób, w jaki zakłada się sposób generowania fali mowy. W tej hierarchii istnieją różne poziomy, które można zidentyfikować. Aby nieco uprościć, na szczycie hierarchii dana idea semantyczna jest wyrażana przez ciąg słów przestrzegających reguł składniowych języka. Z kolei ciąg słów powoduje powstanie szeregu telefonów (jednostek fonetycznych). Wreszcie, ciąg telefonu jest wyrażany przez przebieg mowy na dole hierarchii. Na każdym poziomie mamy sekwencję bytów, powiedzmy x1; x2; … xn, wytwarzając sekwencję innych bytów, powiedzmy y1; y2;… yn. Możemy przedstawić schemat procesu, jak pokazano poniżej



System DRAGON przyjął pewne uproszczenia. Zakładano, że na każdy xi w sekwencji x wpływ ma tylko jego bezpośredni precedens, xi-1, a nie żaden inny z xi. To założenie nazywa się założeniem Markowa. [Andrey Andreyevich Markov był rosyjskim matematykiem. Użył (jak się później nazwano) modelu Markowa do analizy statystyki sekwencji 20 000 rosyjskich listów zaczerpniętych z powieści Puszkina Eugeniusza Oniegina. Modele Markowa są szeroko stosowane w fizyce i Inżynierii. Google wykorzystuje na przykład założenie Markowa obliczenie rangi strony.] Oczywiście wiemy, że każde słowo w sekwencji zależy od czegoś więcej niż tylko słowa bezpośrednio poprzedzającego. Mimo to założenie Markowa upraszcza obliczenia i zapewnia dobrą wydajność. Ponadto założono, że na każdy yi wpływają tylko xi i xi-1. Wszystkie te "wpływy" są probabilistyczne. To znaczy, biorąc pod uwagę wielkości takie jak na przykład x3 i x4, wartość y4 nie jest całkowicie określona. Można jedynie powiedzieć, jakie mogą być prawdopodobieństwa wartości yi; są one podane przez wyrażenie funkcjonalne p (y4 | x3; x4). Wartości prawdopodobieństwa dla y są zatem podawane przez tak zwaną "funkcję probabilistyczną procesu Markowa". Aby uzyskać oszacowania tych prawdopodobieństw, statystyki mogą być gromadzone podczas "procesu uczenia się" (w którym mówca wypowiada zestaw zdań szkoleniowych). DRAGON połączył te oddzielne poziomy w sieć składającą się z hierarchii probabilistycznych funkcji procesów Markowa. Elementy reprezentujące segmenty fali mowy znajdowały się na dole, podmioty reprezentujące telefony znajdowały się na środku, a podmioty reprezentujące słowa na górze. Na każdym poziomie zastosowano zasadę Bayesa do obliczenia prawdopodobieństwa x dla danych y. Ponieważ faktycznie obserwowano tylko przebieg mowy na najniższym poziomie, telefony i słowa były "ukryte". Z tego powodu w całej sieci zastosowano ukryte modele Markowa (HMM). DRAGON był pierwszym przykładem użycia HMM w AI. Zostały one wcześniej opracowane do innych celów. Korzystając z tej sieci, rozpoznanie wypowiedzi zostało następnie osiągnięte przez znalezienie ścieżki o najwyższym prawdopodobieństwie w sieci. Obliczanie zdolności do syntaktycznie prawidłowych sekwencji słów, biorąc pod uwagę sekwencję segmentów obserwowanego kształtu fali mowy, jest problemem podobnym do tego, który opisałem wcześniej, a mianowicie obliczaniem konsekwencji ciągów znaków na arkuszach kodujących FORTRAN Znów metoda wykorzystano programowanie dynamiczne. Jak napisał Baker: "Optymalną ścieżkę znajduje algorytm, który w efekcie bada równolegle wszystkie możliwe ścieżki". Pod koniec procesu identyfikowany jest najbardziej prawdopodobny składniowo prawidłowy ciąg słów. Operacje matematyczne do wykonania tych obliczeń są zbyt skomplikowane, aby je tutaj wyjaśnić, ale można je wykonać wystarczająco skutecznie, aby praktyczne rozpoznawanie mowy było praktyczne. Chociaż system DRAGON nie należał do tych, które zostały ostatecznie przetestowane pod kątem celów systemu rozumienia mowy DARPA, Baker stwierdził, że jego początkowe wyniki były "bardzo obiecujące" i że w "pierwszym teście z wprowadzaniem mowy na żywo system rozpoznał każde słowo we wszystkich dziewięciu zdaniach w teście. "DRAGON stał się podstawą komercyjnego produktu Dragon Naturally Speaking", pierwszy opracowany i wprowadzony na rynek przez Dragon Systems, firma założona przez Bakera i jego żonę Janet.

HARPY

HARPY był drugim systemem wyprodukowanym w CMU w ramach prac badawczych DARPA w zakresie rozumienia mowy. Bruce T. Lowerre zaprojektował i wdrożył system jako część swojego doktoratu. Badania. HARPY połączył niektóre pomysły HEARSAY-I i DRAGON. Podobnie jak DRAGON, przeszukiwał ścieżki w sieci, aby rozpoznać wypowiedziane zdanie, ale nie odnotował adnotacji połączeń między węzłami w sieci z prawdopodobieństwem przejścia, jak to zrobił DRAGON. Podobnie jak HEARSAY-I, HARPY zastosował heurystyczne metody wyszukiwania. Wersje HARPY zostały opracowane w celu zrozumienia zdań wypowiadanych na temat kilku różnych obszarów zadań. Główną z nich była możliwość udzielenia odpowiedzi na pytania i odzyskania dokumentów z bazy danych zawierającej streszczenia (zwane "streszczeniami") dokumentów AI. Oto kilka przykładów:

"Które streszczenia odnoszą się do teorii obliczeń?"
"Wymień te artykuły".
"Czy są jakieś Feigenbaum i Feldman?"
"Co napisał McCarthy od dziewiętnastu siedemdziesięciu czterech?"

HARPY może obsłużyć zasób 1011 słów. Zamiast używać gramatyki z konwencjonalnymi kategoriami składniowymi, takimi jak rzeczownik, przymiotnik itp., HARPY użył tak zwanej "gramatyki semantycznej", która rozszerzyła kategorie takie jak temat, autor, rok i wydawca, które były semantycznie powiązane do jego obszaru tematycznego, a mianowicie danych o papierach AI. Gramatyka HARPY była ograniczona do obsługi zestawu zdań o autorach i artykułach, które HARPY miał być w stanie rozpoznać. Sieć została zbudowana z tak zwanych "źródeł wiedzy" (KS), które składały się z informacji potrzebnych do procesu rozpoznawania. Pierwsza z tych zakodowanej wiedzy składniowej o gramatyce. Drugie źródło wiedzy używane przez HARPY opisywało, w jaki sposób każde słowo. Słownictwo HARPY może być wymawiane. A ponieważ granice słów w języku mówionym pokrywają się w sposób zależny od użytych słów, pomyślne rozpoznanie wymaga trzeciego źródła wiedzy zajmującego się takimi zjawiskami. Czwarte źródło wiedzy wyszczególniło telefony zaangażowane w wymowę słów i przejścia między nimi. HARPY połączył całą tę wiedzę w gigantyczną sieć telefonów reprezentujących wszystkie możliwe sposoby wypowiadania legalnych składniowo. Każdy "węzeł telefoniczny" w sieci został sparowany z reprezentacją odcinka fali mowy, zwanej "szablonem widmowym", który ma być powiązany z tym konkretnym telefonem. Szablony te uzyskano na początku, czytając około 700 zdań przez mówcę. Można by je "dostroić" dla nowego mówcy, czytając około 20 wybranych zdań podczas sesji "uczenia się". Częściową sieć telefonów pokazano poniżej, aby zilustrować ogólną ideę. Rzeczywista sieć HARPY miała 15 000 węzłów. Sieć obejmuje te fragmenty zdań, które zaczynają się od "Powiedz mi …" i "Daj mi …" Symbole wewnątrz węzłów reprezentują telefony, używając dla nich notacji DRAGON. Strzałki oznaczają możliwe przejścia z jednego telefonu do drugiego. Pamiętaj, że istnieje wiele ścieżek odpowiadających różnym sposobom wymawiania słów.



Aby rozpoznać słowa w mówionym zdaniu, zaobserwowana mowa była najpierw podzielona na segmenty o zmiennej długości, które odgadły, że odpowiadają sekwencji telefonów w przebiegu. Dla każdego z tych segmentów obliczono szablon spektralny. Proces rozpoznawania przebiegał następnie w następujący sposób: Szablon widmowy odpowiadający pierwszemu segmentowi widmowemu w fali mowy został porównany ze wszystkimi szablonami odpowiadającymi telefonom na początku sieci. W odniesieniu do powyższego rysunku będą one obejmować porównania z szablonami dla - , T, G i IH2, ponieważ znajdowały się wśród węzłów w sieci, do których można było dotrzeć jednym krokiem od węzła początkowego, a mianowicie [. (Oczywiście, używając całej sieci, a nie tylko zilustrowanego tylko częściowego przykładu, dokonano by kilku dalszych porównań z szablonami dodatkowych węzłów telefonicznych dostępnych w jednym kroku od węzła początkowego.) Zauważono kilka najlepszych dopasowań i ścieżki do tych węzłów zostały wyznaczone jako najlepsze jednoetapowe ścieżki częściowe w sieci. W następnym etapie szablon spektralny następnego segmentu fali został porównany z szablonami wszystkich tych dostępnych węzłów telefonicznych poprzez rozszerzenie najlepszych ścieżek jednoetapowych o kolejny krok. Wykorzystując obliczone dotychczas wartości porównań, zidentyfikowano zestaw najlepszych dwuetapowych ścieżek częściowych. Proces ten trwa do momentu osiągnięcia końca sieci. W tym czasie najlepsza znaleziona do tej pory ścieżka mogła być powiązana ze słowami powiązanymi z węzłami wzdłuż tej ścieżki. Ta sekwencja słów została następnie wygenerowana jako decyzja rozpoznająca HARPY. Metodę poszukiwania najlepszej ścieżki przez sieć HARPY można porównać z heurystycznym procesem wyszukiwania A* opisanym wcześniej. Podczas gdy A* utrzymywał całą "granicę" wyszukiwania do ewentualnego dalszego przeszukiwania, HARPY utrzymywał na swojej granicy tylko te węzły na kilku najlepszych znalezionych dotychczas ścieżkach. (Liczba węzłów utrzymywanych na granicy była parametrem, który można ustawić w razie potrzeby do kontrolowania wyszukiwania.) Projektanci HARPY nazwali tę technikę "wyszukiwaniem wiązki", ponieważ węzły odwiedzane przez proces wyszukiwania były ograniczone do wąskiej wiązki przez sieć. Ponieważ węzły nie znajdujące się w wiązce zostały wyeliminowane w trakcie tego procesu, możliwe, że najlepsza pełna ścieżka znaleziona przez HARPY może nie być ogólnie najlepszą w sieci. (Jeden z wyeliminowanych węzłów może znajdować się na tej ogólnej najlepszej ścieżce.) Mimo to znaleziona ścieżka zwykle odpowiada poprawnej interpretacji wypowiadanego zdania. Pod koniec projektu rozumienia mowy DARPA, HARPY został przetestowany na 100 zdaniach wypowiedzianych przez trzech mężczyzn i dwie kobiety mówiące. Był w stanie poprawnie zrozumieć ponad 95% tych zdań, osiągając w ten sposób cel DARPA dotyczący błędu poniżej 10%. Średnio HARPY wykonał około 30 milionów instrukcji komputerowych, aby poradzić sobie z jedną sekundą mowy. Przy użyciu 0,4 miliona instrukcji na sekundę (0,4 MIPS) (DEC PDP-KA10) przetworzenie sekundy mowy zajęłoby minutę; chociaż jest to nieco gorsze niż wydajność w czasie rzeczywistym, osiągnęło cel DARPA "kilka razy w czasie rzeczywistym" (jeśli interpretujemy "kilka" nieco łagodnie). Aby spojrzeć na sprawę czasu rzeczywistego z perspektywy, dzisiejsze komputery przetwarzają miliardy instrukcji na sekundę HARPY był jedynym systemem spełniającym cele DARPA.

C. HEARSAY-II

Wreszcie HEARSAY-II, przeprojektowana i ulepszona wersja HEARSAY-I, była być może najbardziej ambitnym z projektów mowy CMU. Podobnie jak HARPY, HEARSAY-II został zaprojektowany, aby odpowiadać na pytania i pobierać dokumenty z bazy danych zawierającej streszczenia dokumentów AI. (Wcześniej rozważano zadanie polegające na wyszukiwaniu wiadomości z serwisów elektronicznych). Było ono również ograniczone do słownika zawierającego 1011 słów i stosowało gramatykę semantyczną specjalizującą się w tej dziedzinie. Pierwsze kroki w przetwarzaniu wypowiedzi przez HEARSAY obejmowały segmentację fali mowy i etykietowanie telefonów, które według szacunków będą obecne w każdym segmencie. W ramach projektu HEARSAY zastosowano nowatorską metodę stopniowego przekształcania tych składników w sylaby, sylaby w słowa, słowa w sekwencje słów, a w końcu sekwencje słów w frazy. Następnie frazy zostały przekształcone w odpowiednie procedury dostępu do bazy danych dokumentów AI. Metoda przetwarzania zastosowana przez HEARSAY obejmowała warstwową strukturę zwaną "tablicą". Szacuje się, że etykiety telefonów, a także liczby związane z prawdopodobieństwem ich wystąpienia, zostały "zapisane" w jednej z niższych warstw tablicy. Wyspecjalizowane procedury źródła wiedzy, które wiedziały o "sposobie budowania sylab z telefonów", czytały te etykiety i obliczały domysły na temat tego, jakie sylaby były w wypowiedzi. Te domysły, wraz z liczbami mierzącymi ich przekonania lub prawdopodobieństwa, zostały następnie zapisane w warstwa sylaby tablicy. Inne procedury źródła wiedzy, które wiedziały o tym, jak słowa zostały zbudowane z sylab, czytają informacje już na tablicy i zapisują domysły na temat słów w warstwie słów tablicy. I tak dalej. HEARSAY-II miał około 40 te źródła wiedzy Ogólny pogląd ilustruje rysunek



Zasadniczo źródło wiedzy może odczytywać lub zapisywać informacje na dowolnej warstwie tablicy, która była dla niego istotna. Co więcej, może to robić w sposób tzw. "asynchroniczny" (niezależny od tego, kiedy inne źródła wiedzy czytały i pisały). Istnieje kilka źródeł wiedzy, które mogą pisać prognozy dotyczące nowych słów na podstawie słów zapisanych już w warstwie słów i informacji w innych warstwach. Źródła wiedzy mogą nawet pisać domysły na temat słów w warstwie słów w oparciu o sekwencje słów już zapisane (z dużą siłą) w warstwie sekwencji. Ten proces wnioskowania, co musi znajdować się w dolnej warstwie (mimo że pominięte przez wstępne przetwarzanie) z tego, co (z innych dowodów) jest obecne w wyższej warstwie, jest temat, który często powraca w późniejszych badaniach nad AI. O ile mi wiadomo, ta niezwykle ważna innowacja AI pojawiła się po raz pierwszy w systemie HEARSAY-II. Według Raj Reddy, jednego z wynalazców architektury tablicy (wraz z Victorem Lesserem, Lee Ermanem i Frederickiem Hayes-Rothem), Herbert Simon często używał słowa "tablica", aby opisać element "pamięci roboczej" systemu produkcyjnego architektura, z którą on i Allen Newell pracowali. System produkcyjny używał reguł IF {THEN (zwanych produkcjami), które były uruchamiane przez zawartość pamięci roboczej i zapisywał w niej nowe dane. Reddy i zespół, rozpoznając różnorodność różnych źródeł wiedzy związanych z przetwarzaniem mowy, uogólnili ideę systemu produkcyjnego, rozszerzając reguły produkcji na większe programy, nazywając je "źródłami wiedzy" i opracowali pamięć roboczą w warstwowej strukturze tablicy. Pod koniec projektu rozumienia mowy DARPA, HEARSAY-II został przetestowany na dwudziestu trzech wypowiedzianych zdaniach, zupełnie nowy w systemie, mając średnio siedem słów na zdanie, a 81% z nich zostało poprawnie rozpoznanych słowo po słowie , chociaż 91% doprowadziło do tego samego zapytania do bazy danych, które zawierałoby poprawne zdanie słowo w słowo. Projektanci HEARSAY twierdzili, że ten występ jest bliski osiągnięcia ambitnych celów. . . ustanowiony dla programu DARPA w 1971 roku. "Chociaż HEARSAY-II zbliżył się, wyniki nie były tak dobre jak HARPY. Chociaż architektura tablicy nie jest już stosowana w nowoczesnych systemach rozpoznawania mowy, została przyjęta przez kilka innych programów AI. Według Russella i Norviga "Systemy tablicowe są podstawą nowoczesnej architektury interfejsu użytkownika".

Podsumowanie i wpływ programu SUR

CMU HEARSAY-II i HARPY zostały zademonstrowane na CMU 8 września 1976 r., A HWIM BBN zademonstrowano na BBN 10 września. W raporcie podsumowującym projekty Dennis Klatt napisał, że "nie jest jasne, czy istnieją duże różnice w umiejętność wśród [tych] trzech systemów. Jednak tylko [HARPY] był w stanie osiągnąć cele ARPA ". Twórcy HEARSAY-II przypisali najwyższą wydajność HARPY trzem czynnikom: dokładniejszemu poszukiwaniu potencjalnych rozwiązań (dozwolonym przez wstępnie obliczoną sieć wszystkich zdań, które można wypowiedzieć), bardziej szczegółowej wbudowanej wiedzy na temat zjawisk przejściowych między sąsiadującymi słowami i jego dokładniejsze testowanie, strojenie i debugowanie. Jednak niektórzy badacze i menedżerowie programu DARPA spierali się o sposób przeprowadzenia testów i stwierdzenie, że żaden z systemów nie spełnia celów programu SUR. W każdym razie DARPA postanowiła nie finansować proponowanego programu kontynuacji. Program pokazał jednak, że rozumienie mowy było rozsądnym celem technicznym i stymulowało postęp w technologiach przetwarzania mowy, zwłaszcza w organizacji systemu, składni i semantyce oraz przetwarzaniu akustycznym. Raport National Research Council stwierdził, że finansowanie przez "DARPA badań nad rozumieniem mowy jest niezwykle ważne.…" wyniki tych badań zostały włączone do produktów uznanych firm, takich jak IBM i BBN, a także start-upów, takich jak Nuance Communications (spinoff SRI) i Dragon Systems. Wiodący na rynku program do rozpoznawania mowy na rynku, oprogramowanie Dragon "NaturallySpeaking" , wywodzi się bezpośrednio z pracy wykonanej w CMU w latach 1971-1975 w ramach SUR

Późniejsza praca nad rozpoznawaniem mowy

Badania rozpoznawania mowy były również prowadzone w innych laboratoriach oprócz tych, które były bezpośrednio zaangażowane w program SUR DARPA. Na przykład Frederick Jelinek z Speech Processing Group w Departamencie Nauk Komputerowych IBM w Thomas J. Watson Research Center w Yorktown Heights w Nowym Jorku jest jednym z pierwszych zwolenników stosowania metod statystycznych (w tym ukrytych modeli Markowa) w rozpoznawanieu mowy. Podejście HMM zostało ostatecznie przyjęte przez wszystkie wiodące firmy rozpoznające mowę. W 1984 r. DARPA ponownie zaczęła finansować prace związane z rozpoznawaniem mowy w ramach programu "Strategic Computing". Uczestnikami byli CMU, SRI, BBN, MIT, IBM i Dragon Systems. Wśród systemów opracowanych w CMU w ciągu następnych kilku lat były na przykład SPHINX autorstwa Kai-Fu Lee i innych oraz JANUS, wielojęzyczny system rozpoznawania i tłumaczenia mowy przez Alexa Waibela i innych. (Te i inne systemy są dostępne jako oprogramowanie typu open source ze strony internetowej "Speech at CMU", http://www.speech.cs.cmu.edu/. Strona zawiera również linki do wielu innych laboratoriów rozpoznających mowę.) W oparciu o swoją pracę nad DRAGON w CMU, James i Janet Baker założyli Dragon Systems w 1982 r. W 1997 r. Dragon wprowadził "Dragon NaturallySpeaking", program do rozpoznawania mowy dla komputerów osobistych. Miał zasób 23 000 słów. IBM wraz z ViaVoice, oraz inne firmy, w tym Microsoft, również mają oprogramowanie do rozpoznawania mowy. Transkrypcja zdań mówionych na ich tekstowe odpowiedniki jest obecnie w dużej mierze rozwiązanym problemem. Na przykład w wielu zautomatyzowanych systemach odpowiedzi telefonicznej powszechnie stosuje się dziś wysokiej jakości rozpoznawanie mowy. Jednak zrozumienie mowy (lub tekstu) w języku naturalnym, aby na przykład umożliwić ogólne dialogi z systemami komputerowymi, pozostaje długoterminowym problemem badawczym.