You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mahout.apache.org by "Allen Day (JIRA)" <ji...@apache.org> on 2008/08/21 07:46:44 UTC

[jira] Created: (MAHOUT-76) Singular Value Decomposition for SparseMatrix / DenseMatrix

Singular Value Decomposition for SparseMatrix / DenseMatrix
-----------------------------------------------------------

                 Key: MAHOUT-76
                 URL: https://issues.apache.org/jira/browse/MAHOUT-76
             Project: Mahout
          Issue Type: New Feature
          Components: Matrix
         Environment: N/A
            Reporter: Allen Day
            Priority: Minor


Adding a new class and test harness for a SVD implementation derived from JAMA

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (MAHOUT-76) Singular Value Decomposition for SparseMatrix / DenseMatrix

Posted by "Ted Dunning (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/MAHOUT-76?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12640095#action_12640095 ] 

Ted Dunning commented on MAHOUT-76:
-----------------------------------

Also, I think you would find it very difficult to build an efficient parallel implementation of a good sequential SVD.  

It would be much better to start with something like a Lanczos algorithm.  Golub and van Loan describe Lanczos and block-parallel Lanczos algorithms in pretty good detail.  

> Singular Value Decomposition for SparseMatrix / DenseMatrix
> -----------------------------------------------------------
>
>                 Key: MAHOUT-76
>                 URL: https://issues.apache.org/jira/browse/MAHOUT-76
>             Project: Mahout
>          Issue Type: New Feature
>          Components: Matrix
>         Environment: N/A
>            Reporter: Allen Day
>            Assignee: Karl Wettin
>            Priority: Minor
>         Attachments: SVD.patch
>
>
> Adding a new class and test harness for a SVD implementation derived from JAMA

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (MAHOUT-76) Singular Value Decomposition for SparseMatrix / DenseMatrix

Posted by "Karl Wettin (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/MAHOUT-76?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Karl Wettin reassigned MAHOUT-76:
---------------------------------

    Assignee: Karl Wettin

> Singular Value Decomposition for SparseMatrix / DenseMatrix
> -----------------------------------------------------------
>
>                 Key: MAHOUT-76
>                 URL: https://issues.apache.org/jira/browse/MAHOUT-76
>             Project: Mahout
>          Issue Type: New Feature
>          Components: Matrix
>         Environment: N/A
>            Reporter: Allen Day
>            Assignee: Karl Wettin
>            Priority: Minor
>         Attachments: SVD.patch
>
>
> Adding a new class and test harness for a SVD implementation derived from JAMA

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (MAHOUT-76) Singular Value Decomposition for SparseMatrix / DenseMatrix

Posted by "Allen Day (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/MAHOUT-76?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Allen Day updated MAHOUT-76:
----------------------------

    Attachment: SVD.patch

> Singular Value Decomposition for SparseMatrix / DenseMatrix
> -----------------------------------------------------------
>
>                 Key: MAHOUT-76
>                 URL: https://issues.apache.org/jira/browse/MAHOUT-76
>             Project: Mahout
>          Issue Type: New Feature
>          Components: Matrix
>         Environment: N/A
>            Reporter: Allen Day
>            Priority: Minor
>         Attachments: SVD.patch
>
>
> Adding a new class and test harness for a SVD implementation derived from JAMA

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (MAHOUT-76) Singular Value Decomposition for SparseMatrix / DenseMatrix

Posted by "Edward J. Yoon (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/MAHOUT-76?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12640089#action_12640089 ] 

Edward J. Yoon commented on MAHOUT-76:
--------------------------------------

Seems not parallel. Right?

> Singular Value Decomposition for SparseMatrix / DenseMatrix
> -----------------------------------------------------------
>
>                 Key: MAHOUT-76
>                 URL: https://issues.apache.org/jira/browse/MAHOUT-76
>             Project: Mahout
>          Issue Type: New Feature
>          Components: Matrix
>         Environment: N/A
>            Reporter: Allen Day
>            Assignee: Karl Wettin
>            Priority: Minor
>         Attachments: SVD.patch
>
>
> Adding a new class and test harness for a SVD implementation derived from JAMA

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (MAHOUT-76) Singular Value Decomposition for SparseMatrix / DenseMatrix

Posted by "Sean Owen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/MAHOUT-76?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sean Owen resolved MAHOUT-76.
-----------------------------

    Resolution: Later

Am I right that this is well defunct? Reverse this change if so, but it's so old and based on comments, seems to not be in line with parallel implementations that would be desirable.

> Singular Value Decomposition for SparseMatrix / DenseMatrix
> -----------------------------------------------------------
>
>                 Key: MAHOUT-76
>                 URL: https://issues.apache.org/jira/browse/MAHOUT-76
>             Project: Mahout
>          Issue Type: New Feature
>          Components: Matrix
>         Environment: N/A
>            Reporter: Allen Day
>            Assignee: Karl Wettin
>            Priority: Minor
>         Attachments: SVD.patch
>
>
> Adding a new class and test harness for a SVD implementation derived from JAMA

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (MAHOUT-76) Singular Value Decomposition for SparseMatrix / DenseMatrix

Posted by "Ted Dunning (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/MAHOUT-76?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12640092#action_12640092 ] 

Ted Dunning commented on MAHOUT-76:
-----------------------------------


Correct.

The approach that most of the projects in Mahout are taking is that non-parallel implementations are very welcome as are parallel implementations.

For most algorithms, it appears that only part of the problem really needs parallelism.  In a few cases where there is a significant computation that needs to be parallelized, it is still very helpful to have a good non-parallel implementation of basic matrix operations because block decomposition is generally the best method for these problems.

Thus, it seems to be a good idea to get basic sequential matrix operations in order before jumping into parallel versions.  

Even where parallelism has been necessary, it is common that the operations required are not exactly the same as normal matrix operations.  For instance, in recommendation systems, coocurrence between items needs to be computed.  This looks a lot like a sparse matrix multiply, but it is very handy to be able to inject functionality into the inner accumulation loop.  Similarly, large scale sequence comparison looks a lot like matrix multiply on the surface, but the details in the inner loop don't work that way.

In my own work, I have found that it is most useful to use something like Pig to do parallel joins (aka matrix multiplication) and inject my code into the inner loop and then use simpler methods to process the results.  You mileage will vary, of course.



> Singular Value Decomposition for SparseMatrix / DenseMatrix
> -----------------------------------------------------------
>
>                 Key: MAHOUT-76
>                 URL: https://issues.apache.org/jira/browse/MAHOUT-76
>             Project: Mahout
>          Issue Type: New Feature
>          Components: Matrix
>         Environment: N/A
>            Reporter: Allen Day
>            Assignee: Karl Wettin
>            Priority: Minor
>         Attachments: SVD.patch
>
>
> Adding a new class and test harness for a SVD implementation derived from JAMA

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (MAHOUT-76) Singular Value Decomposition for SparseMatrix / DenseMatrix

Posted by "Isabel Drost (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/MAHOUT-76?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12659286#action_12659286 ] 

Isabel Drost commented on MAHOUT-76:
------------------------------------

Did anyone have a closer look at the patch Allen submitted and can add a few comments? How should we proceed with this issue?

> Singular Value Decomposition for SparseMatrix / DenseMatrix
> -----------------------------------------------------------
>
>                 Key: MAHOUT-76
>                 URL: https://issues.apache.org/jira/browse/MAHOUT-76
>             Project: Mahout
>          Issue Type: New Feature
>          Components: Matrix
>         Environment: N/A
>            Reporter: Allen Day
>            Assignee: Karl Wettin
>            Priority: Minor
>         Attachments: SVD.patch
>
>
> Adding a new class and test harness for a SVD implementation derived from JAMA

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.