https://github.com/bwlewis/irlbpy
def calculate_sing_vec(A):
try:
import irlb
# print('irlb package is installed for fast svd, using irlb')
USV = irlb.irlb(A, 2)
except ImportError:
# print('No irlb package installed for fast svd, using numpy')
USV = np.linalg.svd(A)
first_sing_vec = USV[0][:, 0]
return first_sing_vec