Разложение по сингулярным значениям

Раздел содержит функции для вычисления разложения матрицы по сингулярным значениям (SVD). Такое разложение представляет матрицу через ортогональные/унитарные матрицы и диагональную матрицу сингулярных значений. SVD применяется в задачах линейной алгебры, уменьшения размерности данных, сжатия, решения систем уравнений, аппроксимации матриц и анализа данных.

Функция

Действие

SingularValueDecompositionDC

SVD-разложение методом "разделяй и властвуй". Считается самым быстрым среди SVD-алгоритмов (LAPACK-функция GESDD).

SingularValueDecompositionQR

SVD-разложение QR-алгоритмом. Классический алгоритм SVD (LAPACK-функция GESVD).

SingularValueDecompositionQRPivot

SVD-разложение QR-алгоритмом с выбором ведущего элемента (LAPACK-функция GESVDQ).

SingularValueDecompositionBisection

SVD-разложение методом бисекции (LAPACK-функция GESVDX).

SingularValueDecompositionJacobiHigh

SVD-разложение высокоуровневым методом Якоби (LAPACK-функция GEJSV).

SingularValueDecompositionJacobiLow

SVD-разложение низкоуровневым методом Якоби (LAPACK-функция GESVJ). В некоторых случаях вычисляет малые сингулярные значения и соответствующие сингулярные векторы значительно точнее других SVD-подпрограмм.

SingularValueDecompositionBidiagDC

SVD-разложение бидиагональной матрицы методом "разделяй и властвуй" (LAPACK-функция BDSDC).

SingularValueDecompositionBidiagBisect

SVD-разложение бидиагональных матриц методом бисекции (LAPACK-функция BDSVDX).

SingularValueDecompositionBidiagQR

Вычисляет SVD-разложение общей матрицы, предварительно приведенной к бидиагональному виду методом ReduceToBidiagonal. LAPACK-функция BDSQR.