Где я могу найти или как я могу создать разреженную матричную версию быстрого рандомизированного SVD на Facebook? - PullRequest
0 голосов
/ 26 сентября 2018

У меня есть реализация Lanscos SVD с пониженным рангом, которая может быть распределена и обрабатывать очень разреженные матрицы с сотнями миллионов строк и столбцов.Как вы можете себе представить, иногда это занимает несколько дней, чтобы выполнить свою работу.

Недавно я наткнулся на быстрый рандомизированный SVD на Facebook на https://research.fb.com/fast-randomized-svd/ с кодом на http://tygert.com/software.html, и я быЯ хотел бы попробовать это, но код Fortran поддерживает только плотный матричный ввод, и в моем масштабе я не могу использовать это.

Итак, кто-нибудь знает (предпочтительно распределенную версию Fortran) этогоили подобный код, который я мог бы использовать?

Или, поскольку найденный код включает в себя исходный код, есть ли простой способ создать версию с разреженной матрицей из кода с плотной матрицей?

FWIW, код построен на BLAS иLAPACK.

Спасибо за любую помощь, которую вы можете оказать!

...