Changelog¶
0.11.1¶
- bump the Pandas requirements to >= 0.24.0. This should have been done in 0.11.0
- suppress some warnings from autograd.
0.11.0¶
- Move most models (all but Pareto) to autograd for automatic differentiation of their likelihood. This results in faster (at least 3x) and more successful convergence, plus allows for some really exciting extensions (coming soon).
GammaGammaFitter,BetaGeoFitter,ModifiedBetaGeoFitterandBetaGeoBetaBinomFitterhave three new attributes:confidence_interval_,variance_matrix_andstandard_errors_params_on fitted models is not longer an OrderedDict, but a Pandas SeriesGammaGammaFittercan accept aweightsargument now.customer_lifelime_valueinGammaGammanow accepts a frequency argument.- fixed a bug that was causing
ParetoNBDFitterto generate data incorrectly.
0.10.1¶
- performance improvements to
generate_data.pyfor large datasets #195 - performance improvements to
summary_data_from_transaction_data, thanks @MichaelSchreier - Previously,
GammaGammaFitterwould have an infinite mean when itsqparameter was less than 1. This was possible for some datasets. In 0.10.1, a new argument is added toGammaGammaFitterto constrain thatqis greater than 1. This can be done withq_constraint=Truein the call toGammaGammaFitter.fit. See issue #146. Thanks @vruvora - Stop support of scipy < 1.0.
- Stop support of < Python 3.5.
0.10.0¶
BetaGeoBetaBinomFitter.fithas replacedn_custswith the more appropriately namedweights(to align with other statisical libraries). By default and if unspecified,weightsis equal to an array of 1s.- The
conditional_methods onBetaGeoBetaBinomFitterhave been updated to handle exogenously provided recency, frequency and periods. - Performance improvements in
BetaGeoBetaBinomFitter.fittakes about 50% less time than previously. BetaGeoFitter,ParetoNBDFitter, andModifiedBetaGeoFitterboth have a newweightsargument in theirfit. This can be used to reduce the size of the data (collapsing subjects with the same recency, frequency, T).
0.9.1¶
- Added a data generation method,
generate_new_datatoBetaGeoBetaBinomFitter. @zscore - Fixed a bug in
summary_data_from_transaction_datathat was casting values tointprematurely. This was solved by including a new paramfreq_multiplierto be used to scale the resulting durations. See #100 for the original issue. @aprotopopov - Performance and bug fixes in
utils.expected_cumulative_transactions. @aprotopopov - Fixed a bug in
utils.calculate_alive_paththat was causing a difference in values compared tosummary_from_transaction_data. @DaniGate
0.9.0¶
- fixed many of the numpy warnings as the result of fitting
- added optional
initial_paramsto all models - Added
conditional_probability_of_n_purchases_up_to_timetoParetoNBDFitter - Fixed a bug in
expected_cumulative_transactionsandplot_cumulative_transactions
0.8.1¶
- adding new
save_modelandload_modelfunctions to all fitters. This will save the model locally as a pickle file. observation_period_endinsummary_data_from_transaction_dataandcalibration_and_holdout_datanow defaults to the max date in the dataset, instead of current time.- improved stability of estimators.
- improve Runtime warnings.
- All fitters are now in a local file. This doesn’t change the API however.