Crossposted on Computational Science SE
I am trying to do eigenvalue decomposition for a huge matrix larger than $78.8 \cdot 10^4 \times 78.8 \cdot 10^4$ for medical image analysis. The matrix is not sparse and every element in the matrix has a real value. And, for example, I want to obtain the first $20$ eigenvectors corresponding to the first $20$ largest eigenvalues.
The computer is not able to do eigenvalue decomposition for the huge matrix and the memory overflows, although my computer configuration is very excellent. I write the computer codes with Python language and other related packages (such as NumPy, OpenCV, Matplotlib and so on). Is there any other Python library or related package that can do eigenvalue decomposition and solve the computation problem? Or, is there any other method that can solve this problem with Python?
I am in a difficult situation now, and hope someone can help me. Thank you so much.
So sorry, I wrote wrongly, the huge matrix is also symmetric.
A Krylov based method would be to recommend as you can get away with matrix-vector operations.
Any method that tries to store and manipulate actual matrices will require too much memory.
You can read more about Krylov subspace methods for example at Wikipedia