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

Функция vdot

Функция vdot вычисляет скалярное произведение двух тензоров. В отличие от dot, эта функция правильно обрабатывает комплексные числа: первый аргумент подвергается комплексному сопряжению. Функция принимает два тензора и возвращает скалярное значение.

Синтаксис

torch.vdot(tensor1, tensor2)

Пример

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

import torch t1 = torch.tensor([1, 2, 3]) t2 = torch.tensor([4, 5, 6]) res = torch.vdot(t1, t2) print(res)

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

tensor(32)

Пример

Вычислим скалярное произведение двух комплексных векторов:

import torch t1 = torch.tensor([1 + 2j, 3 + 4j]) t2 = torch.tensor([5 + 6j, 7 + 8j]) res = torch.vdot(t1, t2) print(res)

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

tensor(70 - 8j)

Обратите внимание, что первый вектор был комплексно сопряжен перед умножением.

Пример

Сравним работу функций vdot и dot для комплексных чисел:

import torch t1 = torch.tensor([1 + 1j, 2 + 2j]) t2 = torch.tensor([3 + 3j, 4 + 4j]) res_vdot = torch.vdot(t1, t2) res_dot = torch.dot(t1, t2) print("vdot:", res_vdot) print("dot :", res_dot)

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

vdot: tensor(10 - 10j) dot : tensor(10 + 10j)

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

  • функцию dot,
    которая вычисляет скалярное произведение без комплексного сопряжения
  • функцию matmul,
    которая выполняет матричное умножение тензоров
  • функцию inner,
    которая вычисляет внутреннее произведение для многомерных тензоров
  • функцию outer,
    которая вычисляет внешнее произведение двух векторов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить