Hi, Gaël and group

I really appreciate your comments. You are right. I'd better to stand on
the shoulders of giants rather than build all things from scratch. I went
through the 120+ comments on the very very initial PR #116 in 2011,
https://github.com/scikit-learn/scikit-learn/pull/116. It is very valuable
resource, especially the comments of Olivier, Gaël and Alex.

1. Updating rules. Alex also mentioned that he did not know other clear
reference to make sure the implemented algorithm is correct. I can
double-check the current derivation.

2. Speed. There is an intense discussion about vectorization. I think we
should do more detailed profiling and vectorization to find out
opportunities to speed up. I used to write a lot of code in Matlab, I am
also a big fan of vectorization. Using unnecessary for loop is also a bad
idea in Matlab. I could contribute more on this point.

3. Testing. It seems there are many obstacles on testing. The most
important issues are correctness,  convergence and numerical
instabilities.  It is always not an easy task to make sure
the nondeterministic algorithm works correctly. I didn't find related
materials on the testing of variational methods. But there are some
materials about testing MCMC. I guess we could have similar test cases like
MCMC. References
<https://hips.seas.harvard.edu/blog/2013/05/20/testing-mcmc-code-part-1-unit-tests/>

Thanks,
Wei Xue

On Thu, Mar 26, 2015 at 1:55 AM, Gael Varoquaux <
gael.varoqu...@normalesup.org> wrote:

> > 1. For the part Implementing VBGMM, do you mean it would be better if I
> add
> > specific functions to be implemented?  @Andreas.
>
> My question is: why do you think that, by coding it from scratch rather
> than trying to understand the existing one and improving it, you'll do a
> better job? The guy who did it wasn't an incompetent, and it has been
> improved since.
>
> > 3. For the reason of reimplement VBGMM, I think I did not make it clear,
> as
> > Kyle and Andreas pointed out. In this part, I will mainly re-implement
> the
> > updating functions part, such as ```_update_precisions``.  @Kyle
>
> OK. You need to be clear in the proposal on what you will change, why,
> and how you will judge the progress.
>
> G
>
>
> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming The Go Parallel Website,
> sponsored
> by Intel and developed in partnership with Slashdot Media, is your hub for
> all
> things parallel software development, from weekly thought leadership blogs
> to
> news, videos, case studies, tutorials and more. Take a look and join the
> conversation now. http://goparallel.sourceforge.net/
> _______________________________________________
> Scikit-learn-general mailing list
> Scikit-learn-general@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
>
------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Scikit-learn-general mailing list
Scikit-learn-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/scikit-learn-general

Reply via email to