GSOC 2017 Idea Improve the Decoding Module.

Hello everyone,

As I introduced my self earlier, I'm a pre-final year student majoring
computer science from AMU, India. I have strong coding skills and
proficient in Python, Cython and C++. I'm also a small contributor to
Scikit Learn and know some of it's internal working.
I am looking forward to take part in GSOC 2017, and I'm interested to work
on idea- improve the decoding module.
I have been looking into the code base and found that it is well structured
that help me a lot in becoming comfortable with the code base.
I will start contributing to MNE soon, but it will be excellent if anyone
can point out some issue just for start. Some pointers will be really
helpful to start working on this module.
Lastly I apologize if I have been rude in any manner.

Thanks
Akshay Gupta
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.nmr.mgh.harvard.edu/pipermail/mne_analysis/attachments/20170303/c5ade851/attachment.html

hi,

thanks for you interest.

I'd recommend to watch the project on github, read our tutorials (you'll
certainly
find typos or more).

Maybe this :

https://github.com/mne-tools/mne-python/issues/2828

is a good start.

This one:

https://github.com/mne-tools/mne-python/issues/3201

is also probably doable of you followed the tutorials.

Best,
Alex

Thanks for pointing out the issues. I will soon make my hand dirty with
them.

Regards
Akshay Gupta

Hello mentors,
Let me share my views that I have after following some issues, tutorials,
doc's etc. This project will involve clubing of different modules like
enhance decoding objects to follow sklearn API, performance improvement in
GAT.

Follow sklearn API:
Make GAT and EMS to use GridSearch and CrossValidation methods of Scikit
Learn. In order to optimize memory and CPU time scoring and storing of
y_pred_ do not follow scikit learn API which disallows GAT and EMS to use
those methods.
My idea is to design a wrapper aroung GridSearch and CrossValidation
methods. So, instead of calling these methods directly from sklearn, they
will be called by methods in MNE itself. Function of these wrappers
function will be to handle input parameters and output return value of GAT
and EMS to make them compatible with GridSearch and Cross Validation.

Next coming to GAT optmization:
Reference issue #2188
Idea is to initialize each classifier with coeff. found in preceding time
thus reducing CPU time. warm_start feature of classifier in scikit learn
can allow us to do so. It has some difficulty like-

-> Classifier is cloned before fit which prevents reusing the same
estimator.
-> Not all classifier in sklearn has warm_start feature.

It will be good if we divide this task into sub tasks and tackle each
hurdle one by one.

If everything goes right I will soon start writing pre-proposal. My request
is to correct me if I'm wrong in anything.

Suggestion are most welcomed. This is from my own understanding it will be
excellent if someone can point out work that are renaming to be done here.

Thank you
Akshay Gupta