Logistic回归在一个简单示例中不起作用

时间:2019-05-21 14:11:16

标签: machine-learning logistic-regression

我认为我了解逻辑回归(来自Bishop的书,第206页),但是当我执行以下简单示例时,我找不到成本函数(误差函数)的(绝对)最小值。

我的训练集由实数线上的2个点组成:1和-1,其(分类)值分别为1。0。

成本函数为s为S形函数,且总和为整个训练集:

E(w0,w1)= sum -t.log(s(w0+w1.x)-(1-t).log(1-s(w0+w1.x))

所以在我们这里是这样:

E(w0,w1)= -log(s(w0+w1))-log(1-s(w0-w1))

我找不到最小的。如果使用算法,则w1变为无穷大。

我认为w0 = 0。如果您这样认为,那么由于1-s(-w)=s(w),我们得到了

E(w1)=-2.log(s(w))

这是一个零递减函数,所以最小值是无穷大。

1 个答案:

答案 0 :(得分:0)

我认为问题在于您的函数没有全局最小值wrt w0,w1。可以用方程组证明:

dE / dw0 = exp(w1)(exp(2w0) - 1) / ((exp(w0) + exp(w1)) * (exp(w0 + w1) + 1))
dE / dw1 = (-exp(w1 + 2w0) - exp(w1) - 2exp(w0)) / ((exp(w0) + exp(w1)) * (exp(w0 + w1) + 1))

dE / dw0 = 0,当w0 = 0时。在这种情况下,dE / dw1 = 0是不可行的。

但是,如果您在损失函数中添加正则项,即Enew = E + w1^2, 您会发现最佳状态。