一、如何用 python 計(jì)算矩陣乘法?
使用 Numpy 包里的 dot() 函數(shù)。
該函數(shù)主要功能有兩個(gè):向量點(diǎn)積 和 矩陣乘法 。
格式:x.dot(y)
等價(jià)于 np.dot(x,y)
x 是m × n 矩陣 ,y 是 n×m 矩陣,則 x.dot(y) 得到 m×m 矩陣。
二、實(shí)例
- 向量相乘,得到內(nèi)積
import numpy as np
x=np.array([0,1,2,3,4]) #等價(jià)于 x=np.arange(0,5)
y=x[::-1]
print(x)
print(y)
print(np.dot(x,y))
輸出結(jié)果:
[0 1 2 3 4]
[4 3 2 1 0]
10
- 矩陣相乘,得到矩陣的積
(1)實(shí)例 1
import numpy as np
x=np.arange(0,5)
# 0,10,是隨機(jī)數(shù)的方位,size=(5,1),也就是5維矩陣,且每一維元素?cái)?shù)為1個(gè)
y=np.random.randint(0,10,size=(5,1))
print(x)
print(y)
# 查看矩陣或者數(shù)組的維數(shù)
print("x.shape:"+str(x.shape))
print("y.shape"+str(y.shape))
print(np.dot(x,y))
輸出結(jié)果:
[0 1 2 3 4]
[[1]
[7]
[1]
[3]
[8]]
x.shape:(5,)
y.shape(5, 1)
[50]
(2)實(shí)例 2文章來源:http://www.zghlxwxcb.cn/news/detail-510832.html
import numpy as np
x=np.arange(0,6).reshape(2,3)
y=np.random.randint(0,10,size=(3,2))
print(x)
print(y)
print("x.shape:"+str(x.shape))
print("y.shape"+str(y.shape))
print(np.dot(x,y))
輸出結(jié)果:文章來源地址http://www.zghlxwxcb.cn/news/detail-510832.html
[[0 1 2]
[3 4 5]]
[[1 8]
[6 1]
[3 9]]
x.shape:(2, 3)
y.shape(3, 2)
[[12 19]
[42 73]]
參考鏈接
- Numpy——np.dot()函數(shù)用法
到了這里,關(guān)于【Python】如何用 python 計(jì)算矩陣相乘 - numpy.dot()的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!