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

Функция normalize

Функция normalize выполняет L2-нормализацию входного тензора вдоль указанного измерения. Первым параметром функция принимает тензор для нормализации. Вторым параметром p задается порядок нормы (по умолчанию 2). Третьим параметром dim указывается измерение, вдоль которого производится нормализация. Результатом является тензор, где каждый вектор вдоль указанной оси имеет единичную норму.

Синтаксис

torch.nn.functional.normalize(input, p=2, dim=1, eps=1e-12, out=None)

Пример

Давайте выполним L2-нормализацию двумерного тензора по строкам:

import torch import torch.nn.functional as F t = torch.tensor([ [1.0, 2.0, 3.0], [4.0, 5.0, 6.0], ]) res = F.normalize(t, p=2, dim=1) print(res)

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

tensor([ [0.2673, 0.5345, 0.8018], [0.4558, 0.5698, 0.6838], ])

Пример

Нормализуем тензор по столбцам (измерение 0):

import torch import torch.nn.functional as F t = torch.tensor([ [1.0, 2.0, 3.0], [4.0, 5.0, 6.0], ]) res = F.normalize(t, p=2, dim=0) print(res)

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

tensor([ [0.2425, 0.3714, 0.4472], [0.9701, 0.9285, 0.8944], ])

Пример

Используем L1-нормализацию для одномерного тензора:

import torch import torch.nn.functional as F t = torch.tensor([1.0, 2.0, 3.0, 4.0, 5.0]) res = F.normalize(t, p=1, dim=0) print(res)

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

tensor([0.0667, 0.1333, 0.2000, 0.2667, 0.3333])

Пример

Использование параметра eps для избежания деления на ноль:

import torch import torch.nn.functional as F t = torch.tensor([ [0.0, 0.0, 0.0], [1.0, 2.0, 3.0], ]) res = F.normalize(t, p=2, dim=1, eps=1e-6) print(res)

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

tensor([ [0.0000, 0.0000, 0.0000], [0.2673, 0.5345, 0.8018], ])

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

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