Algorithme du gradient stochastique (least-mean-square – LMS) L’algorithme du gradient stochastique est une approximation de l’algorithme du gradient déterministe. L’algorithme LMS est certainement l’algorithme adaptatif le plus populaire qui existe en raison de sa simplicité. INRS-EMT J. Benesty Plan • Rappels sur l’algorithme du gradient déterministe • L’algorithme LMS • Convergence de l’algorithme LMS • Quelques règles • L’algorithme LMS pour des données complexes • Exemple: égalisation adaptative • Résumé INRS-EMT J. Benesty 1 Rappels sur l’algorithme du gradient déterministe L’algorithme du gradient déterministe est: 1 h(n + 1) = h(n) − µg(n), 2 (1) où g(n) = ∂J [h(n)] ∂h(n) (2) = −2E{x(n)e(n)} = −2p + 2Rh(n) est le gradient de la fonction coût J [h(n)] = E{e2(n)}. Cet algorithme peut encore s’écrire en utilisant le signal d’erreur: e(n) = d(n) − xT (n)h(n) (3) h(n + 1) = h(n) + µE{x(n)e(n)}. (4) Problème: en pratique, E{x(n)e(n)} ou de manière équivalente R et p ne sont pas connus. INRS-EMT J. Benesty 2 L’algorithme LMS Puisque R = E{x(n)xT (n)} et p = E{x(n)d(n)} sont inconnus, on approchera ces grandeurs déterministes (n) à l’instant n. Dans le par des estimées R(n) et p cas du LMS, on choisit les estimées les plus simples possibles, à savoir: R(n) = x(n)xT (n), (5) (n) = x(n)d(n). p (6) Ce sont simplement les estimées instantanées des corrélations. (n) dans l’algorithme du En remplaçant R(n) et p gradient déterministe [éq. (1)], on obtient: (n) − R(n)h(n)] h(n + 1) = h(n) + µ[p = h(n) + µx(n)[d(n) − xT (n)h(n)] = h(n) + µx(n)e(n), (7) qui est l’algorithme LMS. On remarquera que h(n) est maintenant une variable aléatoire [puisqu’à chaque nouvelle itération n, h(n) dépend des processus aléatoires x(n) et d(n)]. INRS-EMT J. Benesty 3 Résumé de l’algorithme LMS: Calcul de la sortie du filtre: y(n) = hT (n)x(n). (8) Calcul du signal d’erreur: e(n) = d(n) − y(n). (9) Mise à jour du filtre: h(n + 1) = h(n) + µx(n)e(n). (10) µ est le pas d’adaptation de l’algorithme qui démarre avec une initialisation quelconque h(0). L’algorithme LMS est très simple: il nécessite seulement 2L + 1 multiplications et 2L additions par itération, où L est le nombre de coefficients du filtre. INRS-EMT J. Benesty 4 Convergence de l’algorithme LMS L’analyse de la convergence du LMS se fait en utilisant les deux critères suivants: • Convergence en moyenne du filtre h(n), càd: lim E{h(n)} = hopt. (11) n→∞ • Convergence du critère quadratique), càd: (en moyenne lim J(n) = J(∞) = constante. (12) n→∞ INRS-EMT J. Benesty J(n) 5 Convergence en moyenne: L’équation du LMS est: h(n + 1) = h(n) + µx(n)e(n), (13) = h(n) + µx(n)[d(n) − xT (n)h(n)] = [I − µx(n)xT (n)]h(n) + µd(n)x(n), en prenant l’espérance mathématique et en supposant l’indépendance entre les données x(n) et les coefficients du filtre hl(n), on a: E{h(n + 1)} = [I − µR]E{h(n)} + µp. (14) Posons le vecteur misalignment: c(n) = h(n) − hopt, (15) l’équation (14) devient après avoir additionner les deux côtés avec −hopt et remplacer p = Rhopt: E{c(n + 1)} = [I − µR]E{c(n)}. (16) Puisque R = QΛQT , en prenant v(n) = QT c(n), l’équation précédente est maintenant: E{v(n + 1)} = [I − µΛ]E{v(n)}, INRS-EMT J. Benesty (17) 6 ou encore, comme on l’a fait pour le gradient détérministe: E{vl(n)} = (1 − µλl)nE{vl(0)}, l = 0, 1, · · · , L − 1. (18) On voit bien que la condition de stabilité est: 0<µ< 2 λmax , (19) où λmax est la plus grande valeur propre de la matrice R. Dans ce cas: lim E{v(n)} = 0, n→∞ (20) et par conséquent: lim E{h(n)} = hopt. n→∞ INRS-EMT J. Benesty (21) 7 Convergence en moyenne quadratique: Le signal d’erreur produit par l’algorithme LMS est: e(n) = d(n) − xT (n)h(n) = d(n) − xT (n)hopt − xT (n)[h(n) − hopt] = emin(n) − xT (n)c(n), (22) où emin(n) est le signal d’erreur obtenu avec le filtre optimal de Wiener. Reprenons l’équation du LMS: h(n + 1) = h(n) + µx(n)e(n) (23) = h(n) + µx(n)emin(n) − µx(n)xT (n)c(n), qui s’écrit aussi en fonction du vecteur c(n) = h(n) − hopt comme suit: c(n + 1) = [I − µx(n)xT (n)]c(n) + µx(n)emin(n). (24) La matrice d’autocorrélation du vecteur misalignment c(n) est: K(n) = E{c(n)cT (n)}. INRS-EMT J. Benesty (25) 8 En utilisant l’hypothèse d’indépendance et à partir de (24) on déduit une équation d’adaptation pour K(n): K(n + 1) = (I − µR)K(n)(I − µR) + µ2JminR, (26) où Jmin = E{e2min(n)} (27) est l’erreur quadratique moyenne minimale. En utilisant les définitions précédentes et en invoquant l’hypothèse d’indépendance, l’erreur quadratique moyenne J(n) due au LMS peut être évaluée de la manière suivante: J(n) = E{e2(n)} (28) = E{[emin(n) − xT (n)c(n)][emin(n) − xT (n)c(n)]} = Jmin + E{cT (n)x(n)xT (n)c(n)}. D’autre part: E{cT (n)x(n)xT (n)c(n)} = E{tr[cT (n)x(n)xT (n)c(n)]} = E{tr[x(n)xT (n)c(n)cT (n)]} = tr{E[x(n)xT (n)c(n)cT (n)]}. INRS-EMT J. Benesty 9 En invoquant l’hypothèse d’indépendance on a finalement: E{cT (n)x(n)xT (n)c(n)} = tr{E[x(n)xT (n)]E[c(n)cT (n)]} = tr[RK(n)]. (29) On peut réécrire l’erreur quadratique moyenne: J(n) = Jmin + tr[RK(n)]. (30) On définit l’erreur quadratique moyenne excédentaire (excess mean-square-error) comme: Jex(n) = J(n) − Jmin = tr[RK(n)] > 0. En utilisant la factorisation R = QΛQT l’expression précédente, on obtient: (31) dans Jex(n) = tr[QΛQT K(n)] = tr[ΛQT K(n)Q] = tr[ΛZ(n)], INRS-EMT J. Benesty (32) 10 où Z(n) = QT K(n)Q. Puisque Λ est une matrice diagonale, on peut encore écrire: Jex(n) = L−1 λlzl(n), (33) l=0 où zl(n) sont les éléments diagonaux de la matrice Z(n). On se souvient de l’équation récursive: K(n + 1) = (I − µR)K(n)(I − µR) + µ2JminR, (34) soit en multipliant à gauche et à droite par QT et Q: Z(n + 1) = (I − µΛ)Z(n)(I − µΛ) + µ2JminΛ, (35) et les éléments diagonaux de Z(n + 1) se calculent récursivement: zl(n + 1) = (1 − µλl)2zl(n) + µ2Jminλl. (36) La récursion converge si |1−µλl| < 1, ∀l. L’algorithme LMS est donc convergent en moyenne quadratique si: 0<µ< INRS-EMT J. Benesty 2 λmax . (37) 11 A l’infini et avec la condition de convergence précédente, on a: zl(∞) = (1 − µλl)2zl(∞) + µ2Jminλl, (38) µJmin , l = 0, 1, · · · , L − 1. zl(∞) = 2 − µλl (39) soit On en déduit: Jex(∞) = L−1 λlzl(∞) l=0 = Jmin L−1 l=0 µλl . 2 − µλl (40) D’où: lim J(n) = J(∞) = Jex(∞) + Jmin L−1 µλl = Jmin 1 + 2 − µλl n→∞ l=0 = constante (41) avec la condition de convergence. INRS-EMT J. Benesty 12 Quelques règles Comment choisir le pas d’adaptation: 0 < µ < En pratique, λmax n’est pas facile à déterminer. 2 λmax ? On prend une estimée conservatrice: tr[R] = L−1 λl ⇒ tr[R] > λmax. (42) l=0 D’autre part: tr[R] = Lr(0) = Lσx2 . (43) D’où: 0<µ< 2 , 2 Lσx (44) qui est un choix sûr pour garantir la convergence de l’algorithme LMS. INRS-EMT J. Benesty 13 Soit la quantité suivante: 1 = λl , L L−1 λmoy (45) l=0 qui représente une moyenne des valeurs propres de la matrice R. En utilisant certains résultats obtenus sur la constante de temps de l’algorithme du gradient déterministe, on définit la constante de temps moyenne de la courbe d’apprentissage de l’algorithme LMS: τeqm,moy ≈ 1 . 2µλmoy (46) On définit le “misadjustment” comme: m = = Jex(∞) Jmin L−1 l=0 (47) µλl . 2 − µλl Si µλmax 1, on a: µ µ 2 λl = Lσx. 2 2 L−1 m ≈ (48) l=0 INRS-EMT J. Benesty 14 En utilisant le pas normalisé: µ= α , 2 Lσx (49) où 0 < α < 2, on obtient: m ≈ α < 1. 2 (50) D’autre part, le misadjustment peut s’écrire en fonction de τeqm,moy : m ≈ L 4τeqm,moy . (51) D’où les observations suivantes: • La valeur de m augmente linéairement avec la longueur L du filtre h. • m est inversement proportionnel au temps de convergence. • m est proportionnel au pas d’adaptation, d’où conflit entre vitesse de convergence et valeur finale de l’EQM. INRS-EMT J. Benesty 15 L’algorithme LMS pour des données complexes Calcul de la sortie du filtre: y(n) = hH (n)x(n). (52) Calcul du signal d’erreur: e(n) = d(n) − y(n). (53) Mise à jour du filtre: h(n + 1) = h(n) + µx(n)e∗(n). (54) 2 µ, 0 < µ < Lσ 2 , est le pas d’adaptation de l’algorithme x qui démarre avec une initialisation quelconque h(0). INRS-EMT J. Benesty 16 Exemple: égalisation adaptative Dans cet exemple, on étudie l’utilisation de l’algorithme LMS pour l’égalisation adaptative d’un canal linéaire qui produit des distorsions. La Fig. 1 illustre le principe d’un égaliseur adaptatif. BRUIT u(n) SIGNAL CANAL DE TRANSMISSION s(n) + EGALISEUR ADAPTATIF x(n) y(n) + e(n) RETARD d(n) Figure 1: Egalisation adaptative. Le signal de transmission s(n) est une séquence aléatoire où s(n) = ±1. Le signal s(n) est déformé par un canal dont la réponse impulsionnelle est: wk = 1 2 1 + cos INRS-EMT J. Benesty 2π β (k − 1) , k = 0, 1, 2 , (55) 0, sinon 17 où β contrôle la quantité de distorsion produite par le canal (plus β est grand et plus la distorsion est importante). Dans notre exemple, β = 0.25. Un bruit blanc de moyenne nulle et de variance σu2 = 0.001 est ajouté à la sortie du canal. L’égaliseur est un filtre RIF de longueur L = 11. Le signal d’entrée de ce filtre est: x(n) = 2 wk s(n − k) + u(n). (56) k=0 D’après la Fig. 1, le signal d’erreur est: e(n) = d(n) − y(n) = s(n − δ) − hT (n)x(n). (57) La moyenne d’ensemble est approximée en moyennant 200 réalisations indépendantes. La Fig. 2 montre les courbes d’apprentissage de l’algorithme LMS pour deux pas d’adaptation différents. On voit bien que pour un pas grand, l’algorithme converge plus rapidement qu’avec un pas plus petit mais l’erreur résiduelle est plus importante. INRS-EMT J. Benesty 18 5 0 −5 EQM, dB −10 −15 −20 µ = 0.1 µ = 0.02 −25 −30 −35 0 500 1000 1500 Iteration Figure 2: Courbes d’apprentissage de l’algorithme LMS pour un égaliseur adaptatif RIF de longueur L = 11 et pour deux pas d’adaptation différents. INRS-EMT J. Benesty 19 Résumé • L’algorithme LMS est très simple! • Les performances du LMS dépendent de trois facteurs: 1. le pas d’adaptation µ, 2. les valeurs propres λl de la matrice R, et 3. la longueur L du filtre h. • Avec un pas d’adaptation petit, le LMS converge lentement mais l’EQM excédentaire est petite. • Avec un pas d’adaptation grand, le LMS converge rapidement mais l’EQM excédentaire est grande. • Le temps de convergence de l’algorithme LMS dépend du conditionnement χ(R) de la matrice d’autocorrélation R: plus χ(R) est grand et plus le LMS met du temps à converger. INRS-EMT J. Benesty 20