Skip to content

Conversation

@edyoshikun
Copy link
Member

@edyoshikun edyoshikun commented Apr 15, 2025

This PR contains the code of our revised dynaCLR pipeline.

As discussed, the goal is to merge this to main so we can have DynaCell branch can depend on some of these features. Additionally, we want these features to be ready prior to the preprint update.

TODOS:

edyoshikun and others added 22 commits April 15, 2025 15:50
* caching dataloader

* caching data module

* black

* ruff

* Bump torch to 2.4.1 (#174)

* update torch >2.4.1

* black

* ruff

* adding timeout to ram_dataloader

* bandaid to cached dataloader

* fixing the dataloader using torch collate_fn

* replacing dictionary with single array

* loading prior to epoch 0

* Revert "replacing dictionary with single array"

This reverts commit 8c13f49.

* using multiprocessing manager

* add sharded distributed sampler

* add example script for ddp caching

* format and lint

* addding the custom distrb sampler to hcs_ram.py

* adding sampler to val train dataloader

* fix divisibility of the last shard

* hcs_ram format and lint

* data module that only crops and does not collate

* wip: execute transforms on the GPU

* path for if not ddp

* fix randomness in inversion transform

* add option to pop the normalization metadata

* move gpu transform definition back to data module

* add tiled crop transform for validation

* add stack channel transform for gpu augmentation

* fix typing

* collate before sending to gpu

* inherit gpu transforms for livecell dataset

* update fcmae engine to apply per-dataset augmentations

* format and lint hcs_ram

* fix abc type hint

* update docstring style

* disable grad for validation transforms

* improve sample image logging in fcmae

* fix dataset length when batch size is larger than the dataset

* fix docstring

* add option to disable normalization metadata

* inherit gpu transform for ctmc

* remove duplicate method overrride

* update docstring for ctmc

* allow skipping caching for large datasets

* make the fcmae module compatible with image translation

* remove prototype implementation

* fix import path

* Arbitrary prediction time transforms (#209)

* fix spelling in docstring and comment

* add batched zoom transform for tta

* add standalone lightning module for arbitrary TTA

* fix composition of different zoom factors

* add docstrings

* wip: segmentation module

* avoid casting

* update import path from iohub

* make integer array in fixture

* labels fixture

* test segmentation metrics modules

* less strings

* test non-empty

* select which wells to include in fit
#205

* make well selection a mixin

* wip: mmap cache data module

* support exclusion of FOVs

* wip: precompute normalization

* add augmentations benchmark

* fix cpu threads default

* fix probability (affects cpu results)

* disable metadata tracking

* fix non-distributed initialization

* refactor transforms into submodules

* wip: bootstrap and distillation

* wip: balance distillation loss

* re-define cropping transforms

* wip: joint only

* redefine random flip dict transform

* cell classification data module

* supervised cell classifier

* do not import type hints at runtime

* update docstring

* backwards compatible import path

* fix annotations

* fix style

* fix dice score import

* fix dice score parameters

* apply formatting to exercise

* fix labels data type

* fix labels input shape

---------

Co-authored-by: Eduardo Hirata-Miyasaki <[email protected]>
@ziw-liu
Copy link
Collaborator

ziw-liu commented Jun 20, 2025

Also need #260.

@ziw-liu ziw-liu merged commit 7210f6f into main Jun 23, 2025
4 checks passed
@ziw-liu ziw-liu deleted the dynaclr_v2 branch June 23, 2025 19:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking Breaking changes representation Representation learning (SSL)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Document representation evaluation functions

4 participants