You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mahout.apache.org by "Grant Ingersoll (JIRA)" <ji...@apache.org> on 2009/10/01 14:53:23 UTC
[jira] Assigned: (MAHOUT-182) New helper methods for Matrix:
times(Vector), timesSquared(Vector), numRows() and numCols()
[ https://issues.apache.org/jira/browse/MAHOUT-182?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Grant Ingersoll reassigned MAHOUT-182:
--------------------------------------
Assignee: Grant Ingersoll
> New helper methods for Matrix: times(Vector), timesSquared(Vector), numRows() and numCols()
> -------------------------------------------------------------------------------------------
>
> Key: MAHOUT-182
> URL: https://issues.apache.org/jira/browse/MAHOUT-182
> Project: Mahout
> Issue Type: Improvement
> Components: Matrix
> Affects Versions: 0.2
> Reporter: Jake Mannix
> Assignee: Grant Ingersoll
> Priority: Minor
> Attachments: matrixTimes.patch
>
>
> numRows() { return size()[ROW]; } and numCols() { return size()[COL]; } are pretty much no-brainer methods, right? Who wants to deal with a length-two array of ints all the time when getting the number of rows and columns of a matrix?
> Those are pretty trivial, but the key feature of a Matrix is to map Vector instances to Vector instances, and while you can do that currently by making a a row Matrix and doing Matrix.times(Matrix), it's silly to have to always do that. Matrix.times(Vector) is pretty needed.
> Even less trivial, for really big sparse Matrices, if you need to get (M'M)v for some matrix M, then this can be computed in one pass through M without ever computing the transpose of M by a simple reordering of the limits of summation.
> Attaching a patch with these implementations, including unit tests (as well as an improvement in the Matrix.times(Matrix) unit test to actually check the math).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.