导航:首页 > 编程语言 > pythonnumpy矩阵点积

pythonnumpy矩阵点积

发布时间:2024-10-22 02:46:42

① Numpy array数组的常见运算

Numpy是python最流行的数学计算库之一,它 支持多维数组与矩阵的各种运算。在Numpy库中ndarray对象是其核心,它支持任意维度的数组(向量),所有的运算都是以array为基础展开的。此外,在 Numpy的 矩阵mat是array的一个子集,也就是二维的数组。

下面我们来看一下array的基本运算。

NumPy数组在与数值进行运算时,具有广播特性。也就是说,数组中的每个元素都会进行同样的运算,这些运算包括“+、-、*、/、**、&、|、^”等。

例如:array([1,2,3,4,5])*2 相当于array([1*2,2*2,3*2,4*2,5*2]), 代码示例如下。

对于维度相同的两个数组,将按照元素逐项进行运算。以‘*’为例:

已知

那么:

代码示例如下

对于维度不同的两个数组,则会进行广播运算, 例如

那么

我们知道对于向量

那么a与b的点积为:

在Numpy中,一维数组的点积(dot)和内积(inner)是相同的。但是对于多维数组来说,则有差别。inner运算中,可以将数组最后一个维度(行)视为向量,两个数组的内积就是逐项对这些向量的内积。而dot运算则是前一个数组雨后一个数组转置后的结果,即inner(a,b.T).

以上代码在Python 3.7中运行通过。

② python里x=randn mat=x.T.dot 是求什么

x=randn这个写法是不对的,randn是numpy里的一个生成随机array的函数。

比如说要生成一个三行两列的随机array,可以这样写:

import numpy

x = numpy.random.randn(3,2)

像这样:

dot(2)是点乘常数就不说了,

那个x.T.dot([1,2,3])就是x.T的

1*1+2*2+3*3=14

2*1+3*2+4*3=20

阅读全文

与pythonnumpy矩阵点积相关的资料

热点内容
linuxshell清屏命令 浏览:134
惠利app是什么 浏览:779
游戏端口读取服务器失败怎么弄 浏览:878
linux修复mbr 浏览:128
磁盘格式化基本命令 浏览:578
程序员掉入异世界 浏览:954
andlua画质助手源码 浏览:577
winrar解压格式怎么看 浏览:147
qt编程入门pdf 浏览:599
php中是根据指针查的数据吗 浏览:276
安卓手机驱动为什么不能提取通用 浏览:708
转行程序员失败的人 浏览:728
延迟命令方块 浏览:499
某视频网站为什么安卓可以投屏 浏览:651
服务器解释器在哪个文件夹 浏览:95
app督促服务在哪里 浏览:992
命令与征服3语音 浏览:999
用纸片和怎么才能做一个解压球 浏览:476
vim显示命令 浏览:294
程序员给老婆送手机 浏览:84