Skip to content

Commit a54ad7a

Browse files
bittremieuxmelihyilmazgithub-actions[bot]wsnoblemobiusklein
authored
Release v5.0.0 (#492)
* Remove `train_from_scratch` config option (#275) Instead of having to specify `train_from_scratch` in the config file, training will proceed from an existing model weights file if this is given as an argument to `casanovo train`. Fixes #263. * Stabilize torch.topk() behavior (#290) * Add epsilon to index zero * Fix typo * Use base PyTorch for repeating along the vocabulary size * Combine masking steps * Lint with updated black version * Lint test files * Add topk unit test * Fix lint * Add fixme comment for future * Update changelog * Generate new screengrabs with rich-codex --------- Co-authored-by: Wout Bittremieux <wout@bittremieux.be> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Rename max_iters to cosine_schedule_period_iters (#300) * Rename max_iters to cosine_schedule_period_iters * Add deprecated config option unit test * Fix missed rename * Proper linting * Remove unnecessary logging * Test that checkpoints with deprecated config options can be loaded * Minor change * Add test for fine-tuning with deprecated config options * Remove deprecated hyperparameters during model loading * Include deprecated hyperparameter warning * Test whether the warning is issued * Verify that the deprecated option is removed * Fix comments * Avoid defining deprecated options twice * Remap previous renamed config option `every_n_train_steps` * Update changelog --------- Co-authored-by: melihyilmaz <yilmazmelih97@gmail.com> * Add FAQ entry about antibody sequencing * Don't crash when multiple beams have identical peptide scores (#306) * Test different beams with identical scores * Randomly break ties for beams with identical peptide score * Update changelog * Don't remove unit test * Allow csv to handle all newlines (#316) * Add 9-species model weights link to FAQ (#303) * Add model weights link * Generate new screengrabs with rich-codex * Clarify that these weights should only be used for benchmarking --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Wout Bittremieux <wout@bittremieux.be> * Add FAQ entry about antibody sequencing (#304) * Add FAQ entry about antibody sequencing * Generate new screengrabs with rich-codex --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Melih Yilmaz <32707537+melihyilmaz@users.noreply.github.com> * Allow csv to handle all newlines The `csv` module tries to handle newlines itself. On Windows, this leads to line endings of `\r\r\n` instead of `\r\n`. Setting `newline=''` produces the intended output on both platforms. * Update CHANGELOG.md * Fix linting issue * Delete docs/images/help.svg --------- Co-authored-by: Melih Yilmaz <32707537+melihyilmaz@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Wout Bittremieux <wout@bittremieux.be> Co-authored-by: William Stafford Noble <wnoble@uw.edu> Co-authored-by: Wout Bittremieux <bittremieux@users.noreply.github.com> * Don't test on macOS versions with MPS (#327) * Prepare for release v4.2.0 * Update CHANGELOG.md (#332) * implemented automatic CLI documentation generation * converted CLI doc page to markdown, added CLI doc page intro * fixed cli man page formatting bug * implemented report_gen submodule * report_gen documentation * report_gen submodule test * naming conventions * naming conventions * implemented save last checkpoint * implemented last checkpoint saving using trainer save_checkpoint instead of callback * final checkpoint file name * added final epoch number to final checkpoint name * linter rules * changed casanovo cli help message to rst for compatability with sphinx-python * implemented filter javascript * resolved linter errors * resolved more linter errors * Generate new screengrabs with rich-codex * PredictionWriter virtual class * multi prediction writer * LogPredicitonWriter wip * implemented logger io * removed report gen submodule * logger io test * logging info * implemented end of run logging * cli docuementation fixes/improvements * Generate new screengrabs with rich-codex * logger io test fix * formatting fixes * test file formatting * fixed misspelling * Restrict NumPy to pre-2.0 * Update changelog * PredictionMultiWriter s\erialization * log writer error handling * reformatting * verified skipped spectra counter * Generate new screengrabs with rich-codex * Export precursor charge as int in mzTab (#341) * implemented integer charce to comply with mztab standard * updated changelog * updated changelog * save final model using ModelCheckpoint callback * added sphinx-click dependency to pyproject.toml * implemented save model unit test * fixed test_runner save checkpoints to working directory bug * save final model test refactor * save final model changelog entry * migrated end of run report logging functionality to ms_io * cli restructured text file formatting * remove changes from model.py * Generate new screengrabs with rich-codex * moved logging utility functions to util.py * requested changes * CLI man page event handler implementation * requested changes * more requested changes * requested changes * Minor simplifications * Fix tests * End of run report logging error fix (#357) * geq bug fix * Better fix --------- Co-authored-by: Wout Bittremieux <wout@bittremieux.be> * Download weight file from URL (#349) * downlaod weights from URL * Generate new screengrabs with rich-codex * reduced size of cached URL weight file names * implemented hash cache resolution * preliminary get file from url test * hash resolition via dirname * Generate new screengrabs with rich-codex * Download weights documentation * bad URL testcase - use Datetime library for processing request headers * unit tests for setup_model, Github api mocking * github weights download resolution documentation * test_get_model_weights mac os fix * Update CHANGELOG * Generate new screengrabs with rich-codex --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Gwenneth Straub <gwennethstraub@noble103408.local> Co-authored-by: Wout Bittremieux <wout@bittremieux.be> * MzTab Validation (#362) * implemented integer charce to comply with mztab standard * updated changelog * updated changelog * Update paper reference (#361) * implemented jmztab validation steps * removed unecessary status code checks * tiny model checkpoints * upgrade codecove to v4 * fixed java command * codecov fix * seperated JMZtab validator command * syntax error fix * grep exit status handling * status code logic * export grep status code * syntax error * moved mzTab validation functionality to sh and bat scripts * Generate new screengrabs with rich-codex * git file permissions * Generate new screengrabs with rich-codex * platform specific validation * Generate new screengrabs with rich-codex * error condition test * fail output fix * remove test condition * eliminate redundant output * Generate new screengrabs with rich-codex * success output * Generate new screengrabs with rich-codex * remove if exists * Implemented jmzTab mzTab validation unit test * Generate new screengrabs with rich-codex * minor style change --------- Co-authored-by: Wout Bittremieux <bittremieux@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Save best model (#365) * save best model * save best model * updated unit tests * remove save top k config item * added save_top_k to deprecated config options * changelog entry * test case, formatting * requested changes * Eliminate evaluate Command (#359) * prediction output in model eval mode * eliminate eval command, introduce -e flag for predict command * adapted unit test to new model runner and model functionality * updated documentation * removed log and result files * Generate new screengrabs with rich-codex * Update paper reference (#361) * Bug report template (#360) * bug report template * punctuation, hardware description item * Restrict NumPy to pre-2.0 (#344) * Restrict NumPy to pre-2.0 * Update changelog * Update paper reference (#361) --------- Co-authored-by: Lilferrit <straub.gavin@gmail.com> * upgrade codecove to v4 (#364) * implemen eval mode at model runner level, fix unit test * CLI documentation * Generate new screengrabs with rich-codex * requested changes * Generate new screengrabs with rich-codex * evaluation test cases * file warnings, evaluation tests * fixed ubuntu specific test case bug * verify annotated mgf files * verify annotated mgf files * Generate new screengrabs with rich-codex * Save best model (#365) * save best model * save best model * updated unit tests * remove save top k config item * added save_top_k to deprecated config options * changelog entry * test case, formatting * requested changes * prediction output in model eval mode * eliminate eval command, introduce -e flag for predict command * adapted unit test to new model runner and model functionality * updated documentation * removed log and result files * implemen eval mode at model runner level, fix unit test * CLI documentation * Bug report template (#360) * bug report template * punctuation, hardware description item * Restrict NumPy to pre-2.0 (#344) * Restrict NumPy to pre-2.0 * Update changelog * Update paper reference (#361) --------- Co-authored-by: Lilferrit <straub.gavin@gmail.com> * requested changes * evaluation test cases * file warnings, evaluation tests * fixed ubuntu specific test case bug * verify annotated mgf files * AnnotatedSpectrumIndex type error * requested changes, changelog entry --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Wout Bittremieux <bittremieux@users.noreply.github.com> * PSM Data Class (#368) * psm data class * PepSpecMatch field naming and documentation * File IO command line options revision (#372) * file io console options * output console io options * file io options tests * changelog entry * revised changelog * file io console options * output console io options * file io options tests * changelog entry * revised changelog * Generate new screengrabs with rich-codex * requested changes * updated integration test * requested changes * Generate new screengrabs with rich-codex * requested changes, output setup refactor * ModelRunner documentation * requested changes, _setup_output unit test * ModelRunner output root bug fix, setup_model documentation, sequence output setup bug fix * Generate new screengrabs with rich-codex * logging format character * Generate new screengrabs with rich-codex --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Tensorboard io (#374) * file io console options * output console io options * file io options tests * changelog entry * revised changelog * file io console options * output console io options * file io options tests * changelog entry * revised changelog * Generate new screengrabs with rich-codex * requested changes * updated integration test * requested changes * Generate new screengrabs with rich-codex * requested changes, output setup refactor * ModelRunner documentation * requested changes, _setup_output unit test * write tensorboard to output directory * ModelRunner output root bug fix, setup_model documentation, sequence output setup bug fix * Generate new screengrabs with rich-codex * logging format character * write tensorboard to output directory * Generate new screengrabs with rich-codex --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Log optimizer and training metrics to CSV file (#376) * csv logger * optimizer metrics logger * metrics logging unit tests * config item retrieval, additional requested changes * Generate new screengrabs with rich-codex * changelog update * Generate new screengrabs with rich-codex --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Eval metrics and circular import bug fix. (#380) * eval metrics bug fix * better eval metrics bug fix * eval metrics bug fix * better eval metrics bug fix * eval stats unit test, circular import fix * log metrics unit test * removed unused import * log metrics refactor, additional log metrics test case * aa_match_batch hanles none, additional skipped spectra test cases * Log optimizer and training metrics to CSV file (#376) * csv logger * optimizer metrics logger * metrics logging unit tests * config item retrieval, additional requested changes * Generate new screengrabs with rich-codex * changelog update * Generate new screengrabs with rich-codex --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * aa_match_batch and aa_match handle None * top_match eval metrics warning * removed unused import * log metrics refactor, additional log metrics test case * aa_match_batch hanles none, additional skipped spectra test cases * aa_match_batch and aa_match handle None * top_match eval metrics warning * eval metrics bug fix * better eval metrics bug fix * eval stats unit test, circular import fix * log metrics unit test * removed unused import * log metrics refactor, additional log metrics test case * aa_match_batch hanles none, additional skipped spectra test cases * aa_match_batch and aa_match handle None * top_match eval metrics warning * removed unused import * log metrics refactor, additional log metrics test case * metrics file logging bug fix * aa_match test cases, minor aa_match refactor --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Update pytorch lightning requirement * Switched to Geometric Mean for Peptide Level Scores (#392) * switched to geometric mean for peptide level score * non zero aa score test case, changelog item * Generate new screengrabs with rich-codex * Casanovo Nextflow Workflow Documentation (#391) * nextflow documentation * nextflow nav prefix, more nextflow docs details * grammatical fixes * grammatical fixes * fixed links * Read the Docs Update to Reflect New Command Line Functionality (#390) * nextflow documentation * nextflow nav prefix, more nextflow docs details * grammatical fixes * grammatical fixes * fixed links * nextflow documentation * nextflow nav prefix, more nextflow docs details * grammatical fixes * grammatical fixes * fixed links * update Read the Docs with new functionality * rephrasing * update file formats section * updated faq note; training faq section changes * Add Casanovo-DB Functionality (#325) * begin adding tests for annotate mode * add basic test for annotate mode * added test case for annotate mode and modified method * very rough sketch of db upgrade (untested) * small upgrades to documentation * better output formatting * all tests added * remove minor debugging print statement * Generate new screengrabs with rich-codex * remove excess info logs, add monkeypatch to tests * mp fix * fix line lengths and modify test * Generate new screengrabs with rich-codex * justins requested fixes * added minor changes as requested by Wout * partial fixes requested by wout. Lots of subclassing removed * documentation fixes and starting to cleanup batching code * cleaned up on_predict_batch_end, TODOs for calc_mz * add proper calc_mz calculation with depthcharge * rough implementation * tested implementation of db search * fix for issue with 0 candidates * minor fixes added * reordered and renamed variables for consistency * casanovo-db full working version with code simplification * Generate new screengrabs with rich-codex * fix batching issues * small fixes regarding documentation, import syntax, etc. * add proteindatabase * Generate new screengrabs with rich-codex * finish proteindatabase * all comments addressed * new comments addressed * final adjustments added * minor changes regarding formatting and small efficiency boosts * changes before reformatting config * replace all occurences of "max_length" with "max_peptide_len" * added nonspecific digestion * minor comments * full branch comments addressed * Generate new screengrabs with rich-codex * updated and fixed failed tests * add mztab validation to dbsearch test * lint fix * fix integration test * fix unit tests * force fix test * clean up test_digest_fasta_enzyme * adjust test_digest_fasta_mods * allows top_match filtering for casanovo-db * change default value for protein value in PepSpecMatch * reverse issues with decoder * update test and remove logging statement * db_utils fixes * updates to dataloaders, model_runner, and model.py * near final changes for all but db_utils * line length fixes * Minor refactoring and type hint fixes * Use mask for more efficient candidate filtering * Reorder methods in logical order * Fix unit tests * Directly generate DB peptides as DataFrame * Fix type hints and line lengths * Generate new screengrabs with rich-codex * Refactor batching to avoid code repetition * More minor refactoring * Reformat with black * Minor fix * Fix output name crash * Fix AA score masking * Fix PSM export * Less verbose logging of skipped peptides * Appropriate end-of-run reporting * Fix PSM export from de novo * Generalize end-of-run reporting * Log additional information on spectra with no matching candidates * Fix linting issue * Fix some testing warnings * Log digestion settings * Reduce logging level for spectra without candidates * Round peptide masses for consistent sorting * Fox linting * Remove superfluous PSM export * Update changelog --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Wout Bittremieux <wout@bittremieux.be> * Fix Log Entry to Config File Bug (#406) * log entry to config file bug fix * Generate new screengrabs with rich-codex * file suffix fix * comprehensive configure integration test, shared file io commands\ * Generate new screengrabs with rich-codex * Minor simplification * Update changelog --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Wout Bittremieux <wout@bittremieux.be> * Upgrade dependencies with security vulnerabilities (#421) * Update docs for Casanovo-DB (#404) * Update getting_started.md image not added yet * Update cli.rst added db-search to :commands: * Update getting_started.md add svg * Update file_formats.md add information on file formats, update config print, explain accession field * add sample data and update getting_started * Generate new screengrabs with rich-codex * Fix incorrect image in getting_started.md Fix screengrabs * Generate new screengrabs with rich-codex * fixed getting_started and pruned mouse fasta * Minor edits * Fixes and updates * Generate new screengrabs with rich-codex --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Wout Bittremieux <wout@bittremieux.be> * Windows test pipeline failure on `dev` branch fix (#432) * runner unit tests fix * Output root suffix fix (#434) * output root suffix fix * clean up; changelog * _setup_output cleanup * Generate new screengrabs with rich-codex --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Reversed peptide aa scores hotfix (#417) (#435) * reverse aa scores hotfix * reverse aa scores hotfix * Migration to depthcharge v0.4.8 (#442) * Migration to depthcharge v0.4.8 (#350) * migration to depthcharge v0.4.8 * shuffling training set by default * Reformat with Black * Fix formatting again after merge * Resolve requested changes * Reformat with Black * removed invalid imports * removed to be added functionality (for now) * tensorboard logger * circular import bug * removed tensorboard unit tests * beam search decode unit tests (IP) * teast_beam_search decode test update * test_eval_metrics test update * unit tests updates * spectrum id unit tests * integration test fix * model prediction io flow fixes * PyLightning logging refactor * mgf file reader title field formatting * integration tests fix * integration tests * test_initialize_model fix * test_save_and_load_weights fix * test_save_and_load_weights_deprecated fix * test_evaluate fix, evaluate unnanotated peak file error handling * test_evaluate fix, evaluate unnanotated peak file error handling * test_eval_metrics fix * test_spectrum_id tests fix * unit tests fixes * teast_beam_search_decode fix * negative residue work around * depthcharge upgrade - all unit tests pass * pylance depthcharge compatability fix * removed scans field from dataloaders * non db functionality working * import orders, CasanovoDB psm batching * CasanovoDB unit tests * no batch made edge case * mass caclulation * CasanovoDB mass mod fixes * remove unsqueeze batch method * reduced test epochs from 20 to 15 * integration test fix * integration test fix * psm batch generator unit test * cleanup debug code * disable multi threading on linux * skip n_threads unit test * fixed double batching bug * use tokens to compare peptides --------- Co-authored-by: Daniela Klaproth-Andrade <salazar@in.tum.de> Co-authored-by: William Fondrie <fondriew@gmail.com> Co-authored-by: Lilferrit <straub.gavin@gmail.com> Co-authored-by: Gwen Straub <gwen@Gwens-MacBook-Air.local> Co-authored-by: Wout Bittremieux <bittremieux@users.noreply.github.com> * Consistently order config values * Minor refactoring data classes * Refactor data loaders and model runners * Update model * Small edits in tests * Proper linting * Fix some unit tests * Fix detokenizing * Fix linting * Minor refactoring de novo model * Refactor and simplify database search model * Fix linting * Fix PSM batching for database search * Fix reverse decoding unit test * Fix peptide detokenizing * Fix metrics logging * Fix tensor shape mismatch * Fix training-validation unit test * Fix unit test for reverse decoding * Update changelog * Reduce database test precursor mass tolerance * Fix linting --------- Co-authored-by: andradesalazar <52212483+andradesalazar@users.noreply.github.com> Co-authored-by: Daniela Klaproth-Andrade <salazar@in.tum.de> Co-authored-by: William Fondrie <fondriew@gmail.com> Co-authored-by: Lilferrit <straub.gavin@gmail.com> Co-authored-by: Gwen Straub <gwen@Gwens-MacBook-Air.local> * Log system information at start (#456) * Log system information at start * Fix peptide length logging * Switched peptide level score to product of AA scores and removed AA score adjustement step (#458) * calculate peptide score as product of AA scores * _aa_pep_score function signature, changelog * fixed documentation * Log system information at start (#456) * Log system information at start * Fix peptide length logging * Generate new screengrabs with rich-codex * changelog entry --------- Co-authored-by: Wout Bittremieux <bittremieux@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Combine N-terminal AA score with leading amino acid score (#459) * sub residue config * added test * switched to product * changelog; small change to combined score calculation * fixed changelog * updated changelog * Discard low-quality spectra with too few peaks (#455) * Rename `n_peaks` config option to `max_peaks` * Discard spectra with too few peaks Also filter low-intensity peaks _after_ intensity scaling, otherwise it's an arbitrary value coming from the input peak file. * Test spectrum preprocessing * Update changelog * Update n_peaks renaming to max_peaks in changelog * Fix linting * Fix config for unit tests * Fix tests checking for spectra with too few peaks * Fix config for min_peaks integration test * Depthcharge reverse detokinization bug work-around (#462) * reverse detokenization bug work around * added fixmes * Flexible format for scan titles (#369) * Use different scan titles in test mzML * Update tests for matching scan id These currently still fail, as expected. * Casanovo DB `replace_isoleucine_with_leucine` bug fix (#472) * replace_isoleucine_with_leucine bug fix * fixed test case * n-term mods config option fix (#475) * Db Device Fix (#477) * db-device-fix * tokens device fix * Casanovo DB Peptide Sequence Fix (#478) * keep original sequence string * added test * Casanovo DB AA Score Fix (#480) * aa score fix * calc match score unit test * calc mass type martialing * reverse aa scores fix * calc match score, rename variables * Numerically Stable Peptide Score (#483) * stable product score * numerically stable peptide scores * renaming * eliminate magic num * Casanovo DB Add Stop Token (#481) * add stop token * stop token test * Improved beam search efficiency * Improved beam search efficiency based on the latest model.py version * Speed up inference time * Fixed version * fixed version * test * test2 * test3 * new model * Update model.py and unit test * Update CHANGELOG.md * Omit stop token from reported DB search AA scores (#488) * Casanovo DB Merge N-terminal Scores with Leading AA (#489) * db merge n term score * use base class on predict batch end * Prepare for new release * Tokenizer bugfix * Fix linting * Fix detokenizing bug introduced by merge --------- Co-authored-by: Melih Yilmaz <32707537+melihyilmaz@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: melihyilmaz <yilmazmelih97@gmail.com> Co-authored-by: wsnoble <wnoble@uw.edu> Co-authored-by: Joshua Klein <mobiusklein@gmail.com> Co-authored-by: Lilferrit <straub.gavin@gmail.com> Co-authored-by: Lilferrit <gwenneth.straub@gmail.com> Co-authored-by: Gwenneth Straub <gwennethstraub@noble103408.local> Co-authored-by: justin-a-sanders <60298590+justin-a-sanders@users.noreply.github.com> Co-authored-by: Varun Ananth <varunananth1@gmail.com> Co-authored-by: andradesalazar <52212483+andradesalazar@users.noreply.github.com> Co-authored-by: Daniela Klaproth-Andrade <salazar@in.tum.de> Co-authored-by: William Fondrie <fondriew@gmail.com> Co-authored-by: Gwen Straub <gwen@Gwens-MacBook-Air.local> Co-authored-by: Nameless <59132154+NameLessEG@users.noreply.github.com>
1 parent c469bb1 commit a54ad7a

37 files changed

+7252
-2214
lines changed

.github/workflows/tests.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,11 @@ jobs:
2626
uses: actions/setup-python@v5
2727
with:
2828
python-version: "3.10"
29-
29+
- name: Set up Java
30+
uses: actions/setup-java@v3
31+
with:
32+
distribution: 'zulu'
33+
java-version: '22'
3034
- name: Install dependencies
3135
run: |
3236
python -m pip install --upgrade pip
@@ -46,3 +50,4 @@ jobs:
4650
with:
4751
token: ${{ secrets.CODECOV_TOKEN }}
4852
fail_ci_if_error: true
53+

CHANGELOG.md

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,43 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66

77
## [Unreleased]
88

9+
## [5.0.0] - 2025-07-09
10+
11+
### Added
12+
13+
- Casanovo-DB mode (`casanovo db_search`) to use Casanovo as a learned score function for sequence database searching (given a FASTA protein database).
14+
- During training, model checkpoints will be saved at the end of each training epoch in addition to the checkpoints saved at the end of every validation run.
15+
- Besides as a local file, model weights can be specified from a URL. Upon initial download, the weights file is cached for future re-use.
16+
- Training and optimizer metrics can be logged to a CSV file by setting the `log_metrics` config file option to true. The CSV file will be written to under a sub-directory of the output directory named `csv_logs`.
17+
- New configuration options for detailed control of the gradients during training (gradient accumulation, clipping).
18+
- New configuration option `min_peaks` to discard low-quality spectra with too few peaks.
19+
20+
### Changed
21+
22+
- Removed the `evaluate` sub-command, and all model evaluation functionality has been moved to the `sequence` command using the new `--evaluate` flag.
23+
- The `--output` option has been split into two options, `--output_dir` and `--output_root`.
24+
- The path suffix (extension) of `--output_root` will no longer be removed as it was with the old `--output` option.
25+
- The `--validation_peak_path` is now optional when training; if `--validation_peak_path` is not set then the `train_peak_path` will also be used for validation.
26+
- The `tb_summarywriter` config option is now a boolean config option, and if set to true the TensorBoard summary will be written to a sub-directory of the output directory named `tensorboard`.
27+
- Input peak files can now be specified as both individual file(s) and a directory.
28+
- Peptidoforms are specified using ProForma 2.0 notation by default.
29+
- DepthCharge is upgraded to the latest version 0.4.8.
30+
- The product of the raw amino acid scores is used as the peptide score, rather then the arithmetic mean.
31+
- Amino acid scores are directly reported, rather than averaged with the peptide score.
32+
- The amino acid-level score of stand-alone N-terminal modifications is combined with that of the leading N-terminal residue.
33+
- Renamed the `n_peaks` configuration option of the maximum number of peaks to retain in a spectrum to `max_peaks`.
34+
- Beam search decoding has been optimized for computational efficiency, achieving increased prediction speed.
35+
36+
### Fixed
37+
38+
- Precursor charges are exported as integers instead of floats in the mzTab output file, in compliance with the mzTab specification.
39+
- Fixed log entries written to the config file instead of the log file when running the `configure` command.
40+
41+
### Removed
42+
43+
- Removed the `save_top_k` option from the Casanovo config, the model with the lowest validation loss during training will now be saved to a fixed filename `<output_root>.best.ckpt`.
44+
- The `model_save_folder_path` config option has been removed; model checkpoints will now be saved to `--output_dir` during training.
45+
946
## [4.3.0] - 2024-12-13
1047

1148
### Fixed
@@ -260,7 +297,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
260297

261298
- Initial Casanovo version.
262299

263-
[Unreleased]: https://github.com/Noble-Lab/casanovo/compare/v4.3.0...HEAD
300+
[Unreleased]: https://github.com/Noble-Lab/casanovo/compare/v5.0.0...HEAD
301+
[5.0.0]: https://github.com/Noble-Lab/casanovo/compare/v4.3.0...v5.0.0
264302
[4.3.0]: https://github.com/Noble-Lab/casanovo/compare/v4.2.1...v4.3.0
265303
[4.2.1]: https://github.com/Noble-Lab/casanovo/compare/v4.2.0...v4.2.1
266304
[4.2.0]: https://github.com/Noble-Lab/casanovo/compare/v4.1.0...v4.2.0

0 commit comments

Comments
 (0)