矢量化的限制是什么?

时间:2017-06-22 11:51:34

标签: python arrays numpy vectorization

我正在处理多维矩阵(约100维左右,见下面原因)。我的矩阵是NumPy数组,我主要将它们相互加倍。

NumPy是否关心(关于速度或准确性)以什么形式我要求它们乘以这些矩阵?即在执行乘法之前将它们重塑为线性数组是否有意义?我用随机矩阵做了一些自己的测试,看起来似乎无关紧要,但想对此有一些理论上的认识。

我认为在Python变得缓慢处理它们之前,矩阵的大小和它们的大小是有限的。有没有办法找到这个限制?

我有几个物种(生物学),并希望为这些物种赋予适应性。然后我想看看这些不同的企业如何影响竞争的结果。我想检查所有物种的所有可能的健身组合。我的矩阵有很多维度,但所有维度都很小。

1 个答案:

答案 0 :(得分:4)

对于元素乘法无关紧要,展平数组不会改变事物。请记住:阵列,无论其尺寸如何,都会在RAM中线性保存。如果在乘法之前展平数组,则只是改变NumPy向您提供数据的方式,从不触及RAM中的数据。将1D或100D数据相乘是完全相同的操作。