Introduction `a la déconvolution/identification aveugle

Transcription

Introduction `a la déconvolution/identification aveugle
Introduction à la
déconvolution/identification
aveugle
La déconvolution est une opération en traitement
du signal qui, idéalement, corrige les effets de la
convolution performée par un système (canal) linéaire
et invariant dans le temps avec un signal d’entrée.
Dans la déconvolution, le signal de sortie et le système
sont connus; l’objectif étant de reconstruire le signal
d’entrée. Dans la déconvolution aveugle, seul le signal
de sortie est connu et l’objectif est de retrouver le
système et le signal d’entrée.
INRS-EMT J. Benesty
Plan
• Introduction au problème de la déconvolution
aveugle
• Méthode en sous-espaces
• Algorithme de Bussgang
• Cas particuliers importants de l’algorithme de
Bussgang
INRS-EMT J. Benesty
1
Introduction au problème de la
déconvolution aveugle
Soit un sytème S, inconnu, linéaire et invariant dans
le temps, dont le signal d’entrée s(n) est supposé
être i.i.d. (voir Fig. 1). Etant donnée la séquence
d’observations x(n) à la sortie du système, essayer de
retrouver s(n), ou de manière équivalente identifier
l’inverse S−1 du sytème S.
DONNEES
OBSERVABLES
DONNEES
INOBSERVABLES
SYSTEME
s(n)
S
x(n)
Figure 1: Principe de la déconvolution.
Si le sytème S est à phase minimale, alors S est stable
ainsi que le sytème inverse S−1. Dans ce cas, on peut
voir la séquence d’entrée s(n) comme l’innovation de
la sortie du système x(n), et le système inverse S−1
est juste un filtre blanchisseur. Ainsi, le problème de
la déconvolution aveugle est résolu.
INRS-EMT J. Benesty
2
Cependant, en pratique, le système S n’est jamais à
phase minimale.
Typiquement, les égaliseurs adaptatifs utilisés en
communications numériques exigent une séquence
d’entrainement (training period), durant laquelle
une séquence de données connues est transmise.
Cependant, dans de nombreuses applications, il est
désirable pour un récepteur de s’adapter sans avoir
accès à un signal de référence.
Il existe deux approches
déconvolution aveugle:
principales
pour
la
• approches basées sur des statisques du second ordre
(SOS), et
• approches basées sur des statisques supérieures à
deux (HOS).
INRS-EMT J. Benesty
3
Méthode en sous-espaces
Cette méthode est basée sur des statistiques du second
ordre (SOS). La Fig. 2 explique le contexte.
Source
Channels
Observations
b1 (n)
h1
x1 (n)
+
b2 (n)
s(n)
h2
.
.
.
+
hM
+
x2 (n)
bM (n)
.
.
.
x M(n)
Figure 2: Système RIF multi-voies.
On a un système RIF multi-voies. Le signal d’entrée de
ce système est s(n) et la m-th séquence d’observation
xm(n) s’écrit:
xm(n) = Hms(n) + bm(n),
INRS-EMT J. Benesty
(1)
4
où
xm(n) =
bm(n) =
s(n) =
xm(n) xm(n − 1) · · ·
bm(n) bm(n − 1) · · ·
s(n) s(n − 1) · · ·
T
xm(n − L + 1)
bm(n − L + 1)
s(n − 2L + 2)
T
T
,
,
,
et

Hm
0
···
hm,0 · · · hm,L−1
 0
···
hm,L−1 · · ·
hm,0
=
..
...
...
 ..
···
0
···
0
hm,0

0
0
..

.

hm,L−1
Nous supposons que le bruit bm(n) est décorrélé avec
le signal d’entrée s(n). Le nombre de capteurs est
égal à M and on exige que M ≥ 2. La matrice des
paramètres Hm, de taille L × 2L − 1, est construite à
partir du vecteur:
hm =
hm,0 hm,1 · · ·
INRS-EMT J. Benesty
hm,L−1
T
,
5
qui est la réponse impulsionnelle du m-th canal. Ce
vecteur est de longueur L et correspond à la réponse
impulsionnelle la plus longue du système. Maintenant,
le système global peut s’écrire:
x(n) = Hs(n) + b(n),
(2)
avec
x(n) =
b(n) =
xT1 (n)
bT1 (n)
T
···
xTM (n)
···
bTM (n)
T
,
,
et
H=
HT1
···
HTM
T
.
La matrice de corrélation des observations est:
Rxx = E{x(n)xT (n)}
= HRssHT + Rbb,
INRS-EMT J. Benesty
(3)
6
avec

Rxx
Rx1,x1
 Rx ,x
2 1
=
.

.
RxM ,x1
Rx1,x2
...
···
···
...

Rx1,xM
Rx2,xM 
,
..

RxM ,xM
Rxi,xj = E{xi(n)xTj (n)}, i, j = 1, 2, ..., M,
Rbb = E{b(n)bT (n)},
et
Rss = E{s(n)sT (n)},
où E{·} est l’espérance mathématique. Les matrices
de corrélation du signal d’entrée et du bruit sont
respectivement Rss et Rbb. A noter que Rss est
de dimension 2L − 1 × 2L − 1 alors que Rxx et Rbb
sont de dimensions M L × M L.
Conditions d’identifiabilité du système:
En l’absence de bruit, les hypothèses sous lesquelles la
matrice des paramètres H peut être identifiée (à une
constante près) sont les suivantes:
INRS-EMT J. Benesty
7
A1.
Les M polynomes définis par Hm(z) =
L−1
−k
, m = 1, 2, ..., M , n’ont pas de zéros en
k=0 hm,k z
commun. Ceci implique que la matrice des paramètres
H est de rang plein (colonnes) (càd rang[H] = 2L − 1).
A2. La matrice de corrélation Rss est de rang plein
(càd rang[Rss] = 2L − 1).
Identification des
hm, m = 1, 2, ..., M :
réponses
impulsionnelles
Nous donnons ici le principe d’identification aveugle du
système. On considère d’abord le cas sans bruit.
La méthode en sous-espaces est basée sur les relations
linéaires entre les sorties des capteurs:
xTi (n)hj = xTj (n)hi, i, j = 1, 2, ..., M, i = j.
(4)
En effet, puisque xi = s∗hi, ainsi xi ∗hj = s∗hi ∗hj =
xj ∗ hi (le symbole ∗ est l’opérateur de convolution
linéaire).
Si on multiplie à gauche les deux membres de (4) par
xi(n) et en prenant l’espérance, on obtient un ensemble
de M (M − 1) relations de la forme:
Rxi,xi hj = Rxi,xj hi, i, j = 1, 2, ..., M, i = j.
INRS-EMT J. Benesty
(5)
8
L’ensemble d’équations décrit par (5) peut être arrangé
de la manière utile suivante dans laquelle on a réduit
le nombre d’équations de M (M − 1) à M :
Rh = 0M L×1,
(6)
où
 
R=

i=1 Rxi ,xi
−Rx1,x2
..
−Rx1,xM
−R
x2,x1
i=2 Rxi ,xi
···
···
...

−RxM ,x1
···

,

..
i=M
Rxi,xi
(7)
et
h=
hT1
hT2
···
hTM
T
.
Puisque le vecteur h est différent de zéro, la matrice
R, de dimension M L × M L, n’est pas de rang plein et
la dimension de son sous-espace nul est supérieur ou
égal à 1.
En fait, si les conditions d’identifiabilité du système
sont respectées, la dimension du sous-espace nul de R
est exactement 1 et rang[R] = M L − 1. Dans ce cas,
R a une seule valeur propre nulle et le vecteur propre
correspondant est h.
INRS-EMT J. Benesty
9
Finalement, identifier h revient à trouver le vecteur
propre correspondant à la plus petite valeur propre de
la matrice R.
Il existe de nombreux algorithmes adaptatifs pour
estimer les vecteurs propres minimum et maximum
d’une matrice.
Dans le cas où les différents bruits sont blancs,
décorrélés les uns des autres, et ont une même variance
σb2, la plus petite valeur propre de R est σb2 et le vecteur
correspondant est la solution désirée.
INRS-EMT J. Benesty
10
Algorithme de Bussgang
La Fig. 3 explique le contexte.
DONNEES
INOBSERVABLES
CANAL
s(n)
x(n)
{hl }
EGALISEUR
AVEUGLE
ŝ(n)
Figure 3: Egalisation aveugle.
La relation entrée-sortie du canal est:
x(n) =
+∞
hls(n − l), n = 0, ±1, ±2, ...,
(8)
l=−∞
où s(n) est la séquence des données appliquées à
l’entrée du canal et x(n) est le résultat de sortie de ce
canal. On suppose que:
h2l = 1.
(9)
l
Aussi, le canal est en général non-causal, càd
hl = 0 pour l < 0.
INRS-EMT J. Benesty
11
Le problème que l’on désire résoudre est le suivant:
étant donné le signal reçu (sortie du canal) x(n),
reconstruire la séquence originale s(n) appliquée à
l’entrée du canal.
Par la suite, on supposera que le signal s(n) est blanc,
de moyenne nulle et de variance unitaire, càd:
E{s(n)} = 0
et
E{s(n)s(l)} =
1, l = n
.
0, l =
n
(10)
(11)
Déconvolution itérative:
Soit wi la réponse impulsionnelle du filtre inverse idéal,
qui est reliée à la réponse impulsionnelle hi du canal
par la formule:
wihk−i = δk ,
(12)
i
où
1, k = 0
.
(13)
0, k = 0
Un filtre inverse défini de cette manière est idéal
dans le sens qu’il reconstruit la séquence des données
δk =
INRS-EMT J. Benesty
12
transmises s(n) correctement. En effet, on a:
wix(n − i) =
i
i
wihls(n − i − l),
(14)
l
en faisant le changement d’indice l = k − i et en
interchangeant l’ordre des sommes, on obtient:
wix(n − i) =
i
s(n − k)
=
wihk−i
i
k
s(n − k)δk
k
= s(n),
(15)
qui est le résultat désiré.
Mais la réponse impulsionnelle hl n’est pas connue, on
ne peut donc pas utiliser la démarche ci-dessus pour
déterminer le filtre inverse.
A la place, on utilise une procédure de déconvolution
itérative pour calculer un filtre inverse approximatif
ŵl(n). Soit le signal:
y(n) =
L
ŵl(n)x(n − l).
(16)
l=−L
INRS-EMT J. Benesty
13
Les coefficients ŵl(n), l = 0, ±1, ..., ±L, seront
estimés de telle sorte que:
lim E{y(n)y(n − k)} = 0, k = 0.
n→∞
(17)
L’équation (16) peut se réécrire:
y(n) =
ŵl(n)x(n − l), ŵl(n) = 0 pour |l| > L,
l
ou encore
y(n) =
wl(n)x(n − l) +
l
[ŵl(n) − wl]x(n − l).
l
(18)
Posons:
ν(n) =
[ŵl(n)−wl]x(n−l), ŵl(n) = 0 pour |l| > L.
l
Alors, en utilisant le résultat idéal de l’éq. (15), (18)
se simplifie comme suit:
y(n) = s(n) + ν(n).
(19)
Le terme ν(n) est appelé bruit de convolution.
INRS-EMT J. Benesty
14
La sortie y(n) du filtre inverse est maintenant
transformée à l’aide d’une fonction non-linéaire (sans
mémoire) pour produire une estimée ŝ(n) du symbole
s(n). Soit:
ŝ(n) = g [y(n)] ,
(20)
où g est une fonction non-linéaire.
Le signal ŝ(n) sera donc le signal de référence (bien
qu’approximatif) qui nous permettra ainsi d’utiliser un
algorithme adaptatif du type LMS.
On peut à présent définir un signal d’erreur:
e(n) = ŝ(n) − y(n),
(21)
et en utilisant le principe d’adaptation du LMS, on a:
ŵl(n + 1) = ŵl(n) + µx(n − l)e(n), l = 0, ±1, ..., ±L,
(22)
où µ est le pas d’adaptation de l’algorithme.
Le Tableau 1 résume l’algorithme de Bussgang.
INRS-EMT J. Benesty
15
Table 1: Algorithme de Bussgang
Initialisation:
1, l = 0
ŵl (0) =
0, l = ±1, ±2, ..., ±L
Calculer: n = 1, 2, ...
y(n) =
L
ŵl (n)x(n − l)
l=−L
ŝ(n) = g [y(n)]
e(n) = ŝ(n) − y(n)
ŵl (n + 1) = ŵl (n) + µx(n − l)e(n)
l = 0, ±1, ..., ±L
INRS-EMT J. Benesty
16
Non-convexité de la fonction coût:
La fonction coût qui correspond à l’algorithme de
Bussgang est la suivante:
JB
= E e (n)
2
= E [ŝ(n) − y(n)]
2
= E [g [y(n)] − y(n)] .
2
(23)
Dans l’algorithme LMS, la fonction coût est une
fonction quadratique (convexe) des coefficients du
filtre. Ainsi, elle a un minimum unique bien défini. Par
contre, la fonction JB est une fonction non-convexe
des coefficients du filtre (à cause de la fonction nonlinéaire g). Cela veut dire que JB a des minimums
locaux en plus du minimum global.
INRS-EMT J. Benesty
17
Considérations de convergence:
Pour que l’algorithme de Bussgang converge en
moyenne, il faut que:
lim E{ŵl(n + 1)} = lim E{ŵl(n)} = Cstl. (24)
n→∞
n→∞
On trouve immédiatement, à partir de l’équation de
mise à jour du filtre, que cette condition est:
E {x(n − l)y(n)} = E {x(n − l)g [y(n)]} ,
(25)
pour n grand et l = 0, ±1, ±2, ..., ±L.
En multipliant les deux côtés de cette expression par
ŵl−k et en additionnant sur l, on obtient pour n grand:


L


ŵl−k (n)x(n − l)
=
E y(n)


l=−L


L


E g [y(n)]
ŵl−k (n)x(n − l) .


(26)
l=−L
Pour n grand, ŵl(n − k) ≈ ŵl(n). Or
INRS-EMT J. Benesty
18
y(n − k) =
L
ŵl(n − k)x(n − k − l)
l=−L
=
L
ŵl(n)x(n − k − l)
l=−L
=
L+k
ŵl−k (n)x(n − l)
l=−L+k
≈
L
ŵl−k (n)x(n − l), L grand.
l=−L
On peut utiliser l’expression précédente pour simplifier
(26) comme suit:
E {y(n)y(n − k)} ≈ E {g [y(n)] y(n − k)} ,
(27)
pour n grand et L grand.
On a la propriété suivante: un processus stochastique
y(n) est un processus de Bussgang s’il satisfait la
condition:
E {y(n)y(n − k)} = E {g [y(n)] y(n − k)} ,
(28)
où g est une fonction non-linéaire sans mémoire.
INRS-EMT J. Benesty
19
Cas particuliers importants de
l’algorithme de Bussgang
Algorithme de Sato:
L’algorithme de Sato consiste à minimiser la fonction
non-convexe suivante:
2
(29)
JS = E [ŝ(n) − y(n)] ,
où
y(n) =
L
ŵl(n)x(n − l)
(30)
l=−L
est la sortie du filtre transversal et ŝ(n) une estimée
du signal transmis s(n). Ici, cette estimée est prise
comme:
ŝ(n) = αsgn [y(n)] .
(31)
La constante
E{s2(n)}
(32)
α=
E{|s(n)|}
est le gain de l’égaliseur. Il est clair que l’algorithme de
Sato est un cas particulier de l’algorithme de Bussgang,
où l’on prend comme fonction non-linéaire:
g(y) = αsgn(y).
INRS-EMT J. Benesty
(33)
20
Algorithme de Godard:
Godard fût le premier à proposer une famille
d’algorithmes à modules constants pour des systèmes
de communications numériques à deux dimensions.
L’algorithme de Godard minimise une fonction nonconvexe de la forme:
2
p
(34)
JG = E [|y(n)| − Rp] ,
où p est un entier positif et
E{|s(n)|2p}
.
Rp =
p
E{|s(n)| }
(35)
L’algorithme de Godard est conçu pour des signaux à
modules constants.
L’algorithme de mise à jour du vecteur des coefficients
du filtre est donc:
ŵ(n + 1) = ŵ(n) + µx(n)e∗(n),
(36)
où µ est le pas d’adaptation, x(n) le vecteur signal
d’entrée du filtre, et
e(n) = y(n)|y(n)|p−2 [Rp − |y(n)|p]
(37)
le signal d’erreur.
INRS-EMT J. Benesty
21
Cas 1: p = 1 La fonction coût devient:
2
JG = E [|y(n)| − R1] ,
(38)
où
E{|s(n)|2}
R1 =
.
(39)
E{|s(n)|}
Le Cas 1 peut être vu comme une modification de
l’algorithme de Sato.
Cas 2: p = 2 La fonction coût devient:
2
,
JG = E |y(n)|2 − R2
(40)
où
E{|s(n)|4}
R2 =
.
(41)
2
E{|s(n)| }
Dans la littérature, le Cas 2 est appelé l’algorithme du
CMA (constant modulus algorithm).
INRS-EMT J. Benesty
22