GSoC 2023 Project Idea 15.1 Integration of automated model testing and parameter fitting tools for neuroscience applications (175/350 h)

Biologically detailed models are useful tools in neuroscience, and automated methods are now routinely applied to construct and validate such models based on the relevant experimental data. The open-source parameter fitting software Neuroptimus (formerly Optimizer) was developed to enable the straightforward application of advanced parameter optimization methods (such as evolutionary algorithms and swarm intelligence) to various problems in neuronal modeling. Neuroptimus includes a graphical user interface, and works on various platforms including PCs and supercomputers. Neuroptimus currently uses various built-in cost functions and those implemented by the eFEL feature extraction library to compare the behavior of the models to the (experimental) target data. However, this approach severely limits the range of neuronal behaviors that can be targeted by the optimization. On the other hand, the popular model-testing framework SciUnit allows the implementation of tests that quantitatively evaluate arbitrary model behaviors.

The aim of the current project is to extend the open-source neural parameter optimization tool Neuroptimus so that it is able to use test scores from the SciUnit framework as the cost function during optimization. Direct applications would include the construction of detailed biophysical models of hippocampal neurons using a combination of Neuroptimus and HippoUnit, an open-source neuronal test suite based on SciUnit. All of these tools are implemented in Python.

Skills and effort: Intermediate

Required skills: The task would probably require a full-time effort during GSoC (350h), and at least intermediate coding skills. Comfortable with Python.

Time commitment: Full-time (350 h)

Mentors: The project would be supervised by members of the Computational Neuroscience laboratory at the Institute of Experimental Medicine (Budapest, Hungary), including Sára Sáray (the developer of HippoUnit) and Szabolcs Káli (head of the laboratory), with contributions from Máté Mohácsi (the current lead developer of Neuroptimus).

Project website:

Tech keywords: Python

3 Likes

Hi @arnab1896,
Good Evening
I am Prateek Pandey, a final-year student at the Indian Institute of Technology Kanpur.
I have work experience in Python, and I really find this project interesting and would love to work on it. I will be able to give 350 hours to the project.
Can you please help me understand how I can start on this?

Hi @prateekp1729 , nice to hear from you :slight_smile:
Tagging the mentor/s to help you get started @szabolcs_kali Thanks!

Dear potential Contributors,

Thank you for your interest in our work. In order to learn more about the background of the current project, I suggest that you take a look at two of our papers:
https://doi.org/10.3389/fninf.2014.00063
https://doi.org/10.1371/journal.pcbi.1008114

The goal of the current project is essentially to unify the approaches represented by these two articles.
The source code of both projects is also available at the respective Github repositories:
https://github.com/KaliLab/optimizer
https://github.com/KaliLab/hippounit
Please note that most recent development in these projects is happening outside the main branches; Optimizer, in particular, is undergoing a major update, and will be re-released soon under a different name (Neuroptimus).
If you have questions or suggestions about the papers or the code, please feel free to contact us.

If you wish to become a contributor to our project, then (in addition to becoming familiar with the resources above) please introduce yourself via email to kali@koki.hu, and make sure that you describe how you have contributed to software (preferably via links to the code on Github or other similar platform).

2 Likes

Hii!
I am Kritika. I was interested in learning more about this project. I am currently a student studying CS, Mathematics and Computational biology.
Do you require hands on experience in SciUnit and Neuroptimus as I am comfortable with Python about haven’t worked with the aforementioned two?
Thank you

Hi,
I am interested and can connect with this problem , i myself face a challenge while optimizing model and tuning the hyperparameters .
I am currently going through the paper (A flexible, interactive software tool for fitting the parameters of neuronal models) you have mentioned above and found the solution appealing
Once I’m done with reading paper i will sent the introductory email.
Thanks

Hi,
Thank you for your interest in our work. Previous experience with our tools (Optimizer/Neuroptimus and HippoUnit) is not required to join the project. However, naturally, in order to make meaningful contributions, you would first need to familiarize yourself with both the ideas behind these software tools (which is why I provided links to the papers) and their current implementation (which is why I provided links to the code on Github).

Hi,
Thank you for your interest in our work. Please note that, while the Friedrich et al. paper describes the main ideas behind Optimizer, and these are still valid, the paper represents the state of development almost 10 years ago. As I mentioned above, the software has been revised and improved in many ways since then. A new release (using the new name Neuroptimus) will be made fairly soon, and we are also preparing a manuscript that will describe the new features, and also present detailed benchmarking results for many of the algorithms that are now included.
Please do not hesitate to get in touch if you have questions, comments, or suggestions regarding our software or other aspects of our work.

Thank you
I’ll read those papers and try to familiarize myself with Optimizer/Neuroptimus and HippoUnit.

I’ll also wanted to ask if you have a slack or any other community platform that I could join to learn about and contribute in this project.

Hello

I’ve read the research papers you provided and was interested in having a discussions about some doubts and ideas I had about the Neuroptimus, HippoUnit and SciUnit and the optimization algorithms used. I haven’t made contributions yet but I am interested in doing so.

Hello @szabolcs_kali,
My name is Ananya Kalsotra, a fourth-year undergraduate at the Indian Institute of Technology, Kharagpur. I’m really Interested in this project. Kindly, enlighten me on how to proceed further.

Hello,

Please take a look at my earlier emails in this thread, starting with the one on February 9. This will hopefully allow you to learn more about this project, and get acquainted with the two relevant software tools, Neuroptimus and HippoUnit. After that, if you are still interested in contributing to our project, please introduce yourself via email to kali@koki.hu .

Hi @arnab1896
I am Bhanushri Chinta a sophomore at IIT Mandi, I have work experience in python with applications of machine learning and Deep Learning, i find this project really interesting as it aligns with my skill set. Can you please help me understand how to start with?

Hi,
To get started, please take a look at my earlier messages in this thread. Thank you!

Hello @arnab1896,

I am Anamika Tiwari, currently pursuing my second year of B.Tech at Maharana Pratap Engineering College. I am enthusiastic about your project and eager to contribute my skills. I have a proficient background in Python and have successfully completed various projects that have honed my coding abilities.

My personal connection to neuromuscular disorders, with both my father and myself being affected, has sparked a deep interest in this domain. This familial experience has driven me to explore and actively engage in research and solutions related to these disorders.

Having carefully reviewed the provided papers and information, I am excited about the technology and research prospects your project presents. I look forward to the opportunity to work and contribute in this important field.

It would be very helpful if I could get link to community conversation platforms of this project.

Best regards,
Anamika Tiwari