Orange Forum • View topic - GSoC - Neural Networks

GSoC - Neural Networks

General discussions about Orange and with Orange connected things (data mining, machine learning, bioinformatics...).

GSoC - Neural Networks

Postby jaidev » Tue Mar 27, 2012 11:36

Hi

I'm going to apply for the Neural Networks project under GSoC, and here are my pros and cons.

Pros: I'm taking a course in neural networks this semester, so this
particular project will have a minimum overhead for me. Although I'm
officially taking this course now, in my final undergrad year, but
I've been using machine learning techniques for a long time. I'm
familiar with MLPs, clustering and the use of linear transformations
as feature extraction. I'm somewhat obsessive about my understanding
of these tools being very clear. I tend to write everything from
scratch and I use available libraries only when I'm sure that I know
what they do. For instance, before I use most estimators in libraries like scikit-learn, I
write my own code and test it on small datasets and make sure that
they produce similar outputs with sklearn estimators. (Of course, the
notion of this similarity of results is subjective, I don't know how
to establish *rigorously* that my results are similar to those of the
estimators in sklearn. For most purposes I rely on least-squared
error.) In fact, I was also somewhat surprised that sklearn doesn't
begin with neural networks. Then I found out that sklearn is meant for
applying machine learning directly, without too much theory.

Cons: I've never actively contributed to any open source library, as
I've only recently become acquainted with the concept of 'community
coding'. I discovered the PEP 8 style only a couple of months ago.
I've learnt OOP very recently too, but now that I know it, I've
started thinking in terms of classes and their instances almost
everywhere in my code (Is that weird?). In fact, my style of coding
has been called 'too MATLABish' :) Basically all my education in
open-source coding happened after SciPy India 2011, which happened in
December.

In summary, I'm not very confident about how the community will feel
about my code, but I do make sure it does its job. And I can always
learn the soft-skills required for contributing to the community.

Here's a sample code of a Perceptron class that I wrote anew when I
learnt OOP. https://gist.github.com/2188832
Please go through it and be as critical as possible.

So does this warrant a GSoC application?

Cheers

Re: GSoC - Neural Networks

Postby jurezb » Tue Apr 03, 2012 14:35

I'm somewhat obsessive about my understanding
of these tools being very clear.


Excelent! So am I.

In summary, I'm not very confident about how the community will feel
about my code, but I do make sure it does its job. And I can always
learn the soft-skills required for contributing to the community.


Writing elegant code will probably be high on the list of criteria for selecting participants. It's important, to me personally at least, that the code submitted is readable and succinct. Just getting the job done will not be good enough.

I've learnt OOP very recently too, but now that I know it, I've
started thinking in terms of classes and their instances almost
everywhere in my code (Is that weird?)


You might not want to get carried away with the OOP paradigm.

"Sometimes, the elegant implementation is just a function. Not a method. Not a class. Not a framework. Just a function." -- John Carmack

You'll find more gems at http://harmful.cat-v.org/software/OO_programming/.

So does this warrant a GSoC application?


Absolutely.


Return to General Discussions



cron