Releases: Quantco/glum
Releases · Quantco/glum
glum 2.1.1
2.1.1 - 2022-07-01
Other:
- We are now building the wheel for PyPI without
--march=nativeto make it more portable across architectures.
glum 2.1.0
2.1.0 - 2022-06-27
New features:
- Added
aic,aiccandbicattributes toGeneralizedLinearRegressor. These attributes provide the information criteria based on the training data and the effective degrees of freedom of the maximum likelihood estimate for the model's parameters. GeneralizedLinearRegressor.std_errorsandGeneralizedLinearRegressor.covariance_matrixnow accept data frames with categorical data.
Bug fixes:
- The
scoremethod ofGeneralizedLinearRegressorandGeneralizedLinearRegressorCVnow accepts offsets. - Fixed the calculation of the information matrix for the Binomial distribution with logit link, which affected non-robust standard errors.
Other:
- The CI now runs daily unit tests against the nightly builds of numpy, pandas and scikit-learn.
- The minimally required version of tabmat is now 3.1.0.
glum 2.0.3
2.0.3 - 2021-11-05
Other:
- We are now specifying the run time dependencies in
setup.py, so that missing dependencies are automatically installed from PyPI when installingglumvia pip.
glum 2.0.2
Bug fix:
- Fixed the sign of the log likelihood of the Gaussian distribution (not used for fitting coefficients).
- Fixed the wide benchmarks which had duplicated columns (categorical and numerical).
Other:
- The CI now builds the wheels and upload to pypi with every new release.
- Renamed functions checking for qc.matrix compliance to refer to tabmat.
glum 2.0.1
2.0.1 - 2021-10-11
Bug fix:
- Fixed pyproject.toml. We now support installing through pip and pep517.
glum 2.0.0
Breaking changes:
- Renamed the package to
glum!!! Hurray! Celebration. GeneralizedLinearRegressorandGeneralizedLinearRegressorCVlose thefit_dispersionparameter.
Please use thedispersionmethod of the appropriate family instance instead.- All functions now use
sample_weightas a keyword instead ofweights, in line with scikit-learn. - All functions now use
dispersionas a keyword instead ofphi. - Several methods
GeneralizedLinearRegressorandGeneralizedLinearRegressorCVthat should have been private have had an underscore prefixed on their names:tear_down_from_fit,_set_up_for_fit,_set_up_and_check_fit_args,_get_start_coef,_solveand_solve_regularization_path. glum.GeneralizedLinearRegressor.report_diagnosticsandglum.GeneralizedLinearRegressor.get_formatted_diagnosticsare now public.
New features:
- P1 and P2 now accepts 1d array with the same number of elements as the unexpanded design matrix. In this case,
the penalty associated with a categorical feature will be expanded to as many elements as there are levels,
all with the same value. ExponentialDispersionModelgains adispersionmethod.BinomialDistributionandTweedieDistributiongain alog_likelihoodmethod.- The
fitmethod ofGeneralizedLinearRegressorandGeneralizedLinearRegressorCV
now saves the column types of pandas data frames. GeneralizedLinearRegressorandGeneralizedLinearRegressorCVgain two properties:family_instanceandlink_instance.GeneralizedLinearRegressor.std_errorsandGeneralizedLinearRegressor.covariance_matrixhave been added and support non-robust, robust (HC-1), and clustered
covariance matrices.GeneralizedLinearRegressorandGeneralizedLinearRegressorCVnow acceptfamily='gaussian'as an alternative tofamily='normal'.
Bug fix:
- The
scoremethod ofGeneralizedLinearRegressorandGeneralizedLinearRegressorCVnow accepts data frames. - Upgraded the code to use tabmat 3.0.0.
Other:
- A major overhaul of the documentation. Everything is better!
- The methods of the link classes will now return scalars when given scalar inputs. Under certain circumstances, they'd return zero-dimensional arrays.
- There is a new benchmark available
glm_benchmarks_runbased on the Boston housing dataset. See here. glm_benchmarks_analyzenow includesoffsetin the index. See here.glmnet_pythonwas removed from the benchmarks suite.- The innermost coordinate descent was optimized. This speeds up coordinate descent dominated problems like LASSO by about 1.5-2x. See here.
quantcore.glm 1.5.1
1.5.1 - 2021-07-22
Bug fix:
- Have the
linear_predictorandpredictmethods ofGeneralizedLinearRegressorandGeneralizedLinearRegressorCVhonor the offset whenalphaisNone.
quantcore.glm 1.5.0
1.5.0 - 2021-07-15
New features:
- The
linear_predictorandpredictmethods ofquantcore.glm.GeneralizedLinearRegressorandquantcore.glm.GeneralizedLinearRegressorCVgain analphaparameter (in complement toalpha_index). Moreover, they are now able to predict for multiple penalties.
Other:
- Methods of
Linknow consistently return NumPy arrays, whereas they used to preserve pandas series in special cases. - Don't list
sparse_dot_mklas a runtime requirement from the conda recipe. - The minimal NumPy pin should be dependent on the NumPy version in
hostand not fixed to1.16.
quantcore.glm 1.4.3
1.4.3 - 2021-06-25
Bug fix:
copy_X = Falsewill now raise a value error whenXhas dtypeint32orint64. Previously, it would only raise for dtypeint64.
quantcore.glm 1.4.2
1.4.2 - 2021-06-15
Tutorials and documenation improvements:
- Adding tutorials to the documentation
- Additional documentation improvements
Bug fix:
- Verbose progress bar now working again.
Other:
- Small improvement in documentation for the
alpha_indexargument to :func:quantcore.glm.GeneralizedLinearRegressor.predict. - Pinned pre-commit hooks versions.