Рубрики
Без рубрики

Как умножить 2D Matrices в Numpy?

Учитывая две 2D-массивы A и B. Вы можете выполнить стандартное умножение матрицы с помощью операции np.matmul (a, b), если массив A имеет форму (x, y) и массив, имеет форму (y, z) для некоторых целых чисел x, y и z. Постановка проблемы: Учитывая двумерное множество массив) А с формой (x, y) и … Как умножить 2D Matrices в Numpy? Подробнее “

Автор оригинала: Chris.

Учитывая две 2D массивы А и преступник . Вы можете выполнить стандартное умножение матрицы с помощью операции np.matmul (a, b) Если массив A имеет форму (х, у) и массив есть форма (y, z) для некоторых целых чисел х , y и z .

Проблема формулировки : Учитывая двумерное множество массив) А С формой (х, у) и двумерный массив b с формой (y, z) Отказ Другими словами, количество столбцов А так же, как количество рядов B Отказ Как умножить А с B Используя стандартное умножение матрицы?

Решение : Используйте np.matmul (a, b) Функция, которая требует двухчисленных массивов в качестве ввода и возвращает результат умножения обоих массивов. Массивы должны быть совместимыми в форме.

Давайте погрузимся в несколько примеров!

Умножение матрицы 2 × 2 с матрицей 2 × 2

import numpy as np


a = np.array([[1, 1],
              [1, 0]])


b = np.array([[2, 0],
              [0, 2]])


c = np.matmul(a, b)

print(a.shape)
# (2, 2)

print(b.shape)
# (2, 2)

print(c)
'''
[[2 2]
 [2 0]]
'''

Умножение матрицы 2 × 3 и матрицы 3 × 2

import numpy as np


a = np.array([[1, 1, 1],
              [1, 0, 1]])


b = np.array([[2, 0],
              [0, 2],
              [0, 0]])


c = np.matmul(a, b)

print(a.shape)
# (2, 3)

print(b.shape)
# (3, 2)

print(c)
'''
[[2 2]
 [2 0]]
'''

Numpy Puzzle: Matrix умножение

import numpy as np

# graphics data
a = [[1, 1],
     [1, 0]]

# stretch vectors
b = [[2, 0],
     [0, 2]]
c = np.matmul(a, b)

print(c[0, 1])

Что такое выход этой головоломки?

Numpy – популярная библиотека Python для науки о данных, ориентируясь на массивы, векторы и матрицы.

Эта головоломка показывает важную область применения Matrix умножения: компьютерная графика.

Мы создаем два матрица A и B. Первая матрица a – матрица данных (например, состоящая из двух столбец векторов (1,1) и (1,0) ). Вторая Matrix B – это матрица преобразования, которая преобразует входные данные. В нашей настройке матрица преобразования просто протягивает векторы колонны.

Точнее, два столбец векторы (1,1) и (1,0) растягиваются по фактору 2 до (2,2) и (2,0) Отказ Следовательно, полученная матрица [[2,2],[2,0]] . Доступ к первой строке и второму столбцу.

Вы мастер-кодер? Проверьте свои навыки сейчас!

Связанное видео.

Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.

Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python одноклассники (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.

Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.

Оригинал: “https://blog.finxter.com/how-to-multiply-2d-matrices-in-numpy/”