РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
266 of 769 menu

Функция linalg.norm

Функция torch.linalg.norm вычисляет норму тензора. Она поддерживает различные типы норм: векторные (L1, L2, бесконечность) и матричные (Фробениуса, спектральную, ядерную и другие). Первым параметром функция принимает тензор. Вторым параметром можно передать порядок нормы (ord). Третьим параметром указывается размерность (dim), по которой вычисляется норма. Если размерность не указана, норма вычисляется по всем элементам тензора. Функция возвращает тензор с вычисленными нормами.

Синтаксис

torch.linalg.norm(input, ord=None, dim=None, keepdim=False)

Пример

Давайте вычислим L2-норму (Евклидову) для одномерного тензора:

import torch t = torch.tensor([1.0, 2.0, 3.0, 4.0, 5.0]) res = torch.linalg.norm(t) print(res)

Результат выполнения кода:

tensor(7.4162)

Пример

Вычислим L1-норму, указав порядок нормы:

import torch t = torch.tensor([1.0, -2.0, 3.0, -4.0, 5.0]) res = torch.linalg.norm(t, ord=1) print(res)

Результат выполнения кода:

tensor(15.)

Пример

Вычислим норму по строкам для двумерного тензора с помощью параметра dim:

import torch t = torch.tensor([ [1.0, 2.0, 3.0], [4.0, 5.0, 6.0], ]) res = torch.linalg.norm(t, dim=1) print(res)

Результат выполнения кода:

tensor([3.7417, 8.7750])

Пример

Вычислим матричную норму Фробениуса, сохранив размерность с помощью keepdim:

import torch t = torch.tensor([ [1.0, 2.0], [3.0, 4.0], ]) res = torch.linalg.norm(t, ord='fro', keepdim=True) print(res)

Результат выполнения кода:

tensor([[5.4772]])

Смотрите также

  • функцию vector_norm,
    которая вычисляет векторные нормы с дополнительными опциями
  • функцию matrix_norm,
    которая специализируется на матричных нормах
  • функцию svd,
    которая выполняет сингулярное разложение, используемое для вычисления некоторых норм
  • функцию eig,
    которая находит собственные значения, связанные с некоторыми типами норм
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить