Pourquoi les réflexions des ménages ne peuvent-elles pas diagonaliser une matrice?


16

Lors du calcul de la factorisation QR dans la pratique, on utilise les réflexions de Householder pour mettre à zéro la partie inférieure d'une matrice. Je sais que pour calculer les valeurs propres des matrices symétriques, le mieux que vous puissiez faire avec les réflexions de Householder est de le mettre sous forme tridiagonale. Existe-t-il un moyen évident de comprendre pourquoi il ne peut pas être entièrement diagonalisé de cette manière? J'essaie d'expliquer cela simplement, mais je ne peux pas arriver à une présentation claire.

Réponses:


12

Lors du calcul des valeurs propres de la matrice symétrique MRn×n le mieux que vous puissiez faire avec le réflecteur Householder est de conduire M sous une forme tridiagonale. Comme on l' a mentionné dans une réponse précédente parce que M est symétrique il y a une transformation de similitude orthogonale qui se traduit par une matrice diagonale, soit D=STMS . Il serait commode de trouver l'action de la matrice orthogonale inconnue S utilisant strictement les réflecteurs Householder en calculant une séquence de réflecteurs et en appliquant HT de gauche à M et Hdu droit à . Cependant, cela n'est pas possible en raison de la façon dont le réflecteur de Householder est conçu pour mettre à zéro les colonnes. Si nous devions calculer le réflecteur Householder pour mettre à zéro tous les nombres en dessous de M 11, nous trouverions M = (MM11 Mais maintenant les entrées M 12 - M 1 n ont été modifiées par le réflecteur H T 1 appliqué à gauche. Ainsi, lorsque nous appliquons H 1 à droite, il ne mettra plus à zéro la première ligne deM,ne laissant que M 11 . Au lieu de cela, nous obtiendrons H T 1 M= (

M=()H1TM=(0000).
M12-M1nH1TH1MM11 Où non seulement nous n'avons pas mis à zéro la ligne, mais nous pouvons détruire la structure zéro que nous venons d'introduire avec le réflecteur H T 1 .
H1TM=(0000)H1TMH1=().
H1T

Cependant, lorsque vous choisissez de conduire vers une structure tridiagonale, vous laisserez la première ligne intacte par l'action de H T 1 , donc M = (MH1T

M=()H1TM=(000).
H1TM=(000)H1TMH1=(000000).

Applied recursively this allows us to drive M to a tridiagonal matrix T. You can complete the diagonalization of M efficiently, as was mentioned previously, using Jacobi or Givens rotations both of which are found in the Golub and Van Loan book Matrix Computations. The accumulated actions of the sequence of Householder reflectors and Jacobi or Givens rotations allows us to find the action of the orthogonal matrices ST and S without explicitly forming them.


11

As the Comments to other Answers clarify, the real issue here is not a shortcoming of Householder matrices but rather a question as to why iterative rather than direct ("closed-form") methods are used to diagonalize (real) symmetric matrices (via orthogonal similarity).

Indeed any orthogonal matrix can be expressed as a product of Householder matrices, so if we knew the diagonal form of a symmetric matrix (its eigenvalues), we could solve for a complete set of orthonormalized eigenvectors and represent the corresponding change of basis matrix as a product of Householder transformations in polynomial time.

So let's turn to Victor's parenthetical comment "other than Abel's theorem" because we are effectively asking why iterative methods should be used find the roots of a polynomial rather than a direct method. Of course the eigenvalues of a real symmetric matrix are the roots of its characteristic polynomial, and it is possible to go in the other direction as well. Given a real polynomial with only real roots, it is possible to construct a tridiagonal symmetric companion matrix from a Sturm sequence for the polynomial. See also that poster Denis Serre's Exercise 92 in this set. This is rather nice for showing the equivalence of those problems since we've seen (@AndrewWinters) the direct application of Householder matrices will tridiagonalize a real symmetric matrix.

Analysis of the arithmetic complexity for an iterative (root isolation) method is given in Reif (1999), An Efficient Algorithm for the Real Root and Symmetric Tridiagonal Eigenvalue Problems. Reif's approach improves on tailored versions of QR for companion matrices, giving O(nlog3n) instead of O(n2) complexity.

The Abel-Galois-Ruffini Theorem says that no general formula for roots of polynomials above degree four can be given in terms of radicals (and usual arithmetic). However there are closed forms for roots in terms of more exotic operations. In principle one might base eigenvalue/diagonalization methods on such approaches, but one encounters some practical difficulties:

  1. The Bring radical (aka ultraradical) is a function of one variable, in that respect like taking a square root. Jerrad (c. 1835) showed that solving the general quintic could be reduced to solving t5+ta=0, so that univariate function t(a) (used in addition to radicals and other usual arithmetic) allows all quintics to be solved.

  2. This breaks down with degree six polynomials and above, although various ways can be found to solve them using functions of just two variables. Hilbert's 13th Problem was the conjecture that general degree seven polynomials could not be solved using only functions of at most two variables, but in 1957 V.I. Arnold showed they could. Among the multivariable function families that can be used to get solutions to arbitrary degree polynomials are Mellin integrals, hypergeometric and Siegel theta functions.

  3. Besides implementing somewhat exotic special functions of more than one argument, we need direct methods for solving polynomials which work for general degree n rather than ad hoc or degree specific methods. Guàrdia (2002) gives "a very simple expression of the roots of a polynomial of arbitrary degree in terms of derivatives of hyperelliptic theta functions." However this approach requires making choices of Weierstrass points on hyperelliptic curve Cf:Y2=f(x) where all roots of polynomial f(x) are sought. A good choice leads to expressing less than half of those roots, and it appears this approach requires repeated trials to get all of them. Each trial involves solving a homogeneous linear system at O(n3) cost.

Therefore the indirect/iterative methods for isolating real roots (equiv. eigenvalues of symmetric matrices), even to high precision, currently have practical advantages over the known direct/exact methods for these problems.


Some notes: 1. a practical method for building the tridiagonal companion matrix from Sturm sequences was outlined in papers by Fiedler and Schmeisser; I gave a Mathematica implementation here, and it should not be too hard to implement in a more traditional language.
J. M.

2. With respect to the "theta function" approach for polynomial roots (which I agree is a bit too unwieldy for practical use), Umemura outlines an approach using Riemann theta functions.
J. M.

2

For what reason do you assume that this is impossible?

Any symmetric real matrix S can be orthogonally diagonalized, i.e. S=GDGt, where G is orthogonal and D is diagonal.

Any orthogonal matrix of size n×n can be constructed as a product of at most n such reflections.Wikipedia. Therefore you have this decomposition.

I am not sure about the last statement, I just cite it (and I think it is correct). As far as I understand your question, it boils down to whether any orthogonal matrix can be decomposed into a sequence of Householder transforms.


2
I should have been more specific. The first step to diagonalizing a symmetric matrix is applying Householder until it is tridiagonal. Next, QR iterations are performed. This process cannot be completed using only closed-form Householder transformations. Why? (other than Abel's theorem)
Victor Liu

1
You can do it with Jacobi rotations. Golub and Van Loan write that Jacobi is the same as Givens. Householder is just another way of doing Givens. In practice, the "correct" way might be with QR if it is faster.
power

1

If the eigenvalues are already known (from a preliminary calculation based on the usual approach), one can use them to triangulize a nonsymmetric matrix (or diagonalize a symmetric matrix) by a product on n1 Householder reflections. In the kth step the kth column is brought to triangular form. (This also provides a simple inductive proof of the existence of the Schur factorization.)

It is actually useful for methods where one repeatedly needs the orthoginal matrix in a numerically stable factored form.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.