tf.compat.v1.norm
Вычисляет норму векторов, матриц и тензоров. (устаревшие аргументы)
tf.compat.v1.norm(
tensor,
ord='euclidean',
axis=None,
keepdims=None,
name=None,
keep_dims=None
)
Эта функция может вычислять несколько различных векторных норм (1-норма, евклидова или 2-норма, inf-норма и в общем случае p-норма для p > 0) и матричные нормы (Фробениуса, 1-норма, 2-норма и inf-норма).
| Args | |
|---|---|
tensor | Tensor типов float32, float64, complex64, complex128 |
ord | Порядок нормы. Поддерживаемые значения: 'fro', 'euclidean', 1, 2, np.inf и любое положительное действительное число, дающее соответствующую p-норму. По умолчанию используется 'euclidean', что эквивалентно норме Фробениуса, если tensor является матрицей и эквивалентно 2-норме для векторов. Применяются некоторые ограничения: а) Норма Фробениуса fro не определена для векторов, b) Если axis является 2-кортежем (матричная норма), поддерживаются только 'euclidean', 'fro', 1, 2, np.inf. См. описание axis о том, как вычислять нормы для пакета векторов или матриц, хранящихся в тензоре. |
axis | Если axis является None (по умолчанию), входные данные считаются вектором, и вычисляется единственная векторная норма для всего набора значений в тензоре, т.е. norm(tensor, ord=ord) эквивалентно norm(reshape(tensor, [-1]), ord=ord). Если axis является целым числом Python, входные данные считаются пакетом векторов, и axis определяет ось в tensor, по которой вычисляются векторные нормы. Если axis является 2-кортежем целых чисел Python, он считается пакетом матриц, и axis определяет оси в tensor, по которым вычисляется матричная норма. Поддерживаются отрицательные индексы. Пример: если вы передаете тензор, который может быть матрицей или пакетом матриц во время выполнения, передайте axis=[-2,-1] вместо axis=None, чтобы убедиться, что вычисляются матричные нормы. |
keepdims | Если True, ось, указанная в axis, сохраняется размером 1. В противном случае измерения в axis удаляются из выходной формы. |
name | Имя операции. |
keep_dims | Устаревший псевдоним для keepdims. |
| Returns | |
|---|---|
output | Tensor того же типа, что и тензор, содержащий векторные или матричные нормы. Если keepdims равно True, то ранг вывода равен рангу tensor. В противном случае, если axis равно None, вывод является скаляром, если axis является целым числом, ранг output на один меньше ранга tensor, если axis является 2-кортежем, ранг output на два меньше ранга tensor. |
| Raises | |
|---|---|
ValueError | Если ord или axis недействительны. |
Совместимость с numpy
В основном эквивалентно numpy.linalg.norm. Не поддерживается: ord <= 0, 2-норма для матриц, ядерная норма. Другие отличия: а) Если axis является None, обрабатывает сглаженный tensor как вектор независимо от ранга. b) Явно поддерживает норму 'euclidean' по умолчанию, в том числе для тензоров более высокого порядка.
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/compat/v1/norm