Welcome to the repository of my TER (Travail d'Γtude et de Recherche / Research Study Project). This project explores the use of Deep Learning to simultaneously predict the energy of a system and its associated forces.
In molecular dynamics, force is defined as the negative gradient of the energy with respect to atomic coordinates:
The goal of this project is to evaluate different training strategies (Classic, Auto-differentiation, Multitask) to optimize the learning of energy and its derivatives. We start with a simple mathematical problem before scaling up to complex molecules.
The project is divided into two progressive phases:
| Phase | Study Environment | Main Objective |
|---|---|---|
| 1. Theory | Himmelblau Function (Toy Function) | Rigorously understand and validate different gradient learning strategies, study the impact of hyperparameters ( |
| 2. Application | MD17 Dataset (Molecules) | Apply the validated concepts to real molecules (Paracetamol, Aspirin, ect...) using the TorchANI architecture. Study the impact of loss function weights ( |
The code is organized chronologically to follow the scientific reasoning:
βββ notebooks/
β βββ Phase_1_Himmelblau/
β β βββ 01_training_strategies_himmelblau.ipynb
β β βββ 02_lambda_finetuning_himmelblau.ipynb
β β βββ 03_loss_by_epoch_classic.ipynb
β β βββ 04_loss_by_epoch_multitask.ipynb
β β βββ 05_loss_by_epoch_gradient.ipynb
β β βββ 06_statistical_analysis_himmelblau.ipynb
β β
β βββ Phase_2_Molecules/
β βββ 07_training_ANI_molecule.ipynb
β βββ 08_loss_by_epoch_ANI_gradient.ipynb
β βββ 09_optimisation_alpha_beta.ipynb
β
βββ dashboards/
β βββ dashboard_himmelblau.py # Interactive visualization for Phase 1
β βββ dashboard_molecule.py # Interactive visualization for Phase 2
β
βββ csv/
β βββ metrics_md17_7reps_aspirin.csv
β βββ metrics_md17_7reps_benzene.csv
β βββ metrics_md17_7reps_paracetamol.csv
β
βββ README.md