在Python中进行大型矩阵计算的最佳模块?

shi*_*eng 4 python matrix

我正在开发一个简单的推荐系统,并尝试进行一些计算,如SVD,RBM等.

为了更有说服力,我将使用Movielens或Netflix数据集来评估系统的性能.但是,这两个数据集都有超过100万用户和超过1万个项目,所以不可能将所有数据都放入内存.我必须使用一些特定的模块来处理这么大的矩阵.

我知道在一些SciPy的工具可以处理这个问题,并divisi2所使用的python-recsys也似乎是一个不错的选择.或者也许有一些我不知道的更好的工具?

我应该使用哪个模块?有什么建议吗?

Aus*_*ley 6

我会建议SciPy,特别是Sparse.正如Dougal指出的那样,Numpy并不适合这种情况.

  • 这些矩阵非常稀疏且非常大; 将它们以密集格式存储,即使是1字节的dtype也会在RAM中大约9GB.OP肯定想要一个稀疏矩阵. (3认同)