I have to invert a large sparse matrix (50000 x 12000). It was initially stored as numpy.ndarray and the size of the matrix was around 3.5 GB. I have tried inverting this matrix using numpy.linalg.pinv but it crashes the jupyter notebook kernel. Converting this numpy.ndarray to scipy.sparse.csr_matrix (sparse matrix format) works, but I am unaware of any function that can calculate the pseudo-inverse of csr_matrix.
How do I find the pseudo-inverse of a large sparse matrix?