{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/fast-randomized-pca-for-sparse-data","title":"Fast Randomized PCA for Sparse Data","arxiv_id":"1810.06825","date":"2018-10-16","proceeding":null,"authors":["Xu Feng","Yuyang Xie","Mingye Song","Wenjian Yu","Jie Tang"],"abstract":"Principal component analysis (PCA) is widely used for dimension reduction and\nembedding of real data in social network analysis, information retrieval, and\nnatural language processing, etc. In this work we propose a fast randomized PCA\nalgorithm for processing large sparse data. The algorithm has similar accuracy\nto the basic randomized SVD (rPCA) algorithm (Halko et al., 2011), but is\nlargely optimized for sparse data. It also has good flexibility to trade off\nruntime against accuracy for practical usage. Experiments on real data show\nthat the proposed algorithm is up to 9.1X faster than the basic rPCA algorithm\nwithout accuracy loss, and is up to 20X faster than the svds in Matlab with\nlittle error. The algorithm computes the first 100 principal components of a\nlarge information retrieval data with 12,869,521 persons and 323,899 keywords\nin less than 400 seconds on a 24-core machine, while all conventional methods\nfail due to the out-of-memory issue.","url_abs":"http://arxiv.org/abs/1810.06825v1","url_pdf":"http://arxiv.org/pdf/1810.06825v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"fast-randomized-pca-for-sparse-data","repo_url":"https://github.com/XuFengthucs/frPCA_sparse","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"none","reach":null},{"paper_slug":"fast-randomized-pca-for-sparse-data","repo_url":"https://github.com/yinyuan1227/strap-git","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok"}}],"tasks":[{"task_slug":"dimensionality-reduction","task_name":"Dimensionality Reduction"},{"task_slug":"information-retrieval","task_name":"Information Retrieval"},{"task_slug":"retrieval","task_name":"Retrieval"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":null,"mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}