[
https://issues.apache.org/jira/browse/MATH-327?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12796914#action_12796914
]
Luc Maisonobe commented on MATH-327:
------------------------------------
I got the NaN values too with the original values, but not the exception.
Could you try the latest version for subversion repository ?
It seems there are only a small number of different values in the initial
matrix (about 14, depending on whether you consider 0.95000000 and 0.94999999
be the same 19.0/20.0 or not). The low print accuracy used by the default print
leads to a problem: do we run the same test as the original one ? Could you
provide the numbers to full precision ?
With the original low accuracy data, the matrix is singular : it has 4 non-null
singular values only: 30.157767108847377, 0.27095453462617336,
6.218305311492343E-8 and 7.32410687763558E-15. I'm pretty sure the last one
should really be zero, and not sure about the third one.
So the problem may be related to MATH-320, and as Axel noticed, U is still
wrong in this case on the last column, which corresponds to the very small but
non-zero last singular value.
> Maximal number of iterations (540) exceeded
> --------------------------------------------
>
> Key: MATH-327
> URL: https://issues.apache.org/jira/browse/MATH-327
> Project: Commons Math
> Issue Type: Bug
> Environment: Windows 7 (32-bit) JDK 1.6_16
> Reporter: Mansoor Ahmed Khan
> Priority: Critical
>
> I have a matrix of size 49x19 and when I apply SVD on this matrix it raises
> the following exception. The problem which I am facing is that SVD works for
> some matrix and doesn't work for others. I have no clue what is the possible
> reason.
> Exception::
> CorrespondenceAnalysis:
> org.apache.commons.math.MaxIterationsExceededException: Maximal number of
> iterations (540) exceeded
> [org.apache.commons.math.linear.EigenDecompositionImpl.processGeneralBlock(EigenDecompositionImpl.java:881),
>
> org.apache.commons.math.linear.EigenDecompositionImpl.findEigenvalues(EigenDecompositionImpl.java:651),
>
> org.apache.commons.math.linear.EigenDecompositionImpl.decompose(EigenDecompositionImpl.java:243),
>
> org.apache.commons.math.linear.EigenDecompositionImpl.<init>(EigenDecompositionImpl.java:202),
>
> org.apache.commons.math.linear.SingularValueDecompositionImpl.<init>(SingularValueDecompositionImpl.java:114),
> RealMatrix m = [[1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096, 1.00000000,
> 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096,
> 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143,
> 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000,
> 0.99107143, 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000,
> 1.00000000, 0.94999999, 0.95833331, 1.00000000, 1.00000000, 0.99107143,
> 0.94583333, 1.00000000, 0.95000000, 0.98333333, 0.92106681, 0.97368419,
> 1.00000000, 0.95357142, 0.95238096, 1.00000000, 0.93333334,
> 0.96428573],[1.00000000, 1.00000000, 0.94999999, 0.95833331, 1.00000000,
> 1.00000000, 0.99107143, 0.94583333, 1.00000000, 0.95000000, 0.98333333,
> 0.92106681, 0.97368419, 1.00000000, 0.95357142, 0.95238096, 1.00000000,
> 0.93333334, 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096,
> 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143,
> 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000,
> 0.99107143, 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000,
> 1.00000000, 0.94999999, 0.95833331, 1.00000000, 1.00000000, 0.99107143,
> 0.94583333, 1.00000000, 0.95000000, 0.98333333, 0.92106681, 0.97368419,
> 1.00000000, 0.95357142, 0.95238096, 1.00000000, 0.93333334,
> 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096, 1.00000000,
> 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096,
> 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000, 0.94999999,
> 0.95833331, 1.00000000, 1.00000000, 0.99107143, 0.94583333, 1.00000000,
> 0.95000000, 0.98333333, 0.92106681, 0.97368419, 1.00000000, 0.95357142,
> 0.95238096, 1.00000000, 0.93333334, 0.96428573],[1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000,
> 0.99107143, 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000,
> 1.00000000, 0.99107143, 0.95238096, 1.00000000, 1.00000000,
> 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096, 1.00000000,
> 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096,
> 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143,
> 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000,
> 0.94999999, 0.95833331, 1.00000000, 1.00000000, 0.99107143, 0.94583333,
> 1.00000000, 0.95000000, 0.98333333, 0.92106681, 0.97368419, 1.00000000,
> 0.95357142, 0.95238096, 1.00000000, 0.93333334, 0.96428573],[1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000,
> 1.00000000, 0.99107143, 0.95238096, 1.00000000, 1.00000000,
> 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096, 1.00000000,
> 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096,
> 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143,
> 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000,
> 0.99107143, 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000,
> 1.00000000, 0.99107143, 0.95238096, 1.00000000, 1.00000000,
> 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096, 1.00000000,
> 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096,
> 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000, 0.94999999,
> 0.95833331, 1.00000000, 1.00000000, 0.99107143, 0.94583333, 1.00000000,
> 0.95000000, 0.98333333, 0.92106681, 0.97368419, 1.00000000, 0.95357142,
> 0.95238096, 1.00000000, 0.93333334, 0.96428573],[1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000,
> 0.99107143, 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000,
> 1.00000000, 0.99107143, 0.95238096, 1.00000000, 1.00000000,
> 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096, 1.00000000,
> 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096,
> 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000, 0.94999999,
> 0.95833331, 1.00000000, 1.00000000, 0.99107143, 0.94583333, 1.00000000,
> 0.95000000, 0.98333333, 0.92106681, 0.97368419, 1.00000000, 0.95357142,
> 0.95238096, 1.00000000, 0.93333334, 0.96428573],[1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000,
> 0.99107143, 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000,
> 1.00000000, 0.99107143, 0.95238096, 1.00000000, 1.00000000,
> 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096, 1.00000000,
> 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096,
> 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143,
> 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000,
> 0.99107143, 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000,
> 1.00000000, 0.99107143, 0.95238096, 1.00000000, 1.00000000,
> 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096, 1.00000000,
> 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096,
> 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143,
> 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143, 1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000, 1.00000000,
> 0.99107143, 0.95238096, 1.00000000, 1.00000000, 0.96428573],[1.00000000,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.99107143,
> 1.00000000, 1.00000000, 1.00000000, 1.00000000, 0.94450431, 1.00000000,
> 1.00000000, 0.99107143, 0.95238096, 1.00000000, 1.00000000,
> 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096, 1.00000000,
> 1.00000000, 0.96428573],[1.00000000, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 1.00000000, 0.99107143, 1.00000000, 1.00000000, 1.00000000,
> 1.00000000, 0.94450431, 1.00000000, 1.00000000, 0.99107143, 0.95238096,
> 1.00000000, 1.00000000, 0.96428573],[1.00000000, 1.00000000, 0.94999999,
> 0.95833331, 1.00000000, 1.00000000, 0.99107143, 0.94583333, 1.00000000,
> 0.95000000, 0.98333333, 0.92106681, 0.97368419, 1.00000000, 0.95357142,
> 0.95238096, 1.00000000, 0.93333334, 0.96428573],[1.00000000, 1.00000000,
> 0.94999999, 0.95833331, 1.00000000, 1.00000000, 0.99107143, 0.94583333,
> 1.00000000, 0.95000000, 0.98333333, 0.92106681, 0.97368419, 1.00000000,
> 0.95357142, 0.95238096, 1.00000000, 0.93333334, 0.96428573]]
> RealMatrix rcp = MatrixUtils.createRealMatrix(CP);
> SingularValueDecomposition svd = new SingularValueDecompositionImpl(rcp);
>
> RealMatrix U = svd.getU();
> RealMatrix S = svd.getS();
> RealMatrix Vt = svd.getVT();
> double[] singularValues = svd.getSingularValues();
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.