Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Free energy fitting #54

Draft
wants to merge 49 commits into
base: main
Choose a base branch
from
Draft

[WIP] Free energy fitting #54

wants to merge 49 commits into from

Commits on Oct 22, 2020

  1. Configuration menu
    Copy the full SHA
    79d125f View commit details
    Browse the repository at this point in the history
  2. use offmol_indices, handle case of no propers / impropers, and adhere…

    … to 79 character lines
    
    oops, my IDE had been on 120 character lines this whole time -- switching to 79 character lines so future black passes don't turn things into quadruply nested messes
    maxentile committed Oct 22, 2020
    Configuration menu
    Copy the full SHA
    e3454ac View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d3f236d View commit details
    Browse the repository at this point in the history

Commits on Oct 24, 2020

  1. Configuration menu
    Copy the full SHA
    10268d5 View commit details
    Browse the repository at this point in the history

Commits on Oct 25, 2020

  1. add gbsa port

    maxentile committed Oct 25, 2020
    Configuration menu
    Copy the full SHA
    9c350ee View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    cf14a20 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0c20732 View commit details
    Browse the repository at this point in the history
  4. wip demo notebook for fitting to a hydration free energy calculation …

    …with a graph-net in the loop
    
    it's fishy that the initial hydration free energy prediction is so poor
    
    i suspect i may have made a unit mistake in my numpy/jax --> pytorch port
    maxentile committed Oct 25, 2020
    Configuration menu
    Copy the full SHA
    32f7d2d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    dfce74c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    6a02086 View commit details
    Browse the repository at this point in the history

Commits on Oct 29, 2020

  1. Configuration menu
    Copy the full SHA
    b5fa1e9 View commit details
    Browse the repository at this point in the history
  2. refactor gbsa_obc2_energy into a function in openmm unit system, and …

    …another function that converts to espaloma unit system
    maxentile committed Oct 29, 2020
    Configuration menu
    Copy the full SHA
    b77794c View commit details
    Browse the repository at this point in the history
  3. increase descriptiveness in gbsa implementation, add thorough shape a…

    …ssertions
    
    Thanks to @yuanqing-wang for carefully stepping through this with me
    
    Co-Authored-By: Yuanqing Wang <[email protected]>
    maxentile and yuanqing-wang committed Oct 29, 2020
    Configuration menu
    Copy the full SHA
    eb73857 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    745c6ac View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    a88fe91 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    3773dd5 View commit details
    Browse the repository at this point in the history
  7. ooooof. fix silly mistake in fitting-to-free-energies notebook

    the line to compute the reduced work was written as if "solv_energies" was "valence_energies + gbsa_energies" but of course it was just "gbsa_energies"...
    maxentile committed Oct 29, 2020
    Configuration menu
    Copy the full SHA
    22d314f View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    dfdeac0 View commit details
    Browse the repository at this point in the history
  9. save also xyz coordinates from brief md

    in column `quick_xyz` -- will shortly replace this with a column `xyz` with more thorough parsley 1.2 vacuum sampling
    maxentile committed Oct 29, 2020
    Configuration menu
    Copy the full SHA
    5866029 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    47931bd View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    d812bdd View commit details
    Browse the repository at this point in the history
  12. must be a remaining sign-flip error -- seems like it's unable to make…

    … negative delta g predictions
    maxentile committed Oct 29, 2020
    Configuration menu
    Copy the full SHA
    fc2fbe7 View commit details
    Browse the repository at this point in the history

Commits on Oct 30, 2020

  1. add missing conversion from nm/(proton_charge**2) to kJ/mol

    thanks to @jchodera for spotting this! #54 (comment)
    
    Co-Authored-By: John Chodera <[email protected]>
    maxentile and jchodera committed Oct 30, 2020
    Configuration menu
    Copy the full SHA
    b564fe6 View commit details
    Browse the repository at this point in the history
  2. update gbsa docstring

    maxentile committed Oct 30, 2020
    Configuration menu
    Copy the full SHA
    08a2bcf View commit details
    Browse the repository at this point in the history
  3. update freesolv-fitting notebook

    * confirmed that it can overfit to a small subset of FreeSolv! 🎉
    * RMSE on whole of freesolv hasn't yet matched the quality of OBC2 🙏
    maxentile committed Oct 30, 2020
    Configuration menu
    Copy the full SHA
    d5ae749 View commit details
    Browse the repository at this point in the history
  4. re-run demo notebook with increased stepsize and decreased network si…

    …ze: validation set RMSE 1.8kcal.mol
    
    * increased stepsize 1e-3 rather than 1e-4
    * decreased layer and node dimensions from 128 to 32
    maxentile committed Oct 30, 2020
    Configuration menu
    Copy the full SHA
    bacb705 View commit details
    Browse the repository at this point in the history
  5. ipynb --> py

    + a few formatting and documentation enhancements
    maxentile committed Oct 30, 2020
    Configuration menu
    Copy the full SHA
    6d4c831 View commit details
    Browse the repository at this point in the history
  6. refine fit_freesolv.py script

    * define random seed once at top of file rather than before each step
    * remove verbose flag
    * use same learning rate, n_iterations, n_mols_per_batch, n_snapshots_per_mol for both trajectories
    maxentile committed Oct 30, 2020
    Configuration menu
    Copy the full SHA
    9ffa304 View commit details
    Browse the repository at this point in the history
  7. add pdf figures from fit_freesolv

    unfortunatlely, at least one prediction on the validation-set appears to be nan (so the overall validation-set rmse is reported as nan)
    maxentile committed Oct 30, 2020
    Configuration menu
    Copy the full SHA
    7115efb View commit details
    Browse the repository at this point in the history

Commits on Oct 31, 2020

  1. notebook reporting on element coverage in freesolv

    element    # of molecules containing it
    C          639
    H          629
    O          344
    N          169
    Cl         114
    S          40
    F          35
    Br         25
    P          14
    I          12
    maxentile committed Oct 31, 2020
    Configuration menu
    Copy the full SHA
    c63bc05 View commit details
    Browse the repository at this point in the history
  2. oops, forgot nitrogen!

    maxentile committed Oct 31, 2020
    Configuration menu
    Copy the full SHA
    6db4016 View commit details
    Browse the repository at this point in the history
  3. notebook fitting to {C, H, O} mini-freesolv

    * add training / validation curves for early-stopping
    * add bootstrapped rmses to final scatterplots
    maxentile committed Oct 31, 2020
    Configuration menu
    Copy the full SHA
    9857f52 View commit details
    Browse the repository at this point in the history
  4. oodles o' vacuum samples

    run 10ns of md per molecule (rather than the measly 0.01ns per molecule in 5866029 )
    maxentile committed Oct 31, 2020
    Configuration menu
    Copy the full SHA
    8e50eec View commit details
    Browse the repository at this point in the history
  5. set openmm_cpu_threads to 1

    maxentile committed Oct 31, 2020
    Configuration menu
    Copy the full SHA
    1f1f520 View commit details
    Browse the repository at this point in the history
  6. Create fit to {C, H, O, N, Cl} subset of freesolv (n=529).ipynb

    validation-set rmse ~1.2-1.5 kcal/mol
    maxentile committed Oct 31, 2020
    Configuration menu
    Copy the full SHA
    38bbf03 View commit details
    Browse the repository at this point in the history
  7. oops fix plot labels

    maxentile committed Oct 31, 2020
    Configuration menu
    Copy the full SHA
    7de7b6c View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    2643694 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    d24b5bf View commit details
    Browse the repository at this point in the history
  10. add xyz column to freesolv_with_samples.h5

    using more thorough vacuum md, specified here 8e50eec
    maxentile committed Oct 31, 2020
    Configuration menu
    Copy the full SHA
    e6d31d9 View commit details
    Browse the repository at this point in the history
  11. update {C, H, O} subset experiment to use thorough equilibrium sampling

    anecdotally, this appears to increase the training-set vs. validation-set error gap, suggesting that insufficient equilibrium sampling might have made the validation-set performance reported in #54 (comment) look more favorable than it should!
    maxentile committed Oct 31, 2020
    Configuration menu
    Copy the full SHA
    98f424f View commit details
    Browse the repository at this point in the history

Commits on Nov 2, 2020

  1. Configuration menu
    Copy the full SHA
    a38812d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ac80468 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    7c76087 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f56999c View commit details
    Browse the repository at this point in the history
  5. add a horizontal line depicting RMSE of FreeSolv's explicit-solvent c…

    …alculations vs. experiment on the {C, H, O} subset
    maxentile committed Nov 2, 2020
    Configuration menu
    Copy the full SHA
    e01ab88 View commit details
    Browse the repository at this point in the history

Commits on Sep 3, 2021

  1. Add todos

    maxentile committed Sep 3, 2021
    Configuration menu
    Copy the full SHA
    0a06d43 View commit details
    Browse the repository at this point in the history
  2. Add SAGEConv

    maxentile committed Sep 3, 2021
    Configuration menu
    Copy the full SHA
    3c7eee4 View commit details
    Browse the repository at this point in the history
  3. Address GraphSAGE todo

    maxentile committed Sep 3, 2021
    Configuration menu
    Copy the full SHA
    fad31a5 View commit details
    Browse the repository at this point in the history
  4. Update PDF figures

    Observations:
    * n=10 overfitting seems to achieve a lower error than previously
    * 50/50 train/validate seems to initialize and optimize at a higher error than in first version
    maxentile committed Sep 3, 2021
    Configuration menu
    Copy the full SHA
    ccea6ba View commit details
    Browse the repository at this point in the history