Для нахождения СК (сингулярного числа, если речь идет о матрице) нужно выполнить следующие шаги:
1. Если дана матрица A размером m x n, где m – количество строк, а n – количество столбцов, вычислить произведение матрицы A на ее транспонированную версию A^T. Результирующая матрица будет размером m x m.
2. Найти собственные значения этой результирующей матрицы. Собственные значения можно найти, решив характеристическое уравнение, определенное как det(AA^T – λI) = 0, где det – определитель, λ – неизвестное собственное значение, I – единичная матрица размером m x m.
3. Квадратные корни из собственных значений, полученных на предыдущем шаге, будут сингулярными значениями матрицы A. Возьмем их и упорядочим в порядке убывания.
4. Чтобы найти сингулярные векторы, соответствующие сингулярным значениям, нужно вычислить собственные векторы результирующей матрицы. Эти векторы являются собственными векторами матрицы A^T*A.
5. Нормализуйте собственные векторы и получите две матрицы размером m x m и m x n. Матрица U – матрица левых сингулярных векторов, а матрица V^T – матрица правых сингулярных векторов.
6. Получите матрицу S размером m x n, где на диагонали будут сингулярные значения.
Таким образом, СК получены в трех матрицах: U (левые сингулярные векторы), S (сингулярные значения) и V^T (правые сингулярные векторы).