Математика / Матрицы, определители
Ранг матрицы через сингулярные числа
Ранг матрицы равен количеству ненулевых сингулярных чисел. Эта формула связывает алгебраическое понятие размерности образа с численной диагностикой зависимости строк и столбцов.
Формула
Столбиковая диаграмма сингулярных чисел с линией допуска.
Ранг через SVD удобно объяснять как число столбцов выше выбранного порога.
Обозначения
- $A$
- исходная матрица, безразмерная
- $\sigma_i$
- сингулярные числа матрицы A, безразмерная
- $\operatorname{rank}(A)$
- ранг матрицы A, безразмерная
Условия применения
- Сингулярные числа берутся из SVD матрицы A.
- В точной алгебре ненулевым считается строго положительное сингулярное число.
- В численных расчетах нужен порог, ниже которого число считают практически нулевым.
Ограничения
- Для данных с шумом понятие численного ранга зависит от выбранного допуска.
- Очень малые сингулярные числа могут быть следствием округления, а не реальной структуры.
- Формула не заменяет содержательной интерпретации признаков или столбцов в прикладной задаче.
Подробное объяснение
Сингулярные числа показывают, сколько независимых направлений матрица действительно переносит в ненулевые направления пространства значений. Если sigma_i равно нулю, соответствующее направление из области определения полностью попадает в ядро. Если sigma_i положительно, оно дает отдельное направление в образе. Поэтому количество положительных sigma_i совпадает с размерностью образа, то есть с рангом. Такой способ особенно хорош для прямоугольных матриц и для ситуаций, где миноры громоздки или плохо устойчивы численно. В прикладных задачах часто используют численный ранг: выбирают порог относительно максимального сингулярного числа и считают все более мелкие значения шумом. При работе с этой формулой важно сначала проверить размерности матриц и смысл операции. В линейной алгебре многие ошибки выглядят как верные алгебраические преобразования, но ломаются на уровне размеров: нельзя менять порядок множителей, если произведение после перестановки уже не определено, и нельзя считать обратную матрицу существующей без проверки невырожденности. В численных задачах дополнительно смотрят на обусловленность, потому что формально корректная запись может давать нестабильный ответ при округлении. Поэтому формулу полезно читать не только как способ вычисления, но и как способ увидеть структуру задачи: какие подпространства участвуют, где появляется проекция, где требуется ортогональность, а где достаточно рангового обновления.
Как пользоваться формулой
- Вычислите сингулярные числа матрицы.
- Для точной задачи посчитайте строго положительные sigma_i.
- Для численной задачи выберите допуск с учетом масштаба матрицы и погрешности данных.
- Проверьте, согласуется ли найденный ранг с размерностями образа, ядра и исходной задачи.
Историческая справка
Связь ранга с сингулярными числами стала особенно важной после распространения вычислительных методов линейной алгебры. В классическом курсе ранг вводили через строки, столбцы и миноры, но для больших матриц такой подход неудобен. SVD дал устойчивый способ увидеть почти зависимые направления и отделить точную алгебру от численной практики. Современная запись этой формулы сложилась не сразу. Сначала похожие идеи появлялись в задачах решения систем линейных уравнений, теории квадратичных форм, аналитической механике и статистике, где матрицы использовали как компактный язык для больших наборов коэффициентов. В XX веке развитие численного анализа, вычислительной техники и прикладной статистики сделало такие тождества особенно важными: стало нужно не просто доказать существование решения, а уметь устойчиво считать его на реальных данных. Поэтому историческую атрибуцию здесь лучше понимать как цепочку вкладов: алгебраическая идея, удобная матричная запись, численный алгоритм и прикладная интерпретация часто были оформлены разными авторами и школами.
Историческая линия формулы
Формула является следствием SVD и понятия ранга, поэтому у нее нет единственного автора. Исторически она связана с развитием теории матриц, ортогональных преобразований и численного анализа. Атрибуция этой темы распределенная: алгебраическая основа идет от теории билинейных и квадратичных форм, а современный вычислительный смысл связан с численной линейной алгеброй XX века. Поэтому страницу лучше связывать с исторической линией развития метода, а не с единственным автором.
Пример
Пусть сингулярные числа матрицы равны 10, 3, 0.000001. В точной математике, если последнее число действительно не равно нулю, ранг равен 3. Но если данные получены измерениями с погрешностью около 0.001, последнее значение разумно считать шумовым, и численный ранг будет 2. Именно поэтому SVD полезно не только как формальная формула, но и как инструмент диагностики качества данных. В практическом расчете для "Ранг матрицы через сингулярные числа" полезно после получения чисел проверить два факта: ортогональные множители не должны менять длину вектора, а диагональная часть должна отвечать за все растяжение. Например, если одно сингулярное число намного меньше остальных, соответствующее направление почти исчезает при действии матрицы. В анализе данных это часто означает шумовое или слабо наблюдаемое направление, а в решении систем - источник неустойчивости. Поэтому пример с числами нужно читать не только как подстановку в формулу \operatorname{rank}(A)=\#\{i:\sigma_i>0\}, но и как диагностику того, какие направления матрица сохраняет, усиливает или почти теряет.
Частая ошибка
Опасная ошибка - считать ранг только по тому, сколько сингулярных чисел напечатала программа. Численный алгоритм почти никогда не возвращает идеально нулевые значения для шумных данных. Еще одна ошибка - сравнивать sigma_i с абсолютным нулем без учета масштаба матрицы: для матрицы с коэффициентами порядка миллиона и для матрицы с коэффициентами порядка одной тысячной нужен разный практический порог.
Практика
Задачи с решением
Точный ранг
Условие. Сингулярные числа матрицы равны 6, 2, 0, 0. Найдите ранг.
Решение. Положительных сингулярных чисел два: 6 и 2. Нулевые значения не дают новых направлений образа.
Ответ. Ранг равен 2.
Численный ранг
Условие. Сингулярные числа равны 100, 4, 0.00002. При допуске 0.001 найдите численный ранг.
Решение. Значения 100 и 4 больше допуска. Значение 0.00002 меньше допуска, поэтому его считают численным нулем.
Ответ. Численный ранг равен 2.
Дополнительные источники
- Г. Стрэнг, Введение в линейную алгебру
- Д. Лэй, Линейная алгебра и ее приложения
- G. H. Golub, C. F. Van Loan, Matrix Computations
- MIT OpenCourseWare, Linear Algebra
Связанные формулы
Математика
Сингулярное разложение матрицы
Сингулярное разложение представляет матрицу как произведение двух ортогональных матриц и диагональной матрицы сингулярных чисел. Это универсальная форма разложения, которая работает для прямоугольных матриц и показывает главные направления действия линейного отображения.
Математика
Ранг матрицы через миноры
Ранг матрицы равен наибольшему порядку ненулевого минора. Он показывает, сколько строк или столбцов матрицы действительно независимы.
Математика
Псевдообратная для решения МНК
Псевдообратная матрица A^+ записывает МНК-решение как x=A^+b и обобщает обратную матрицу на прямоугольные и вырожденные системы.
Математика
Спектральная норма через сингулярные числа
Спектральная норма матрицы равна ее наибольшему сингулярному числу. Она показывает максимальный коэффициент растяжения вектора при действии линейного отображения.