【问题标题】:Optimization Algorithm vs Regression Models优化算法与回归模型
【发布时间】:2016-05-23 13:58:24
【问题描述】:

目前,我正在处理预测问题。我有一个使用线性函数来表示输入和输出数据的参考。

y = po + p1.x1 + p2.x2

x1 和 x2 都是已知输入; y 是输出; p0、p1 和 p2 是系数。然后,他使用所有训练数据和最小二乘估计(LSE)方法找到最优系数(p0,p1,p2)来构建模型。

我的问题是,如果他已经使用了 LSE 算法,我可以尝试通过使用任何优化算法(例如 PSO 或 GA)来改进他的方法以尝试找到更好的系数值吗?

【问题讨论】:

  • 数据集的大小是多少?如果它不是很大,你可能有最佳解决方案。
  • 不算太大,训练用200左右,测试用50左右。有没有其他方法可以改进方法?
  • 您正在尝试最小化损失函数。对于最小二乘,它是一个二次损失函数并且具有很好的特性(可微分)。所以,是的,对于这种大小的数据集,这些系数的误差最小,这是肯定的。如果您定义了自己的难以最小化的损失函数(非凸、约束等),您可以尝试 GA 或其他启发式方法,但对于这种情况,它无济于事。如果您想进一步减少错误,您应该专注于改进您的模型(添加新变量等)。使用此模型,这就是您将得到的均方误差。
  • 感谢您的回答!到时候我会努力改进我的模型。

标签: optimization regression forecasting


【解决方案1】:

你自己回答了这个问题:

Blockquote 然后,他使用所有的训练数据和最小二乘估计 (LSE) 方法找到最优系数 (p0, p1, p2) 来构建模型。

由于线性模型很容易优化,LSE 方法获得了全局最优值(忽略细微的舍入误差和提前停止/容差误差)。在不改变模型的情况下,使用其他系数没有任何好处,独立于元启发式算法的使用,如 GA。

因此您可以修改模型,或添加其他数据(特征工程:例如两个变量的乘积;内核方法)。

尝试一件事:支持向量机。这些也是凸的,可以有效地训练(没有太多数据)。它们还被设计为与内核一起工作。另一个优势(与更复杂的模型相比:例如非凸模型):它们在泛化方面非常好,这在这里似乎很重要,因为您没有太多数据(听起来像一个非常小的数据集)。

另见@ayhan 的评论!

【讨论】:

    猜你喜欢
    • 2019-10-25
    • 1970-01-01
    • 2019-09-18
    • 2012-08-11
    • 1970-01-01
    • 2020-06-26
    • 1970-01-01
    • 2019-12-21
    • 1970-01-01
    相关资源
    最近更新 更多