Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Model training performance does not improve. #6

Closed
emma000730 opened this issue Mar 4, 2024 · 6 comments
Closed

Model training performance does not improve. #6

emma000730 opened this issue Mar 4, 2024 · 6 comments

Comments

@emma000730
Copy link

Hello! I downloaded your preprocessed Synapse dataset and trained according to the instructions, but the training results did not improve. What could be the reason for this?
微信图片_20240304111500

@McGregorWwww
Copy link
Collaborator

Hi, due to class-imbalance, the training of the Synapse dataset is highly unstable when using early-stopping (influenced by randomness), maybe you can change the validation interval to a smaller number, e.g., 5 or 2 or even 1 in

if epoch_num % 10 == 0:
, or enlarge the early_stop_patience.

@emma000730
Copy link
Author

Is this data too low? The best evaluation dice is 0.13395972549915314.
I modified the validation interval, but it seems it didn't help improve performance

@McGregorWwww
Copy link
Collaborator

Yes, it should be around 0.4, you can check our training logs in the weights downloading link.

@McGregorWwww
Copy link
Collaborator

Maybe you need to check whether the data is correctly processed, e.g., through visualization.

@emma000730
Copy link
Author

Thank you for your response. I have two more questions to ask: 1. The results of running another AMOS dataset are similar to yours, but the Dice score for the Synapse dataset is still around 0.15. Why is there such a difference when I move your dataset and code to my computer? Is this related to the small number of samples in the Synapse dataset? Would you give me some advice? 2. Why does the loss during training appear negative, even as large as -9 or -10?

@McGregorWwww
Copy link
Collaborator

McGregorWwww commented Mar 5, 2024

  1. It is indeed due to the small number of samples in the Synapse dataset, there are several parameters you can modify: learning rate, batchsize, larger weight of unsupervised loss, smaller accumulate_iters of DiffDW and smaller momentum of DistDW.

  2. We apply -dice as the loss rather than 1-dice, so the loss can be negative; when weighted with the class weights, it can be smaller than -1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants