美文网首页
Numpy广播机制 (2020.04.08)

Numpy广播机制 (2020.04.08)

作者: 似海深蓝 | 来源:发表于2020-04-08 12:01 被阅读0次

1.何为广播机制

不规则数组相加机制

x_02 = np.array([1, 2, 3, 4])
x_02+1    # array([2, 3, 4, 5])

x_01=np.array([[ 0,  1,  2,  3],
               [ 4,  5,  6,  7],
               [ 8,  9, 10, 11]])
x_02 = np.array([1, 2, 3, 4])

#输出
array([[ 1,  3,  5,  7],
       [ 5,  7,  9, 11],
       [ 9, 11, 13, 15]])

2. 三种广播规则

规则1:如果两个数组形状中,只有其中一个维度相同,另一个维度不一致但是其中一个数组有维度为1,则可以补齐:

规则1
np.arange(3)+5
#array([5, 6, 7])
规则1

规则2:如果两个数组的形状在任何一个维度都不匹配,但两个数组都有其中以维度为1,则数组的形状会沿着维度为1的维度扩展,以匹配另外一个数组形状。**

规则2
np.ones((1,3))+np.ones((2,1))
#array([[2., 2., 2.],
#      [2., 2., 2.]])

规则3:如果两个数组的形状在任何一个维度上都不匹配并且没有任何一个维度等于1,会广播错误。

>>> np.ones((3,3))+np.ones((2,3))
输出:
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-6-6f99938fd268> in <module>
----> 1 np.ones((3,3))+np.ones((2,3))

ValueError: operands could not be broadcast together with shapes (3,3) (2,3) 

相关文章

  • Numpy广播机制 (2020.04.08)

    1.何为广播机制 不规则数组相加机制 2. 三种广播规则 规则1:如果两个数组形状中,只有其中一个维度相同,另一个...

  • numpy广播机制

    在写代码计算梯度的过程中发现了一个以前忽略的点,numpy的广播机制。 在不同形状的矩阵进行对应元素的相加、相减、...

  • Numpy的广播机制

    来自我的个人博客,https://www.zhouwenzhen.top/post/86684361.html

  • numpy的广播

    参考:numpy中的广播机制 - 小舔哥 - 博客园 把数组铺开,扩展之后无法匹配就无法进行广播。 可以广播的条件...

  • Python & Numpy Trick

    关于科学计算中Python Numpy 的使用经验。 Numpy 中的广播机制 可以对列进行运算,对行进行运算。 ...

  • 列向量与行向量做加减运算的“幕后真凶”:Broadcasting

    根据网上关于广播机制[1]的介绍,能了解到何时numpy会运行Broadcasting机制[2]。关于具体如何扩展...

  • Numpy的广播机制(Broadcast)

    Broadcast是numpy对不同形状的数组进行数值计算的方式,对数组的运算通常在相应的元素上进行。 如果两个数...

  • numpy的广播(broadcast)机制

    首先,广播只适用于从维度低(low rank)的ndarry(或rank=2的行向量或列向量)与维度高(high ...

  • tensorflow与numpy的广播机制

    文章转载自:https://www.jianshu.com/p/550c90dfffa0 在使用Tensorflo...

  • 2.4Numpy的广播机制

    Numpy数组操作 数组广播机制: 数组与数的计算: 在Python列表中,想要对列表中所有的元素都加一个数,要么...

网友评论

      本文标题:Numpy广播机制 (2020.04.08)

      本文链接:https://www.haomeiwen.com/subject/ruozphtx.html