[mlpack] Dissimilar matrices in multi-dimensional scaling

Ryan Curtin ryan at ratml.org
Mon Feb 16 11:59:46 EST 2015


On Mon, Feb 16, 2015 at 06:08:31AM +0530, Dhawal Arora wrote:
> Hi Ryan,
>
> I am going through the arpack_wrapper and other armadillo source, its a bit
> abstruse but will probably figure it out after sometime.
> So meanwhile i've started implementing multi-dimensional scaling before
> generlized eigenvectors get wrapped. Should i continue with it?

Sure, you can assume that an eigs_sym_pair() function will eventually be
available, which will solve the eigenproblem Ax = Bx\lambda and return
some eigenvalues \lambda and some eigenvectors x.  The API will look
like a cross between eig_pair() and eigs_sym().

I'll keep you updated as the SuperLU wrapper becomes closer to done.
Today I think I figured out how to wrap it correctly (it's ugly, but I
think it works), and in the next few days I'll build the rest of the
wrapper in order to provide lu() and solve(), which will then enable me
to write eigs_sym_pair().  It's a long dependency chain...

> I guess i've seen simple eigenvalue and eigenvectors already being
> used in PCA so can work them through in MDS too. And regarding
> dissimilar matrices, should i go with including them in MDS or i am
> thinking to probably create them separately in core/math as these
> might include euclidean, manhattan, maximum and a bunch of other
> distances. Thanks.

Are you able to use the distances we already have in
src/mlpack/core/metrics/?  Or do you mean something else?

You should be able to templatize your implementation so that it can work
with any distance metric.

Thanks,

Ryan

-- 
Ryan Curtin    | 
ryan at ratml.org | "Death is the road to awe."



More information about the mlpack mailing list