使用非参数平滑回归进行交叉验证

机器算法验证 交叉验证 非参数回归
2022-03-11 08:54:57

当我使用回归模型时,我对默认线性关联的假设持怀疑态度;相反,我喜欢在使用非线性最小二乘回归估计参数模型之前,使用非参数平滑回归(例如广义加性模型lowess/lowess运行线平滑器等)探索因变量和解释变量之间关系的函数形式估计非参数模型建议的函数的参数。

考虑在这种方法的非参数平滑回归阶段执行交叉验证的好方法是什么?我想知道我是否可能会遇到这样一种情况,即在随机保留样本 A 中,由“断棍”线性铰链函数近似的关系可能很明显,而保留样本 B 提出的关系可以通过抛物线阈值铰链函数更好地近似。

是否会采取一种非详尽的方法来保留一些随机选择的数据部分,执行非参数回归,解释结果的合理函数形式,并重复这几次(人类可管理的)次数和心理上合理的函数形式?

或者是否会采取一种详尽的方法(例如 LOOCV),并使用某种算法来“平滑所有平滑”并使用最平滑的平滑来告知合理的函数形式?(尽管经过反思,我认为 LOOCV 不太可能导致非常不同的函数关系,因为足够大样本上的函数形式不太可能被单个数据点改变。)

我的应用程序通常需要人工管理数量的预测变量(例如,少数到几十个),但我的样本量从几百到几十万不等。我的目标是生成一个直观交流且易于翻译的模型,该模型可用于具有我以外的数据集的人进行预测,并且不包括结果变量。

非常欢迎参考答案。

1个回答

在我看来,您的问题有两个混淆:

  • 首先,线性(最小二乘)回归不需要自变量中的线性关系,而是参数中的线性关系。

    因此可以通过普通最小二乘法估计(是参数 , ,的线性函数),而不能(中不是线性的)。y=a+bxex+cz1+x2yabcy=a+bx+b2zyb

  • 第二,你如何从一个平滑器中确定一个“正确”的功能模型,即你如何从第 1 步到第 2 步?

    据我所知,没有办法从样条曲线、神经网络等平滑技术中推断“使用哪些回归函数”。除了可能通过绘制平滑输出并通过直觉确定关系,但这并不对我来说这听起来很健壮,而且似乎不需要为此进行平滑处理,只需要散点图。

如果您的最终目标是线性回归模型,并且您的问题是您不确切知道应该使用什么函数形式的回归量,那么您最好直接拟合正则化线性回归模型(例如LASSO)原始回归量的大基础扩展(例如回归量的多项式、指数、对数等)。然后,正则化过程应该消除不需要的回归量,为您留下一个(希望是好的)参数模型。并且您可以使用交叉验证来确定最佳惩罚参数(它决定了模型的实际自由度)。

您始终可以使用非参数回归作为泛化误差的基准,以检查您的正则化线性模型是否能像非参数平滑器一样预测外部数据。