【问题标题】:Optimizing weights in logistic regression ( log likelihood )优化逻辑回归中的权重(对数似然)
【发布时间】:2018-05-05 16:39:30
【问题描述】:

在逻辑回归中:

假设函数,

                   h(x) = ( 1 + exp{-wx} )^-1

where, w - 要拟合或优化的权重/参数


成本函数(-ve 对数似然函数)如下:

对于单次训练,例如 (x,y):

         l(w) = y * log ( h(x) ) + (1 - y) * log ( 1 - h(x) )

目标是在所有训练示例中最大化 l(w),从而估计 w。


问题:

考虑正面 (y=1) 训练示例多于负面 (y=0) 训练示例的情况。

为简单起见:

如果我们只考虑正面 (y=1) 示例: 算法运行:

           maximize ( l(w) )

          =>  maximize ( y * log ( h(x) ) )

          =>  maximize ( log( h(x) ) )

          =>  maximize ( h(x) ); since log(z) increases with z

          =>  maximize ( ( 1 + exp{-wx} )^-1 )

          =>  maximize ( wx );   
   since a larger wx will increase h(x) and move it closer to 1

也就是说,优化算法会尝试增加(wx),以便更好地拟合数据并增加似然度。


但是,算法似乎有可能以一种意想不到的方式增加(wx)但无论如何都不能改善解决方案(决策边界):

             by scaling w: w' = k*w  ( where k is positive constant )

我们可以在不改变解决方案的情况下增加 (k*wx)。

1) 为什么这不是问题?还是这是个问题?

2) 有人可能会争辩说,在一个正面示例多于负面示例的数据集中,该算法将尝试不断增加 ||w||。

【问题讨论】:

    标签: machine-learning classification logistic-regression supervised-learning log-likelihood


    【解决方案1】:
    1. 这有时是个问题,但通过正则化解决了
    2. 仅当类完全分离时

    如果只有 y=1,算法确实会尝试使wx 尽可能大,并且永远不会收敛。但是如果你只有一个类,你根本不需要逻辑回归。

    如果数据集不平衡(y=1 比 y=0 多),一般而言,逻辑回归将遇到没有收敛问题。

    让我们看看为什么。假设你只有 1 个负例 x_0,和 N 个相同的正例 x_1。然后对数似然看起来像

    l(w) = N * log(h(x_1)) + log(1-h(x_0))
    

    h(x) 的范围在 0 和 1 之间,因此这两个组件都以 0 为界,但从下方不受限制。

    现在,如果w 足够大并且您不断增加它,第一项将仅略微增加(因为它已经接近 0),但第二项可能会快速减少(因为log(x) 倾向于当x 接近 0 时非常快地减去无穷大)。如果无限增加wl(w) 将变为负无穷大。因此,有一个有限的w 使可能性最大化

    但有一个重要的例外。当类被某个超平面完全分开时会发生这种情况(它与类大小关系不大)。在这种情况下,第一项和第二项都趋向于0,而||w|| 趋向于无穷大。

    但如果类完全分离,您可能根本不需要逻辑回归!它的力量在于概率预测,但在完全分离的情况下,预测可能是确定性的!因此,您可以改为将 SVM 应用于您的数据。

    或者你可以解决一个正则化问题,最大化l(w)-lambda*||w||。例如,在 scikit-learn 逻辑回归中does exactly this。在这种情况下,如果l(w) 足够接近 0,则||w|| 将占主导地位,目标函数最终将在w 中减小。

    因此,目标函数中的一个小惩罚可以解决您的后顾之忧。这是一个广泛应用的解决方案,不仅在逻辑回归中,而且在线性模型(Lasso、Ridge 等)和神经网络中。

    【讨论】:

      猜你喜欢
      • 2017-08-16
      • 1970-01-01
      • 2018-09-20
      • 1970-01-01
      • 2018-06-19
      • 2018-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多