[
https://issues.apache.org/jira/browse/MAHOUT-6?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12572112#action_12572112
]
Jeff Eastman commented on MAHOUT-6:
-----------------------------------
On the point about interfaces, the current diff has both interfaces and
abstract classes. I understand the brittleness that interfaces can introduce
and have seen recent comments about challenges introduced by their evolution on
the Hadoop list. I suggest we retain both artifacts for now while we are in a
pre-release phase and continue this discussion. It would be a little work to
remove the interfaces later but I do not see a reason to remove them now.
On the view functions, I can see their value but not yet their explicit need in
any submitted algorithms. Following agile practices, I would suggest tabling
their implementation until such an explicit need does materialize. I do think
the question of side-effects I raised earlier will be affected by any sharing
of underlying data structures and invite further discussion thereof.
On the fast methods that avoid the range checking that is currently missing, do
we want to introduce checked exceptions or use runtime exceptions? I do not see
any reasonable use case where recovery from such a condition would be a common
practice. OTOH, introducing checked exceptions on the current methods and not
having them on the fast methods would certainly make the difference between the
methods more apparent.
> Need a matrix implementation
> ----------------------------
>
> Key: MAHOUT-6
> URL: https://issues.apache.org/jira/browse/MAHOUT-6
> Project: Mahout
> Issue Type: New Feature
> Reporter: Ted Dunning
> Attachments: MAHOUT-6a.diff, MAHOUT-6b.diff
>
>
> We need matrices for Mahout.
> An initial set of basic requirements includes:
> a) sparse and dense support are required
> b) row and column labels are important
> c) serialization for hadoop use is required
> d) reasonable floating point performance is required, but awesome FP is not
> e) the API should be simple enough to understand
> f) it should be easy to carve out sub-matrices for sending to different
> reducers
> g) a reasonable set of matrix operations should be supported, these should
> eventually include:
> simple matrix-matrix and matrix-vector and matrix-scalar linear algebra
> operations, A B, A + B, A v, A + x, v + x, u + v, dot(u, v)
> row and column sums
> generalized level 2 and 3 BLAS primitives, alpha A B + beta C and A u +
> beta v
> h) easy and efficient iteration constructs, especially for sparse matrices
> i) easy to extend with new implementations
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.