过度拟合最初是统计学数据挖掘领域中的概念,如今在机器学习、量化策略领域里有着重要地位。
首先,什么是“拟合”?拟合指在训练集上训练模型,使模型的预测结果和已知数据相符。通俗地讲,拟合就是指定一个量化策略模型。
当一个量化策略模型在确定了基本投资框架和交易规则后,还需要将策略中的参数进行细调和优化,进一步提高收益并降低波动率,在这个细调优化的过程中,就容易发生“过度拟合”。
参数调优是优化的主要方法之一,其中包括调整参数值和增减参数数量。比如将原参数“亏损15%止损”调整为“亏损10%止损”,增加参数“上穿25日均线买入”等,如果在参数设置调整后,该策略模型的回溯测试表现更好,那么就会保留这个新的参数设置。
然而,当这个根据样本数据进行参数调优后的策略模型,在对样本外的数据进行测试时效果并不佳,这就是过度拟合。专业概念上讲,过度拟合就是指在调试一个复杂策略模型时,使用或调整了过多参数,导致根据回测样本训练出来的模型对样本外的数据预测效果很差。简单而言,策略模型在拟合后,回溯测试表现很好,但到了实盘执行就不灵了。
我们将产生过度拟合的原因一般总结为:训练样本数据不够、模型过度训练(使用过多的参数,导致策略模型在训练集外数据的预测效果并不好)。
策略模型过度拟合的一些征兆表现为:
1. 使用奇怪的筛选阀值。比如市盈率在2.05到12.61之间等;
2. 参数过于复杂,参数的数量级接近甚至超过样本的数量级;
3. 不能解决广泛的问题,只在特定范围内有效。
所以相对的,避免过度拟合的方法包括:
1. 增加数据集;我们要采取大量的历史数据来测试,如果测试数据过少,即使我们的策略在样本内的表现非常好,那么也不具备说服力;
2. 使用一些方法比如Early Stopping、正则化、Dropout来避免模型过度训练。
首先,什么是“拟合”?拟合指在训练集上训练模型,使模型的预测结果和已知数据相符。通俗地讲,拟合就是指定一个量化策略模型。
当一个量化策略模型在确定了基本投资框架和交易规则后,还需要将策略中的参数进行细调和优化,进一步提高收益并降低波动率,在这个细调优化的过程中,就容易发生“过度拟合”。
参数调优是优化的主要方法之一,其中包括调整参数值和增减参数数量。比如将原参数“亏损15%止损”调整为“亏损10%止损”,增加参数“上穿25日均线买入”等,如果在参数设置调整后,该策略模型的回溯测试表现更好,那么就会保留这个新的参数设置。
然而,当这个根据样本数据进行参数调优后的策略模型,在对样本外的数据进行测试时效果并不佳,这就是过度拟合。专业概念上讲,过度拟合就是指在调试一个复杂策略模型时,使用或调整了过多参数,导致根据回测样本训练出来的模型对样本外的数据预测效果很差。简单而言,策略模型在拟合后,回溯测试表现很好,但到了实盘执行就不灵了。
我们将产生过度拟合的原因一般总结为:训练样本数据不够、模型过度训练(使用过多的参数,导致策略模型在训练集外数据的预测效果并不好)。
策略模型过度拟合的一些征兆表现为:
1. 使用奇怪的筛选阀值。比如市盈率在2.05到12.61之间等;
2. 参数过于复杂,参数的数量级接近甚至超过样本的数量级;
3. 不能解决广泛的问题,只在特定范围内有效。
所以相对的,避免过度拟合的方法包括:
1. 增加数据集;我们要采取大量的历史数据来测试,如果测试数据过少,即使我们的策略在样本内的表现非常好,那么也不具备说服力;
2. 使用一些方法比如Early Stopping、正则化、Dropout来避免模型过度训练。