Функция Numpy linalg matrix_rank() и примеры

Метод Numpy linalg matrix_rank() используется для вычисления ранга данной матрицы с использованием метода SVD.

Что такое функция Numpy linalg matrix_rank()?

Функция Numpy linalg matrix_rank() возвращает ранг матрицы массива с помощью метода SVD. Метод matrix_rank() вычисляется по количеству сингулярных значений Matrix, превышающих tol.

Синтаксис

Параметры

Функция matrix_rank() принимает в основном два параметра:

  1. Array: это массив, ранг которого мы хотим найти.
  2. tol: порог, ниже которого значения SVD считаются нулевыми. Если tol равно None, S — это массив с сингулярными значениями для M, а eps — это значение эпсилон для типа данных S, тогда tol устанавливается равным S.max() * max(M.shape) * eps.

Примечания

Предел по умолчанию для обнаружения ранговых ошибок составляет m. K — это тест на величину отдельных значений. По умолчанию мы нашли значения smasher ниже, чем s.max() * max(mHap) * EPS. .

Этот диапазон по умолчанию предназначен для обнаружения уменьшения ранга с учетом числовых ошибок вычисления SVD. Держите столбец M в M, который является точной комбинацией (с плавающей запятой) других столбцов в M. Вычисление SVD на M обычно не дает единственного значения, равного 0: наименьшее значение SVD.

Любое отличие от 0 из-за численных нарушений в расчете SVD. Наш диапазон для малых значений SVD учитывает это числовое возмущение, а пороговое значение по умолчанию распознает отсутствие такого числового ранга. Хотя линейная комбинация некоторых столбцов М не равна второму столбцу М, хотя численно очень близка ко второму столбцу М, входная матрица М может декларировать понижение ранга.

Мы выбрали ограничение по умолчанию, потому что оно широко используется. Возможны другие ограничения. Например, в версии 2007 года consonant имеет необязательный массив smacks() * np.info(M.dtype) в другом месте .eps/2. * np.sqrt(m + n + 1.). Авторы описывают это ограничение на основе «ошибки округления».

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

Возвращаемое значение

Функция matrix_rank() возвращает целочисленное значение, обозначающее ранг данной Матрицы.

Функция Numpy linalg matrix_rank()

Расчет ранга одномерной матрицы

См. следующий код.

Вывод:

Объяснение.

В этой программе мы сначала импортировали numpy и numpy.linalg для вычисления ранга матрицы.

Мы объявили два одномерных массива, а затем передали значение tol при вызове функции matrix_rank(). Мы получили ранг матрицы в соответствии с заданным значением.

Matrix rank 2D-матрицы

См. следующий код.

Вывод:

Объяснение.

В этой программе мы сначала импортировали numpy и numpy.linalg для вычисления ранга матрицы.

Мы объявили два 2D-массива, а затем передали значение tol при вызове функции matrix_rank(). Мы получили ранг матрицы в соответствии с переданным значением.

Оцените статью

Автор статей и разработчик, делюсь знаниями.

Программирование на Python