I looked at them a while ago, and part of the issue is that general-purpose
vectors need
to be able to do all things for all people... when you give that up, and say
that your sparse vectors
are, say, immutable, after creation, and only designed to do operations like
dot(DenseVector)
and DenseVector.plus(SparseVector) (and maybe DenseVector.plus(SparseVector,
double multiple),
for doing u + b*v), then you can get away with being very simple - just
parallel arrays of
indexes and values for the sparse vectors, and double[] arrays for the dense
ones.

I'll see if I can compare performance of my specialized simple vectors and
general purpose ones,
and see what the difference is.

  -jake

On Fri, Sep 25, 2009 at 12:08 PM, Ted Dunning <[email protected]> wrote:

> Consider improving the versions in Mahout while you are at it!
>
> On Fri, Sep 25, 2009 at 12:03 PM, Jake Mannix <[email protected]>
> wrote:
>
> > but I'm currently using mostly my own sparse and dense
> > vector writables for use on Hadoop (designed specifically for things like
> > Lanczos and AGHA), so I'd need to port them over to use whichever vector
> > impls Mahout is using
> >
>
>
>
> --
> Ted Dunning, CTO
> DeepDyve
>

Reply via email to