deeprank icon indicating copy to clipboard operation
deeprank copied to clipboard

Issue 68 edesolv

Open DarioMarzella opened this issue 4 years ago • 8 comments

Energy of desolvation currently working in this branch (complete issue: #issue68). The organization of deeprank/features/Edesolv.py though might not be great, so I would appreciate comments on that (if needed).

DarioMarzella avatar Jul 15 '21 18:07 DarioMarzella

Pull Request Test Coverage Report for Build 1127779947

  • 133 of 166 (80.12%) changed or added relevant lines in 2 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.2%) to 77.329%

Changes Missing Coverage Covered Lines Changed/Added Lines %
deeprank/features/Edesolv.py 131 164 79.88%
<!-- Total: 133 166
Totals Coverage Status
Change from base Build 741819231: 0.2%
Covered Lines: 1760
Relevant Lines: 2276

💛 - Coveralls

coveralls avatar Jul 15 '21 18:07 coveralls

  1. Write an unit test to test the code

For point 3, isn't it better if I simply add Edesolv as a feature in test_generate.py? In this way, it will be tested along with the other features and there will be no need to change its specific unit test.

DarioMarzella avatar Aug 09 '21 13:08 DarioMarzella

  1. Write an unit test to test the code

For point 3, isn't it better if I simply add Edesolv as a feature in test_generate.py? In this way, it will be tested along with the other features and there will be no need to change its specific unit test.

Yep, makes sense :-)

CunliangGeng avatar Aug 09 '21 17:08 CunliangGeng

@DarioMarzella Please leave me a message when all requested changes have been handled :-) The tests failed and please look into it.

CunliangGeng avatar Aug 13 '21 12:08 CunliangGeng

@DarioMarzella Please leave me a message when all requested changes have been handled :-) The tests failed and please look into it.

Yes, I am waiting for the comparison with HADDOCK to update you :)

DarioMarzella avatar Aug 13 '21 13:08 DarioMarzella

@DarioMarzella Please leave me a message when all requested changes have been handled :-) The tests failed and please look into it.

I just got the result, and seems like the Edesolv I get from DeepRank by setting a grid big enough to take the whole protein correlates a bit worse with haddock than the one I previously got by taking into account the interface only. This makes me wonder if HADDOCK is using the whole proteins or the surface atoms only for the Edesolv. (Please note I had to use a different set of structures previously used for comparison. I previously used all the CAPRI set structures, now I had to use only some BM5 structures)

Last result (using all-atom Edesolv): Pearson correlation: 0.92 Mean absolute difference: 4.13 Plot: haddock_vs_deeprank.pdf

Previous results (using interface-only Edesolv): Pearson correlation: 0.98 Mean absolute difference: -2.93 Plot: haddock_vs_deeprank_capri.pdf

DarioMarzella avatar Aug 17 '21 11:08 DarioMarzella

Update: it might be that HADDOCK uses different thresholds to calculate the Edesolv. My values correlate better with HADDOCK itw and worse with HADDOCK it1 and it0.

HADDOCK it0 models: Pearson corr: 0.89 Mean Absolute difference: 5.05 Plot: image

HADDOCK it1 models: Pearson: 0.95 Mean Absolute Difference: 2.98 Plot: image

HADDOCK itw models: Pearson: 0.97 Mean Absolute value: 3.13 Plot: image

DarioMarzella avatar Aug 17 '21 11:08 DarioMarzella

@DarioMarzella Thanks for the results! If we're using the same equations and parameters as Haddock, the results should be same or the difference should be at the level of precision, e.g. 0.01(?). Did you check the Haddock code? If not, you'd better to have a look and also get clear with your wonder "This makes me wonder if HADDOCK is using the whole proteins or the surface atoms only for the Edesolv." (I don't remember and cannot provide a direct answer here :-(

And note the difference might be also from the calculation of surface area, Haddock does not use biopython for that. If the major part of difference is from area calculation, it's fine then and we should leave a note in the documentation.

CunliangGeng avatar Aug 19 '21 15:08 CunliangGeng

This repo is going to be archived #260. So closing this PR now.

CunliangGeng avatar Nov 24 '23 16:11 CunliangGeng