Robust parameter estimation and identifiability analysis with Hybrid Neural Ordinary Differential Equations in Computational Biology
The project has been developed in Julia 1.9.1 and relies on the packages listed in the Project file. The repository is structured as follows:
- The directory test case settings contains the derivative functions of the three benchmark models (both the fully mechanistic and HNODE versions) along with the original parameters, initial states, and training intervals.
- The directory datasets contains the code to generate the in-silico training datasets.
- Step 1: the training-validation split is performed at the beginning of the scripts in each of the following steps.
- Step 2A: code to tune the hyperparameters (both first and second stage).
- Step 2B: code to train the HNODE models.
- Step 3: code to perform the identifiability analysis.
- Step 4: code to estimate the confidence intervals.
- supplementary_cell_ap_model_identifiability: identifiability analysis of the parameters in the original cell apoptosis model.
-
supplementary_lotka_volterra_regularization: analysis of the regularizer profile with different values of
$\alpha$ in the Lotka Volterra HNODE model. -
supplementary_original_model_glyc_fit_to_noisy_data: parameter fit with the original yeast glycolysis model to the dataset
$DS_{0.05}$ . -
supplementary_identifiability_hyperparameter_analysis: analysis of the impact of the choice of
$\delta$ and$\epsilon$ on the identifiability results. - supplementary_cell_ap_stiffnesss_analysis: analysis of the stiffness ratio of the cell apoptosis original model.
- supplementary_impact_of_neural_network_on_system_dynamics: analysis of the impact of the neural network on the system dynamics in each test case.
- paper_latex_table_printer: code to generate the tables of the paper.
- paper_plot_generator: code to generate the plots of the paper.
To get help on how to use the code, simply open an issue in the GitHub "Issues" section.