私は、約2つのlil_matrixスパース行列の内積を取得しようとしています。それぞれ100,000x50,000および50,000x100,000。
from scipy import sparse
a = sparse.lil_matrix((100000, 50000))
b = sparse.lil_matrix((50000, 100000))
c = a.dot(b)
このエラーが発生します:
File "/usr/lib64/python2.6/site-packages/scipy/sparse/base.py", line 211, in dot
return self * other
File "/usr/lib64/python2.6/site-packages/scipy/sparse/base.py", line 247, in __mul__
return self._mul_sparse_matrix(other)
File "/usr/lib64/python2.6/site-packages/scipy/sparse/base.py", line 300, in _mul_sparse_matrix
return self.tocsr()._mul_sparse_matrix(other)
File "/usr/lib64/python2.6/site-packages/scipy/sparse/compressed.py", line 290, in _mul_sparse_matrix
indices = np.empty(nnz, dtype=np.intc)
ValueError: negative dimensions are not allowed
何が起こっているのかについてのアイデア-これを約64GBのRAMを搭載したマシンで実行し、ドットを実行するときに約13GBを使用します。