enable cell filter for OOM dataset and training with new data#61
Open
lidanwu wants to merge 7 commits into
Open
enable cell filter for OOM dataset and training with new data#61lidanwu wants to merge 7 commits into
lidanwu wants to merge 7 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
@jdpearce4 Nice work and thanks for making this repository public!
In this PR, I added a few features to enable running the model on Blackwell GPU chip and training/fine-tuning the existing model with new data under new assay token. Hope this would also be helpful to the community.
Below is a summary of changes.
relax version requirements for dependencies packages to work with
torchthat supports Blackwell GPU.update
AnnDatasetOOMto enable cell filtering under same control knobs (filter_outliersandmin_expressed_genes) asAnnDataset.Add
FileAwareBatchSamplerand updateAnnDatasetOOMto enable process mujltiple rows/cells from same file at once.anndataobjects under back-end mode. (3x faster in my test during training).Add
trainsubmodule with yaml config template to source code.trainis deigned toexpanded_assay_vocaband initializing its embedding based on existing assay token (Assay Embedding Init section in train config)AnnDatasetOOMdataset andFileAwareBatchSampler(use_oom_dataloaderandenable_file_aware_batching).The training capacity is also added as a subcommand for
transcriptformerCLIAll
pytestpassed undertorch==2.12.0withcuda 13.0environment. And I have verified both the inference and new training sub-comands are working expected for me.transcriptformerCLItranscriptformer trainCLIExample command to continue training with expanded assay vocab
Example command to use a config file for train directly