[mlpack] Student looking to contribute to mlpack

Rohit Shinde rohit.shinde12194 at gmail.com
Sat Apr 11 11:47:27 EDT 2015


On Sat, Apr 11, 2015 at 9:02 PM, Ryan Curtin <ryan at ratml.org> wrote:

> On Sat, Apr 11, 2015 at 08:53:22PM +0530, Rohit Shinde wrote:
> > Yes, it does work.  I had tried this earlier, but i had put the std=c++11
> > at the end. So it again gave me many errors. Why does changing the order
> of
> > options in the command remove errors?
>
> Are you sure that you specified '-std=c++11' and not 'std=c++11'?  I
> have not seen the location of the -std=c++11 affect compilation results,
> but the ordering of some of the other options (linking -- -L and -l, and
> include directories -- -I) can make a difference.
>
Yes, I am pretty sure. However, it does not give an error now. I dunno why.


>
> > Now that I have got familiar with mlpack, I would like to contribute to
> > some code. I was looking at some project ideas. And I am interested in
> > these two:
> >
> https://github.com/mlpack/mlpack/wiki/SummerOfCodeIdeas#essential-deep-learning-modules
> >
> https://github.com/mlpack/mlpack/wiki/SummerOfCodeIdeas#implement-tree-types
> >
> > How could I get started in these two projects?
>
> I can't speak much towards the deep learning project, but I'm happy to
> help with the tree types project.  A lot of algorithms in mlpack use
> different types of trees (or spatial indexing structures) to solve
> problems; some examples are the kd-tree, the ball tree, the cover tree,
> and so forth.

Which trees do you suggest I implement? There are random projection trees,
> Bregman trees, UB trees, R+ trees, Hilbert trees, X trees, segment trees,
> interval trees and range trees. Which one do you suggest I implement?
>
In general, these algorithms are written in such a way that the type of
> tree is a template parameter:
>
> template<typename TreeType>
> class MachineLearningAlgorithm
> {
>   ...
> };
>
> and as a result, you can implement new types of trees, and if they
> satisfy the correct API, you can plug them in as 'TreeType'.
>
> Probably a good place to start is to look through the existing code in
> src/mlpack/core/tree/ and understand the trees that are already there
> (don't worry too much about the details of the CoverTree class: it's
> insanely complex; just the general structure and API of the trees is
> what matters).  Then you can pick a new type of tree and start
> implementing that.


Which trees do you suggest I implement? There are random projection trees,
Bregman trees, UB trees, R+ trees, Hilbert trees, X trees, segment trees,
interval trees and range trees. Which one do you suggest I implement?

  When you have something written, we can test it by
> writing some unit tests and plugging it into existing mlpack methods and
> seeing if they still work.
>
> Here are some links to previous mailing list postings that may be
> helpful:
>
> https://mailman.cc.gatech.edu/pipermail/mlpack/2015-January/000545.html
> https://mailman.cc.gatech.edu/pipermail/mlpack/2014-March/000273.html
> https://mailman.cc.gatech.edu/pipermail/mlpack/2014-March/000273.html


>
> You can also look through the rest of the archives...
>
> https://mailman.cc.gatech.edu/pipermail/mlpack/2014-March/000273.html
>
> If I can clarify anything or help out, please let me know.
>
> Thanks!
>
> Ryan
>
> --
> Ryan Curtin    | "Weeee!"
> ryan at ratml.org |   - Bobby
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.cc.gatech.edu/pipermail/mlpack/attachments/20150411/c5c075e0/attachment-0003.html>


More information about the mlpack mailing list