liupei101 / TFDeepSurv

COX Proportional risk model and survival analysis implemented by tensorflow.
MIT License
101 stars 27 forks source link

why `batch` is not appropriate in survival analysis? #10

Closed bnuzyc91 closed 2 years ago

bnuzyc91 commented 3 years ago

@liupei101 in the dsl.py you have added this comment "Since style of batch is not appropriate in survival analysis."

Could you please advise why batch (mini-batch) training is not appropriate in survival analysis? I notice that the DeepSur (https://github.com/jaredleekatzman/DeepSurv ) also does not support the mini-batch training.

Based on my understanding, mini-batch should be suitable for any ML problem as long as we train enough epoch. Feel free to correct me if I misunderstand this.

Thank you so much!

liupei101 commented 3 years ago

To put it straightforwardly, if we dive into the loss function (partial likelihood function), survival analysis is a variant of ranking task.

Since we did not find any reference paper to support running batch training in survival analysis, the code remained as you saw.

Thx for your feedbacks! TFDeepSurv has implemented the pipeline in survival analysis, but we can easily find the shorts. We need to add functionality that supports:

In the near future, above plans will not be implemented. Sorry about it!

PRs are welcomed!

bnuzyc91 commented 3 years ago

Thank you so much for the explanation. Now I agree that mini-batch may not be a good idea for the survival analysis especially in the case of a rare event (the chance of developing the outcome is low).