wstecz | dalej  

 Archiwum Process Control Club 2001, poz.10  
 

Artykuł w formacie PDF: pobierz wersję pdf (304kB)

Usuwanie szumu i zakłóceń z wykorzystaniem inteligentnych systemów wnioskowania rozmytego

 

dr inż. Jacek Wierzbicki
Katedra Mechaniki i Wibroakustyki
Akademia Górniczo - Hutnicza
al. Mickiewicza 30, 30 - 059 Kraków

mgr inż. Grzegorz Augustyn
Katedra Mechaniki i Wibroakustyki
Akademia Górniczo - Hutnicza
al. Mickiewicza 30, 30 - 059 Kraków
 
 

Streszczenie - Opracowanie przedstawia eksperymenty, dotyczące usuwania szumu i zakłóceń z sygnału z wykorzystaniem inteligentnych systemów wnioskowania rozmytego. Podczas gdy wnioskowanie rozmyte, szczególnie sterowanie rozmyte, jest stosowane na szeroką skalę w automatyce, tak w przetwarzaniu sygnałów dopiero wchodzi do użytku, stąd lektura artykułu może być niezwykle ciekawa i inspirująca.
 

SPIS TREŚCI

1. Wstęp
2. Wnioskowanie rozmyte
3. Usuwanie szumu i zakłóceń z wykorzystaniem inteligentnych systemów wnioskowania rozmytego
4. Wnioski
Literatura

1. Wstęp

     Ostatnie lata badań i eksperymentów oraz szybki postęp techniki przyniosły ze sobą dynamiczny rozwój nowych metod analizy i przetwarzania danych, bazujących na inteligentnych procesach decyzyjnych. Na początku uwaga została skupiona na sieciach neuronowych, w nadziei, iż te metody, bliskie zasadom przetwarzania informacji w ludzkim mózgu, rozwiążą problemy przetwarzania i analizy informacji poprzez maszyny. Stopień skomplikowania i mechanizmy rządzące procesami decyzyjnymi w tychże systemach sprawiły, iż czysta sieć neuronowa okazała się - póki co - narzędziem niewystarczającym do skutecznego przetwarzania informacji.
     Okazało się, że skuteczniejsze efekty działania tzw. sztucznej inteligencji, uzyskuje się poprzez zastosowanie wnioskowania bliższego ludzkiej naturze i skali nominalnej. Takie możliwości daje zastosowanie wnioskowania rozmytego w połączeniu z systemem decyzyjnym opartym na sieci neuronowej.
Dotychczas tego typu systemy z dużym powodzeniem były adaptowane w automatyce, gdzie znajdowano dla nich zastosowanie w różnych systemach sterowania. Systemy te cechowały się dużą prostotą, aczkolwiek z czasem – w miarę jak stosowano wnioskowanie rozmyte do coraz bardziej skomplikowanych systemów – już wtedy próbowano stosować te metody w innych dziedzinach.
     Zupełnie niedawno inteligentne systemy decyzyjne zaczęły znajdować zastosowanie w przetwarzaniu sygnałów, gdzie – w przypadku sieci neuronowych - okazały się szczególnie użyteczne w rozpoznawaniu mowy i cech sygnałów (instrumentów). Własności tychże postanowiono wykorzystać również w technice eksperymentalnej do usuwania szumu i zakłóceń z sygnałów oraz aktywnego tłumienia hałasu. Tutaj jednak efekt ich działania, pomimo iż niepożądany sygnał zostawał niemal całkowicie wyeliminowany, nie był aż tak skuteczny, ze względu na degradację informacji użytecznej w tym sygnale zawartej.
I tu również postanowiono rozszerzyć system decyzyjny oparty na sieci neuronowej o wnioskowanie rozmyte i przekonać się, czy i jak skutecznie metoda ta pozwoli usunąć szum i zakłócenia z rejestrowanego sygnału.
     Taki eksperyment jest przedmiotem niniejszej publikacji i stanowi jedną z dziedzin, którą autorzy artykułu zajmują się w swojej pracy naukowej, która w ogólności dotyczy zagadnień dekompozycji złożonych sygnałów akustycznych.

2. Wnioskowanie rozmyte

     Wnioskowanie oparte na dwuwartościowej logice Arystotelesa oraz klasycznie pojmowanych zbiorach nie jest w stanie rozwiązać wielu sprzeczności i niejednoznaczności, jakie występują przy przetwarzaniu rzeczywistych danych.
     Zaproponowana przez Zadeha w 1965 roku [1] wielowartościowa logika - logika rozmyta (z ang. fuzzy logic) wraz z opartym na niej systemem wnioskowania okazała się niezwykle przydatna w zastosowaniach inżynierskich i znalazła sobie trwałe miejsce we współczesnych naukach technicznych. Systemy logiki rozmytej charakteryzują się dużą prostotą i elastycznością struktury przy jednoczesnym zachowaniu wysokiej skuteczności. Są one oparte na bazie reguł IF - THEN, przy czym tworzenie bazy reguł jest proste i naturalne.
     Teoria zbiorów rozmytych jest uogólnieniem klasycznej teorii zbiorów. Klasyczna teoria zbiorów zakłada, że dowolny element należy lub nie należy do danego zbioru. Niech U={x} będzie zbiorem wszystkich elementów ze względu na pewną własność, zaś funkcją określającą przynależność elementu x do zbioru X, będącego podzbiorem U. Wówczas funkcja jest zdefiniowana jako:

(2.1)

     W teorii zbiorów rozmytych element może częściowo należeć do pewnego zbioru, a przynależność tę można wyrazić przy pomocy liczby rzeczywistej z przedziału [0,1]. Zatem funkcja przynależności (z ang. membership function) jest zdefiniowana następująco:

(2.2)

gdzie f(x) jest funkcją przyjmującą wartości z przedziału [0,1]. Wartości takiej funkcji są nazywane stopniami przynależności.
     Zbiory z funkcją przynależności określoną na podstawie powyższej zależności dla zawartych w nich elementów nazywamy zbiorami rozmytymi (z ang. fuzzy sets). Dwa zbiory rozmyte X1,X2U są równe, gdy spełniona jest równość:

(2.3)

     Funkcje przynależności zazwyczaj są przedstawiane w postaci graficznej i mogą mieć dowolną postać. Często stosuje się trapezoidalną funkcję przynależności, której postać przedstawiono na rys.2.1. W wielu rozwiązaniach inżynierskich postać funkcji przynależności jest jeszcze bardziej uproszczona.
     Zastosowanie zbiorów rozmytych zmienia sposób widzenia problemu. Na przykładzie z rys.2.1 widać, że teraz nie można już jednoznacznie powiedzieć o wszystkich dźwiękach z dziedziny zbioru, że są głośne. Głośne są jedynie dźwięki, dla których funkcja przynależności przyjmuje wartość jedności. Granice zbioru są jednak rozmyte i dźwięki dla dziedziny na granicach zbioru są – można powiedzieć – „mniej” lub „bardziej” ciche lub głośne, a więc ich przynależność do zbioru Głośny opisanego na dziedzinie dźwięk jest częściowa. Widzimy więc, że konieczne staje się wprowadzenie nowych definicji operacji na zbiorach rozmytych, gdyż naturalną konsekwencją teorii zbiorów rozmytych jest to, że przynależność elementów należących do jednego zbioru nie decyduje o tym, że w przypadku zdefiniowania zbioru częściowo zachodzącego na nasz zbiór, że nie przynależeć będą one do innego zbioru. I tak dźwięk „częściowo” głośny, ale o połowę cichszy niż dźwięk uznawany za głośny z wartością funkcji przynależności 1, może być w przypadku ustanowienia zbioru cichy, uznany równie dobrze za dźwięk „częściowo” cichy z wartością funkcji przynależności określonej na innym zbiorze. Dlatego teoria zbiorów rozmytych wprowadza nowe definicje operacji na zbiorach [2].


Rys. 2.1 Przykład trapezoidalnej funkcji przynależności (podano za [2]).

Podstawowe operacje na zbiorach rozmytych są zdefiniowane następująco:

  iloczyn logiczny


 

(2.4)

  suma logiczna


 

(2.5)
  uzupełnienie logiczne

(2.6)

     Praca systemu decyzyjnego opartego na logice rozmytej zależy od definicji reguł rozmytych, które są zawarte w bazie reguł. Reguły te mają postać IF...AND...THEN, np.:

IF a is A1 AND b is B1 THEN c is C1
IF a is A2 AND b is NOT B2 THEN c is C2

gdzie a, b, c są tzw. zmiennymi lingwistycznymi, natomiast A1,..., C2 są podzbiorami rozmytymi (por. rys.2.1). Istotną cechą odróżniającą reguły rozmyte od klasycznych reguł typu IF – THEN jest wykorzystanie zmiennych opisujących zbiory rozmyte, występowanie mechanizmu określającego stopień przynależności elementu do zbioru oraz wykorzystanie operacji na zbiorach rozmytych. Czynniki te powodują określone konsekwencje w procesie wnioskowania.
     Na rys. 2.2 przedstawiono schemat przetwarzania danych z wykorzystaniem wnioskowania rozmytego. W systemie tym realizowane są następujące operacje [2]:


Rys. 2.2 Schemat rozmytego przetwarzania danych (podano za [2]).

  Przetwarzanie wstępne, przetwarzanie końcowe
Celem przetwarzania wstępnego (z ang. preprocessing) jest przekształcenie danych doprowadzonych do wejścia systemu do formatu akceptowanego przez moduł wnioskowania. Analogicznie, przetwarzanie końcowe (z ang. postprocessing) służy do konwersji danych wyjściowych z tego modułu do postaci zgodnej z wymogami układów zewnętrznych. Sam moduł wnioskowania oczekuje na wejściu ciągu liczb rzeczywistych i zwraca również ciąg liczb rzeczywistych, określanych w nomenklaturze związanej z logiką rozmytą jako crisp values.

  Fuzyfikacja - rozmywanie
Procedura fuzyfikacji (z ang. fuzzification), polega na transformacji wartości z dziedziny liczb rzeczywistych na wartości z dziedziny zbiorów rozmytych. W tym celu dokonuje się wyznaczenia wartości funkcji przynależności dla kolejnych zmiennych lingwistycznych i dla danej rzeczywistej wartości wejściowej.

  Interpretacja reguł rozmytych
Niniejszy etap składa się z dwóch podetapów. W pierwszej kolejności realizowany jest proces obliczania mocy reguł. W tym celu dla każdej zmiennej w przesłankach reguły wyznaczane są stopnie przynależności do odpowiedniego zbioru rozmytego. Jeśli moc reguły jest zerowa, wówczas uznaje się, że nie nastąpiła aktywacja reguły. Jednocześnie wyznaczany jest zbiór rozmyty będący rezultatem uaktywnienia reguły. Zależy on od kształtu odpowiedniej funkcji przynależności oraz obliczonej mocy reguły. W następnym kroku następuje agregacja aktywnych reguł. Polega ona na sumowaniu rozmytych zbiorów wynikowych ze wszystkich reguł. Otrzymany w ten sposób zbiór rozmyty jest zbiorem wynikowym wnioskowania rozmytego.

  Defuzyfikacja
Po zakończeniu procedury agregacji reguł, wynikiem wnioskowania jest zbiór rozmyty. Zadaniem defuzyfikacji (z ang. defuzzification), zwanej również wyostrzaniem, jest zatem przekształcenie odwrotne do rozmywania, czyli transformacja wartości z dziedziny liczb rzeczywistych, której to można dokonać na wiele sposobów w zależności od konkretnego zastosowania.

     Etapy projektowania systemu rozmytego można przedstawić następująco:

1.  Określenie zadania oraz określenie sposobu jego realizacji
2. Określenie zmiennych lingwistycznych i odpowiadających im atrybutów rozmytych
3. Określenie funkcji przynależności
4. Określenie bazy reguł rozmytych
5. Wybór metody defuzyfikacji

     Pomimo prostej i naturalnej struktury systemów rozmytych nie są znane jeszcze metody umożliwiające optymalny dobór kształtu funkcji przynależności oraz bazy reguł. Z tej przyczyny bardzo często zadania wymienione w punktach 3 i 4 są realizowane na drodze eksperymentalnej [2].

3. Usuwanie szumu i zakłóceń z wykorzystaniem inteligentnych systemów wnioskowania rozmytego

     Poniżej zaprezentujemy metodę usuwania szumu z wykorzystaniem połączenia treningu sieci neuronowej, jako ogniwa decyzyjnego, z regułami opartymi na logice rozmytej. W tym celu skorzystamy z komend dostępnych w pakiecie Fuzzy Logic w środowisku MATLAB.
     Zaproponowana metoda ma służyć do usuwania zakłóceń (szumu) z sygnału dwoma sposobami: pierwsza bazuje na reprezentacji czasowej sygnału, druga – na jego reprezentacji widmowej. W obu przypadkach szum nie jest dany wprost. Zakłada się jednak, że szum obecny w nagraniu powstał w wyniku operacji filtracji N-tego rzędu szumu białego (można nawet założyć, że ta zależność jest silnie nieliniowa, jednak komplikuje to znacznie metodę rozwiązania problemu i wydłuża czas rozwiązywania problemu pomimo, ale cechuje się dużą dokładnością). W ten sposób, na podstawie wygenerowanej próbki szumu białego, można estymować szum obecny w nagraniu, traktując sygnał użyteczny jako niepożądany. W tym celu należy odpowiednio zdefiniować sygnały uczące oraz sygnał wejściowy i wyjściowy. Jeżeli uczynione to zostanie nieprawidłowo, uzyskana zostanie zaszumiona postać sygnału użytecznego. Na potrzeby eksperymentu ustalono, że rząd filtru jakim należy przefiltrować szum losowy, aby uzyskać szum obecny w nagraniu, wynosi 4 (równie dobrze można zastosować tutaj model szumu i estymować zamiast współczynników filtru – parametry modelu). Stąd wniosek, że macierz ucząca powinna zawierać oryginalną próbkę szumu losowego oraz trzy wektory zawierające ten sam fragment szumu opóźniony odpowiednio o 3, 2 oraz 1 próbkę. Teraz należy zdefiniować ilość funkcji przynależności (przykładowo 2), odpowiednio do ilości wejść systemu i ilości danych treningowych (jeżeli wyspecyfikowana zostanie tylko jedna liczba, zostanie ona powielona na pozostałe niezbędne do określenia wymiary). Za pomocą funkcji genfis1 (z ang. Generate Fuzzy Inference System), generowany jest system decyzyjny oparty na logice rozmytej na podstawie danych uczących z ilością funkcji przynależności zgodnie z tym co uprzednio zostało podane (minimalna ilość funkcji przynależności wynosi 2). Dla tak wygenerowanego systemu definiuję długość kroku (interwał) analizy ( w naszym przypadku wartość kroku wynosiła 0.2). Uczenie systemu (tworzenie bazy reguł) następuje w wyniku realizacji polecenia anfis, które to właśnie dokonuje treningu przypisanej temu algorytmowi sieci neuronowej. W programie zaznacza się iż trening systemu dokonywany jest w oparciu o bazę reguł opisaną jako Takagi – Sugeno i zwanych sterownikami Takagi – Sugeno. Reguły te i zasady ich tworzenia są dobrze opisane w literaturze [1], jednak ogólna własność tej bazy reguł jest taka iż rozmycie następuje jedynie w warstwie warunkowej IF, natomiast w warstwie THEN następuje już ścisłe wnioskowanie według zadanej funkcji f. W wyniku tego otrzymuje się wyjściowy wektor reguł wnioskowania. Teraz dopiero zaczyna się właściwy proces wnioskowania rozmytego. W oparciu o stworzoną bazę reguł dane wprowadzane do systemu są wartościowane za pomocą funkcji evalfis, oceniającej przynależność konkretnego elementu zbioru wejściowego do danego zbioru rozmytego, na podstawie badania funkcji przynależności. Wynikiem wnioskowania według wygenerowanych reguł jest estymata szumu zawartego w sygnale. Po odjęciu tejże estymaty od sygnału zarejestrowanego otrzymuję sygnał zbliżony do oryginału. Efekty tego procesu przedstawia rys. 3.1.

 
Rys. 3.1 Efekt usuwania szumu w oparciu o system decyzyjny z logiką rozmytą: a) sygnał wzorcowy;b) sygnał
zaszumiony; c) sygnał otrzymany w wyniku procedury usuwania szumu przy wykorzystaniu wnioskowania
rozmytego w sensie Takagi – Sugeno.

     Efekt zmniejszenia poziomu szumu w sygnale jest również doskonale widoczny w dziedzinie częstotliwości, co pokazano na rys. 3.2. Widać, że poziom szumu wyraźnie się zmniejszył nie zniekształcając tym samym informacji zawartej w sygnale. Jest to niewątpliwie najważniejsza z zalet tego rodzaju metod. Niedoszacowanie estymaty szumu jest wynikiem zastosowania mniejszej niż to jest wymagane ilości funkcji przynależności (zastosowano minimalną ich ilość) oraz krótkiego czasu treningu (zaledwie 10 epok), co było podyktowane głównie czasem obliczeń, który w przypadku tego systemu jest bardzo długi. Przy podanych parametrach na uzyskanie wyników dla fragmentu zawierającego 2048 próbek trzeba czekać do 5 minut na przeciętnej klasy komputerze PC z procesorem 300 MHz i 64 MB pamięci RAM. Dwukrotne zwiększenie ilości reguł i czasu treningu wydłuża czas obliczeń 16 - krotnie.


Rys. 3.2 Efekt działania procedury usuwania szumu w oparciu o system decyzyjny z logiką rozmytą
przedstawiony w dziedzinie widma sygnału: a) widmo szumu losowego; b) widmo sygnału z szumem;
c) widmo sygnału po operacji odszumiania.

     Znacznie szybszy (na wyniki trzeba czekać tylko kilkanaście sekund) i dokładniejszy, przy tych samych parametrach, jest system dokonujący inteligentnego odejmowania widmowego. W tym celu, zamiast reprezentacji czasowej danych wejściowych, jest dostarczana do systemu reprezentacja widmowa szumu losowego oraz sygnału z szumem. Estymacja dotyczy widma szumu w sygnale na podstawie założenia o liniowej zależności pomiędzy szumem losowym a szumem obecnym w sygnale użytecznym (zgodnie ze wzorami podanymi dla metody odejmowania widmowego). Wyniki tej metody przedstawia rys.3.3. Na rys.3.4 przedstawiono przebiegi czasowe sygnałów poddanych operacji usuwania szumu. Oczywiście pojawiają się tu problemy związane z powrotem z dziedziny częstotliwości do dziedziny czasu w wyniku odwrotnej transformaty Fouriera (zniekształcenia brzegowe, efekt „singing” czy tzw. narrow band burst), jednak wydaje się zaznaczać w tym przypadku wyższość metod inteligentnych nad klasycznymi, wynikająca z większej dokładności, efektywności oraz co najważniejsze braku konieczności znajomości widma szumu obecnego w sygnale. Jest to ważne w sytuacji kiedy nie ma możliwości pobrania próbki szumu.


Rys. 3.3 Efekt inteligentnego odejmowania widmowego z zastosowaniem systemu rozmytego:
a) widmo szumu; b) widmo sygnału z szumem; c) widmo sygnału po usunięciu szumu.


Rys. 3.4 Efekt procedury odejmowania widmowego z zastosowaniem systemu rozmytego – przebiegi czasowe:
a) sygnał wzorcowy; b) sygnał użyteczny z szumem; c) estymata sygnału wzorcowego otrzymana
metodą inteligentnego odejmowania widmowego.

     W praktyce metody te zastosowano do usuwania szumu i zakłóceń z różnych sygnałów, między innymi z sygnału muzycznego. Jest to rodzaj sygnału, który jest najbardziej wrażliwy na wszelkiego rodzaju ingerencję. Testy odsłuchowe fragmentów dźwiękowych potwierdziły poprzednio poczynione spostrzeżenia odnośnie braku degradacji sygnału użytecznego, pomimo znacznego poziomu szumu i zakłóceń. Biorąc pod uwagę czułość ludzkiego ucha na wszelkiego rodzaju zniekształcenia niesionej przez sygnał informacji, wynik ten należy uznać za obiecujący do dalszych, bardziej wyrafinowanych eksperymentów.

4. Wnioski

     Wyniki eksperymentów pozwalają sądzić, że metody usuwania szumu i zakłóceń z sygnału za pomocą inteligentnych systemów decyzyjnych z wnioskowaniem rozmytym pozwolą na skuteczniejsze wyizolowanie właściwej informacji z rejestrowanego sygnału. W wyniku tego można otrzymać dokładniejszą i niezniekształconą informację o obserwowanym zjawisku czy procesie.
     Warto tu zwrócić uwagę na znaczenie innej cechy systemów rozmytych. Otóż możliwość estymacji jednego sygnału na podstawie np. szumu losowego i możliwość separacji tychże sygnałów nasuwa pomysł, aby zastosować ten rodzaj ekstrakcji do usunięcia z sygnału innych struktur takich jak jednego instrumentu z duetu, czy solisty z orkiestry poprzez wnioskowanie rozmyte w dziedzinie częstotliwości lub czasu, mając dostępny wygenerowany szum losowy i sygnał, pełniący rolę obserwacji. Jeżeli udałoby się znaleźć ogólną zależność pomiędzy chwilowym widmem szumu w sygnale, a szumem sztucznie wygenerowanym, możliwe byłoby całkowite usunięcie niepożądanego zakłócenia (szumu), bez uprzedniej znajomości jego postaci. Takie możliwości istnieją w przypadku usuwania szumu i zakłóceń z zastosowaniem inteligentnych systemów decyzyjnych bazujących na logice rozmytej. Badania nadal trwają.
     W ostatnim przypadku systemy inteligentnego usuwania zakłóceń mają jeszcze jedną pożądaną zaletę – pozwalają na uwzględnienie możliwości percepcyjnych słuchacza i jego prywatnych preferencji. Jest to o tyle ważne, gdyż coraz częściej to słuchacz korzysta z narzędzi usuwania szumów i trzasków i to on podejmuje decyzje o wyborze właściwej metody, która – jego zdaniem – przynosi zadowalający efekt.
     Metody inteligentne to bardzo zaawansowane narzędzia o ogromnych wymaganiach sprzętowych i tak skomplikowane, że w niektórych przypadkach ciężko mówić już o algorytmach. Budowanie całych systemów automatycznego rozpoznawania i usuwania szumu bez potrzeby budowania modeli, określania własności statystycznych sygnału i innych jego cech jest też tylko pozornym uproszczeniem. W zamian otrzymujemy narzędzia coraz doskonalsze, ale ich zrozumienie jest coraz trudniejsze. Pomimo tego, że większość z nich jest w fazie eksperymentalnej, to jednak już dzisiaj tworzone są programy z myślą o zastosowaniu takich właśnie metod jak logika rozmyta i sieci neuronowe. Jedynym problemem jest tutaj koszt obliczeniowy, jednak ten problem zostanie z pewnością rozwiązany już za niedługi czas, sądząc po rozwoju techniki komputerowej.

Literatura

[1]    D. Rutkowska, M. Piliński, L. Rutkowski: Sieci neuronowe, algorytmy genetyczne i systemy rozmyte. Wydawnictwo Naukowe PWN, Łódź 1999
[2]    A. Czyżewski: Dźwięk cyfrowy. Akademicka Oficyna Wydawnicza EXIT, Warszawa 1998
[3]    J. Korbicz, A. Obuchowski, D. Uciński: Sztuczne sieci neuronowe. Podstawy i zastosowania. Akademicka Oficyna Wydawnicza PLJ, Warszawa 1994