Калькулятор разложения Холецкого - Факторизация положительно определённых матриц
Мгновенно разложите любую симметричную положительно определённую матрицу в A = L·Lᵀ. Бесплатный онлайн-инструмент для разложения Холецкого в линейной алгебре, численном анализе и статистике.
Введите элементы симметричной положительно определённой матрицы, выберите её размер и сразу получите нижнетреугольный фактор Холецкого L.
Калькулятор разложения Холецкого - Факторизация положительно определённых матриц
Мгновенно разложите любую симметричную положительно определённую матрицу в A = L·Lᵀ. Бесплатный онлайн-инструмент для разложения Холецкого в линейной алгебре, численном анализе и статистике.
Введите числовые значения для каждого элемента матрицы. Матрица должна быть симметричной и положительно определённой.
Загрузить пример матрицы:
О калькуляторе разложения Холецкого
Разложение Холецкого — одно из важнейших матричных разложений в численной линейной алгебре. Для симметричной положительно определённой матрицы A оно порождает единственную нижнетреугольную матрицу L со строго положительными диагональными элементами, такую что A = L·Lᵀ. Алгоритм, приписываемый французскому артиллерийскому офицеру Андре-Луи Холецкому (1875–1918), был опубликован посмертно в 1924 году и с тех пор стал краеугольным камнем научных вычислений.
Используемый в этом калькуляторе алгоритм Cholesky-Banachiewicz продвигается по столбцам. Для каждого диагонального элемента он вычитает сумму квадратов всех предыдущих элементов той же строки из соответствующего диагонального элемента A, а затем берёт квадратный корень. Для элементов ниже диагонали он вычитает скалярное произведение ранее вычисленных элементов и делит на текущий диагональный элемент. Вычислительная стоимость составляет примерно n³/6 умножений для матрицы n×n, что делает его примерно вдвое эффективнее общего LU-разложения для симметричных положительно определённых входов.
Самое важное требование — матрица должна быть одновременно симметричной и положительно определённой. Симметрия означает, что для всех пар (i, j) выполняется A[i][j] = A[j][i]. Положительная определённость означает, что xᵀAx > 0 для любого ненулевого вещественного вектора x, что эквивалентно тому, что все собственные значения строго положительны. В алгоритме Холецкого нарушение положительной определённости проявляется как попытка извлечь квадратный корень из неположительного числа, и именно это проверяет данный калькулятор.
В статистике ковариационные матрицы всегда симметричны и полуопределённы. Если никакие две переменные не являются идеально коллинеарными, они становятся строго положительно определёнными, и разложение Холецкого можно применять напрямую. Разложение используется для генерации многомерных нормальных случайных выборок: если z — вектор независимых стандартных нормальных переменных, то L·z имеет ковариационную матрицу A. Эта техника лежит в основе моделирования коррелированных финансовых активов методом Монте-Карло, ансамблей климатических моделей и анализа структурной надёжности.
В машинном обучении гауссовы процессы и байесовские нейронные сети сильно зависят от разложения Холецкого для эффективного обращения или вычисления логарифма определителя ядерных матриц. Логарифм определителя A равен удвоенной сумме логарифмов диагональных элементов L, что позволяет избежать численной нестабильности прямого вычисления определителя. Реализации фильтра Калмана используют так называемый квадратнокорневой фильтр Калмана, который распространяет фактор Холецкого ковариационной матрицы вместо самой ковариации, существенно повышая численную устойчивость в длительных задачах оценивания.
Этот калькулятор поддерживает матрицы 2×2, 3×3 и 4×4 — размеры, наиболее часто встречающиеся в учебных задачах, небольших проблемах численного анализа и прототипировании численных алгоритмов. Для более крупных матриц применяется тот же алгоритм, который можно эффективно реализовать на современном оборудовании с использованием операций BLAS третьего уровня. Независимо от того, проверяете ли вы домашнее задание, сверяете ручное разложение или изучаете свойства положительно определённых матриц, этот инструмент мгновенно выдаёт точные факторы Холецкого.
Примеры разложения Холецкого
Три разобранных примера показывают, как вычисляется фактор Холецкого для матриц разного размера.
| Входная матрица A | Фактор Холецкого L | Примечания |
|---|---|---|
| [[4, 2], [2, 3]] | L = [[2, 0], [1, 1.4142]] | 2×2 симметричная положительно определённая матрица. L[0][0] = √4 = 2; L[1][0] = 2/2 = 1; L[1][1] = √(3−1) = √2 ≈ 1.4142. |
| [[4, 2, 1], [2, 5, 2], [1, 2, 6]] | L = [[2, 0, 0], [1, 2, 0], [0.5, 0.75, 2.2776]] | 3×3 положительно определённая матрица. L[0][0]=2, L[1][0]=1, L[1][1]=2, L[2][0]=0.5, L[2][1]=0.75, L[2][2]=√5.1875≈2.2776. Все диагональные элементы положительны. |
| [[1, 0], [0, 1]] | L = [[1, 0], [0, 1]] | Единичная матрица сама является своим фактором Холецкого, поскольку I = I·Iᵀ. Это удобно как эталон для проверки точности калькулятора. |
Как пользоваться калькулятором разложения Холецкого
- Выберите размер матрицы (2×2, 3×3 или 4×4) с помощью кнопок сверху.
- Введите все элементы в таблицу. Для симметричной матрицы убедитесь, что A[i][j] = A[j][i] — калькулятор проверяет это автоматически.
- Нажмите «Вычислить разложение». Нижнетреугольный фактор L отобразится в результирующей таблице, где каждая ячейка показывает значение L[i][j].
- Проверьте результат, убедившись, что L × Lᵀ совпадает с исходной матрицей A. Любые численные расхождения связаны с округлением с плавающей точкой.
- Используйте кнопки с примерами матриц, чтобы загрузить готовые положительно определённые матрицы и посмотреть, как работает разложение для разных входных данных.
Часто задаваемые вопросы о разложении Холецкого
Что такое разложение Холецкого?
Разложение Холецкого факторизует симметричную положительно определённую матрицу A в произведение L·Lᵀ, где L — нижнетреугольная матрица с положительными диагональными элементами. Названное в честь французского математика Андре-Луи Холецкого, оно примерно вдвое эффективнее LU-разложения для этого класса матриц и широко используется в численных вычислениях.
Что означает «положительно определённая»?
Симметричная матрица A положительно определена, если xᵀAx > 0 для любого ненулевого вектора x. Эквивалентно, все собственные значения должны быть строго положительными, либо все ведущие главные миноры должны быть положительными. Ковариационные матрицы в статистике всегда являются полуопределёнными и становятся положительно определёнными, когда ни одна переменная не является точной линейной комбинацией других.
Что будет, если моя матрица не положительно определена?
Алгоритм Холецкого сталкивается с извлечением квадратного корня из неположительного числа, что означает отсутствие разложения в области вещественных чисел. Этот калькулятор обнаруживает такое состояние и сообщает об ошибке. Проверьте, действительно ли матрица симметрична и превышают ли все диагональные элементы сумму квадратов недиагональных элементов в той же строке.
Как разложение Холецкого используется на практике?
Его используют для эффективного решения систем линейных уравнений Ax = b, вычисления логарифма определителя ковариационной матрицы (необходимого для оценки гауссовых правдоподобий), генерации коррелированных случайных выборок в моделях Монте-Карло, а также как строительный блок в фильтрах Калмана и регрессии гауссовских процессов. Фактор L обеспечивает численно устойчивый способ работы с положительно определёнными системами.
Почему матрица должна быть симметричной?
Разложение A = L·Lᵀ определено только для симметричных матриц, поскольку Lᵀ — это транспонированная матрица L. Несимметричная матрица такого факторизования не имеет. На практике можно симметризовать почти симметричную матрицу, заменив её на (A + Aᵀ)/2 перед разложением.
Какова связь между разложением Холецкого и LU-разложением?
LU-разложение записывает A = L·U, где L — нижнетреугольная матрица, а U — верхнетреугольная. Для симметричной положительно определённой матрицы U = Lᵀ, поэтому разложение Холецкого — это частный случай LU, использующий симметрию и уменьшающий вычислительную работу с O(n³/3) до O(n³/6) операций с плавающей точкой. Для положительно определённых систем разложение Холецкого также более устойчиво численно.