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 能夠同時用於迴歸和分類模型。
資料結構
網路
關係型資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP