如何获得巨大矩阵(大小:2x10^5)的特征值
我有一个大小为 200000 X 200000 的矩阵。我需要找到它的特征值。到目前为止我一直在使用 matlab,但由于 matlab 无法处理矩阵的大小,我已经转向 perl,现在甚至 perl 也无法处理它说这个巨大的矩阵内存不足。我想知道我是否可以使用其他可以处理如此巨大数据的编程语言找出这个矩阵的特征值。元素大多不为零,因此无法选择稀疏矩阵。请帮我解决这个问题。
I have a matrix of size 200000 X 200000 .I need to find the eigen values for this .I was using matlab till now but as the size of the matrix is unhandleable by matlab i have shifted to perl and now even perl is unable to handle this huge matrix it is saying out of memory.I would like to know if i can find out the eigen values of this matrix using some other programming language which can handle such huge data. The elements are not zeros mostly so no option of going for sparse matrix. Please help me in solving this.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我想你可能仍然对 MATLAB 很幸运。查看他们的分布式计算工具箱。您需要某种并行环境,即计算集群。
如果您没有计算集群,您可以研究可用于 Amazon EC2 或类似的。
这里还有关于并行特征值计算方法的讨论,可以直接您可以获得比 Perl 更好的库和编程方法。
I think you may still have luck with MATLAB. Take a look into their distributed computing toolbox. You'd need some kind of parallel environment, a computing cluster.
If you don't have a computational cluster, you might look into distributed eigenvalue/vector calculation methods that could be employed on Amazon EC2 or similar.
There is also a discussion of parallel eigenvalue calculation methods here, which may direct you to better libraries and programming approaches than Perl.