如何在逻辑回归中手动计算截距(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
是逻辑损失
我目前正在研究逻辑回归。但是我在计算截距(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
是逻辑损失