torch.linalg.vector_norm
-
torch.linalg.vector_norm(x, ord=2, dim=None, keepdim=False, *, dtype=None, out=None) → Tensor -
Вычисляет векторную норму.
Если
xимеет комплексное значение, она вычисляет нормуx.abs()Поддерживает входные типы float, double, cfloat и cdouble.
Эта функция не обязательно обрабатывает многомерные
xкак пакет векторов, вместо этого:- Если
dim= None,xбудет сглажен перед вычислением нормы. - Если
dimявляетсяintилиtuple, норма будет вычислена по этим измерениям, а другие измерения будут обрабатываться как измерения пакета.
Это поведение соответствует
torch.linalg.norm().ordопределяет вычисляемую векторную норму. Поддерживаются следующие нормы:ordвекторная норма
2(по умолчанию)2-норма (см. ниже)infmax(abs(x))-infmin(abs(x))0sum(x != 0)другие
intилиfloatsum(abs(x)^{ord})^{(1 / ord)}где
infотносится кfloat(‘inf’), объектуinfNumPy или любому эквивалентному объекту.dtypeможет быть использована для выполнения вычислений в более точном типе данных. Она семантически эквивалентна вызовуlinalg.vector_norm(x.to(dtype)), но в некоторых случаях быстрее.См. также
torch.linalg.matrix_norm()вычисляет матричную норму.- Параметры:
-
-
x (Тензор) – тензор, по умолчанию сглаживается, но это поведение можно контролировать с помощью
dim. -
ord (int, float, inf, -inf, 'fro', 'nuc', необязательно) – порядок нормы. По умолчанию:
2 -
dim (int, Tuple[int], необязательно) – измерения, по которым вычисляется норма. См. выше поведение, когда
dim= None. По умолчанию:None -
keepdim (bool, необязательно) – Если установлено в
True, уменьшенные измерения сохраняются в результате как измерения с размером один. По умолчанию:False
-
x (Тензор) – тензор, по умолчанию сглаживается, но это поведение можно контролировать с помощью
- Ключевые аргументы:
-
-
out (Тензор, необязательно) – тензор результата. Игнорируется, если
None. По умолчанию:None. -
dtype (
torch.dtype, optional) – тип, используемый для накопления и возврата. Если указано,xприводится к типуdtypeперед выполнением операции, и тип возвращаемого тензора будетdtypeесли вещественный и его вещественный аналог, если комплексный.dtypeможет быть комплексным, еслиxкомплексный, в противном случае он должен быть вещественным.xдолжен быть преобразуем без сужения кdtype. По умолчанию: None
-
out (Тензор, необязательно) – тензор результата. Игнорируется, если
- Возвращает:
-
Вещественный тензор, даже если
xкомплексный.
Примеры:
>>> from torch import linalg as LA >>> a = torch.arange(9, dtype=torch.float) - 4 >>> a tensor([-4., -3., -2., -1., 0., 1., 2., 3., 4.]) >>> B = a.reshape((3, 3)) >>> B tensor([[-4., -3., -2.], [-1., 0., 1.], [ 2., 3., 4.]]) >>> LA.vector_norm(a, ord=3.5) tensor(5.4345) >>> LA.vector_norm(B, ord=3.5) tensor(5.4345) - Если
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/1.13/generated/torch.linalg.vector_norm.html