衡量和避免过度拟合的最佳实践?

机器算法验证 时间序列 机器学习 数据集 数据挖掘 验证
2022-03-07 21:28:34

我正在为股票市场开发自动交易系统。最大的挑战是过度拟合。您能否推荐一些资源来描述测量和避免过度拟合的方法?

我从训练/验证集开始,但验证集总是被污染。

此外,时间序列数据总是在变化,因为市场总是在变化。您如何衡量这一点并确定在看不见的数据上获得一致结果的可能性?

谢谢。

1个回答

对于模型选择中的过拟合,那么值得一读的论文是

C. Ambroise 和 GJ McLachlan,“基于微阵列基因表达数据的基因提取中的选择偏差”,PNAS,第一卷。99 号 10 6562-6566,2002 年 5 月。http: //dx.doi.org/10.1073/pnas.102102699

有关模型选择中出现的同类问题的讨论,请参见

GC Cawley,NLC Talbot,“关于模型选择中的过度拟合和性能评估中的后续选择偏差”,机器学习研究杂志,11(7 月):2079-2107,2010。http://jmlr.csail.mit 。 edu/papers/v11/cawley10a.html

解决验证集被污染问题的方法是使用嵌套交叉验证,因此用于对模型进行选择的方法在用于性能估计的交叉验证的每一折中独立执行。本质上,性能估计必须估计整个模型拟合过程(拟合模型、特征选择、模型选择,一切)的性能。

另一种方法是成为贝叶斯。每当您基于有限的数据样本优化标准时,就会引入过拟合的风险,因此如果您边缘化(整合)而不是优化,那么经典的过拟合是不可能的。但是,您确实有指定先验的问题。