GSoC 2021 project idea 16.1: Supporting simulation based inference with the model fitting toolbox

The brian2modelfitting project provides a toolbox that enables users to conveniently fit their single-cell Brian models to experimental data. This toolbox leverages global optimization methods from the nevergrad and scikit-optimize libraries, as well as local, gradient-based methods from lmfit and scipy. Recently, simulation-based inference has been established as an alternative approach that improves over such methods in several ways. In particular, it does not only result in a single parameter set providing the “best fit”, but instead provides an estimate of the full posterior distribution over parameters. The aim of the project is to support this kind of approach in the brian2modelfitting toolbox by linking it to the sbi package created by the Macke lab: sbi

Skills: Python programming, experience with optimization/machine
learning/computational neuroscience modelling helpful

Mentors: Marcel Stimberg @mstimberg , Romain Brette

Tags: BRIAN, Python, optimization, machine learning

1 Like

Hi @malin,

Have to say, I am extremely glad to see this kind of project on this year’s GSoC :slight_smile:
Even though I have no official training in computational neuroscience, I have MSc in electrical engineering and I am currently grad student in bioelectromagnetics so I think I could potentially be a good candidate to tackle this problem.
Is there a way to get in contact with mentors to share more ideas on the project and possible deliverables?

Thank you in advance!
Best, Ante

Hi @alk, happy to hear you are interested in the project. I am available for questions/discussions here on neurostars or via email (marcel.stimberg@inserm.fr).

1 Like

Hi @mstimberg,
I am Eslam from Egypt, I am currently in my 4th year at systems & Biomedical engineering department at Cairo University, I really liked this project, I am working on building a distributed multi-objective optimization tool for neuronal models(specially NEURON Simulator) as my graduation project, so it is very relevant to this project.
I’d like to make beneficial contributions with the technical and theoretical knowledge I’ve gained during my studies.
Any guidance regarding how to start? I already went through BRAIN and sbi GitHub repos.
Thanks

Hi Eslam, thank you for your interest in the project. For this project, Brian2 and its modelfitting toolbox (https://brian2modelfitting.readthedocs.io) are the things to look at first. It would also be important to have a clear idea of the difference between the current modelfitting approach in the brian2modelfitting toolbox and the one used by sbi. I’ll give a few more concrete comments on the application process at a later time, but don’t hesitate to ask in case you have more detailed questions.

1 Like

Hi @mstimberg ,

I am Daniela from Italy, I am currently a postdoct researcher at the University of Chieti-Pescara. I really liked this project, I am working on building a distributed multi-objective optimization tool for neuronal models(specially NEURON Simulator)so I think I could potentially be a good candidate to tackle this problem.
I’d like to make beneficial contributions with the technical and theoretical knowledge I’ve gained during my studies.
Any guidance regarding how to start? I already went through BRAIN and sbi GitHub repos.
Thanks

Thank you in advance!
Best, Ante

Hi Daniela, thank you for your interest in the project. Your post is a bit of a curious mix of Eslam’s and Ante’s previous posts, but I’ll assume that at least the first sentence describes you well :slight_smile: Make sure that you fulfill Google’s eligibility criteria, in particular you have to be a student or graduated very recently.

Regarding the project, please have a look at my earlier replies with some pointers to additional material and let me know in case you have any specific questions.

I will give a look at it :slight_smile:
Daniela

Dear students,
a few general words about the application process (the first points are general for all Brian projects, and the last is specific to this project):

  • when you start the application on the GSoC website, you will get a template for the general structure, so I’d recommend to wait for the official start of the application period before compiling the document.
  • don’t hesitate to share your draft application with me so that I can give you feedback, but please don’t wait until the very last day if you want to incorporate my feedback into the final version :slight_smile:
  • in the application, the detailed timeline does not matter that much (these things are always hard to predict); the important thing is to show that you 1) understand the project and its deliverables and 2) that you have the knowledge/skills to successfully finish this project.
  • for the second point, point to concrete proof of your experience, e.g. if you published code anywhere (e.g. for project work as part of your studies), please include a link to it.
  • this year, GSoC adds a bit of flexibility to the schedule: the official guideline is that over the 10 weeks of the project, “students are expected to spend on average 18 hours a week on the program”. Please include in your application how you’d like to organize time over the project, e.g. whether you prefer to do this “part-time work” over the full 10 weeks, or rather have fewer weeks with more hours, but include time off for vacation, etc. If several options work for you, you can of course write this as well. Finally, please mention any external constraints (e.g. exams) and how they fit into the schedule.
  • To show that you are comfortable working with github and the brian2modelfitting toolbox, we’d like to ask you for a contribution to its repository via a pull request: concretely, please contribute a new example for the documentation. This example can take many forms, e.g. you could showcase a feature of the toolbox that has not been demonstrated in the examples so far, it could be an example that is based on an “interesting” model and corresponding data, or it could demonstrate the properties of different algorithms, or… Please don’t make it much more complex than the existing models, it should be an example not a scientific paper :slight_smile: And of course, don’t hesitate to open GitHub issues if you run into any unexpected problems while developing the example.

Finally, a personal remark: I am about to be off on paternity leave any day now, so please don’t worry if I don’t reply right away, I might be busy with other things :baby_bottle: :wink:

1 Like

Hi @malin, @mstimberg,

the microreport for this week is posted here.
Future microreports should all be posted here :slight_smile:

Best,
Ante

1 Like

Thanks for the report, location noted!