13 个版本
0.6.3 | 2024年6月3日 |
---|---|
0.6.2 | 2024年6月3日 |
0.6.1 | 2023年5月5日 |
0.5.0 | 2023年5月2日 |
0.1.0 | 2022年12月3日 |
在 数学 类别中排名第 238
每月下载量 642
在 pcw_regrs 中使用
56KB
947 代码行
描述
此软件包允许高效地计算所有可能的多项式模型在所有(或所有从某个点开始的)数据子段上的残差误差(在最小二乘意义下)。因此它最小化 ∑ᵢ (P(xᵢ)-yᵢ)²,其中 i ∈ I,I 是 1,...,n 的子段,输入数据由 x₁,...,xₙ, y₁,...,yₙ 给出;实际上不计算多项式 P。还有一个函数可以用于计算特定数据和一些特定程度的多项式 P。然而,此功能不是本软件包的主要关注点。
也支持加权最小二乘。相关方法可以在 weighted
模块中找到。
算法
使用的算法本质上是一种基于 Givens 旋转的 QR 分解。出于数值原因,它在整个过程中使用牛顿基,这应该会带来比基于单变量基/范德蒙德矩阵的一些其他实现更好的结果,因为其条件更好。这可能在某些地方产生一些额外的运行时成本,在其他地方则节省一些。所有从 0 开始的段算法应该是 O(nd),所有段的算法应该是 O(n²d²),其中 n 是输入的大小,d 是最大多项式程度。
性能
在作者的机器(AMD Ryzen 9 5900X @ ~4.6GHz)上运行的基准测试可以在 这里 找到。
依赖
~2MB
~40K SLoC