Yayan

Joined 17 March 2017
1,250 bytes added ,  18 March 2017
Line 108: Line 108:


== Y: Your task ==
== Y: Your task ==
* Did you select a task from our list of proposals and ideas?
* ''Did you select a task from our list of proposals and ideas?''


Yes, I would like to work on the '''Neural Networks package: Convolutional Neural Networks''' [http://wiki.octave.org/Summer_of_Code_Project_Ideas#Neural_Networks_package:_Convolutional_Neural_Networks]
Yes, I would like to work on the '''Neural Networks package: Convolutional Neural Networks''' [http://wiki.octave.org/Summer_of_Code_Project_Ideas#Neural_Networks_package:_Convolutional_Neural_Networks]


** If yes, what task did you choose? Please describe what part of it you especially want to focus on if you can already provide this information. ''Please also wiki-link the page for your elaborated proposal here.''
* ''Please provide a rough estimated timeline for your work on the task.'' ''This should include the GSoC midterms and personal commitments like exams or vacation ("non-coding time"). If possible, include two or three milestones you expect.''
** If you apply for a task you have added yourself instead, please describe this task, its scope and people you already talked to concerning it. What field of tasks did you miss on the list?
 
* Please provide a rough estimated timeline for your work on the task. ''This should include the GSoC midterms and personal commitments like exams or vacation ("non-coding time"). If possible, include two or three milestones you expect.''
I plan to work on a daily habit on this project expending at least 35 hours a week. I may take part of a summer school on Machine Learning here in Spain in June, but that would only be five days and I can bring with me my laptop. This is the schedule I would like to follow:
 
Before 30 May:
 
I want to be more familiarised with the community and the mentors. I would like to contribute as much as I can to the nnet forge package. I plan to check if it is possible to reuse code from such package, since it is related to neural networks. In addition, we should study how the Matlab CNN toolbox works in depth so we can have a great modulated and configurable design for our package so it can be compatible before coding.
 
Phase 1, until 30 June:
 
Write the basic layers (image input layer, convolutional layer, RELU layer, max/avg pooling layer, fully connected layer and dropout layer), test their functionality and check their compatibility with Matlab code.
 
Phase 2, until 28 July:
 
Write the rest missing layers like classification, softmax and regression layers. Write the main CNN class, that holds the layers, its training process and the classify method. In this point we should be able to train some networks and test their functionality. Once again,  check its compatibility with the Matlab toolbox.
 
Phase 3, until 29 August:
 
Add extra features like the activations class, that can display a layer activations, and the possibility to load pretrainned networks. We could start by defining the AlexNET and VGG16 networks. This could be extended with an exporting/importing tool to process CNNs' architecture and weights saved in files.
 
 
[[Category: Summer of Code]]
[[Category: Summer of Code]]
41

edits