如何在Logistic回归中手动计算截距(Beta 0)和系数(Beta 1)?

时间:2016-10-29 11:47:20

标签: machine-learning statistics regression data-mining logistic-regression

我目前正在研究Logistic回归。但是我在计算Intercept(Beta 0)和Coefficient(Beta 1)时遇到了困难。我一直在通过互联网寻找它,但只能在R中使用Microsoft Excel或内置函数获取教程。我听说它可以通过最大似然来解决,但我不明白如何使用它因为我没有统计背景。有人能给我一个关于计算Intercept(Beta 0)和Coefficient(Beta 1)的简要解释和模拟吗?

1 个答案:

答案 0 :(得分:0)

逻辑回归没有封闭的形式解决方案,但有许多迭代方法可以学习其参数。最简单的方法之一是最速下降法,它只是在与梯度相反的方向上迭代地移动。对于1D逻辑回归,它将是:

beta1_t+1 = beta1_t - alpha * SUM_(x, y) x * (s(beta1_t*x + beta0_t) - y)
beta0_t+1 = beta0_t - alpha * SUM_(x, y) (s(beta1_t*x + beta0_t) - y)

其中:

s(x) = 1 / (1 + exp(-x))

  • alpha是学习率,足够小,如0.01
  • 您的模型预测为s(beta1 * x + beta0)
  • 您的数据格式为{(x1, y1), ..., (xK, yK)}),每个yi为0或1

这是字面意思

beta_t+1 = beta_t - alpha * GRAD_theta J(beta_t)

其中J是后勤损失