2010-01-30 9 views
1

나는 duffymo가 분명하지 않다고 말했다. 그래서 여기에 다시 올릴 예정이다. SVD 계산을 위해 Jama API를 사용하고 있습니다. 나는 자마와 SVD에 대해 잘 알고 있습니다. 열이 행 이상인 경우 Jama가 작동하지 않습니다. 나는이 상황에 처해있다. 어떻게해야합니까 ?? 어떤 도움? 잘못된 결과가 나올 수 있으므로 매트릭스를 조 변경 할 수 없습니다. 감사합니다. .자바 자마 배열 문제

추신 : 나는 jama의 도움으로 LSI를 계산하고 있습니다.

+2

일반적으로 질문이 분명하지 않은 경우 새 질문을 게시하는 것 외에 원래 질문을 편집 할 수 있습니다. –

+0

다른 질문의 새 버전을 게시해야하는 타당한 이유가있는 경우에도 원본과 링크하면 좋을 것입니다. 거기에있는 의견과 이번 차이점을 확인하십시오. –

+0

감사합니다. 나는 이것을 내 마음 속에 간직 할 것입니다. 그래서 도움이 필요하십니까? 조언? – user238384

답변

1

올바르게 이해하면 정사각형이 아닌 행렬의 SVD를 계산하려고하며 사각형 행렬에서만 작동하는 라이브러리 JAMA가 있습니까? 내가 올바르게 당신을 이해했다면 당신의 질문에 대한 답은 분명한 것입니다 : 정사각형이 아닌 행렬에 대해 SVD를 계산하는 라이브러리를 얻으십시오. Numerical Recipes에 알고리즘이 포함되어 있음을 기억한다면 Google을 통해 다른 많은 소스를 찾을 수있을 것으로 기대합니다.

+0

안녕하세요, 회신 해 주셔서 감사합니다. 네, 제 문제를 100 % 정확하게 이해합니다. SVD 용 Java API를 찾을 수 없습니다. 너 한테 말해 줄 수 있니? 또한 jama는 veyr입니다. SVD를 500 열 행렬에 계산하려면 2 시간이 걸렸습니다. – user238384

1

트랜스 포즈를 사용하지 않는 이유는 무엇입니까? X = USV '이면 X'= VS'U '입니다. 권리?

매트릭스를 조 변경하십시오. U, S, V를 얻으십시오.

+0

LSI의 경우 문서 단위로 사용해야하므로 트랜스 포즈 할 수 없습니다. – user238384

0

LSI를하고 있기 때문에 무료로 사용할 수있는 가장 확장 성이 뛰어난 SVD 구현 중 하나 인 SVDLIBC와 동일한 Java 인 SVDLIBJ를 사용할 수 있습니다. S-Space 패키지에는 이미 command-line tool for SVDLIBJ이 설치되어 있습니다. 또한 Matrix 라이브러리를 사용하여 필요에 따라 명령 행을 피할 수 있습니다.

0

이제 정말 늦은 답변입니다. 하지만 나는 결코 늦은 것이 낫다고 생각했다.

그러나 나는 jblas이 효과적인 방법으로 svd를 수행한다는 것을 알고있다.