样条曲线可以用于预测吗?


20

我无法具体说明数据的性质,因为它是专有的,但是假设我们有这样的数据:每个月都有一些人注册一项服务。然后,在随后的每个月中,这些人可能会升级服务,中止服务或拒绝服务(例如,由于无法付款)。对于最早的数据,我们有大约2年的数据(24个月)。

每个月加入的人数很多(在100,000个范围内),而做这三件事中的任何一个的人数都在数千。但是,我们没有使用单个级别的数据(可能是数百万行),而是按月份和同类群组(每个同类群组每个月做某事的比例)汇总的数据。

我们一直在使用多元自适应回归样条(MARS)对现有数据进行建模,并发现一些有趣的结果。 但是,我担心使用这些推断或预测未来。我担心的是,对未来的预测必然超出样本空间(就时间而言),样条曲线可能会变得不稳定以进行外推。

这是合法方法吗?有什么问题可以解决?


2
当然,它们可以用于预测,但是您需要注意如何正确调整模型超参数。样条函数(恒定,线性,三次)的选择也很重要。IIRC,通常使用MARS中的线性样条函数,并且避免了外推/过度拟合的问题,避免了高阶样条。
Sycorax说恢复莫妮卡

1
您是否特别担心什么,会导致您怀疑自己一直在使用的方法?您的准确性似乎出乎意料的低,或者类似的东西?您尝试过其他方法吗?他们如何比较?
one_observation

1
@Sophologist主要是因为结和线都是基于过去的值,所以它们最终会变得不适合新的值。因此,假设线性样条曲线“ 2014年以后每年增加XXX”,则仅基于2015年的数据,但如果应用于2016年,则将沿同一方向继续。
彼得·弗洛姆

3
@PeterFlom:实际上我对您的问题非常困惑(花键在预测中非常普遍),直到我读到您对Sophologist的回答。我对您的问题进行了编辑,以帮助您准确地强调我的关注点。请查阅。
Cliff AB

2
@PeterFlom:假设我的编辑是正确的,您是否用样条曲线模拟时间的效果?如果是这样,我会很担心。但是,如果您用滞后效应对时间的影响进行建模,而使用样条曲线对其他协变量进行建模,那会不会有问题?
Cliff AB

Answers:


15

根据我对问题的解释,您要问的基本问题是您是否可以将时间建模为样条。

我将尝试回答的第一个问题是,是否可以使用样条线推断数据。简短的答案取决于它,但是在大多数情况下,样条曲线对于外推而言并不是那么好。样条线本质上是一种插值方法,它们对数据所在的空间进行分区,并且在每个分区处都适合一个简单的回归器。因此,让我们看一下MARS的方法。该MARS方法被定义为 ˚FX = Ñ Σ= 1个 α X [ ] 其中,α 是在MARS模型第i项的常数,

f^(x)=i=1nαiBi(x[i])
αi是第i项的基函数, x [ i ]表示从第i项的特征向量中选择的特征。基本函数可以是常数,也可以是铰链函数(整流器)。铰链函数只是 m a x 0 x [ i ] + c i 。铰链函数迫使模型建立分段线性函数(有趣的是,具有整流线性激活函数的神经网络可以被视为MARS模型的超集模型)。 Bix[i]
max(0,x[i]+ci)

R

f^(x)=5+max(0,x5)+2max(0,x10)

10
f^(x)=10+2(x10)=2x10
5

现在让我们回到时间序列。时间序列是机器学习中的一个非常特殊的情况。它们倾向于具有一些结构,无论是部分不变性还是许多不同类型的子结构之一,都可以利用该结构。但是需要能够利用这种结构的特殊算法,不幸的是,样条曲线不能做到这一点。

我建议您尝试一下几件事。第一个是递归网络。如果您的时间序列不那么长(并且没有长期依赖性),那么您应该能够使用简单的普通循环网络。如果您想了解正在发生的事情,则可以使用带有偏差的整流线性单位作为激活函数,这等效于对时间序列的子集和循环神经网络的“内存”进行MARS建模。持有。很难解释网络如何管理内存,但是您应该对生成的分段线性函数如何处理子空间有所了解。同样,如果您具有不属于时间序列的静态功能,则仍可以在网络中轻松使用它们。

如果您的时间序列很长并且可能具有长期依赖性,则建议使用门控循环网络之一,例如GRU或LSTM。

在时间序列分类的更经典方面,您可以使用隐藏的马尔可夫模型。我不会进一步介绍这些内容,因为我对它们不那么熟悉。

总之,出于两个原因,我不建议使用样条线。第一,它无法处理复杂的外推问题,这似乎就是您要描述的问题。第二,样条线没有利用时间序列的子结构,这在时间序列分类中可能非常强大。

希望这可以帮助。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.