Interesting.  I was just reading up on TSQR earlier this morning.

I think that this might well be of interest, although less than I would have
expected.  For instance, here:

https://issues.apache.org/jira/browse/MAHOUT-376

In the attached documents you can see that where in the original stochastic
projection version of SVD where QR is used to get a basis of the action of a
random projects, that a construct that is the same as the first step in TSQR
will suffice instead.  This means that the approach taken in TSQR that
converts the block-wise QR decompositions into a true decomposition is not
needed (for SSVD).

Similarly, I wonder if a block-wise decomposition might be just as useful in
linear least-squares solutions.  The idea is that with row permutation,
back-substitution could be done block-wise with each step having an inner
linear solution.  This might be silly if it really just means that the
secondary steps of TSQR are done implicitly.

Regardless of all this, the best next step is for you to write a 2 paragraph
proposed implementation as a bug report at http://issues.apache.org and then
we talk a bit, you code a bit and we all review a bit.  If this capability
fits in reasonably and the code is good quality (together, we can make it
so), then it shouldn't be hard to fit in.

Having a TSQR might help our SSVD algorithm as well.


On Sun, Jul 3, 2011 at 4:45 PM, David Gleich <[email protected]> wrote:

> Hey Ted,
>
> I've been doing some work on doing QR factorizations in Map-Reduce.
>
> See https://github.com/dgleich/mrtsqr and
>
> http://www.cs.purdue.edu/homes/dgleich/publications/Constantine%202011%20-%20TSQR.pdf
>
> It seems like these would fit nicely into a few of the algorithms in
> Mahout.  If you think that'd be interesting, what do you think would
> be the best way of working on it?
>
> Thanks,
> David Gleich
>

Reply via email to