• NumPy 广播机制(Broadcasting)


    一、何为广播机制

      a、广播机制是Numpy(开源数值计算工具,用于处理大型矩阵)里一种向量化数组操作方法。

      b、Numpy的通用函数(Universal functions) 中要求输入的两个数组shape是一致的,当数组的shape不想等的时候,则会使用广播机制,调整数组使得两个shape一致,满足规则,则可以运算,否则就出错。 

    二、遵守哪些规则

      a、如果数组的秩不同,将秩较小的数组进行扩展,直到两个数组的尺寸长度都一样。

      b、如果两个数组在某个维度上的长度是相同的,或者其中一个数组在该维度上的长度为1,那么我们就说这两个数组在该维度上是相容的。

      c、如果两个数组在所有维度上都是相容的,它们就能使用广播。

      d、广播之后,两个数组的尺寸将和较大的数组尺寸一样。

      e、在任何一个维度上,如果一个数组的长度为1,另一个数组长度大于1,那么在该维度上,就好像是对第一个数组进行了复制。

    三、代码 (python 3.6)

    1 import numpy as np
    2 
    3 # 矩阵x的每一行加上向量y, 将结果保存在矩阵result中
    4 x = np.array([[1,2,3], [4,5,6], [7,8,9], [10,11,12]])
    5 y = np.array([0, 1, 0])
    6 # 使用广播机制将y加到矩阵x的每一行上
    7 result = x + y
    8 print(result)
  • 相关阅读:
    经典多线程问题(四)-轮流打印字母和数字
    经典多线程问题 (一)-多线程售票
    买卖股票的最佳时机 II
    最长递增(严格递增)子序列-可以不连续
    环形链表 II
    最小栈
    买卖股票的最佳时机
    二叉树的层序遍历
    字符串相加
    最大子序和
  • 原文地址:https://www.cnblogs.com/wjunneng/p/9096360.html
Copyright © 2020-2023  润新知