[mlpack] Preparation for 1.0.9 release

Ryan Curtin gth671b at mail.gatech.edu
Fri Jul 11 16:22:14 EDT 2014


Hello there,

I have been muttering for months about finally releasing 1.0.9, but only
now have I managed to get enough things taken care of that this seems
actually reasonable.  However, I'm not the only one working on this
project, so I wanted to get some community input on my ideas and set
some realistic goals, since many people are working on many different
parts of the code.

So, here is a list of major changes we have either complete or very
close to complete for 1.0.9 (if I've forgotten anything, please add to
the list!  Lots has happened in 2014...):

 * Addition of simulated annealing by Zhihao.

 * HMMs now support initial state probabilities (#315).

 * Addition of decision stump and perceptron by Udit.

 * Addition of cosine tree and QUIC-SVD by Siddharth.

 * Serious refactoring of NMF -> LMF -> AMF and addition of some SVD
   techniques by Sumedh.

 * Some fixes and improvements to nearest neighbor search.

 * Refactoring of dual-tree algorithm constructors by Saheb and me.

 * Addition of sparse autoencoder by Siddharth.

 * Better variance calculation options for the Naive Bayes classifier by
   Vahab.

 * Cover tree traverser improvements (#243)... took me two years to
   solve that one!

 * Warn when <armadillo> is included before <mlpack/core.hpp> by the
   other Ryan (#347).

 * Fix to HMM::Predict() by Michael Fox (#316).

 * Various tree fixes by Yash (#235 and #320, which is almost done).

 * Some other miscellany by lots of people:
   http://www.mlpack.org/trac/query?status=closed&group=resolution&milestone=mlpack+1.0.9
   http://www.mlpack.org/trac/report/12 (not all 1.0.9 fixes)

I know Anand and Marcus have been hard at work on the benchmarking
system, too, but that's not really part of the release itself.  We can
try and use Anand's new metrics with the published benchmarks.

It seems like the R tree (and its variants) aren't quite ready yet
(unless I am mistaken, and even if they aren't ready that's no problem,
of course); so I was planning to pull them out for the release.  I also
think that some of the new matrix factorization techniques haven't been
made to work with the CF class yet, but if that's not ready in time, I
don't think that's a huge issue.

My ultimate goal with this email is to find out what folks are up to,
and if I should hold the release for some as-of-yet uncommitted or
nearly-finished projects.  Some of the GSoC projects aren't done yet,
but that's okay, of course -- we can have another release at the end of
the summer that includes all of the finished project code.  Ideally, I'd
like to release within two weeks or so.  Between now and then, I will be
working on some of the other open 1.0.9 bugs, and patching up other bits
of code that aren't ready to go yet.  And hopefully writing some more
tutorials...

So, does anyone have any code that we should hold 1.0.9 for, or that is
very nearly ready?  Depending on the scale of the work that needs to be
done, I can help out in getting it done by then.  But at the same time,
it's perfectly okay to wait until the next release, too.

I think it would probably also be a good idea to do releases more
frequently; maybe every two or three months?  This was my original plan,
but then somehow frequent releases stopped happening and now it's been
six or seven months...

-- 
Ryan Curtin    | "Bye-bye, goofy woman.  I enjoyed repeatedly
ryan at ratml.org | throwing you to the ground." - Ben Jabituya



More information about the mlpack mailing list