NumPy是一个非常有用的库,从使用它我发现它能够轻松处理相当大(10000 x 10000)的矩阵,但开始与更大的任何东西挣扎(试图创建一个50000 x 50000的矩阵)失败).显然,这是因为大量的内存需求.
有没有办法在某种程度上在NumPy中创建巨大的矩阵(比如100万乘100万)(没有几TB的RAM)?
有时您必须在一个或多个大型Numpy阵列上执行许多中间操作.这很快就会导致MemoryErrors.在我迄今为止的研究中,你发现Pickling(Pickle,CPickle,Pytables等)并且gc.collect()是减轻这种情况的方法.我想知道在处理大量数据时是否还有其他有经验的程序员使用的技术(当然,除了删除策略/代码中的冗余).
另外,如果有一点我确定没有什么是免费的.使用其中一些技术,有什么权衡(即速度,稳健性等)?