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