How to load sparse matrix as training input

Hi, I am using PyTorch to do matrix factorization with huge sparse matrix. Transferring it to a dense one is the last option as it would consume too much storage.

Is there any existing solution to load a sparse matrix to training? Or, is there any example on how to design such an customized dataloader?