先決條件- python中的numpy.dot()
numpy.vdot(vector_a, vector_b)
返回向量a和b的點積。如果第一個參數是複數,則第一個參數的複共軛(這是vdot()
不同的工作dot()
方法)用於計算點積。它可以處理多維數組,但可以作為扁平數組處理。
參數-
- vector_a : [數組]如果a是複數,則將其複共軛用於點積的計算。
- vector_b : [數組]如果b是複數,則將其複共軛用於點積的計算。
返回-向量a和b的點積。
代碼1:
# Python Program illustrating
# numpy.vdot() method
import numpy as geek
# 1D array
vector_a = 2 + 3j
vector_b = 4 + 5j
product = geek.vdot(vector_a, vector_b)
print("Dot Product : ", product)
輸出:
Dot Product : (23-2j)
Code1如何工作?
vector_a = 2 + 3j
vector_b = 4 + 5j
按照方法,取vector_a的共軛,即2-3j
現在點積= 2(4-5j)+ 3j(4-5j)
= 8-10j + 12j + 15
= 23-2j
代碼2:
# Python Program illustrating
# numpy.vdot() method
import numpy as geek
# 1D array
vector_a = geek.array([[1, 4], [5, 6]])
vector_b = geek.array([[2, 4], [5, 2]])
product = geek.vdot(vector_a, vector_b)
print("Dot Product : ", product)
product = geek.vdot(vector_b, vector_a)
print("\nDot Product : ", product)
"""
How Code 2 works :
array is being flattened
1 * 2 + 4 * 4 + 5 * 5 + 6 * 2 = 55
"""
輸出:
Dot Product : 55 Dot Product : 55
參考文獻:
https://docs.scipy.org/doc/numpy-dev/reference/generated/numpy.vdot.html#numpy.vdot
相關用法
注:本文由純淨天空篩選整理自 numpy.vdot() in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。