【问题标题】:LBFGS for non-convex objective function用于非凸目标函数的 LBFGS
【发布时间】:2016-01-23 09:44:11
【问题描述】:

我正在使用 Scipy 的 LBFGS 实现来最小化非凸目标函数。结果还不错。但收敛状态为“ABNORMAL_TERMINATION_IN_LNSRCH”。

这可能是因为我的目标函数是非凸的吗?或者这是否意味着我的梯度(手动分析计算并作为参数传递给 Scipy 的 LBFGS)是错误的?

【问题讨论】:

  • 你的渐变很可能是错误的。非凸仅意味着通常您找不到全局最小值。
  • @cel OK.. 实际上我已经检查了我的渐变好几次了。据我所知,我不知道更好。这可能是函数不平滑的结果吗?
  • 所有标准优化例程都需要平滑的目标函数。
  • @cel - 这意味着,如果我的目标函数不平滑,可能会导致异常终止?

标签: python scipy mathematical-optimization non-convex


【解决方案1】:

一切都好。通常 L-BGFS、梯度下降是凸优化方法。这意味着您的优化函数应该有一个全局最小值并且应该是平滑的。当函数为非凸函数时,它具有不同的地形,我们将其称为局部最小值。因此,在这种情况下,当我们对非凸函数使用凸优化方法时,您的优化程序可以找到一个不是完美答案的局部最小值。

【讨论】:

    猜你喜欢
    • 2017-10-10
    • 1970-01-01
    • 2021-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-27
    • 2016-07-20
    • 1970-01-01
    相关资源
    最近更新 更多