Closed smilesun closed 5 months ago
One thing weird is in the error message
zoutput/slurm_logs/run_experiment/run_experiment-index=8-20094266.err-128, the listed subfolders
['neutrophil_segmented', 'myeloblast', 'monocyte', 'neutrophil_band', 'basophil', 'promyelocyte', 'eosinophil', 'myelocyte', 'metamyelocyte']
are less than the error message
zoutput/slurm_logs/run_experiment/run_experiment-index=8-20094266.err-126
['neutrophil_segmented', 'lymphocyte_neoplastic', 'myeloblast', 'promyelocyte_atypical', 'monocyte', 'lymphocyte', 'normoblast', 'plasma_cell', 'neutrophil_band', 'basophil', 'promyelocyte', 'lymphocyte_reactive', 'eosinophil', 'myelocyte', 'metamyelocyte', 'smudge_cell', 'lymphocyte_large_granular', 'hairy_cell']
I linked a PR that prints the specified classes by the user that don't correspond to subfolders. Regarding the error messages. Is it possible that those printouts are from different domains? This is the full print from my console: reading domain: matek list of subfolders ['neutrophil_segmented', 'erythroblast', 'myeloblast', 'lymphocyte_typical', 'monocyte', 'neutrophil_band', 'basophil', 'promyelocyte', 'eosinophil', 'myelocyte', 'metamyelocyte'] reading domain: mll list of subfolders ['neutrophil_segmented', 'lymphocyte_neoplastic', 'myeloblast', 'promyelocyte_atypical', 'monocyte', 'lymphocyte', 'normoblast', 'plasma_cell', 'neutrophil_band', 'basophil', 'promyelocyte', 'lymphocyte_reactive', 'eosinophil', 'myelocyte', 'metamyelocyte', 'smudge_cell', 'lymphocyte_large_granular', 'hairy_cell'].
It appears that the first print in your comment refers to the matek domain, and the second to the mll domain.
@MatteoWohlrapp , it could be i made a wrong copy paste, could you find a solution to resolve any error when running
run_benchmark_slurm.sh examples/benchmark/benchmark_blood3_resnet.yaml
?
dict_domain_folder_name2class
the key should be folder name
indeed the key value order is wrong: Merge pull request https://github.com/marrlab/DomainLab/pull/816 from marrlab/blood3 332b9f9 ·
on the helmholtz HPC cluster, running the new blood cell benchmark with
run_benchmark_slurm.sh examples/benchmark/benchmark_blood3_resnet.yaml
(the data needed for reproducing in on the cluster and available to all users)
result in zoutput/slurm_logs/run_experiment/run_experiment-index=8-20094266.err-126-list of subfolders ['neutrophil_segmented', 'lymphocyte_neoplastic', 'myeloblast', 'promyelocyte_atypical', 'monocyte', 'lymphocyte', 'normoblast', 'plasma_cell', 'neutrophil_band', 'basophil', 'promyelocyte', 'lymphocyte_reactive', 'eosinophil', 'myelocyte', 'metamyelocyte', 'smudge_cell', 'lymphocyte_large_granular', 'hairy_cell'] zoutput/slurm_logs/run_experiment/run_experiment-index=8-20094266.err-127-user provided class names: ['basophil', 'erythroblast', 'metamyelocyte', 'myeloblast', 'neutrophil_band', 'promyelocyte', 'eosinophil', 'lymphocyte_typical', 'monocyte', 'myelocyte', 'neutrophil_segmented'] zoutput/slurm_logs/run_experiment/run_experiment-index=8-20094266.err-128-subfolder names from folder: /lustre/groups/labs/marr/qscd01/datasets/240416_MLL23 ['neutrophil_segmented', 'myeloblast', 'monocyte', 'neutrophil_band', 'basophil', 'promyelocyte', 'eosinophil', 'myelocyte', 'metamyelocyte']
The above error message is from https://github.com/marrlab/DomainLab/blob/d9c8a623131e3c68871a36883b3294c93c2f5a45/domainlab/dsets/dset_subfolder.py#L151 where <= is set inclusion for Python.
The problem is simply listing two sets (in the form of lists) here makes it difficult for the user to find out which class names are wrongly specified, in addition to https://github.com/marrlab/DomainLab/blob/d9c8a623131e3c68871a36883b3294c93c2f5a45/domainlab/dsets/dset_subfolder.py#L155 we need to print out which name from the user input class names is not from the list of subfolders.
This can probably be done with 1 or 2 extra lines of code after https://github.com/marrlab/DomainLab/blob/d9c8a623131e3c68871a36883b3294c93c2f5a45/domainlab/dsets/dset_subfolder.py#L153
detailed error message: