np.dot()

np.dot()函数主要有两个功能,向量点积和矩阵乘法

1. np.dot(a, b), 其中a为一维的向量,b为一维的向量,a和b都是np.array类型的, 此时因为是一维的所以是向量点积。

import numpy as np
a = np.array([1, 2, 3, 4, 5])
b = np.array([6, 7, 8, 9, 10])
print(np.dot(a, b))

output:
130

2. np.dot(a, b), 其中a为二维矩阵,b为一维向量,这时b会被当做一维矩阵进行计算

import numpy as np 
a = np.random.randint(0,10, size = (5,5))
b = np.array([1,2,3,4,5])
print("the shape of a is " + str(a.shape))
print("the shape of b is " + str(b.shape))
print(np.dot(a, b)) 
output:
the shape of a is (5, 5)
the shape of b is (5,)
[42 85 50 81 76]

这里需要注意的是一维矩阵和一维向量的区别,一维向量的shape是(5, ), 而一维矩阵的shape是(5, 1), 若两个参数a和b都是一维向量则是计算的点积,但是当其中有一个是矩阵时(包括一维矩阵),dot便进行矩阵乘法运算,同时若有个参数为向量,会自动转换为一维矩阵进行计算。

3. np.dot(a ,b), 其中a和b都是二维矩阵,此时dot就是进行的矩阵乘法运算

import numpy as np
a = np.random.randint(0, 10, size = (5, 5))
b = np.random.randint(0, 10, size = (5, 3))
print("the shape of a is " + str(a.shape))
print("the shape of b is " + str(b.shape))
print(np.dot(a, b))
 
output:
the shape of a is (5, 5)
the shape of b is (5, 3)
[[ 66  80  98]
 [ 53  60  60]
 [ 65  84  85]
 [ 25 113 101]
 [ 42  78  77]]

引用自https://blog.csdn.net/skywalker1996/article/details/82462499

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值