Najszybszy sposób obliczania k największych wartości własnych i odpowiadających im wektorów własnych za pomocą numpy

Mam dużą gęstą macierz symetryczną NxN i chcę, aby wektory własne odpowiadały k największych wartości własnych. Jaki jest najlepszy sposób ich znalezienia (najlepiej przy użyciu numpy, ale być może ogólnie przy użyciu blas / atlas / lapack, jeśli to jedyny sposób)? Zasadniczo N jest znacznie większy niż k (powiedzmy N> 5000, k <10).

Wydaje się, że Numpy ma tylko funkcje do znajdowania k największych wartości własnych, jeśli moja macierz początkowa jest rzadka.