Tôi chỉ tự hỏi liệu có ai thực hiện java về phân tích giá trị số ít (SVD) cho các ma trận thưa thớt lớn không? Tôi cần triển khai này cho phân tích ngữ nghĩa tiềm ẩn (LSA).Java thực hiện phân tách giá trị số ít cho các ma trận thưa thớt lớn
Tôi đã thử các gói từ UJMP và JAMA nhưng chúng bị nghẹt thở khi số hàng> = 1000 và col> = 500. Nếu bất kỳ ai có thể trỏ tôi đến psuedocode hoặc một cái gì đó, có thể sẽ được đánh giá cao.
Câu trả lời trong [câu hỏi khác] (http://stackoverflow.com/questions/1750463/singular-value-decomposition-implementation) gần giống như vậy là thử [Colt] (http: //acs.lbl .gov/~ hoschek/colt /). –
tốt, mã cho lớp SingularValueDecomposition trong cả hai Colt và JAMA gần như giống hệt nhau. hơn nữa, mã chỉ hoạt động khi m> n (số hàng lớn hơn số cột). Ngoài ra, tôi nghĩ rằng các thuật toán không được tối ưu hóa cho ma trận thưa thớt. – jake
điều kiện m> n không thực sự làm phiền tôi. trong thực tế, đối với tôi, 99,99% thời gian, m> n, sẽ luôn là trường hợp (các hàng đại diện cho các từ và cols đại diện cho các tài liệu). nó chỉ là ràng buộc này không được ghi chép rõ ràng. – jake