当前位置:  开发笔记 > 编程语言 > 正文

Numpy列和行向量

如何解决《Numpy列和行向量》经验,为你挑选了1个好方法。

为什么numpy可以将2x2矩阵乘以1x2行向量?

import numpy as np

I = np.array([[1.0, 0.0], [0.0, 1.0]])
x = np.array([2.0,3.0])

In: I * x
Out: array([[ 2.,  0.], [ 0.,  3.]])

转置x也没有任何意义.行向量保持行向量?

In: x.T
Out: array([ 2.,  3.])

从数学的角度来看,表示非常混乱.



1> val..:

Numpy数组不是向量.或者重要的矩阵.他们是阵列.

它们可用于表示向量,矩阵,张量或任何您想要的东西.然而,numpy的天才是代表数组,让用户决定它们的含义.

在数组上定义的一个操作是(逐项)乘法.此外,广播允许您通过在缺失的维度中"扩展"它来操作不同形状的阵列,因此您的乘法实际上是(逐项)乘法:

[[1.0, 0.0], [0.0, 1.0]] * [[2.0, 2.0], [3.0, 3.0]]

如果你想使用点积,在matricial意义上,你应该使用.dot这样做的方法:将其输入解释为向量/矩阵/张量,并做一个点积.

推荐阅读
牛尾巴2010
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有