当我想找到最好的超参数时,Scikit 的GridSearch是完美的。我想使用相同的理念来找到线性回归的最佳参数集,使用跨多个折叠的目标函数。如何在多个折叠上优化线性回归的参数(字面意思是 beta 和截距)?
用例(简化):
我有一个包含三年数据的数据集。我想定义什么是“所有年份都可以”的最佳线性回归。如果我将线性回归拟合到整个数据集,我将得到一个可以减少所有数据的最小二乘误差的数据。我将有效地减少错误
但是,这(min(error)
)不是我的目标。我可以在这个目标上得到一个很好的结果,仅仅是因为分类器在第 1 年和第 2 年做得很好,这足以弥补第 3 年的损失。
我实际上想要最小化的是类似于min(max(error_year_1, error_year_1, error_year_1))
.
对此的一种怪异方法是创建一个函数 f(b0, b1, b2, year1, year2, year3),它返回错误的最大值,然后使用 scipy 最小化该函数。
实际问题:有没有办法在 scikit 中做到这一点?