Joy Bose’s Weblog

Just another weblog

Archive for October, 2007

Engineering a sequence machine

Posted by joyboseroy on October 30, 2007

My PhD research can be presented in the form of a dialogue, which goes something along these lines:

The goal of my research is to engineer a high level system using spiking neurons. We have taken a sequence machine as the example of a high level task that can be modelled. A sequence machine is an automaton that can store and recognise sequences of symbols. We chose this particular application because of its biological proximity and the fact that many people have already tried to approach this problem but none from an engineering perspective and also since in our research group we are trying to mdoel neurons in hardware.

So having decided on the goal, the question is how.  We decided to use an associative memory as the high level neuron model, with a separate neural layer to dynamically store the context, which the machine uses to reconstruct the state of the sequence in order to predict the next symbol in the sequence with maximum accuracy based  on its past knowledge. The memory we chose was a Kanerva’s sparse distributed memory using N-of-M codes with rank order codes.

We used an associative memory because its more biologically plausible, and easier to model using spiking neurons and in hardware.  Also its the natural choice given our use of neural network as a memory that can learn and predict sequences.

We used the N-of-M SDM variant because it was already in use in our research group, and we were building up on already published research using such a memory.
We used a separate context neural layer because it was modular, enabled us to keepseparate the long term and short term components of the memory, we could use the N-of-M SDM as it is as a pluggable module.

In the high levbel system we had to also decide on the precise formulation of the problem and theprotocol to be followed. We decided on the following protocol, in order of time within a single time step, to be followed for each symbol:

1. Associate the previous output with the input 2. Form the next context from the input and previous output 3. Form the new output as a function of the new context and the input

This particular order of operations is necessary to preserve well defined boundaries between when to expect which part of the data. Its bit counter intuitive.

Now came the question of spiking neurons. Which model to use? which coding to use? We decided already on rank order coding.

We used rank order codes because 1. Its possible to model it using spiking neurons as Thorpe et al showed 2. Its an interesting coding scheme and biologically plausible 3. As Thorpe showed, its possible to get a high level vector view and a low level spiking neuron view of a rank order code, the spiking neuron view is by using feedforward shunt inhibition

We also had to use feedback reset inhibition (apart from the feedforward shunt inhibition to implement the rank order code) to 1. Implement N-of-M coding 2. As a design decision, because of the problem of interference between spiking wavefronts, since we found that spike bursts would either explode or die out.

We used an RDLIF model of spiking neuron, and a custom built spiking neuron simulator. It is similar to popular LIF  model, yet has more complex 2nd order dynamics.

Yet we found that the RDLIF model cant support an equivalent functionality as the  temporal abstraction of rank order code as a vector of significances. Therefore we had to switch to using a simpler neural model called wheel model, with only 1st order dynamics

Posted in Research | Leave a Comment »

Books on neuroscience

Posted by joyboseroy on October 29, 2007

Some very good neuroscience books I have connected with are as follows:

Neuroscience: exploring the brain by Bears, connorts and Paradiso. I bought this book from a second hand bookstore. Its an undergraduate level book. I liked the illustrations, lucid explanations (esp in first edition), spotlight on research techniques like FMRI and EEG, inspiring interviews with leading scholars in the field. Here is the website.

Neurophilosophy by Patricia Smith Churchland. Is got a very good historical overview of the whole field and how different fields like neuroanatomy, physiology, neuroimaging, philosophy are related and how developments in these fields reinforce each other.

Neural networks and brain function by Rolls and Treves. Its a kind of classic, showing how the NN theory links to biological data on different brain regions. Fascinating to read about how computer techniques help and are inspired by biology. Its website is this.

Fundamentals of Computational neuroscience by Trappenberg. This is so good because its so simple and un-intimidating and reasonably lucid, yet is a very good stepping stone for anyone wanting to get into the subject. Good overview of many diefferent issues and tools and branches and fields covered in the interdisciplinary area of comp neuro. The website is here.

Posted in Uncategorized | Leave a Comment »

Some tools for research in CS

Posted by joyboseroy on October 19, 2007

Learn how to use gnuplot in 3D for plotting graphs. Learn CVS in Unix for keeping track of version changes. IEEE Explore is a very useful database of IEEE papers in all conferences and journals, so is the ACM digital library. Google books is sometimes useful. If possible, get an athens account to access these. Matlab is the most useful software for coding in academic environments, best for writing experiments where efficiency is not the top priority, its added advantage is in the number of toolboxes available and the integrated plotting and math tools, especially in versions 7.0 and higher. If Windows is your thing, learn to code inside an IDE such as eclipse or visual studio.

To submit a paper to a journal or conference, first see call for papers in your field etc. Once you have decided where to submit to, first go to their website, download the template  in latex (such as IEEETrans.cls and a .tex template) of a paper to be submitted to that site, stick to that style. Springer is another popular template for many conferences. Once you have written the tex file, compile using latex abc.tex and dvipdf abc.dvi. There is some website to check IEEE paper format submissions to make sure its ok.

Posted in Research | Leave a Comment »

Advice on writing a paper

Posted by joyboseroy on October 18, 2007

Ask yourself the following questions (Jon’s advice: any good paper should answer all of them): What is the problem? Is the problem important? Has it being solved? Have you solved it?

Gavin’s advice: The smaller the title and abstract, the better it is. Trick is to find related papers, group them in chronological order, build a storyline and establish the gap for your paper, how its completely unique. Write a paper draft outline with methology, experiments, analysis and conclusion, and an abstract before even starting to write the paper.

Posted in Research | Tagged: | Leave a Comment »

My research, study and further work

Posted by joyboseroy on October 18, 2007

I attended the following conferences along with assorted workshops/tutorials: nips in vancouver and whistler in december 2003, bics in sterling in august 2004, ijcnn in montreal in august 2005, icann in warsaw and torun in september 2005, mathematical neuroscience workshop in edinburgh in 2004.

I am at this moment working as a software engineer, hoping to get back into academia after say a couple of years in industry, writing a research paper with my co-authors in an area combining sequence learning, spiking neurons, rank order codes, associative memories, neural engineering, etc wondering how best to focus the paper.

I also hope to engage in coming months in doing some research experiments (as a hobby), studying the feasibility of doing the experiments I mentioned in my PhD thesis future work section, think about how the work can be commercially deployed at all (say in applications of companies like google and rolls royce) or at least how to reproduce the state of the art.

Posted in Research | Tagged: | Leave a Comment »

Resources in Computational Neuroscience

Posted by joyboseroy on October 18, 2007

Computational neuroscience is a fascinating field. If you are interested to get into it (or in a related field such as neural networks), congrats and get busy. Join and mailing lists. If you are in UK, you can join the following societies: NCAF (natural computing applications forum), IEEE Computational intelligence society which publishes IEEE-TNN and IJCNN, INNS or international neural networks society who publish the journal neural networks. Read the online free encyclopedia at scholarpedia, an initiative led by Izhikevich. Search in internet in the former conference websites of IJCNN, NIPS, ICANN, IWANN etc and see their tutorials and workshops section, same for the MIT, UCL Gatsby and Redwood Neuuroscience institute journal clubs, also see the syllabus and maybe exams, lectures and other course material for course modules in the area of computational neuroscience or the wider fields of artificial intelligence, machine learning and neural networks. Read maybe the introduction to computational neuroscience (trappenberg), scientific american book of the brain, neuroscience by Kendal, schwartz and jessel, theoretical neuroscience by dayan and abbott, neural networks by simon haykin, the book on pattern recognition by Christopher Bishop, encyclopedia of computational neuroscience edited by Arbib. Read different books on the issue, especially the biology/physiology side of it with computer science. Keep yourself updated of the latest research by seeing journal issues announcements in the mailing lists and going to the journals websites or the authors websites and reading their listed papers that you can access for free. Download and learn to use common simulators like SNNS, matlab NN toolbox, spiking neural simulators like GENESIS and NEURON etc. Good search engines for resourcing this field are google scholar and

For those interested in careers in the area (postdoc and lecturers), first look through job adverts in the mailing lists and also in Nature and New Scientist jobs, and in the US the Chronicle of Higher education. Make a list of skills they are looking forand decide where your interests lie and whats the future path you need to take, write a proper grant and research proposal.

Posted in Research | Tagged: | Leave a Comment »