numpy中矩阵乘法,星乘(*)和点乘(.dot)的区别

import numpy
a = numpy.array([[1,2],
                 [3,4]])
b = numpy.array([[5,6],
                 [7,8]])
a*b
>>>array([[ 5, 12],
          [21, 32]])
a.dot(b)
>>>array([[19, 22],
          [43, 50]])
numpy.dot(a,b)
>>>array([[19, 22],
          [43, 50]])
numpy.dot(b,a)
>>>array([[23, 34],
          [31, 46]])

总结:

星乘表示矩阵内各对应位置相乘,矩阵a*b下标(0,0)=矩阵a下标(0,0) x 矩阵b下标(0,0);

点乘表示求矩阵内积,二维数组称为矩阵积(mastrix product)。

用文字表述:

所得到的数组中的每个元素为,第一个矩阵中与该元素行号相同的元素与第二个矩阵与该元素列号相同的元素,两两相乘后再求和。

文字难以理解,直接上图:


综上所述,二维矩阵a*b下标(0,1)=矩阵a下标(0,) x 矩阵b下标(,1)

补充:

一维矩阵下标

[(0),(1),(2),(3)]

二维矩阵下标

[[(0,0),(0,1),(0,2),(0,3)],
 [(1,0),(1,1),(1,2),(1,3)],
 [(2,0),(2,1),(2,2),(2,3)],
 [(3,0),(3,1),(3,2),(3,3)]]

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值