Функция mv
Функция mv выполняет умножение матрицы (двумерного тензора) на вектор (одномерный тензор). Первым параметром функция принимает матрицу, вторым - вектор. Размерность последней оси матрицы должна совпадать с размерностью вектора. Функция возвращает одномерный тензор - результат произведения.
Синтаксис
torch.mv(matrix, vector)
Пример
Давайте умножим матрицу размера 2x3 на вектор длины 3:
import torch
matrix = torch.tensor([
[1, 2, 3],
[4, 5, 6],
])
vector = torch.tensor([7, 8, 9])
res = torch.mv(matrix, vector)
print(res)
Результат выполнения кода:
tensor([50, 122])
Где 50 = 1*7 + 2*8 + 3*9, а 122 = 4*7 + 5*8 + 6*9.
Пример
Умножим матрицу размера 3x2 на вектор длины 2:
import torch
matrix = torch.tensor([
[1, 2],
[3, 4],
[5, 6],
])
vector = torch.tensor([7, 8])
res = torch.mv(matrix, vector)
print(res)
Результат выполнения кода:
tensor([23, 53, 83])
Пример
Используем функцию mv с тензорами типа float:
import torch
matrix = torch.tensor([
[1.5, 2.5],
[3.5, 4.5],
], dtype=torch.float)
vector = torch.tensor([1.0, 2.0], dtype=torch.float)
res = torch.mv(matrix, vector)
print(res)
Результат выполнения кода:
tensor([6.5000, 12.5000])