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

Функция matmul

Функция matmul выполняет матричное умножение двух массивов. Первым параметром функция принимает левый массив, вторым - правый. Функция поддерживает умножение как двумерных матриц, так и многомерных массивов с трансляцией по последним двум осям.

Синтаксис

np.matmul(a, b)

Пример

Давайте выполним матричное умножение двух матриц размером 2x2:

import numpy as np a = np.array([[1, 2], [3, 4]]) b = np.array([[5, 6], [7, 8]]) res = np.matmul(a, b) print(res)

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

[[19 22] [43 50]]

Пример

Давайте перемножим матрицу размером 2x3 и матрицу размером 3x2:

import numpy as np a = np.array([[1, 2, 3], [4, 5, 6]]) b = np.array([[7, 8], [9, 10], [11, 12]]) res = np.matmul(a, b) print(res)

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

[[ 58 64] [139 154]]

Пример

Давайте выполним матричное умножение для трехмерных массивов (пакетное умножение):

import numpy as np a = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]]) b = np.array([[[9, 10], [11, 12]], [[13, 14], [15, 16]]]) res = np.matmul(a, b) print(res)

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

[[[ 31 34] [ 71 78]] [[155 166] [211 226]]]

Пример

Давайте перемножим вектор-строку и вектор-столбец с помощью matmul:

import numpy as np a = np.array([1, 2, 3]) b = np.array([[4], [5], [6]]) res = np.matmul(a, b) print(res)

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

[32]

Пример

Давайте сравним matmul с оператором @, который выполняет то же самое действие:

import numpy as np a = np.array([[1, 2], [3, 4]]) b = np.array([[5, 6], [7, 8]]) res1 = np.matmul(a, b) res2 = a @ b print(res1) print(res2)

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

[[19 22] [43 50]] [[19 22] [43 50]]

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

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