- 是否有像LOESS这样的建模技术允许零个、一个或多个不连续点,其中不连续点的时间是先验未知的?
- 如果存在一种技术,R 中是否存在现有实现?
允许不连续性的黄土
听起来您想要执行多个变化点检测,然后在每个段内进行独立平滑。(检测可以在线或不在线,但您的应用程序不太可能在线。)这方面有很多文献;互联网搜索卓有成效。
- DA Stephens 在 1994 年写了一篇关于贝叶斯变点检测的有用介绍(App. Stat. 43 #1 pp 159-178: JSTOR)。
- 最近,Paul Fearnhead 一直在做很好的工作(例如,Exact and Effective Bayesian inference for multiple changepoint questions,Stat Comput (2006) 16: 203-213: Free PDF)。
- 基于 D Barry 和 JA Hartigan 的漂亮分析,存在递归算法
- Barry & Hartigan 算法的一种实现记录在 O. Seidou & TBMJ Ourda,基于递归的多元线性回归中的多变点检测和河流流的应用, Water Res。水库,2006 年:免费 PDF。
我没有努力寻找任何 R 实现(我前段时间在 Mathematica 中编写了一个),但如果你找到了一个参考,我将不胜感激。
用 koencker 的折线回归来做,见这个小插图的第 18 页
http://cran.r-project.org/web/packages/quantreg/vignettes/rq.pdf
回应Whuber的最后评论:
这个估计器是这样定义的。
,,
,
,,
,
给出所需的分位数(即在示例中,)。指示断点的数量:for大这个估计器收缩到没有断点(对应于经典线性分位数回归估计器)。
分位数平滑样条 Roger Koenker,Pin Ng,Stephen Portnoy Biometrika,Vol。81,第 4 期(1994 年 12 月),第 673-680 页
PS:有一个开放访问工作文件,由相同的其他人同名,但它不是一回事。
这里有一些方法和相关的 R 包来解决这个问题
回归中的小波阈值估计允许不连续性。您可以使用 R 中的 wavethresh 包。
当你有不连续性时,许多基于树的方法(离小波的想法不远)很有用。因此包treethresh,包树!
在“局部最大似然”方法的家族中……除其他外:Pozhel 和 Spokoiny 的工作:自适应权重平滑(aws 包) Catherine Loader 的工作:locfit 包
我想任何具有局部变化带宽的内核都更平滑,但我不知道 R 包。
注意:我真的不明白 LOESS 和回归之间有什么区别......是 LOESS 算法应该“在线”的想法吗?
应该可以使用非线性回归函数 nls、b splines(例如 spline 包中的 bs 函数)和 ifelse 函数在 R 中编写解决方案。