Genentech / jmpost

https://genentech.github.io/jmpost/
17 stars 4 forks source link

Parametric model parameterisations #258

Open gowerc opened 7 months ago

gowerc commented 7 months ago

@danielinteractive - Your original implementation of the Log-Logistic distribution used a PH representation. That is the effects of covariates and the link functions is additive to the log baseline hazard distribution.

@mercifr1 however raised the question of comparing jmpost survival only models to flexsurv & other packages and it dawned on me that these are thus not comparible as most other modelling packages use the "natural" parameterisation. For example flexsurv uses the AFT parameterisation.

For full reference flexsurv implements the following:

image (if memory serves me right Weibull is the only distribution that has the AFT and the PH property)

I believe the main benefit of using the "natural" (I'm not sure if thats the correct term but it made sense to me) parameterisation is that it means the individual patients distribution is still of the same parametric family. That is, whilst using PH log-logistic isn't incorrect it doesn't result in a known family for the patient.

That being said I'm not yet sure how easy/hard it would be for us to adopt such a change as the PH setup is pretty hard wired into our framework at the moment (though I haven't really looked into it in great detail yet).

But yer @danielinteractive just wanted to check if the use of PH for everything was intentional or if you think we should be mirroring the models used by flexsurv/survival ?

danielinteractive commented 7 months ago

Thanks @gowerc , yeah that was intentional, to keep the same overall structure for all baseline distributions. I think that might only be interesting for a future v2 or v3 to deviate from that

gowerc commented 7 months ago

I'm wondering if we should try to make this difference clearer. I mean obviously will have details about it in the vignette but I could imagine people just naively assuming that the LL is AFT as that is the convention. I guess perhaps renaming the function to LogLogisticPH() or something like that?

danielinteractive commented 7 months ago

@gowerc That would also be ok. Can also highlight it otherwise in the documentation of the LogLogistic class (in addition to the vignette)

gowerc commented 4 months ago

From todays chat it might be worth just investigating how an AFT parameterisation might work in jmpost and how much work it would be to implement.