Dlaczego odbicia Householdera nie mogą diagonalizować matrycy?


16

Przy obliczaniu faktoryzacji QR w praktyce używa się odbić Householdera, aby wyzerować dolną część matrycy. Wiem, że w przypadku obliczania wartości własnych macierzy symetrycznych najlepsze, co można zrobić z odbiciami Householdera, to doprowadzić go do postaci tridiagonal. Czy istnieje oczywisty sposób, aby zobaczyć, dlaczego nie można w pełni przekątnej w ten sposób? Próbuję to wyjaśnić w prosty sposób, ale nie mogę wymyślić jasnej prezentacji.

Odpowiedzi:


12

Podczas obliczania wartości własnych macierzy symetrycznej najlepsze, co możesz zrobić z reflektorem typu Householder, to doprowadzić M do postaci trójosiowej. Jak wspomniano w poprzedniej odpowiedzi, ponieważ M jest symetryczna nie jest prostopadła do przetwarzania podobieństwo co skutkuje macierzą diagonalną, czyli D = S T M S . Dogodne byłoby gdyby mogli znaleźć działanie nieznanej macierzy ortogonalnych S ściśle użycia reflektorów Householder przez obliczanie sekwencji odblaskowych i stosowania H T od lewej do M i HMRn×nMMD=STMSSHTM.Hod prawej do . Nie jest to jednak możliwe ze względu na sposób, w jaki reflektor gospodarstwa domowego jest zaprojektowany do zerowania kolumn. Gdybyśmy obliczyć reflektor Domownika, aby wyzerować wszystkie liczby poniżej M 11 , znajdziemy M = (MM11 Ale teraz wpisy M 12 - M 1 n zostały zmienione przez reflektor H T 1 zastosowany po lewej stronie. Zatem, gdy zastosujemy H 1 po prawej stronie, nie będzie już zerować pierwszego rzęduM,pozostawiając tylko M 11 . Zamiast tego otrzymamy H T 1 M= (

M=()H1TM=(0000).
M12M1nH1TH1MM11 Tam, gdzie nie tylko nie wyzerowaliśmy rzędu, ale możemy zniszczyć zerową strukturę, którą właśnie wprowadziliśmy za pomocą reflektora H T 1 .
H1TM=(0000)H1TMH1=().
H1T

MH1T

M=()H1TM=(000).
Thus when we apply the same reflector from the right we obtain
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
Powinienem był być bardziej szczegółowy. Pierwszym krokiem do diagonalizacji macierzy symetrycznej jest zastosowanie opcji Householder, aż będzie ona trójosiowa. Następnie wykonywane są iteracje QR. Ten proces nie może zostać zakończony przy użyciu tylko transformacji Householder w zamkniętej formie. Dlaczego? (inne niż twierdzenie Abla)
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.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.