numpy np.linalg.eig()运行时间长

gajydyqb  于 2023-11-18  发布在  其他
关注(0)|答案(1)|浏览(120)

np.linalg.eig()函数处理一个(15000,15000)矩阵需要10分钟以上的时间,这正常吗?我在colab环境下用标准运行时运行这个函数。

oxosxuxt

oxosxuxt1#

对于一个N × N矩阵,该算法的规模应该是O(N^3)。因此,如果N需要T时间,那么2N需要2^3T = 8 T时间,10 N需要10^3T = 1000 T时间。在我的旧笔记本电脑上,N=1500需要3.7秒。N=3000需要22秒,这不是真正的2^3 * 3.7 = 29.6,但足够接近。
现在3000 * 5 = 15000,22 * 5^3 = 2750秒= 46分钟。所以这是我的电脑应该花费的时间。所以你的电脑更快,但15分钟似乎可以!

相关问题