v2.0.0
Main changes
Refactor
- refactor: make
preprocess
use all available feature modules as default by @gcroci2 in #247 - refactor: move preprocess function to
QueryDataset
class and rename by @gcroci2 in #252 - refactor: save preprocessed data into one .hdf5 file as default by @gcroci2 in #250
- refactor: clean up
GraphDataset
andTrainer
class by @DaniBodor in #255 - refactor: reorganize deeprankcore.utils.metrics module by @gcroci2 in #262
- refactor: fix
transform_sigmoid
logic and move it toGraphDataset
class by @gcroci2 in #288 - refactor: add grid dataset class and make the trainer class work with it. by @cbaakman in #294
- refactor: update deprecated dataloader import by @DaniBodor in #310
- refactor: move tests/_utils.py to tests/init.py by @DaniBodor in #322
- refactor: delete all outputs from unit tests after run by @DaniBodor in #324
- refactor: test_contact.py function naming and output by @DaniBodor in #372
- refactor: split test contact.py by @joyceljy in #369
- refactor: change repr of AminoAcid to 3 letter code by @DaniBodor in #384
- refactor: make feature modules and tests uniform and ditch duplicate code by @DaniBodor in #400
Features
- feat: improve amino acid features by @DaniBodor in #272
- feat: add
test_size
equivalent ofval_size
to Trainer class by @DaniBodor in #291 - feat: add the option to have a grid box of different x,y and z dimensions by @cbaakman in #292
- feat: add early stopping to
Trainer.train
by @DaniBodor in #303 - feat: add hist module for plotting raw hdf5 files features distributions by @gcroci2 in #261
- feat: allow for different loss functions other than the default by @DaniBodor in #313
- feat: center the grids as in the old deeprank by @cbaakman in #323
- feat: add data augmentation for grids by @cbaakman in #336
- feat: insert features standardization option in
DeeprankDataset
children classes by @gcroci2 in #326 - feat: add log transformation option for plotting features' hist by @joyceljy in #389
- feat: add inter-residue contact (IRC) node features by @DaniBodor in #333
- feat: add feature module for secondary structure by @DTRademaker in #387
- feat: use dictionary for flexibly transforming and standardizing features by @joyceljy in #418
Fix
- fix: list all submodules imported from deeprankcore.features using pkgutil by @gcroci2 in #263
- fix: let
classes
argument be also categorical by @gcroci2 in #286 - fix: makes sure that the
map_feature
function can handle single value features. by @cbaakman in #289 - fix: raise exception for invalid optimizer by @DaniBodor in #307
- fix:
num_workers
parameter of Dataloader object by @gcroci2 in #319 - fix: gpu usage by @gcroci2 in #334
- fix: gpu and
entry_names
usage by @gcroci2 in #335 - fix: data generation threading locked by @gcroci2 in #330
- fix:
__hash__
circular dependency issue by @cbaakman in #341 - fix: make sure that Grid data also has target values, like graph data by @cbaakman in #347
- fix: change the internal structure of the grid data to match the graph data by @cbaakman in #352
- fix: conflicts in package by @DaniBodor in #386
- fix: correct usage of nonbond energy for close contacts by @DaniBodor in #368
- fix: Incorrect number of datapoints loaded to model by @joyceljy in #397
- fix: pytorch 2.0 by @DaniBodor in #406
- fix: covalent bonds cannot link nodes on separate branches by @DaniBodor in #408
- fix:
Trainer
error when onlydataset_test
andpretrained_model
are used by @ntxxt in #413 - fix: check PSSMs by @DaniBodor in #401
- fix: only check pssms if conservation module was used by @DaniBodor in #425
- fix: epoch number in
test()
and test on the correct model by @gcroci2 in #427 - fix: convert list of arrays into arrays before converting to Pytorch tensor by @gcroci2 in #438
Docs
- docs: add verbose arg to QueryCollection class by @gcroci2 in #267
- docs: improve
clustering_method
description and default value by @gcroci2 in #293 - docs: uniform docstrings format in modules by @joyceljy
- docs: incorrect usage of Union in Optional type hints by @DaniBodor in #370
- docs: improve docs for default exporter and results visualization by @gcroci2 in #414
- docs: update feature documentations by @DaniBodor in #419
- docs: add instructions for
GridDataset
by @gcroci2 in #421 - docs: fix getstarted hierarchy by @gcroci2 in #422
- docs: update dssp 4 install instructions by @DaniBodor in #437
- docs: change
external_distance_cutoff
andinterface_distance_cutoff
todistance_cutoff
by @gcroci2 in #246
Performances
- perf: features.contact by @DaniBodor in #220
- perf: suppress warnings in pytest and from PDBParser by @DaniBodor in #249
- perf: add try except clause to
_preprocess_one_query
method ofQueryCollection
class by @gcroci2 in #264 - perf: improve
process
speed for residue based graph building by @cbaakman in #274 - perf: add
cuda
andngpu
parameters to theTrainer
class by @gcroci2 in #311 - perf: accelerate indexing of HDF5 files by @joyceljy in #362
Style
- style: restructure deeprankcore package and subpackages by @gcroci2 in #240
- style: reorganize features/contact.py by @DaniBodor in #260
- style: add .vscode settings.json by @DaniBodor in #404
Test
- test: make sure that the grid orientation is as in the original deeprank for
ProteinProteinInterfaceAtomicQuery
by @cbaakman in #312 - test: check that the grid for residue-based protein-protein interfaces has the same center and orientation as in the original deeprank. by @cbaakman in #339
- test: improve
utils/test_graph.py
module by @gcroci2 in #420
CI
- ci: do not close stale issues or PRs by @DaniBodor in #327
- ci: remove incorrect message for stale branches by @DaniBodor in #415
- ci: automatically check markdown links by @DaniBodor in #433
New Contributors
Full Changelog: v1.0.0...v2.0.0