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

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

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

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

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

Теория собственных векторов и собственных значений матрицы[править | править код]

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

,

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

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

,

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

Многочлен называется характеристическим многочленом матрицы, а уравнение выше называется характеристическим уравнением. Характеристическое уравнение является полиномиальным уравнением N-ого порядка от переменной . Данное уравнение имеет различных корней, где . Множество решений, то есть, собственных значений, называется спектром матрицы [1][2][3].

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

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

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

Имеется линейно независимых решений для каждого такого уравнения. Линейные комбинации mi решений являются собственными векторами, связанными с собственным значением . Целое число mi называется геометрической кратностью значения . Алгебраическая кратность и геометрическая кратность могут не совпадать, но всегда . Общее число линейно независимых собственных векторов может быть вычислено путём суммирования геометрических кратностей

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

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

Пусть будет квадратной матрицей, имеющей n линейно независимых собственных векторов qi (). Тогда можно разложить

,

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

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

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

Пример[править | править код]

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

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

Тогда

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

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

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

Выносим собственные значения x и y:

Получаем

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

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

,

где представляет два собственных значения x and y, а представляет векторы и .

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

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

Тогда

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

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

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

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

То есть:

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

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

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

Практическое значение[4][править | править код]

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

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

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

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

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

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

,

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

Функциональное исчисление[править | править код]

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

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

Разложение матрицы по собственным значениям позволяет быстрее вычислить степенной ряд от матрицы. Пусть f (x) задается степенным рядом

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

,

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

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

Похожая техника работает и в более общем виде в голоморфном функциональном исчислении[en], с помощью формулы

можно вычислять от матриц степенные ряды, которые содержат отрицательные степени. Здесь снова используется, что .

Примеры[править | править код]

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

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

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

Разложение специальных матриц[править | править код]

Нормальные матрицы[править | править код]

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

где является унитарной (что означает, что ) и является диагональной матрицей[6]. Столбцы матрицы образуют ортонормальный базис и являются собственными векторами матрицы с соответствующими собственными значениями .

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

Вещественные симметричные матрицы[править | править код]

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

где ортогональная матрица, столбцами которой служат собственные вектора матрицы , а — диагональная матрица, у которой значения на диагонали равны собственным значениям матрицы [7].

Полезные факты[править | править код]

Полезные факты о собственных значениях[править | править код]

  • Произведение собственных значений равно определителю матрицы
    Заметим, что каждое собственное значение возведено в степень ni, алгебраическую кратность.
  • Сумма собственных значений равна следу матрицы
    Заметим, что каждое собственное значение умножается на ni, алгебраическую кратность.
  • Если собственные значения матрицы есть и обратима, собственные значения матрицы просто равны .
  • Если собственные значения матрицы есть , то собственные значения матрицы просто равны для любой голоморфной функции f.

Полезные факты о собственных векторах[править | править код]

  • Если матрица эрмитова и имеет полный ранг, базис собственных векторов можно выбрать взаимно ортогональным. Собственные значения вещественны.
  • Собственные вектора матрицы те же самые, что и собственные вектора матрицы .
  • Собственные вектора определены с точностью до постоянного множителя. То есть, если , то является также собственным вектором для любого скаляра c ≠ 0. В частности, и (для любого ) также являются собственными векторами.
  • В случае вырожденных собственных значений (собственное значение появляются более одного раза), собственные вектора имеют дополнительную степень свободы вращения, то есть любая линейная (ортонормальная) комбинация собственных векторов с одним и тем же собственным значением является сама собственным вектором.

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

  • Матрица может быть разложена с помощью собственных векторов тогда и только тогда, когда число линейно независимых собственных векторов равно размерности собственного вектора:
  • Если не имеет кратных корней, то есть, если , то может быть разложена.
  • Из утверждения «матрица может быть разложена» не следует, что имеет обратную.
  • Из утверждения «матрица имеет обратную » не следует, что может быть разложено с помощью собственных векторов. Контрпримером является матрица , которая является обратимой дефектной матрицей[en].

Полезные факты об обратной матрице[править | править код]

  • Матрица обратима тогда и только тогда, когда
  • Если и , обратная матрица задаётся равенством

Численные вычисления[править | править код]

Численное вычисление собственных значений[править | править код]

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

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

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

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

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

Численное вычисление собственных векторов[править | править код]

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

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

Однако, в практических методах нахождения собственных значений матриц большого размера собственные вектора обычно вычисляются другими способами как побочный продукт вычисления собственного значения. В степенном методе, например, собственный вектор, в общем-то, вычисляется перед вычислением собственного значения (который обычно вычисляется согласно отношению Рэлея для собственного вектора)[8]. В QR-алгоритме для эрмитовой матрицы (или любой нормальной матрицы), ортонормальные собственные вектора получаются как произведение матриц из шагов алгоритма[8]. (Для матриц более общего вида QR-алгоритм сначала осуществляет разложение Шура, из которого собственные вектора могут быть получены обратной подстановкой[10]) Для эрмитовых матриц алгоритм поиск собственных значений «разделяй и властвуй»[en] более эффективен чем QR-алгоритм, если нужны как собственные вектора, так и собственные значения[8].

Дополнительные темы[править | править код]

Обобщённые собственные пространства[править | править код]

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

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

Сопряжённый собственный вектор[править | править код]

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

Например, в теории когерентного электромагнитного рассеяния линейное преобразование представляет действие, осуществляемое рассеивающим объектом, а собственные вектора представляют поляризационные состояния электромагнитной волны. В оптике координатная система определяется с волновой точки зрения, известной как выравнивание прямого рассеивания[en] (англ. Forward Scattering Alignment, FSA), и порождает уравнения обычных собственных значений, в то время как в радарах координатная система определяется со стороны радара, она известна как выравнивание обратного рассеивания[en] (англ. Back Scattering Alignment, BSA) и порождает уравнения для сопряжённых собственных векторов.

Обобщённая задача нахождения собственных значений[править | править код]

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

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

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

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

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

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

Множество матриц вида , где — комплексное число, называется пучком. Термин пучок матриц может относиться также к паре матриц [11].

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

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

Если обе матрицы и симметричны и эрмитовы и является кроме того положительно определённой, собственные значения вещественны и собственные вектора и с различными собственные значения -ортогональны ()[12]. В этом случае собственные вектора можно выбрать так, что матрица , определённая выше, удовлетворяет условиям

or ,

и существует базис обобщённых собственных векторов (он не является дефектной матрицей[en])[11]. Этот случай иногда называется эрмитово определённым пучком[11].

См. также[править | править код]

Примечания[править | править код]

  1. Golub, Van Loan, 1996, с. 310.
  2. Kreyszig, 1972, с. 273.
  3. Nering, 1970, с. 270.
  4. Hayde, Twede, 2002, с. 355.
  5. Hayde, Twede, 2002, p. 299.
  6. Horn, Johnson, 1985, с. 133 Theorem 2.5.3.
  7. Horn, Johnson, 1985, с. 136 Theorem 2.5.3 Corollary 2.5.11.
  8. 1 2 3 4 5 6 Trefethen, Bau, 1997.
  9. Ipsen, Wills, 2005.
  10. Quarteroni, Sacco, Saleri, 2000, с. 15.
  11. 1 2 3 Bai, Demmel, 2000.
  12. Parlett, 1998, с. 345.

Литература[править | править код]

Ссылки[править | править код]