Jaki jest najlepszy sposób obliczenia dekompozycji wartości pojedynczej (SVD) bardzo dużej macierzy dodatniej (65 M x 3,4 M), w której dane są bardzo rzadkie?
Mniej niż 0,1% matrycy jest niezerowe. Potrzebuję sposobu, który:
- zmieści się w pamięci (wiem, że istnieją metody online)
- zostaną obliczone w rozsądnym czasie: 3,4 dni
- będą wystarczająco dokładne, jednak dokładność nie jest moim głównym zmartwieniem i chciałbym móc kontrolować, ile zasobów w to włożę.
Byłoby wspaniale mieć bibliotekę Haskell, Python, C # itp., Która ją implementuje. Nie używam mathlaba ani R, ale w razie potrzeby mogę użyć R.