python - 在 python 中找出巨大稀疏矩阵的特征值和向量比 Matlab 慢得多
问题描述
我试图找到一个大小为 409600x409600 的巨大稀疏矩阵的 100 个特征值和向量。我正在使用scipy.sparse.linalg.eigs
它,它需要很长时间才能找到结果,而eigs
在 matlab 上可以在 10 分钟内解决它。关于如何加快它的任何建议?
Python:
eigenvectors, eigenvalues = scipy.sparse.linalg.eigs(Laplacian, k=100, which='SM')
MATLAB:
eigCnt = 100;
[eigenvectors, eigenvalues] = eigs(Laplacian, eigCnt, 'SM');
其中Laplacian
是409600x409600
具有10418204
非零条目的大小稀疏矩阵`
解决方案
推荐阅读
- flutter - 有没有办法在 Flutter/Dart 中添加导航路线列表?
- c# - 在场景完全加载之前调用 Unity start()
- flutter - 有没有办法在 Flutter/Dart 中添加导航路线列表?
- javascript - 如何在 Nuxt Vue 实例中获取 Discord.js 客户端
- python-2.7 - 如何使用python将字典键值写入文本文件
- r - Firth 的惩罚逻辑回归 - 高卡方值
- assembly - 使用 PyBoard 上的 MicroPython 内联汇编器 BitBanging 一个 MHz 协议
- sql - Oracle 从 SYSDATE 中减去 5 个工作日
- pandas - 熊猫将行添加到分类索引
- java - 以编程方式将自定义主题设置为按钮背景