許多問題都需要以機率估算值做為輸出結果。 邏輯迴歸是 極有效率的計算機率機制實用 您可以用以下任一種方式 使用傳回的機率 兩種方式:
套用「現狀」。舉例來說,假設垃圾郵件預測模型採用 的輸入和輸出值是
0.932
,這表示可能存在93.2%
此電子郵件為垃圾郵件。轉換為二進位類別 例如
True
、False
、Spam
或Not Spam
。
本單元著重介紹依原樣使用邏輯迴歸模型輸出內容。在 「分類」模組: 將這個輸出內容轉換為二進位類別
Sigmoid 函式
您可能會好奇邏輯迴歸模型如何確保 代表機率,一律輸出介於 0 和 1 之間的值。即時 有一系列函式,稱為邏輯函式 這些輸出內容具有相同特性標準邏輯函式 也稱為 S 函數 (sigmoid 表示「s 形」),則具有 公式:
\[f(x) = \frac{1}{1 + e^{-x}}\]
圖 1 顯示 S 函數的對應圖表。
隨著輸入內容 x
持續增加,S 函數趨近函式的輸出結果
但從未達到 1
同樣地,當輸入值減少時,S 函數
函式的輸出方法,但從未達到 0
。
按這裡即可深入瞭解數學 S 函數的後方
下表顯示 S 函數的輸出值 介於 7 到 7 之間的輸入值留意 S 函數的速度 0 代表減少負輸入值,以及 S 函數的快速度 1 代表增加正輸入值。
但無論輸入值的大小多寡 一律會大於 0 且小於 1。
輸入 | Sigmoid 輸出 |
---|---|
-7 | 0.001 |
-6 | 0.002 |
-5 | 0.007 美元 |
-4 | 0.018 美元 |
-3 | 0.047 版 |
-2 | 0.119 |
-1 | 0.269 |
0 | 0.50 |
1 | 0.731 版 |
2 | 0.881 |
3 | $0.952 美元 |
4 | $0.982 美元 |
5 | $0.993 美元 |
6 | $0.997 美元 |
7 | $0.999 美元 |
使用 S 函數轉換線性輸出
以下方程式代表物流的線性元件 迴歸模型
\[z = b + w_1x_1 + w_2x_2 + \ldots + w_Nx_N\]
其中:
- z 是線性方程式的輸出,也稱為 記錄機率:
- b 是偏誤。
- w 值是模型學到的權重。
- x 值是特定範例的特徵值。
為了取得邏輯迴歸預測結果,接著系統會將 z 值傳遞至 S 函數,會產生介於 0 和 1 之間的值 (機率):
\[y' = \frac{1}{1 + e^{-z}}\]
其中:
- y' 是邏輯迴歸模型的輸出內容。
- z 是線性輸出 (如上述公式中所示)。
按這裡瞭解詳情 對數機率
在方程式 $z = b + w_1x_1 + w_2x_2 + \ldots + w_Nx_N$, z 中 通稱為 log-odds,因為如果開頭為 以下 S 函數 (其中 $y$ 是物流的輸出結果) 代表機率的迴歸模型
$$y = \frac{1}{1 + e^{-z}}$$
然後再解 z:
$$ z = \log\left(\frac{y}{1-y}\right) $$
接著 z 會定義為機率的比率 中二者可能產生的結果:y 和 1 至 y。
圖 2 說明如何將線性輸出轉換為邏輯迴歸 產生輸出內容
在圖 2 中,線性方程式會成為 S 函數的輸入內容 讓直線彎曲形狀。請注意,線性方程式 就能輸出非常大或非常小的 z 值,但 S 函數的輸出結果 函式 (y) 一律介於 0 和 1 之間 (不含 0 和 1)。例如:橘色的 左側圖形上的 z 值為 -10,但是 S 函數 右側圖表地圖,將 -10 轉換成 y'值為 0.00004
練習:隨堂測驗
具有三個特徵的邏輯迴歸模型有下列偏誤: 重量:
\[\begin{align} b &= 1 \\ w_1 &= 2 \\ w_2 &= -1 \\ w_3 &= 5 \end{align} \]
請採用下列輸入值:
\[\begin{align} x_1 &= 0 \\ x_2 &= 10 \\ x_3 &= 2 \end{align} \]
請回答以下兩個問題。
如上方步驟 1 所示,輸入值的對數為 1。 將 z 的值插入 S 函數中:
\(y = \frac{1}{1 + e^{-z}} = \frac{1}{1 + e^{-1}} = \frac{1}{1 + 0.367} = \frac{1}{1.367} = 0.731\)