做网站好的网站建设公司,wordpress更换主题影响,WordPress文章上传图片,千部小黄油资源百度云广播
广播机制的意义#xff1a;广播描述了在算术运算期间NumPy如何处理具有不同形状的数组。受某些约束条件的限制#xff0c;较小的数组会在较大的数组中“广播”#xff0c;以便它们具有兼容的形状。
在对两个数组进行操作时#xff0c;NumPy按元素对它们的形状进行比…广播
广播机制的意义广播描述了在算术运算期间NumPy如何处理具有不同形状的数组。受某些约束条件的限制较小的数组会在较大的数组中“广播”以便它们具有兼容的形状。
在对两个数组进行操作时NumPy按元素对它们的形状进行比较。下面用两个shape(4,3)的数组计算实例进行演示说明。 上面的两个shape(4,3)的数组计算很好理解就是按照规则把对应位置上的元素进行计算得到计算结果。下面再进行广播机制下的计算。广播机制是自动的当满足可广播条件时就会自动的进行广播计算。所以并不需要提前设置参数。 根据结果看出两次计算是等价的。本次进行计算的两个数组的shape是不一样的shape(arr1)(4,3)、shape(arr2)(3, )。那么广播机制就是用补齐的方法把两个数组补成shape一致进行计算用一个可视化图帮助理解如下图所示。 NumPy按元素对它们的形状进行比较。比较的过程是从尾随维度从内到外开始的。如上面示例中shape(arr2)(3, )满足可广播成然后shape(arr1)(4,3)的条件所以arr2就会沿着轴0上进行广播广播成同一形状后完成计算。广播的方式也不是在固定轴上的再继续尝试下不同形状的数组可以比较出效果。 这里的arr1的shape(4,3)arr2的shape(4,1)它们都是二维的但是第二个数组在1轴上的长度为1所以需要沿着轴1轴方向进行广播。广播可视化效果如下图中所示。当然也适用在更多维的数组中。 得出了计算结果所以相差多维也依然是可行的再看下这次广播都做了哪些事情。广播计算是以广播维数小的数组以适应维数大的数组进行计算维数大的数组是这样的。 这里arr2进行了3次广播具有了和arr1相同的形状如上图所示。
通过多次的尝试可以发现任何形状的任意数量的数组可以一起广播的定义满足其广播后的数组具有相同数量的维度每个维度的长度是公共长度或1。当然如果我们进行广播的数组的形状不同那么广播的顺序也不同。
总结
本次分享通过示例演示说明了NumPy中的广播机制的计算原理和计算的效果。通过多次的尝试也发现进行广播计算时数组需要满足其广播后的数组具有相同数量的维度每个维度的长度是公共长度或1的条件。
谢谢浏览文中若有错误之处还请不吝赐教。