n - cygnus
Transkrypt
n - cygnus
ZAGADNIENIE W POSTACI OGÓLNEJ
s(n) - sygnał 1
e(n) - sygnał 2
d (n)
-sygnał obserwowany
x(n) -sygnał skorelowany z e(n)
i nieskorelowany z s(n)
xˆ(n) -model sygnału d(n)
(n) s(n) e(n) xˆ(n)
Szukane:
h [h0 , h1 ,..., hM 1 ]T
Kryterium:
- odpowiedź impulsowa filtru FIR,
min E [ 2 (n)]
-błąd
T - transpozycja
REDUKCJA ZAKŁÓCEŃ
s(n) -sygnał akustyczny
e(n) -zakłócenie addytywne
d (n)-sygnał zakłócony
x(n) -zakłócenie skorelowane z e(n)
i nieskorelowane z s(n)
xˆ(n) -odfiltrowane zakłócenie
(n) s(n) e(n) xˆ(n)
Szukane:
h [h0 , h1 ,..., hM 1 ]T
Kryterium:
- odpowiedź impulsowa filtru FIR,
min E [ 2 (n)]
-błąd
T - transpozycja
REDUKCJA ZAKŁÓCEŃ - PRZYKŁAD
Przykładowa odpowiedź impulsowa filtru tłumiącego zakłócenie
TŁUMIENIE ECHA
s(n) -sygnał przychodzący
e(n) -echo mowy wychodzącej
d (n)-sygnał zakłócony echem
x(n) -mowa wychodząca-
skorel. z e(n)
i nieskorelowana z s(n)
xˆ(n) -odfiltrowana mowa wychodząca
(n) s(n) e(n) xˆ(n)
Szukane:
h [h0 , h1 ,..., hM 1 ]T
Kryterium:
- odpowiedź impulsowa filtru FIR,
min E [ 2 (n)]
- błąd
T - transpozycja
TŁUMIENIE ECHA - PRZYKŁAD
Przykładowa odpowiedź impulsowa filtru tłumiącego echo
IDENTYFIKACJA OBIEKTU DYNAMICZNEGO
s(n) -szum
e(n) -sygnał wyjściowy obiektu
d (n)-sygnał zakłócony (obserwowany)
x(n) -sygnał pobudzający-
skorel. z e(n)
i nieskorelowany z s(n)
xˆ(n) -sygnał wyjściowy modelu
(n) s(n) e(n) xˆ(n)
Szukane:
h [h0 , h1 ,..., hM 1 ]T
Kryterium:
- odpowiedź impulsowa filtru FIR,
min E [ 2 (n)]
- błąd
T - transpozycja
KOREKCJA KANAŁU
s(n)
e(n)
s(n) -szum
e(n) – impulsy (symbole)
nadawane
d(n) – kopia impulsów
nadawanych
x(n) - sygnał wyjściowy kanału
d (n)
x(n)
xˆ(n)
-sygnał wyjściowy korektora
(n) s(n) e(n) xˆ(n)
Szukane:
h [h0 , h1 ,..., hM 1 ]T
Kryterium:
- odpowiedź impulsowa filtru FIR,
min E [ 2 (n)]
- błąd
T - transpozycja
PREDYKCJA
x(n) - bieżąca próbka sygnału
s(n) - szum (może być = 0)
d (n)-sygnał obserwowany
xˆ(n) -predykcja próbki x(n)
(n) s(n) x(n) xˆ(n)
Szukane:
a [a1,..., aM ]T
Kryterium:
- współczynniki predykcji,
min E [ 2 (n)]
T - transpozycja
-błąd
predykcji
PREDYKCJA - PRZYKŁAD
Sygnał mowy (czarny) i jego predykcja (czerwony)
-10 współczynników predykcji
ZAGADNIENIE W POSTACI OGÓLNEJ
s(n) - sygnał 1
e(n) - sygnał 2
d (n)-sygnał obserwowany
x(n) -sygnał skorelowany z e(n)
i nieskorelowany z s(n)
xˆ(n) -model sygnału d(n)
(n) s(n) e(n) xˆ(n)
Szukane:
h [h0 , h1 ,..., hM 1 ]T
Kryterium:
- odpowiedź impulsowa filtru FIR,
min E [ 2 (n)]
- błąd
T - transpozycja
Rozwiązanie (filtr Wienera)
M 1
xˆ (n) hi x(n i ) h T x (n)
gdzie
i 0
x ( n)
x(n 1)
x (n)
x(n M 1)
(n) d (n) xˆ(n) d (n) h T x (n)
2 (n) [d (n) h T x (n)]2 d 2 (n) 2 d (n) h T x (n) h T x (n) x T (n) h
E[ 2 (n)] E[d 2 (n)] 2 h T E [d (n) x (n)] h T E [ x (n) x T (n)]h
Rozwiązanie (filtr Wienera)
E[ 2 (n)] E[d 2 (n)] 2 h T E [d (n) x (n)] h T E [ x (n) x T (n)]h
E[d (n) x(n)]
E
[
d
(
n
)
x
(
n
1
)]
p E [d (n) x (n)]
E[d (n) x(n M 1)]
Podstawiamy
R0 RM 1
T
C E x (n) x (n) {cij }i , j 0,1,, M 1
R
M 1 R0
gdzie
cij E [ x(n i) x(n j )] Ri j
- współczynnik autokorelacji sygnału x(n)
Rozwiązanie (filtr Wienera)
min E[ 2 (n)] min {E[d 2 (n)] 2 h T p h T C h}
Rozwiązanie:
T
T
2
E[ (n)] 2 [h p ]
[h C h ] 0
h
h
h
2 p 2C h 0 C h p
Dobre wyniki dla sygnału s(n) i x(n) o charakterze stacjonarnym
Adaptacja filtru
1.
Blokowa – np. dla mowy co 10-30 ms oblicza się nową odpowiedź impulsową
a) obliczenie wsp. autokorelacji sygnału x i wsp. korelacji sygn. d i x
Ri x(n) x(n i ),
n
pi d (n) x(n i )
i 0,1, , M 1
n
b) obliczenie współczynników filtru – rozwiązanie układu równań liniowych
Ch p
c) filtracja
xh
Adaptacja filtru
2.
Sekwencyjna
- Co próbkę oblicza się nowe współczynniki filtru, dodając poprawkę
do estymaty uzyskanej dla poprzedniej próbki.
h (n 1) h (n) h (n)
h (n)
- poprawka w chwili n
Poprawki winny powodować zmniejszenie mocy błędu
- kryterium dla metod LMS (least mean square)
Metoda gradientowa
(SG – stochastycznego gradientu)
- należy do metod LMS
h (n) grad[ (n)]2
[ (n)]2
M 2
Adaptacja sekwencyjna
Moc chwilowa błędu:
[ (n)]2 [d (n) h T (n) x (n)]2
jest funkcją wektora współczynników filtru
h (n)
Gradient (kierunek wzrostu mocy błedu):
grad [ (n)]2
[d (n) h T (n) x (n)]2 2 (n) x (n)
h
Poprawka (w kierunku przeciwnym do gradientu):
Metoda stochastycznego gradientu:
h (n) 2 grad [ (n)]2 (n) x (n)
h (n 1) h (n) h (n) h (n) (n) x (n)
– szybkość adaptacji
Metody LS (najmniejszej sumy kwadratów)
W każdej chwili n obliczamy nowe współczynniki filtru h0(n),…,hM-1(n)
M 1
xˆ (n) hi (n) x(n i ) h T (n) x (n)
(n) d (n) xˆ (n) d (n) h T (n) x (n)
i 0
n
Kryterium:
min E (n)
h (n)
E (n) 2 (i )
(okno początkowe, rozszerzające się)
i 1
n
E (n) n i 2 (i )
i 1
n
E (n) 2 (i )
i n0
Metody LS (najmniejszej sumy kwadratów)
n
n
E (n) (i ) [d (i ) h T (n) x (i )]2
2
i 1
n
i 1
n
n
d (i ) 2 d (i ) x (i ) h (n) h (n) x (i ) x T (i ) h (n)
2
i 1
n
T
i 1
T
i 1
d 2 (i ) 2 p T (n) h (n) h T (n) C (n) h (n)
i 1
n
gdzie
rozwiązanie
p (n) d (i ) x (i)
i 1
n
C (n) x (i ) x T (i )
C (n) h (n) p(n)
i 1
Wariant sekwencyjny
RLS (recursive least squares)
C (n 1) h (n 1) p (n 1)
h (n),
C ( n) h ( n ) p ( n)
Znamy rozwiązanie
szukamy
Okno zanikające (dla =1 przechodzi w początkowe)
n
E ( n)
i 1
n
n i
i 1
n
(i) n i [d (i ) h T (n) x (i)]2
i 1
n
d (i ) 2
2
gdzie
n i
i 1
n i d 2 (i )
i 1
n
n i 2
n
p ( n)
i 1
T
i 1
2 p T ( n) h ( n)
n i
n
d (i ) x (i ) h (n) h (n) n i x (i ) x T (i ) h (n)
T
d (i ) x (i )
h T ( n ) C ( n) h ( n)
n 1
n i d (i) x (i) d (n) x (n)
i 1
n 1
n 1i d (i ) x (i ) d (n) x (n) p (n 1) d (n) x (n)
i 1
podobnie
C (n) C (n 1) x (n) x T (n)
Wariant sekwencyjny
RLS (recursive least squares)
Aby uniknąć odwracania macierzy korzystamy ze wzoru:
Jeśli A, B – macierze kwadratowe, x – wektor, oraz
A
to
A
1
B
Podstawiamy:
Stąd
1
B x xT B
1 xT B x
A C (n),
1
B 1 C (n 1),
1
C (n) C (n 1) g (n) x (n) C (n 1),
Z drugiej strony
B 1 xx T
1
1
T
x x ( n)
g ( n)
C 1 (n 1) x (n)
(1 1 x T (n)C 1 (n 1) x (n))
C 1 (n) x (n) 1 C 1 (n 1) x (n) 1 g (n) x T (n) C 1 (n 1) x (n)
g (n)(1 1 x T (n)C 1 (n 1) x (n)) 1 g (n) x T (n) C 1 (n 1) x (n) g (n)
Ostatecznie
h (n) C 1 (n) p(n) C 1 (n) [ p(n 1) d (n) x (n)] C 1 (n) p(n 1) d (n)C 1 (n) x (n)
C 1 (n 1) p(n 1) g (n) x T (n)C 1 (n 1) p(n 1) d (n) g (n) h (n 1) g (n)[d (n) x T (n)h (n 1)]
h (n 1)
h (n 1)
Wariant sekwencyjny
RLS (recursive least squares)
h (n) h (n 1) g (n)[d (n) x T (n)h (n 1)]
Błąd a priori
pr (n) d (n) x T (n)h (n 1)
Błąd a posteriori
po (n) d (n) x T (n)h (n)
Współczynnik „zapominania”: (wpływa na stabilność numeryczną algorytmu RLS)
Start algorytmu:
Krok n: obliczamy
n 1,
g (n),
C 1 (0) I ,
h (n),
h (0) 0
C 1 (n)
„Rzadkie” modele
Projektując filtr H(z) można wykorzystać naszą wiedzę o problemie.
Np. w zagadnieniu tłumienia echa można się spodziewać odpowiedzi impulsowej:
h [0, 0,,0, hm , hm1 ,..., hM 1 ]T
gdzie m – opóźnienie echa
Długość odpowiedzi impulsowej (M) musi być większa niż opóźnienie echa
Podobnie w zagadnieniu identyfikacji odpowiedzi impulsowej kanału wielodrożnego
można założyć liczbę dróg (K) i szukać odpowiedzi impulsowej:
h [0, ,0, h j (1) ,0, ,0, h j ( 2 ) ,0, ,0, h j ( K ) ]T
Tworzymy w ten sposób tzw. „rzadkie” modele sygnałów lub układów
„Rzadkie” modele – c.d.
Przepiszmy równanie błędu dla kolejnych chwil czasowych:
( n) d ( n) x T ( n) h
(n 1) d (n 1) x T (n 1) h
d Xh
(1) d (1) x T (1) h
macierz n x M
W metodach LS minimalizujemy energię błędu:
min || ||2 min || d X h ||2
h
h
„Rzadkie” modele – c.d.
min || ||2 min || d X h ||2
h
h
|| d X h || 2 (d X h )t (d X h ) d t d 2 d t X h h t X t X h
d t d 2 pt h h tC h
gdzie
p XTd, C XT X
Przyrównując pochodne do zera
otrzymuje się układ równań liniowych
|| d X h ||2 2 p 2C h 0
h
Chp
Rozwiązując ten układ równań liniowych, otrzymamy najczęściej odpowiedź impulsową,
która nie jest „rzadka” (nie zawiera ciągów zer)
__
_
„rzadkiego” rozwiązania trzeba szukać bezpośrednio, dążąc z Xh do d
„Rzadkie” modele – matching pursuit (MP)
min || ||2 min || d X h ||2
h
h
X [ X 1 , X 2 , , X M ]
K
„Rzadki” model wektora docelowego
d:
d h j (i ) X j (i )
*
i 1
jest kombinacją liniową K < M kolumn macierzy
Matching pursuit:
Kolumny wybieramy kolejno,
stopniowo zmniejszając błąd
d d*
X
„Rzadkie” modele – matching pursuit (MP)
min || ||2 min || d X h ||2
h
h
X [ X 1 , X 2 , , X M ]
K
„Rzadki” model wektora docelowego
d:
d h j (i ) X j (i )
*
i 1
jest kombinacją liniową K < M kolumn macierzy
X
wektor
docelowy
_
d
Matching pursuit:
Kolumny wybieramy kolejno,
stopniowo zmniejszając błąd
i d d
*
i
1
X3
X2
f
hj(1)Xj(1)
X1
pierwsza
wybrana
kolumna
„Rzadkie” modele – matching pursuit (MP)
Wybór drugiej kolumny:
wektor
docelowy
Matching pursuit:
Kolumny wybieramy kolejno,
stopniowo zmniejszając błąd
d d
X3
2
1
X2
*
hj(2)Xj(2)
f
hj(1)Xj(1)
X1
„Rzadkie” modele – OMP
Wada MP: wolna zbieżność do wektora docelowego
(odpowiednio mały błąd uzyskujemy przy dużym K, a więc
model nie jest bardzo „rzadki”)
Orthogonal MP (OMP):
rzutowanie wektora
docelowego na
podprzestrzeń
rozpiętą na kolejno
wybieranych
kolumnach
_
d
X3
OMP też nie daje gwarancji
optymalnego rozwiązania,
chyba że przeszukamy wszystkie
możliwe podprzestrzenie w liczbie
M!
K!( M K )!
wektor
docelowy
X2
f
hj(1)Xj(1) + hj(2)Xj(2)
X1
„Rzadkie” modele – min L1
W metodach LS minimalizujemy energię błędu wyrażoną normą euklidesową (norma L2):
n
min || || min || d X h || min i2
h
2
2
2
2
h
h
i 1
Dodajmy człon ograniczający normę L1 szukanej odpowiedzi impulsowej:
M 1
|| h ||1 | h j |
j 0
Na przykład w ten sposób:
min{ || h ||1 || ||22 } min{ || h ||1 || d X h ||22 }
h
h
Takie zadanie ma analityczne rozwiązanie i zapewnia „rzadszą”
odpowiedź impulsową niż metody LMS