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

How to Manually Calculate Intercept (Beta 0) and Coefficient (Beta 1) in Logistic Regression?

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

逻辑回归没有封闭形式的解决方案,但是有很多迭代方法来学习它的参数。最简单的方法之一是最速下降法,它简单地沿与梯度相反的方向迭代移动。对于一维逻辑回归,它将是:

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 是逻辑损失