Create Matlab GUI For Running and Exploring Neural Network

Concluído Postado Apr 30, 2010 Pago na entrega
Concluído Pago na entrega

The task here is to take some matlab source code (freely distributed by its creators) that implements a specific kind of neural network learning algorithm and modify the code to allow a user to conveniently use this code to train up networks with various different sets of inputs (image files) and to explore the networks produced by training. The learning algorithm is referred to as a “Deep Belief Network?? (see references below). It carries out an unsupervised learning process which takes large numbers of input files (typically, images) and builds a hierarchy of feature detectors. The underlying learning algorithm is the restricted Boltzman machine algorithm. The freely distributed code was trained on images of handwritten digits, but I want to be able to train it on various sets of image files. I am interested in having a convenient GUI to let me run the code on various sets of image files of different sizes. The GUI should allow me to specify the names of the input files and their sizes, the number of training cycles, etc. It should also allow me to specify the same parameters that the existing code represents as constants. Once the unsupervised learning phase has been completed, I would like the GUI to allow me to generate new image files with top-level nodes clamped to values I choose. The source code is available here: [url removed, login to view]~hinton/[url removed, login to view] Note that the task only requires implementing the unsupervised learning phase. (The source code being modified here also carries out a supervised learning/backpropagation phase, which is not necessary for my purposes.) But I also want a convenient way to generate output images after clamping high level nodes, which I believe goes somewhat beyond what the source code provides (although it should not be difficult to do for someone who understands how the source code works). SEE FURTHER DOCUMENTATION BELOW TO FIND: 1. KEY MILESTONES FOR PROJECT 2. MORE DETAIL ON GUI FUNCTIONS 3. REFERENCES

## Deliverables

MORE DETAIL ON GUI FUNCTIONALITY 1. GUI should allow user to use dropdown menus to set the same network structure parameters that are provided by constants in the program. 2. GUI should allow user to specify the amount of training to be performed and what training images should be used. 3. GUI should allow user to specify a set of test images, and the program should store the average values of all the hidden layer units in the network when network is presented with each test input. 4. For the Generation functions, GUI should allow user to specify (clamp) any chosen subset of hidden layer units, and then it should generate images. GUI should offer option to store these images as separate files, or to create large image files which display many different examples of the outputs produced. (E.g., if the inputs are 28X28, it might display 20 X 20 = 400 examples of these outputs in one jpg image, with a label on top indicating what values were clamped.) MILESTONES Key milestones for the project are: 1. Setting up a GUI to operate the unsupervised learning code. 2. User tests this code by seeing if the published results from Hinton lab can be replicated when the program is run on the same image files as those used in the paper (also freely distributed). 3. Setting up GUI functions that allow the user to clamp top-level node values and generate and save image files on disk. 4. User tests the complete GUI by running it on new sets of training images. REFERENCES General review of Boltzman machine architectures: [url removed, login to view] For a more extensive description of Deep Belief Nets and the training procedure used here, several of these talks are a gentle introduction: [url removed, login to view]~hinton/[url removed, login to view] A detailed presentation of the model that goes with the source code is here: [url removed, login to view]~hinton/[url removed, login to view] Note that our use of this code will be in full compliance with the conditions imposed by the original authors of the code. The GUI will be used for research applications and will not be sold to others, and if it is distributed we will comply with the original coders' distribution agreement.

Engenharia Matlab and Mathematica Microsoft MySQL PHP Gestão de projetos Arquitetura de software Teste de Software Área de trabalho do Windows

ID do Projeto: #3388234

Sobre o projeto

1 proposta Projeto remoto Ativo em Apr 30, 2010

Concedido a:

themazeeu

See private message.

$106.27 USD em 21 dias
(70 Comentários)
5.5