Numpy 數組的點積操作函數dot
1、一維數組的點積
一維數組的點積就是計算兩個數組對應位置乘積之和,假如有兩個兩行兩列的數組a和b,那麼他們的點積計算結果爲一個數值,計算公式爲a[0] * b[0] +a[1] * b[1 +...+a[n]*b[n]。
#一維數組的dot
a=np.array([1,2,3,4])
b=np.array([5,6,7,8])
print("a")
print(a)
print("b")
print(b)
輸出結果:
a
[1 2 3 4]
b
[5 6 7 8]
2、二維數組的點積
二維數組的點積相對複雜一些,假如有數組A和數組B他們都是兩行兩列,則點積計算結果也爲兩行兩列的一個數組,假設點積數組爲C,計算公式如下。
C[0,0]=A[0,0] *B[0,0] + A[0,1] *B[1,0]:A的第一行與B的第一列,對應元素的乘積之和;
C[0,1]=A[0,0] *B[0,1] + A[0,1] *B[1,1]:A的第一行與B的第二列,對應元素的乘積之和;
C[1,0]=A[1,0] *B[0,0] + A[1,1] *B[1,0]:A的第二行與B的第一列,對應元素的乘積之和;
C[1,1]=A[1,1] *B[0,1] + A[1,1] *B[1,1]:A的第二行與B的第二列,對應元素的乘積之和;
#定義兩個點積數組
a=np.array([[3,4],[5,6]])
b=np.array([[13,14],[15,16]])
print("a")
print(a)
print("b")
print(b)
輸出結果:
a
[[3 4]
[5 6]]
b
[[13 14]
[15 16]]
進行點積操作
#點積dot 操作
c=np.dot(a,b)
print("c")
print(c)
輸出結果
c
[[ 99 106]
[155 166]]
Python學習-numpy高級之矩陣點積vdot函數:https://mp.csdn.net/postedit/92703109