An Automatic Assessment System for Alzheimer’s Disease Based on Speech Using Feature Sequence Generator and Recurrent Neural Network
Przegląd systemu
W naszym systemie były głównie trzy komponenty: procedura zbierania danych, która zbierała dane mowy od użytkownika, Generator Sekwencji Cech, który przekształcał dane mowy w Sekwencję Cech, która była nowatorską reprezentacją cech zaproponowaną w tym badaniu, oraz Silnik Oceny AD, który generował wynik posiadania AD. Schemat systemu pokazano na Rys. 1.
Procedura zbierania danych
Procedura zbierania danych w naszym systemie była następująca. Najpierw użytkownik był osobiście instruowany o formularzu i przebiegu kolejnych testów neuropsychologicznych. Następnie poproszono go, aby usiadł przy biurku, na którym umieszczono mikrofon i parę głośników. Przy sześciu wybranych testach neuropsychologicznych na sesję, opis każdego testu neuropsychologicznego był odtwarzany przez 30 sekund, po czym następowało okno odpowiedzi trwające 1 minutę. Dane mowy były rejestrowane tylko podczas tego jednominutowego okresu. W sumie sesja trwała mniej niż 10 minut.
Wybór testów neuropsychologicznych
W naszym systemie wybrano trzy rodzaje testów neuropsychologicznych, którymi były: test fluencji19,20,21, test opisu obrazów22,23,24 oraz test pamięci logicznej25,26,27. Wyboru dokonano na podstawie oceny neuropsychologicznej przeprowadzonej w warunkach klinicznych, jak również na podstawie znanych badań dotyczących AD. Testy te okazały się skuteczne w charakteryzowaniu kluczowych cech AD, z których wszystkie były bardzo zróżnicowanymi problemami.
Test fluencji
Postępowanie w teście fluencji było następujące. Biorąc pod uwagę wyznaczoną kategorię, badany był proszony o wypowiedzenie jak największej liczby różnych słów związanych z tą kategorią przez ograniczony czas. Na przykład, jeśli kategorią było zwierzę, możliwe odpowiedzi to: słonie, tygrysy, zebry, itp. W naszym systemie wybrano kategorię zwierząt i owoców, a limit czasowy dla każdej kategorii wynosił jedną minutę.
Test opisu obrazków
Postępowanie w teście opisu obrazków było następujące. Biorąc pod uwagę prezentowany obrazek, badany był proszony o opisanie scenariusza na obrazku tak szczegółowo, jak to możliwe w ograniczonym czasie. Na przykład, następująca odpowiedź była możliwa. To jest obrazek przedstawiający typowy wieczór w rodzinie. Tatuś ogląda baseball, a mamusia robi na drutach szalik. Aktualny czas to …, itd. W naszym systemie wybrano obrazek z badania przeprowadzonego w Japonii28 , które miało podobne do naszego tło kulturowe, oraz inny z Zachodniej Baterii Afazji (WAB)29 . Limit czasowy dla każdego obrazka wynosił jedną minutę, jak również.
Test pamięci logicznej
Procedura testu pamięci logicznej była następująca. Uczestnikom czytano na głos krótkie opowiadanie, a następnie proszono badanego o spontaniczne przypomnienie sobie tego opowiadania z jak największą dokładnością. W naszym systemie do analizy włączono dwa opowiadania ze Skali Pamięci Wechslera III (WMS-III)30 . Chociaż nie ma limitu czasowego dla testów pamięci logicznej w warunkach klinicznych, w naszym systemie dla zachowania spójności zastosowano limit czasowy jednej minuty.
Reprezentacja cech – sekwencja cech
W przeciwieństwie do wielu istniejących w literaturze12,13,14,15,16,17,18, naszym celem było zaprojektowanie reprezentacji, która mogłaby implicite ucieleśniać wszystkie cechy naraz. To, co wymyśliliśmy, to sekwencja tokenów, gdzie każdy token był odpowiedzialny za reprezentowanie jednego unikalnego elementu w mowie. Używając takiej reprezentacji, pauza może być zidentyfikowana przez token ciszy lub wypełniony token pauzy, powtórzenie może być zidentyfikowane przez tokeny, które powtarzają się w całej sekwencji, a dysfluencja może być zidentyfikowana przez naprzemienne występowanie między tokenami ciszy i innymi tokenami. Oprócz tych trzech kluczowych cech, można zidentyfikować wiele innych przydatnych cech pochodnych omówionych w istniejącej literaturze13 . Na przykład, długość i tempo wypowiedzi były proporcjonalne do liczby tokenów w sekwencji. Nawet niektóre cechy zależne od kontekstu, takie jak liczba unikalnych słów i słowa o niskiej częstotliwości, mogą być wywnioskowane z rozkładu tokenów, ponieważ każdy token może być dość bliskim przybliżeniem do konkretnego słowa. Te właściwości sprawiły, że nasz projekt był w pełni zdolny do odwzorowania mowy pacjentów z AD, co było doskonałym kandydatem do zadań takich jak wykrywanie i ocena AD. Sekwencja tokenów jest określana jako Sekwencja Cech w poniższej treści.
Aby spełnić kryteria Sekwencji Cech, możliwymi kandydatami na tokeny były fonemy, sylaby, słowa, wypowiedzi, itd. Podstawowymi czynnikami branymi pod uwagę przy wyborze optymalnego kandydata były: przydatność, możliwość treningu i możliwość generalizacji. Przydatność polegała na tym, jak odpowiednio tokeny mogą manifestować kluczowe cechy. Wykluczyło to fonemy, ponieważ są to minimalne jednostki mowy, więc będzie wiele powtarzających się tokenów, co może być mylące w identyfikacji powtórzeń, ponieważ mogą one pochodzić z tego samego słowa lub różnych słów. Zdolność treningowa oznaczała, jak wykonalne jest zbudowanie klasyfikatora do oceny AD na podstawie sekwencji cech i automatycznego generatora sekwencji cech. Wykluczyło to wypowiedź, ponieważ nie można było zebrać wystarczającej ilości danych treningowych. Wreszcie, generalizacja dotyczyła tego, jak dobrze tokeny mogą uwzględniać dialekty regionalne i mieszane użycie języka na Tajwanie. To wykluczyło słowo, ponieważ nie ma nawet oficjalnej formy pisemnej dla tajwańskiego i Hakka. Z drugiej strony, sylaby mandaryńskiego chińskiego, tajwańskiego i Hakka są bardzo podobne, co sprawiło, że można je uogólnić.
Dlatego sylaby były wyborem naszych tokenów. Ponadto, ponieważ Mandaryński Chiński, Tajwański i Hakka są językami monosylabicznymi, sylaba sama w sobie może zawierać wiele informacji o treści mówionej. Jest to cenny dodatek do Feature Sequence, ponieważ posiada on kompetencje do ucieleśnienia zarówno cech zależnych od akustyki, jak i kontekstu. ZhuYin, najpopularniejszy sposób pisowni na Tajwanie, został użyty do zdefiniowania przestrzeni tokenów dla naszej sekwencji cech. Zgodnie ze słownikiem prowadzonym przez Ministerstwo Edukacji Tajwanu, istnieje 1339 różnych sylab pisanych w ZhuYin, a tylko 317 z nich jest zachowanych po odrzuceniu znaczników tonu, tj. ´, ˇ, `, ˙, i podobnych jednostek fonetycznych, tj, , aby zwiększyć wytrenowanie poprzez zmniejszenie przestrzeni na żetony; dodatkowo, uogólnienie byłoby również zwiększone, ponieważ pojawiłoby się mniej negatywnych efektów spowodowanych przez różne akcenty, ponieważ różne tony byłyby teraz zgrupowane razem i postrzegane jako jedna jednostka. Do przestrzeni tokenów dodawany jest również token niemy. Jednakże, ponieważ w przestrzeni tokenów jest tylko jeden token oznaczający ciszę, należało określić próg dla oceny, czy segment ciszy powinien być transkrybowany na token ciszy w oparciu o jego długość. Ostatecznie, przestrzeń tokenów dla Sekwencji Cech wyniosła 318.
Generator Sekwencji Cech
Dając zebrane dane mowy jako dane wejściowe, istniały dwa sposoby generowania Sekwencji Cech: jeden został wykonany ręcznie przez człowieka, podczas gdy drugi został wykonany automatycznie przez model. Wybranym modelem była Convolutional Recurrent Neural Network (CRNN) wytrenowana przez Connectionist Temporal Classification (CTC).
Architektura modelu
W naszym systemie, wejściem modelu była 80-wymiarowa energia log filterbank wyekstrahowana z rozmiarem okna 25 ms i rozmiarem hop 10 ms. Ponadto, do normalizacji uzyskanych energii zastosowano normalizację CMVN (Cepstral Mean and Variance Normalization)32 . Architektura Generatora Sekwencji Cech została zainspirowana najnowocześniejszym, kompleksowym modelem rozpoznawania mowy dla języka angielskiego i mandaryńskiego, mianowicie Deep Speech 2 firmy Baidu, Inc.33. Niektóre kluczowe cechy Deep Speech 2 są podsumowane w następujący sposób. Po pierwsze, dwukierunkowa konfiguracja Recurrent Neural Network (RNN) znacznie poprawiłaby wydajność modelu. Po drugie, zastosowanie warstw konwolucji 2D przed RNN mogłoby zreorganizować spektrogram poprzez modelowanie czasowej niezmienniczości translacyjnej i spektralnej oraz zredukować koszt obliczeniowy strat CTC poprzez zmniejszenie liczby kroków czasowych. Wreszcie, zastosowanie normalizacji wsadowej (BN)34 do każdej warstwy zwiększa szybkość treningu i dodatkowo poprawia wydajność modelu. Jednakże, mając do dyspozycji ograniczone zasoby sprzętowe, Generator Sekwencji Cech posiadał 3 warstwy 2D-konwolucyjne, następnie 5-warstwową dwukierunkową RNN, a na końcu warstwę w pełni połączoną. Dla warstw konwolucyjnych, liczba filtrów wynosiła odpowiednio 32, 32 i 96, rozmiar jądra filtrów wynosił odpowiednio (11, 41), (11, 21) i (11, 21). W każdej warstwie RNN znajdowało się 512 komórek GRU w obu kierunkach. W warstwie w pełni połączonej znajduje się 318 (odpowiadających liczbie klas w przestrzeni tokenów ciągu cech) + 1 (odpowiadający „pustemu” tokenowi) węzłów, a funkcją aktywacji jest funkcja softmax. BN jest również zastosowana we wszystkich 3 warstwach konwolucji tuż przed aktywacją. Zamiast jednak stosować BN zaimplementowaną w Deep Speech 2, we wszystkich 5 warstwach RNN zastosowano Layer Normalization (LN), ponieważ LN wydaje się być bardziej odpowiednia niż BN w przypadku zastosowań RNN35. Schemat blokowy generatora sekwencji cech jest przedstawiony na Rys. 2.
Trenowanie modelu
Aby wytrenować Generator Sekwencji Cech, zebrano cztery zestawy danych w języku chińskim mandaryńskim, którymi były: Aishell36, Primewords Chinese Corpus Set 137, Free ST Chinese Mandarin Corpus38, oraz THCHS-3039. Łącznie dało to 307961 instancji i 422 godziny danych. Średni czas trwania każdej instancji wynosił 7 sekund, a wszystkie instancje powyżej 10 sekund zostały usunięte ze zbioru treningowego, ponieważ dłuższe sekwencje danych wejściowych mają większe szanse w obliczu problemu znikającego i eksplodującego gradientu. Backpropagation through time (BPTT) została przeprowadzona przy użyciu programu Adam40 z współczynnikiem uczenia 0.0005 jako optymalizatora. W celu dalszej stabilizacji treningu zastosowano również obcinanie gradientu, gdzie maksymalny dopuszczalny gradient wynosił 400. Wielkość partii była ustawiona na 32 podczas całego procesu szkolenia, a model był szkolony przez 50000 iteracji. Wszystkie wagi były inicjalizowane przy użyciu normalnego inicjalizatora Glorot41.
Strategia generowania sekwencji cech
Generowanie sekwencji cech odbywało się generalnie poprzez dekodowanie zachłanne42. Wszystkie tokeny z wyjątkiem tokena ciszy mogły być generowane przez wybór tego, który miał maksymalne wyjście modelu w każdym kroku czasowym. W celu wygenerowania tokena ciszy, zaprojektowano prostą heurystykę, aby określić długość segmentu ciszy i czy wygenerować token ciszy w oparciu o ustaloną długość. Po pierwsze, pusty token generowany przez Feature Sequence Generator był traktowany jako cisza lub przynajmniej nic nie znaczący. Następnie, tylko liczba powyżej pewnego progu następujących po sobie pustych tokenów była przepisywana na token ciszy. Próg ten może być określony w sekundach, tzn. ile sekund powinien wynosić jeden segment ciszy, aby był traktowany jako token ciszy. Ponieważ wielkość hopu na wejściu wynosiła 10 ms, to token ciszy będzie transkrybowany tylko wtedy, gdy istnieje co najmniej próg (wyrażony w sekundach) podzielony przez 0.01 kolejnych pustych tokenów. Na przykład, biorąc pod uwagę, że próg wynosi 3 sekundy, token ciszy zostałby przepisany tylko wtedy, gdyby istniało co najmniej 300 kolejnych pustych tokenów.
Silnik oceny choroby Alzheimera
Dając na wejściu sekwencję cech, która domyślnie zawiera informacje niezbędne do oceny, wynikiem jest wynik oceny posiadania choroby Alzheimera. Sformułowaliśmy wynik posiadania AZS jako funkcję zbioru tokenów w Sekwencji Cech, jak pokazano w poniższym równaniu:
gdzie st jest t-tym tokenem w Sekwencji Cech, a T jest maksymalną długością Sekwencji Cech. Wynik oceny jest wartością skalarną z zakresu od 0 do 1, gdzie im wyższy jest wynik oceny, tym większa szansa na wystąpienie AD. Zamiast ręcznego tworzenia wielu cech i wybierania tych istotnych na podstawie analizy statystycznej w celu wytrenowania klasyfikatora, do budowy naszego klasyfikatora wykorzystano technikę uczenia maszynowego opartego na danych. Wybranym modelem jest RNN.
Architektura modelu
Na wyższym poziomie, RNN może być również ogólnie sformułowany jako:
gdzie xt jest wejściem kroku czasowego t, yt jest wyjściem kroku czasowego t, a ht jest stanem ukrytym RNN z kroku czasowego t. Jest to idealne dopasowanie do naszego problemu, ponieważ jego mocną stroną jest modelowanie sekwencji. Podobieństwo to można również zauważyć porównując równania (1) i (2). (1) i (2) Uważamy, że po przetworzeniu przez RNN sekwencji cech przez podstawienie xt do st, wyjście z jej ostatniego kroku czasowego, które może być również postrzegane jako zakodowana wiadomość lub wektor cech całej sekwencji, będzie miało wystarczającą ilość informacji do klasyfikacji przez warstwę w pełni połączoną, to znaczy,
gdzie yT jest wyjściem RNN z ostatniego kroku czasowego, W jest wagą, b jest skosem, σ jest funkcją aktywacji warstwy w pełni połączonej, a score jest wynikiem oceny posiadania AD.
Mając do dyspozycji jedynie ograniczone dane, architektura silnika oceny AD została zaprojektowana tak, aby była jak najlżejsza, aby zwiększyć możliwość treningu i zmniejszyć szansę na przepasowanie poprzez ograniczenie jego pojemności. Ostatecznie, jest to jednowarstwowa dwukierunkowa RNN ze 128 komórkami GRU w każdym kierunku, a wyjście z końcowego kroku czasowego w każdym kierunku jest konkatenowane i podawane przez warstwę w pełni połączoną w celu wygenerowania ostatecznego wyjścia, gdzie jest to pojedyncza wartość skalarna z zakresu od 0 do 1. Funkcją aktywacji wyjścia GRU jest tanh, a funkcją aktywacji kontroli bramki GRU i w pełni połączonego wyjścia jest funkcja sigmoidalna. Schemat blokowy silnika oceny AD przedstawiony jest na rys. 3.
Trening modelu
Ponieważ dane wyjściowe silnika oceny AD były aktywowane przez funkcję sigmoidalną, mają zakres od 0 do 1 i mogą być traktowane jako prawdopodobieństwo. Odpowiednią etykietą dla każdego wyjścia było więc 0 dla osób bez AD i 1 dla osób z AD. Funkcja straty została zdefiniowana jako suma entropii krzyżowej pomiędzy wyjściem a etykietą wszystkich próbek treningowych w partii. BPTT przeprowadzono przy użyciu programu Adam z szybkością uczenia 0.001 jako optymalizatora. Rozmiar partii jest ustawiony na 16 podczas całego procesu szkolenia. Wszystkie wagi są inicjalizowane przy użyciu normalnego inicjalizatora Glorot41.
Przygotowanie danych
Prezentowane badanie zostało zatwierdzone przez Komisję Etyczną i Institutional Review Board w National Taiwan University Hospital. Zbieranie danych i wszystkie metody w tym badaniu były wykonywane zgodnie z zatwierdzonymi wytycznymi i przepisami. Od wszystkich uczestników uzyskano pisemną świadomą zgodę.
Mandarin_Lu & NTU dataset
Mandarin_Lu corpus from the DementiaBank is a dataset containing interview recordings from 52 AD patients in Taiwan43,44. W celu dopasowania do danych zebranych za pomocą naszej procedury zbierania danych, dane zostały uzupełnione ręcznie poprzez segmentację pierwszej minuty odpowiedzi od osoby badanej. Tylko 30 osób z zestawu danych zostało wybranych, ponieważ pozostałe były krótsze niż jedna minuta lub znacznie zakłócane przez osobę przeprowadzającą wywiad. Wybrane dane obejmują trzy testy neuropsychologiczne: test fluencji owoców, test fluencji lokalizacji oraz test opisu obrazu z wykorzystaniem obrazu z WAB. Stosując powyższą procedurę zbierania danych, kolejnych 30 zdrowych poznawczo osób (CH) zostało zrekrutowanych samodzielnie jako grupa kontrolna na podstawie zgody instytucjonalnej komisji rewizyjnej szpitala National Taiwan University. Testy neuropsychologiczne użyte podczas zbierania danych są dokładnie takie same, jak te wybrane z korpusu Mandarin_Lu. Ten zbiór danych nosi nazwę NTU dataset. Liczba próbek w zbiorze danych Mandarin_Lu i NTU zarówno dla testu fluencji owoców i lokalizacji wynosi 30, jak i dla testu opisu obrazów wynosi 15.
NTUH Dataset
Podczas gdy kombinacja zbioru danych Mandarin_Lu i zbioru danych NTU została użyta do pilotażowego badania proponowanego systemu, ogólna trudność zadania nie jest tak trudna, ponieważ dwie grupy testowe różnią się od siebie pod względem zdolności poznawczych. Co więcej, środowisko nagrywania i jakość nagrania również znacznie się różnią. Wreszcie, nie ma dostępu do raportu medycznego osoby badanej, więc nie jest pewne, czy obok AD wystąpiły jakieś inne komplikacje. Aby przezwyciężyć słabości zbioru danych Mandarin_Lu i zbioru danych NTU, przeprowadzono dalszą rekrutację dwudziestu uczestników z zastosowaniem procedury zbierania danych opisanej powyżej, gdzie 10 uczestników to CH i 10 uczestników to AD. Ten zbiór danych został nazwany zbiorem danych NTUH. Diagnoza łagodnej AD była oparta na kryteriach NINCDS-ADRDA Alzheimer’s criteria. Uczestnicy byli wykluczani, jeśli mieli aktualne lub przeszłe rozpoznanie zaburzeń psychicznych, nadużywali alkoholu lub narkotyków, mieli trudności w uczeniu się, znany uraz głowy z utratą przytomności, nieleczoną niedoczynność tarczycy, niedobór witaminy B12, zaburzenia metaboliczne lub jakiekolwiek znaczące zaburzenia wzroku lub słuchu, które wykluczały udział w testach neuropsychologicznych. Przy 6 testach neuropsychologicznych na uczestnika, było w sumie 120 jednominutowych próbek. Tabela 1 zawiera dane demograficzne osób badanych w zbiorze danych NTUH. Obiekty zostały zrekrutowane we własnym zakresie jako grupa kontrolna pod instytucjonalną zgodą komisji rewizyjnej z National Taiwan University Hospital.
.