【问题标题】:Convergence and regularization in linear regression classifier线性回归分类器中的收敛和正则化
【发布时间】:2017-01-05 08:53:36
【问题描述】:

我正在尝试对从 2 个点集(类 y (-1, 1))中提取的数据使用逻辑回归实现二元分类器。如下所示,我们可以使用参数a 来防止过拟合。

现在我不确定如何为 a 选择“好”值。 我不确定的另一件事是如何为这类问题选择一个“好的”收敛标准。

【问题讨论】:

  • 这不是交叉验证的问题吗?
  • @Natecat 线性回归在技术上是机器学习,但我想说的是最基本的水平
  • 收敛和正则化参数的确定没有硬性规定。您可以将数据集拆分为 3 个部分:训练、验证、测试。您可以使用具有不同 a 值和不同迭代次数的训练数据进行训练。然后你可以预测验证集,看看你的分类器在新数据上的表现如何。这提示您是否过拟合/欠拟合。一旦您在验证集上获得了良好的结果,就可以在测试集上进行预测,以获得您的分类器有多好的“真实”指标。

标签: machine-learning mathematical-optimization linear-regression


【解决方案1】:

“a”的值

选择“好”的东西是一种元回归:为 a 选择任何看起来合理的值。运行回归。再次尝试将 a 值增大或减小 3 倍。如果其中一个比原来的效果更好,请在该方向再尝试 3 倍 - 但为了便于阅读,将其从 9 倍舍入到 10 倍。

你明白了......玩它直到你进入正确的范围。除非您真的试图优化结果,否则您可能不需要将其缩小到比 3 倍更接近的程度。

数据集分区

ML 人员花了很多时间分析最佳拆分。最佳拆分很大程度上取决于您的数据空间。作为全局启发式,使用一半或更多用于训练;其余不超过一半用于测试,其余用于验证。例如,50:20:30 是 train:test:validate 的可行近似值。

再一次,你可以在某种程度上玩这个...除了错误率的任何 true 测试都是全新的数据。

收敛

这在很大程度上取决于最佳解决方案附近的经验误差空间的特性,以及靠近低梯度的局部区域。

首先要考虑的是选择一个可能是凸的并且没有平坦区域的误差函数。第二个是对所需解决方案区域中梯度的大小有一些感觉(标准化您的数据将对此有所帮助);使用它来帮助选择收敛半径;您可能也想在此处使用 3 倍缩放。最后一个是使用学习率,使其缩放到标准化数据。

这些有帮助吗?

【讨论】:

  • 感谢您的回复。我仍然不确定要尝试哪个数量级...可以是 1 到 1000 吗? 10^-3 比 1? 10^-6 到 10^-3 更现实吗?似乎有太多选择需要广泛尝试。
  • 同样,这取决于您的数据。我通常发现从平均数据值的 10^-3 范围内开始就足够了。此外,如果您的框架支持,请使用学习率衰减:例如,每 1000 次迭代将 a 减少 4%。开始时有较大的学习率会有所帮助,收敛后会更小。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-05
  • 2017-08-09
  • 2015-02-13
  • 2020-10-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多