Quantco/glum
High performance Python GLMs with all the features!
解决的问题
glum 是一个快速、以 Python 为首要设计的广义线性模型(GLM)库,提供最小二乘法、泊松回归和逻辑回归等常见统计方法的统一接口。它解决了对广泛分布支持、灵活正则化技术以及高性能的需求,尤其是在观测数远大于预测变量数(N >> K)的情况下。
工作原理
该库提供了类似 scikit-learn 的 API 用于模型拟合。支持多种分布(正态、泊松、二项、伽马、逆高斯、负二项、Tweedie)以及可自定义的链接函数。通过 formulaic 支持基于公式的模型定义,并通过 narwhals 实现与 pandas、polars 等多种数据框后端的兼容性。
适用人群
需要支持 L1、L2 和弹性网络正则化、且具备高性能 GLM 实现的数据科学家和统计学家,以及需要对未正则化模型进行经典统计推断的用户。
主要亮点
- 广泛的分布支持:包含正态、泊松、二项、伽马、逆高斯、负二项和 Tweedie 分布。
- 高性能:在 N >> K 的情况下,性能始终优于其他现代库。
- 灵活的正则化:支持 L1、L2(包括 Tikhonov 惩罚)和弹性网络正则化,并内置交叉验证以确定最优正则化路径。
- 基于公式的指定:支持
formulaic风格的模型定义,包括单调性约束。 - 后端无关:通过
narwhals与 pandas、polars 及其他数据框兼容。
相关
- 项目
- 项目
- 项目
- 项目
- 项目