Является ли вводная документация для вычисления нормы 2-го порядка матрицы по столбцам немного вводящей в заблуждение? - PullRequest
0 голосов
/ 05 июля 2018

Я пытался выяснить, как вычислить Фробениус матрицы в NumPy. Таким образом, я могу получить 2-норму каждой строки в матрице х ниже: Мой вопрос о параметре ord в модуле linalg.norm numpy и о том, как соответствующая часть документации numpy описывает, какую норму матрицы можно вычислить. Я смог получить норму Фробениуса, установив ord=2, однако он говорит, что только настройка ord=None дает норму Фробениуса.

The Table Provided in numpy documentation

Вот мой пример:

x = np.array([[0, 3, 4],
          [1, 6, 4]])

Я обнаружил, что могу использовать норму Фробениуса со следующей строкой кода:

x_norm = np.linalg.norm(x, ord = 2, axis=1,keepdims=True )

>>> x_norm
    array([[ 5.        ],
           [ 7.28010989]])

Мой вопрос заключается в том, будет ли рассматриваемая здесь документация не настолько полезной, насколько это возможно, и если это потребует запроса на изменение описания настройки ord=2 в вышеупомянутой таблице.

1 Ответ

0 голосов
/ 05 июля 2018

Вы не принимаете матричную норму. Поскольку вы прошли axis=1, вы принимаете векторные нормы, и вы должны смотреть на столбец векторной нормы вместо столбца матричной нормы.

Для векторных норм, ord=None и ord=2 оба дают 2-норму.

...