当我试图创建一个超过32个维度的numpy数组时,会出现错误:
import numpy as np
np.ndarray([1] * 33)
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-2-78103e601d91> in <module>()
----> 1 np.ndarray([1] * 33)
ValueError: sequence too large; cannot be greater than 32
我发现这个问题:Using numpy.array with large number of dimensions 与这个问题有关,但我希望不需要构建自己的版本。
我的用例:
我正在处理联合概率分布,我试图在每个变量上表示一个轴,以便对其进行计算(边缘化、缩减)是单行操作。例如,对于边缘化操作,我可以简单地对该变量的轴进行求和。对于乘法,我可以简单地进行numpy乘法(在检查轴是否相同时)。
是否有可能绕过这个问题?