Спектральное разложение матрицы

Материал из testwiki
Перейти к навигации Перейти к поиску

Спектральное разложение матрицы, или разложение матрицы на основе собственных векторов, — это представление квадратной матрицы A в виде произведения трёх матриц A=VΛV1, где V — матрица, столбцы которой являются собственными векторами матрицы A, Λ — диагональная матрица с соответствующими собственными значениями на главной диагонали, V1 — матрица, обратная матрице V.

В таком виде могут быть представлены только матрицы, обладающие полным набором собственных векторов, то есть набором из n линейно независимых собственных векторов, где n — это порядок матрицы A.

Спектральное разложение может использоваться для нахождения собственных значений и собственных векторов матрицы, решения систем линейных уравнений, обращения матрицы, нахождения определителя матрицы и вычисления аналитических функций от матриц.

Теория собственных векторов и собственных значений матрицы

Шаблон:Основная статья

Ненулевой вектор 𝐯 размерности Шаблон:Mvar является собственным вектором квадратной N×N матрицы 𝐀, если он удовлетворяет линейному уравнению

𝐀𝐯=λ𝐯,

где λ — скаляр, называемый собственным значением матрицы и соответствующий собственному вектору 𝐯. То есть, собственные вектора — это вектора, которые линейное преобразование 𝐀 всего лишь удлиняет или укорачивает, а собственное значение — это коэффициент изменения длины. Уравнение выше называется уравнением на собственные значения или задачей на собственные значения.

Уравнение выше может рассматриваться как однородная система линейных уравнений

(𝐀λ𝐄)𝐯=0,

в которой λ — это некоторый скалярный параметр, а 𝐯 — нетривиальное решение однородной системы линейных уравнений. Нетривиальные решения однородной системы линейных уравнений существуют только при равенстве нулю определителя матрицы системы, то есть

p(λ)=det(𝐀λ𝐄)=0.

Многочлен p(λ) называется характеристическим многочленом матрицы, а уравнение выше называется характеристическим уравнением. Характеристическое уравнение является полиномиальным уравнением Шаблон:Mvar-ого порядка от переменной λ. Данное уравнение имеет Nλ различных корней, где 1NλN. Множество решений, то есть, собственных значений, называется спектром матрицы 𝐀Шаблон:SfnШаблон:SfnШаблон:Sfn.

Разложим характеристический многочлен p(λ) на множители:

p(λ)=(λλ1)n1(λλ2)n2(λλNλ)nNλ=0.

Натуральное число Шаблон:Mvar называется алгебраической кратностью собственного значения λi. Если поле скаляров алгебраически замкнуто, сумма алгебраических кратностей равна Шаблон:Mvar:

i=1Nλni=N.

Для каждого собственного значения λi решается отдельное уравнение на собственные векторы:

(𝐀λi𝐄)𝐯=0.

Имеется 1mini линейно независимых решений для каждого такого уравнения. Линейные комбинации Шаблон:Math решений являются собственными векторами, связанными с собственным значением λi. Целое число Шаблон:Math называется геометрической кратностью значения λi. Алгебраическая кратность ni и геометрическая кратность mi могут не совпадать, но всегда mini. Общее число линейно независимых собственных векторов N𝐯 может быть вычислено путём суммирования геометрических кратностей

i=1Nλmi=N𝐯.

Собственные векторы могут быть проиндексированы собственными значениями с помощью двойного индекса, тогда 𝐯ij будет означать Шаблон:Mvar-й собственный вектор для Шаблон:Mvar-го собственного значения. В более простой индексации используется единственный индекс 𝐯k, где k=1,2,,N𝐯.

Разложение матрицы с помощью собственных векторов

Пусть 𝐀 будет квадратной n×n матрицей, имеющей Шаблон:Mvar линейно независимых собственных векторов Шаблон:Mvar (i=1,,n). Тогда 𝐀 можно разложить

𝐀=𝐐Λ𝐐1,

где 𝐐 является квадратной n×n матрицей, Шаблон:Mvar-ым столбцом которой является собственный вектор qi матрицы 𝐀, а Λ является диагональной матрицей, диагональными элементами которой являются соответствующие собственные значения, Λii=λi. Заметим, что только диагонализируемые матрицы могут быть разложены таким образом. Например, матрица сдвига [1101] не может быть диагонализирована.

Обычно собственные вектора Шаблон:Mvar нормируют, но это не обязательно, в качестве столбцов матрицы 𝐐 может быть использован и ненормированный набор из Шаблон:Mvar собственных векторов Шаблон:Mvar.

Разложение может быть получено из фундаментального свойства собственных векторов:

𝐀𝐯=λ𝐯𝐀𝐐=𝐐Λ𝐀=𝐐Λ𝐐1.

Пример

Вещественная 2×2 матрица 𝐀

𝐀=[1013]

может быть приведена к диагональному виду путём умножения на невырожденную матрицу 𝐁

𝐁=[abcd]2×2.

Тогда

[abcd]1[1013][abcd]=[x00y],

для некоторой вещественной диагональной матрицы [x00y].

Умножив обе стороны равенства слева на 𝐁, получим:

[1013][abcd]=[abcd][x00y].

Равенство выше может быть разложено на две системы уравнений:

{[1013][ac]=[axcx][1013][bd]=[bydy].

Выносим собственные значения Шаблон:Mvar и Шаблон:Mvar:

{[1013][ac]=x[ac][1013][bd]=y[bd]

Получаем

a=[ac],b=[bd],

что даёт нам два векторных уравнения:

{Aa=xaAb=yb

Последняя система может быть представлена одним векторным равенством, включающим решения для двух собственных значений:

𝐀𝐮=λ𝐮,

где λ представляет два собственных значения Шаблон:Mvar and Шаблон:Mvar, а 𝐮 представляет векторы a и b.

Перенося λ𝐮 в левую часть и вынеся 𝐮, получим

(𝐀λ𝐄)𝐮=𝟎

Поскольку матрица 𝐁 не вырождена, важно, чтобы вектор 𝐮 не был нулевым. Поэтому,

det(𝐀λ𝐄)=0

Тогда

(1λ)(3λ)=0

даёт нам решения собственных значений для матрицы 𝐀 как λ=1 или λ=3, а результирующая диагональная матрица из разложения матрицы 𝐀 тогда равна [1003].

Если подставить решения обратно в систему уравнений выше получим

{[1013][ac]=1[ac][1013][bd]=3[bd]

Решив уравнения, мы получим

a=2cиb=0,c,d.

Тогда матрица 𝐁, требуемая для разложения матрицы 𝐀 равна

𝐁=[2c0cd],c,d,

То есть:

[2c0cd]1[1013][2c0cd]=[1003],c,d

Обращение матрицы через разложение по собственным векторам

Шаблон:Основная статья

Пусть матрица 𝐀 имеет спектральное разложение и никакое из собственных значений матрицы не равно нулю. В этом случае матрица 𝐀 является невырожденной, а её обратная матрица находится по формуле

𝐀1=𝐐Λ1𝐐1

Если матрица 𝐀 является симметричной матрицей, тогда матрица 𝐐 гарантированно будет ортогональной, то есть 𝐐1=𝐐T. А поскольку матрица Λ является диагональной, то её обратную легко вычислить:

[Λ1]ii=1λi

Практическое значениеШаблон:Sfn

Если разложение с помощью собственных векторов используется для матрицы, полученной при измерениях с реальными данными, то обратная матрица может быть хуже обусловлена, если все собственные значения используются в неизменной форме. Дело в том, что когда собственные значения становятся относительно малыми, вклад их обратных в обратную матрицу велик. Эти близкие к нулю значения или «шум» системы измерения будет иметь чрезмерное влияние и может помешать решению с помощью обращения.

Было предложено два варианта смягчения последствий: отбрасывание малых или нулевых собственных значений и копирование наименьшего надёжного значения в более маленькие.

Первый вариант смягчения подобен разрежению исходной матрицы, в которой удаляются элементы, которые посчитали незначимыми. Однако, если процесс решения окажется близок к уровню шума, откидывание может удалить компоненты, которые влияют на желаемое решение.

Второй вариант смягчения копирует собственное значение, так что меньшие значения имеют меньшее влияние на результат обращения, но по-прежнему вносят вклад, так что могут быть найдены решения, даже близкие к уровню шума.

Надёжное собственное значение может быть найдено в предположении, что собственные значения крайне близки и низкое значение является хорошим представлением шума измерения (который предполагается низким для большинства систем).

Если собственные значения выстроены по величине, надёжное собственное значение может быть найдено путём минимизации лапласиана отсортированных собственных значенийШаблон:Sfn:

min|2λs|,

где собственные значения помечены буквой Шаблон:Math для обозначения сортировки (от английского sorted). Место минимума является наименьшим надёжным собственным значением. В системах измерения квадратный корень из этого надёжного собственного значения является средним шумом относительно других компонент системы.

Функциональное исчисление

Пусть квадратная матрица 𝐀 имеет разложение 𝐀=𝐐Λ𝐐1. Тогда возведение матрицы в натуральную степень считается по простой формуле:

𝐀n=(𝐐Λ𝐐1)n=𝐐Λ𝐐1𝐐Λ𝐐1n=𝐐Λn𝐐1,

здесь в промежуточном выражении сокращаются произведения 𝐐1𝐐. Операция возведения в натуральную степень позволяет определить над матрицами различные функции, которые выражаются в виде степенных рядов. Пусть функция f(x) имеет разложение в степенной ряд

Разложение матрицы по собственным значениям позволяет быстрее вычислить степенной ряд от матрицы. Пусть Шаблон:Math задается степенным рядом

f(x)=a0+a1x+a2x2+

В соответствии с формулой для степени от матрицы выше, степенной ряд для матрицы можно посчитать по формуле

f(𝐀)=𝐐f(Λ)𝐐1,

где f(Λ) — функция от диагональной матрицы Λ, которая может быть очень легко вычислена:

[f(Λ)]ii=f(λi)

При этом недиагональные элементы матрицы f(Λ) равны нулю. То есть, f(Λ) также является диагональной матрицей. В результате, вычисление функции от матрицы сводится к простому вычислению функции от каждого из собственных значений.

Похожая техника работает и в более общем виде в Шаблон:Не переведено 5, с помощью формулы

𝐀1=𝐐Λ1𝐐1

можно вычислять от матриц степенные ряды, которые содержат отрицательные степени. Здесь снова используется, что [f(Λ)]ii=f(λi).

Примеры

Квадратный корень из матрицы:

𝐀=𝐐Λ𝐐1.

Возводим в квадрат и убеждаемся в корректности:

𝐐Λ𝐐1𝐐Λ𝐐1=𝐐Λ𝐐1=𝐀.

Аналогичным образом определяется экспонента матрицы exp𝐀:

exp𝐀=𝐐expΛ𝐐1.

Разложение специальных матриц

Нормальные матрицы

Комплексная квадратная матрица 𝐀 нормальна (что означает, что 𝐀𝐀=𝐀𝐀, где 𝐀 является эрмитово-сопряжённой) тогда и только тогда, когда она может быть разложена

𝐀=𝐔Λ𝐔*

где 𝐔 является унитарной (что означает, что 𝐔=𝐔1) и Λ=diag(λ1,,λn) является диагональной матрицейШаблон:Sfn. Столбцы 𝐮1,,𝐮n матрицы 𝐔 образуют ортонормальный базис и являются собственными векторами матрицы 𝐀 с соответствующими собственными значениями λ1,,λn.

Если класс матриц 𝐀 ограничен эрмитовыми матрицами (𝐀=𝐀), то Λ имеет только вещественные значения. Если класс матриц 𝐀 ограничен унитарными матрицами, то все значения Λ лежат на комплексной единичной окружности, то есть, |λi|=1.

Вещественные симметричные матрицы

Для любой вещественной n×n симметричной матрицы собственные значения вещественны и собственные вектора можно выбрать вещественными и ортонормальными. Таким образом, вещественная симметричная матрица 𝐀 может быть разложена в

𝐀=𝐐Λ𝐐𝖳

где 𝐐ортогональная матрица, столбцами которой служат собственные вектора матрицы 𝐀, а Λ — диагональная матрица, у которой значения на диагонали равны собственным значениям матрицы 𝐀Шаблон:Sfn.

Полезные факты

Полезные факты о собственных значениях

Шаблон:Bulleted list

Полезные факты о собственных векторах

  • Если матрица 𝐀 эрмитова и имеет полный ранг, базис собственных векторов можно выбрать взаимно ортогональным. Собственные значения вещественны.
  • Собственные вектора матрицы 𝐀1 те же самые, что и собственные вектора матрицы 𝐀.
  • Собственные вектора определены с точностью до постоянного множителя. То есть, если 𝐀𝐯=λ𝐯, то c𝐯 является также собственным вектором для любого скаляра Шаблон:Math. В частности, 𝐯 и eiθ𝐯 (для любого θ) также являются собственными векторами.
  • В случае вырожденных собственных значений (собственное значение появляются более одного раза), собственные вектора имеют дополнительную степень свободы вращения, то есть любая линейная (ортонормальная) комбинация собственных векторов с одним и тем же собственным значением является сама собственным вектором.

Полезные факты о разложении с помощью собственных векторов

  • Матрица 𝐀 может быть разложена с помощью собственных векторов тогда и только тогда, когда число линейно независимых собственных векторов N𝐯 равно размерности собственного вектора: N𝐯=N
  • Если p(λ) не имеет кратных корней, то есть, если Nλ=N,, то 𝐀 может быть разложена.
  • Из утверждения «матрица 𝐀 может быть разложена» не следует, что 𝐀 имеет обратную.
  • Из утверждения «матрица 𝐀 имеет обратную » не следует, что 𝐀 может быть разложено с помощью собственных векторов. Контрпримером является матрица [1101], которая является обратимой Шаблон:Не переведено 5.

Полезные факты об обратной матрице

  • Матрица 𝐀 обратима тогда и только тогда, когда
    λi0i
  • Если λi0 и N𝐯=N, обратная матрица задаётся равенством
    𝐀1=𝐐Λ1𝐐1

Численные вычисления

Шаблон:Подробно

Численное вычисление собственных значений

Предположим, что требуется вычислить собственные значения заданной матрицы. Если размеры матрицы малы, собственные значения могут быть вычислены символьно с помощью характеристического многочлена. Однако это часто невозможно для больших матриц, и в этом случае используются численные методы.

На практике собственные значения больших матриц не вычисляются с помощью характеристического многочлена. Вычисление многочлена становится само по себе трудоёмким и затратным по времени, а точные (символьные) корни многочлена высокой степени трудно вычислить и выразить — из теоремы Абеля о неразрешимости уравнений в радикалах следует, что корни многочленов высокой степени (5 и выше) не могут быть в общем случае представлены как выражения от корней Шаблон:Mvar-ой степени. По этой причине общие алгоритмы поиска собственных векторов и собственных значений работают итеративно.

Существуют итеративные численные алгоритмы аппроксимации корней многочленов, такие как метод Ньютона, но, как правило, непрактично строить характеристический многочлен, а затем применять эти методы. Одной из причин является то, что малые Шаблон:Не переведено 5 в коэффициентах характеристического многочлена могут привести к большим ошибкам в собственных значениях и собственных векторах — корни являются крайне плохо обусловленной функцией от коэффициентовШаблон:Sfn.

Простым и точным итеративным методом является степенной метод — выбирается случайный вектор 𝐯 и вычисляется последовательность единичных векторов

𝐀𝐯𝐀𝐯,𝐀2𝐯𝐀2𝐯,𝐀3𝐯𝐀3𝐯,

Эта последовательность почти всегда сходится к собственному вектору, соответствующему собственному значению наибольшей величины, при условии что у вектора 𝐯 соответствующая этому собственному вектору компонента в базисе из собственных векторов ненулевая (а также при условии, что имеется только одно собственное значение наибольшей величины). Этот простой алгоритм полезен в некоторых практических приложениях. Например, Google использует его для вычисления ссылочного ранжирования документов в их поисковикеШаблон:Sfn. Также степенной метод является отправной точкой для многих других сложных алгоритмов. Например, если хранить не только последний вектор последовательности, а смотреть в линейной оболочке всех векторов последовательности, можно получить лучшую (сходящуюся быстрее) аппроксимацию собственного вектора, и эта идея является основой итерации АрнольдиШаблон:Sfn. Также важный QR-алгоритм также основан на слегка изменённом степенном методеШаблон:Sfn.

Численное вычисление собственных векторов

Если собственные значения вычислены, собственные вектора можно вычислить путём решения уравнения

(𝐀λi𝐄)𝐯i,j=0

с помощью исключения Гаусса или любого другого метода решения матричного уравнения.

Однако, в практических методах нахождения собственных значений матриц большого размера собственные вектора обычно вычисляются другими способами как побочный продукт вычисления собственного значения. В степенном методе, например, собственный вектор, в общем-то, вычисляется перед вычислением собственного значения (который обычно вычисляется согласно отношению Рэлея для собственного вектора)Шаблон:Sfn. В QR-алгоритме для эрмитовой матрицы (или любой нормальной матрицы), ортонормальные собственные вектора получаются как произведение матриц 𝐐 из шагов алгоритмаШаблон:Sfn. (Для матриц более общего вида QR-алгоритм сначала осуществляет разложение Шура, из которого собственные вектора могут быть получены обратной подстановкойШаблон:Sfn) Для эрмитовых матриц Шаблон:Не переведено 5 более эффективен чем QR-алгоритм, если нужны как собственные вектора, так и собственные значенияШаблон:Sfn.

Дополнительные темы

Обобщённые собственные пространства

Напомним, что геометрическую кратность собственного значения можно описать как размерность связанного собственного пространства, ядра матрицы λ𝐄𝐀. Алгебраическая кратность может также рассматриваться как размерность — это размерность связанного обобщённого собственного пространства (в 1-м смысле), которое является ядром матрицы (λ𝐄𝐀)k для любого достаточно большого Шаблон:Mvar. То есть, это пространство обобщённых собственных векторов (в первом смысле), где обобщённый собственный вектор — это любой вектор, который рано или поздно станет 0, если применить λ𝐄𝐀 достаточное число раз. Любой собственный вектор является обобщённым собственным вектором, а потому любое собственное пространство содержится в связанном обобщённом собственном пространстве. Это даёт простое доказательство, что геометрическая кратность никогда не превосходит алгебраическую кратность.

Такое использование не следует путать с обобщённой задачей собственных значений, описанной ниже.

Сопряжённый собственный вектор

Сопряжённый собственный вектор — это вектор, который после линейного преобразования переходит в (с точностью до умножения на скаляр) в свой сопряжённый. Скаляр тогда называется сопряжённым собственным значением линейного преобразования. Сопряжённые собственные вектора и значения представляют, по сути дела, ту же самую информацию, что и обычные собственные вектора и собственные значения, но возникают в случае использования других систем координат. Соответствующим равенством будет

𝐀𝐯=λ𝐯*.

Например, в теории когерентного электромагнитного рассеяния линейное преобразование 𝐀 представляет действие, осуществляемое рассеивающим объектом, а собственные вектора представляют поляризационные состояния электромагнитной волны. В оптике координатная система определяется с волновой точки зрения, известной как Шаблон:Не переведено 5 (Шаблон:Lang-en, FSA), и порождает уравнения обычных собственных значений, в то время как в радарах координатная система определяется со стороны радара, она известна как Шаблон:Не переведено 5 (Шаблон:Lang-en, BSA) и порождает уравнения для сопряжённых собственных векторов.

Обобщённая задача нахождения собственных значений

Обобщённая задача нахождения собственных значений (во втором смысле) — это задача нахождения вектора 𝐯, удовлетворяющего равенству

𝐀𝐯=λ𝐁𝐯

где 𝐀 и 𝐁 являются матрицами. Если 𝐯 удовлетворяет этому равенству для некоторого λ, то мы называем 𝐯 обобщённым собственным вектором матриц 𝐀 и 𝐁 (во втором смысле), а λ называется обобщённым собственным значением матриц 𝐀 и 𝐁 (во втором смысле), соответствующим обобщённому собственному вектору 𝐯. Возможные значения λ должны удовлетворять следующему равенству

det(𝐀λ𝐁)=0.

Если можно найти n линейно независимых векторов {𝐯1,,𝐯n, таких что для любого i{1,,n}, 𝐀𝐯i=λi𝐁𝐯i, мы определяем матрицы 𝐏 и 𝐃 следующим образом

P=(||𝐯1𝐯n||)((𝐯1)1(𝐯n)1(𝐯1)n(𝐯n)n)
(D)ij={λi,если i=j0,иначе

Тогда выполняется следующее равенство

𝐀=𝐁𝐏𝐃𝐏1

Доказательство

𝐀𝐏=𝐀(||𝐯1𝐯n||)=(||A𝐯1A𝐯n||)=(||λ1B𝐯1λnB𝐯n||)=(||B𝐯1B𝐯n||)𝐃=𝐁𝐏𝐃

А поскольку 𝐏 обратима, умножим на эту обратную и получим требуемый результат.

Множество матриц вида 𝐀λ𝐁, где λ — комплексное число, называется пучком. Термин пучок матриц может относиться также к паре матриц 𝐀,𝐁Шаблон:Sfn.

Если матрица 𝐁 обратима, то исходную задачу можно переписать в виде

𝐁1𝐀𝐯=λ𝐯

что является стандартной задачей собственных значений. В большинстве ситуаций, однако, нежелательно осуществлять это обращение, а решать обобщённую задачу собственных значений. Это особенно важно, если матрицы 𝐀 и 𝐁 эрмитовы, поскольку в этом случае 𝐁1𝐀 в общем случае обычно не эрмитова и важные свойства решения больше не проявляются.

Если обе матрицы 𝐀 и 𝐁 симметричны и эрмитовы и 𝐁 является кроме того положительно определённой, собственные значения λi вещественны и собственные вектора 𝐯1 и 𝐯2 с различными собственные значения 𝐁-ортогональны (𝐯1𝐁𝐯2=0)Шаблон:Sfn. В этом случае собственные вектора можно выбрать так, что матрица 𝐏, определённая выше, удовлетворяет условиям

𝐏*𝐁𝐏=𝐄 or 𝐏𝐏*𝐁=𝐄,

и существует базис обобщённых собственных векторов (он не является Шаблон:Не переведено 5)Шаблон:Sfn. Этот случай иногда называется эрмитово определённым пучкомШаблон:Sfn.

См. также

Примечания

Шаблон:Примечания

Литература

Шаблон:Refbegin

Шаблон:Refend

Ссылки

Шаблон:Векторы и матрицы Шаблон:Rq