Функция numpy.dot() в Python

Чтобы вычислить скалярное произведение массивов numpy nd, вы можете использовать функцию numpy.dot() в Python. Она принимает в качестве аргументов два массива numpy, вычисляет их скалярное произведение и возвращает результат.

Синтаксис

Синтаксис метода numpy.dot():

numpy.dot(a, b, out=None)
Параметр Описание
a [обязательный] Первый аргумент для операции скалярного произведения.
b [обязательный] Второй аргумент для операции скалярного произведения.
out [необязательно] Этот аргумент используется для оценки производительности. Это должен быть C-смежный массив, а dtype должен быть тем dtype, который будет возвращен для точки (a, b).

На основе размеров входного массива

В следующей таблице указывается тип выполняемой операции на основе размеров входных массивов: a и b.

Размерности «a» и «b» Выход
Нулевое измерение (скалярное) Умножение двух скаляров a и b.
Одномерные массивы (вектор) Внутреннее произведение векторов.
Двумерные массивы (матрица) Умножение матриц.
a: N-мерный массив, b: 1-мерный массив Суммируйте произведение по последней оси a и b.
a: N-мерный массив, b: M-мерный массив (M> = 2) Суммируйте произведение по последней оси a и предпоследней оси b.

Пример 1: произведение скаляров с несколькими точками

В этом примере мы берем два скаляра и вычисляем их скалярное произведение с помощью функции numpy.dot(). Точечное произведение с двумя скалярами в качестве аргументов возвращает умножение двух скаляров.

import numpy as np

a = 3 
b = 4
output = np.dot(a,b)
print(output)

Вывод:

12

Объяснение:

output = a * b
       = 3 * 4
       = 12

Пример 2: произведение числовых точек одномерных массивов

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

import numpy as np

#initialize arrays
A = np.array([2, 1, 5, 4])
B = np.array([3, 4, 7, 8])

#dot product
output = np.dot(A, B)

print(output)

Вывод:

77

Скалярное произведение:

output = [2, 1, 5, 4].[3, 4, 7, 8]
       = 2*3 + 1*4 + 5*7 + 4*8
       = 77

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

В этом примере мы берем два двумерных массива numpy и вычисляем их скалярное произведение. Точечное произведение двух двумерных массивов возвращает матричное умножение двух входных массивов.

import numpy as np

#initialize arrays
A = np.array([[2, 1], [5, 4]])
B = np.array([[3, 4], [7, 8]])

#dot product
output = np.dot(A, B)

print(output)

Вывод:

[[13 16]
 [43 52]]

Скалярное произведение:

output = [[2, 1], [5, 4]].[[3, 4], [7, 8]]
       = [[2*3+1*7, 2*4+1*8], [5*3+4*7, 5*4+4*8]]
       = [[13, 16], [43, 52]]

В этом руководстве на примерах Python мы узнали, как вычислить скалярное произведение массивов numpy с помощью примеров программ.

Отмечено:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *