Logistic Regression 中 Log Odds 的作用


简介

Logistic Regression 是一种统计方法,用于根据一个或多个自变量之间关系预测因变量。它利用 log odds,并在逻辑函数的帮助下预测事件发生的概率。它是一种分类方法。

什么是 Log Odds 以及为什么它们对 Logistic Regression 有用?

Logistic Regression 用于预测二元结果。例如,在选举中,候选人是否会获胜,短信是否是垃圾邮件等等。

Odds 是成功概率与失败概率的比率。它表示为

$$\mathrm{Odds \:=\: p\: / \:1- p}$$

其中 p = 成功概率,1 – p = 失败概率

log odds 将由以下公式给出

$\mathrm{Log \:of\: odds\: = \:log \:(p\: /\: 1 - p)}$                                                                           (1)

上述公式 (1) 是 logit 函数,表示为

将此公式拟合到一条直线上,我们得到

$\mathrm{log\frac{p}{1-p}\:=\:\beta_0x\:+\:\beta_1x}$        [Logistic Regression 公式]           (2)

$\mathrm{p\:=\:\frac{e^{\beta_0x\:+\:\beta_1x}}{1\:+\:e^{\beta_0x\:+\:\beta_1x}}}$                       (3)

失败概率可以写成

$\mathrm{1-p\:=\:\frac{1}{1\:+\:e^{\beta_0x\:+\:\beta_1x}}}$                            (4)

Log Odds 比率可以写成

$\mathrm{p/1-p\:=\:\frac{1}{1\:+\:e^{\beta_0x\:+\:\beta_1x}}\:=\:e^{\beta_0x\:+\:\beta_1x}}$                 (5)

这是 Logistic Regression 的公式。

Python 中的 Odds Ratio 示例

让我们来看以下数据。

国家1

国家2

猎豹

8

2

狮子

1

5

示例

from scipy.stats import fisher_exact as fe 
odds_ratio, p_value = fe([[8, 2], [1, 5]]) 
print(odds_ratio)

输出

20.0

Log Odds 的优点

  • Log Odds 将基于概率的 Logistic Regression 模型转换为基于似然的模型。

  • Logistic Regression 参数由最大似然估计 (MLE) 确定。

  • 它们在解决胜负、欺诈与非欺诈、垃圾邮件与非垃圾邮件等场景中非常有用。

结论

当我们需要非二元结果时,Logistic Regression 中使用 Log Odds。Log Odds 使 Logistic Regression 能够同时用于回归和分类模型。

更新于: 2022年12月30日

3K+ 浏览量

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告