Open Username159 opened 1 year ago
Hey @Username159,
GammaGammaFitter.fit()
is a pre-fork legacy function from lifetimes
; development ceased on that library 3 years ago.
I no longer maintain btyd
because I've transitioned these efforts to the pymc-marketing
project. I advise you to pip install
and use the Gamma-Gamma model in that library instead:
https://github.com/pymc-labs/pymc-marketing
Here's a comparative notebook:
https://www.pymc-marketing.io/en/latest/notebooks/clv/gamma_gamma.html
Hi,
I want to pass custom bound values to the scipy.optimize.minimuze function in the GammaGammaFitter.fit() function, but I get the following error: btyd.fitters.BaseFitter._fit() got multiple values for keyword argument 'bounds'.
A small, simplified example to replicate this error would be:
I need this feature to avoid problems with GammaGammaFitter.conditional_expected_average_profit() and GammaGammaFitter.customer_lifetime_value(). For my data I need a higher penalizer_coef which results in a q smaller than 1. Which then leads to negative CLV outputs. When I set q_constraint = True (meaning bounds=((None, None), (0.0, None), (None, None))) , I get q=1.0 as a parameter, which leads to nan values in GammaGammaFitter.conditional_expected_average_profit() and GammaGammaFitter.customer_lifetime_value(), so I want to "force" q to be bigger than 1.0 with custom bounds.