|
wstecz |
dalej
|
| Archiwum
Process Control Club (2001, poz.10) |
|
| |
|
Artykuł w formacie 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,X2 U 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 |
|