什麼是機器學習中的邏輯迴歸?

已發表: 2024-10-04

邏輯迴歸是統計分析和機器學習 (ML) 的基石方法。本綜合指南將解釋邏輯迴歸的基礎知識,並討論各種類型、實際應用以及使用這種強大技術的優點和缺點。

目錄

  • 什麼是邏輯迴歸?
  • 邏輯迴歸的類型
  • 邏輯迴歸與線性迴歸
  • 邏輯迴歸的工作原理
  • 應用領域
  • 優點
  • 缺點

什麼是邏輯迴歸?

邏輯迴歸,也稱為 logit 迴歸或 logit 模型,是一種用於分類任務的監督學習演算法,特別是用於預測二元結果(即兩個可能的類別)的機率。它基於同名的統計方法,估計特定事件發生的機率。例如,邏輯迴歸可用於預測電子郵件是垃圾郵件或客戶進行購買或離開網站的可能性。

此模型評估事件的相關屬性(稱為「預測變數」或「特徵」)。例如,如果事件是“電子郵件到達”,相關屬性可能包括來源 IP 位址、寄件者電子郵件地址或內容可讀性評級。它使用邏輯函數對這些預測變數與結果機率之間的關係進行建模,其形式如下:

f (x) = 1 / ( 1 + e -x )

此函數輸出一個介於 0 和 1 之間的值,表示事件的估計機率(可能會說「這封電子郵件有 80% 可能是垃圾郵件」)。

邏輯迴歸廣泛應用於機器學習中,特別是二元分類任務。 sigmoid 函數(邏輯函數的一種)通常用於將任何二元分類模型的輸出轉換為機率。儘管邏輯回歸很簡單,但它是更複雜模型(例如神經網路)的基礎技術,其中類似的邏輯函數用於對機率進行建模。術語Logit 模型是指使用此 Logit 函數將輸入特徵對應到預測機率的模型。

使用 Grammarly 更聰明地工作
任何有工作要做的人的人工智慧寫作夥伴

邏輯迴歸的類型

邏輯迴歸主要有三種:二元迴歸、多項迴歸、序數迴歸。

二元邏輯迴歸

也稱為二元迴歸,這是邏輯迴歸的標準且最常見的形式。當邏輯迴歸一詞不帶限定詞使用時,通常指的是這種類型。 「二元」這個名字來自於這樣一個事實:它只考慮兩個結果;它可以被認為是回答是或否的問題。如果將更複雜的問題重新建構為是或否或二元問題鏈,則二元迴歸可以處理更複雜的問題。

範例:想像一下計算三個互斥選項的幾率:客戶是否會流失(即停止使用產品)、註冊免費版本的服務或註冊付費的高級版本。鍊式二元迴歸可以透過回答以下一系列問題來解決這個問題:

  • 客戶會流失嗎(是或否)?
  • 如果沒有,客戶是否會註冊免費服務(是或否)?
  • 如果沒有,客戶是否會註冊付費高級服務(是或否)?

多項邏輯迴歸

這種形式的邏輯迴歸也稱為多項迴歸,是二元迴歸的擴展,可以回答具有兩個以上潛在結果的問題。它避免了解決更複雜問題時串聯問題的需要。多項式迴歸假設計算的賠率沒有任何相互依賴性或順序,並且所考慮的選項集涵蓋了所有可能的結果。

範例:當從可用顏色清單中預測客戶可能想要購買的汽車的顏色時,多項迴歸效果很好。但是,它不適用於計算順序重要的賠率,例如評估綠色、黃色和紅色作為客戶支援問題的嚴重性標籤,其中問題始終以綠色開始,可能會升級為黃色,然後紅色(黃色始終跟隨綠色,紅色始終跟著黃色)。

序數邏輯迴歸

這種特殊形式的邏輯迴歸也稱為迴歸的比例優勢模型,專為序數值(結果之間的相對順序很重要的情況)而設計。當結果具有自然順序但類別之間的距離未知時,使用序數邏輯迴歸。

例如:它可用於計算飯店客人可能將其住宿分為五部分的可能性:非常差、差、一般、好和非常好。相對順序很重要——不好的總是比中立的更差,並且重要的是要注意評論將在規模上移動的方向。當順序很重要時,序數回歸可以量化正在計算賠率的值之間的關係(例如,它可能會檢測到不良的出現頻率往往是中性的一半)。

邏輯迴歸與線性迴歸

儘管不同,但邏輯迴歸和線性迴歸經常出現在相似的環境中,因為它們是更大的相關數學工具集的一部分。邏輯迴歸通常計算離散結果的機率,而線性迴歸計算連續結果的期望值。

例如,如果要嘗試預測未來一天最可能的溫度,線性迴歸模型將是完成這項工作的好工具。相較之下,邏輯迴歸模型嘗試計算或預測固定選擇清單中兩個或多個選項的幾率。邏輯迴歸模型可能不是預測特定溫度,而是給出特定一天落入溫暖、舒適或寒冷溫度範圍的可能性。

由於它們是為了解決不同的用例而建構的,這兩個模型對它們所預測的值的統計屬性做出了不同的假設,並使用不同的統計工具來實現。邏輯迴歸通常假設適用於離散值的統計分佈,例如伯努利分佈,而線性迴歸可能使用高斯分佈。邏輯迴歸通常需要更大的資料集才能有效運作,而線性迴歸通常對有影響力的異常值更敏感。此外,邏輯迴歸對其計算的賠率結構做出假設,而線性迴歸則對錯誤在訓練資料集中的分佈方式做出假設。

這些模型之間的差異導致它們在特定的理想用例中表現更好。邏輯迴歸在預測分類值時會更準確,而線性迴歸在預測連續值時會更準確。但這兩種技術經常相互混淆,因為它們的輸出可以透過簡單的數學計算來改變用途。邏輯迴歸模型的輸出在轉換後可以應用於與線性模型輸出相同類型的問題,從而節省訓練兩個單獨模型的成本。但它不會那麼有效;反過來也是如此。

邏輯迴歸如何運作?

作為一種監督學習演算法,邏輯迴歸依賴從註釋良好的資料集中學習。資料集通常包含與每個特徵表示的預期模型輸出相符的特徵表示清單。

為了更清楚地了解邏輯迴歸,必須先掌握以下關鍵術語:

  • 預測變數:邏輯模型在計算結果賠率時所考慮的屬性或特徵。例如,用於估計客戶購買產品的可能性的預測變數可以包括人口統計資料和瀏覽歷史記錄。
  • 特徵表示:預測變數的特定實例。例如,如果預測變數是“郵遞區號”、“州”和“收入等級”,則一個特徵表示可能是“90210”、“加州”和“75K+/年”。
  • 連結函數:迴歸模型核心的數學函數,它將預測變數與特定結果的幾率連結起來。該函數將遵循以下模式:

θ = b(μ)

其中θ是每個類別預測的幾率, b是特定函數(通常是S形函數,稱為 sigmoid), μ表示預測值(來自連續的值範圍)。

  • Logistic函數:邏輯迴歸中使用的具體連結函數,定義為

σ ( x ) =1 / ( 1 +e-x)

它將輸出標準化為 0 到 1 之間的機率,將預測變數中基於乘法的比例變化轉換為賠率中一致的加性變化。

  • Logit 函數:邏輯函數的反函數,將機率值轉換為對數賠率,這有助於解釋預測變數與結果賠率的關係。它有助於解釋預測變數如何與結果的可能性相關。它定義為:

logit p =σ ( p ) -1= ln ( p / ( 1 – p ) )

對於給定的賠率p,它執行邏輯函數的反函數。

  • 對數損失:也稱為交叉熵損失或邏輯損失,它衡量分類模型中預測機率與實際結果之間的差異。對於二元分類,通常稱為“二元交叉熵”。

邏輯迴歸過程的核心是決定使用哪個連結函數。對於二元邏輯迴歸,它始終是邏輯函數。更複雜的迴歸將使用其他類型的 sigmoid 函數;最受歡迎的 sigmoid 函數之一稱為 softmax,在 ML 模型和多項迴歸案例中經常使用。

在訓練期間,系統還將依賴損失函數,該函數計算回歸的執行情況或其擬合程度。系統的目標可以被認為是減少預測結果或幾率與現實世界中發生的事情之間的距離(有時這種距離稱為「驚喜」)。對於邏輯迴歸,損失函數是非常流行的對數損失函數的變體。

多種標準機器學習訓練演算法可用於訓練邏輯迴歸模型,包括梯度下降、最大似然估計和隨機梯度下降。

邏輯迴歸在機器學習的應用

邏輯迴歸 ML 模型通常用於分類任務,或根據部分資訊預測類別。用例跨越許多領域,包括金融、醫療保健、流行病學和行銷。兩個最著名的應用程式是垃圾郵件檢測和醫療診斷。

電子郵件垃圾郵件偵測

邏輯迴歸可以是對通訊進行分類的有效工具,例如將電子郵件識別為垃圾郵件或非垃圾郵件,儘管在複雜的情況下通常會使用更高級的方法。寄件者位址、目的地、訊息的文字內容、來源 IP 位址等(電子郵件的所有屬性)都可以標記為預測變量,並考慮給定電子郵件是垃圾郵件的可能性。電子郵件垃圾郵件過濾器工具可快速訓練和更新新電子郵件的二進位邏輯模型,並快速偵測新的垃圾郵件策略並做出反應。

垃圾郵件過濾器的更高級版本可以預處理電子郵件,使其更容易識別為垃圾郵件。例如,腳本可以針對電子郵件中寄件者的 IP 位址新增被標記為垃圾郵件的電子郵件的百分比,並且回歸可以考慮該資訊。

醫療診斷

邏輯迴歸模型通常用於輔助診斷糖尿病和乳癌等疾病。他們從醫生和醫學研究人員進行的分析中學習並建立基礎。

對於大量影像的診斷(例如癌症檢測),醫學研究人員和專業人員根據各種測試、影像和掃描建立資料集。然後,這些數據被處理並轉換成文字評估清單。可以分析影像的細節,例如像素密度、各種像素簇的數量和平均半徑等等。然後,這些測量結果將包含在預測變數清單中,其中包括其他測試和評估的結果。邏輯回歸系統向它們學習並預測患者是否可能被診斷出患有癌症。

除了高精度預測醫學診斷之外,邏輯迴歸系統還可以指示哪些測試結果與其評估最相關。這些資訊可以幫助確定新患者測試的優先順序,並加快診斷過程。

機器學習中邏輯迴歸的優勢

邏輯迴歸通常因其簡單性和可解釋性而受到青睞,特別是在需要相對快速地產生結果並且對資料的洞察很重要的情況下。

快速、實用的成果

從實務的角度來看,邏輯迴歸易於實現且易於解釋。即使數據與假設或期望不完全一致,它也能可靠地執行並提供有價值的見解。底層數學模型高效且相對易於優化,使邏輯回歸成為許多應用程式的穩健且實用的選擇。

對資料屬性的有用見解

從理論上講,邏輯回歸在二元分類任務中表現出色,並且通常對新資料進行分類非常快。它可以幫助確定哪些變數與感興趣的結果相關,從而深入了解進一步數據分析應該關注的重點。邏輯迴歸通常在簡單的用例中提供高精度;即使某些資料集的準確性降低,它仍然可以提供有關變數的相對重要性及其影響方向(正面或負面)的有意義的見解。

機器學習中邏輯迴歸的缺點

邏輯迴歸對其分析的數據做出假設,幫助底層演算法更快、更容易理解,但代價是限制了它們的有用性。它們不能用於對連續結果或非線性關係進行建模,如果與模型的關係過於複雜,則可能會失敗;如果分析太多數據,則可能會過度擬合。

僅限於離散結果

邏輯迴歸只能用於預測離散結果。如果問題需要連續預測,線性迴歸等技術更合適。

假設線性關係

該模型假設預測變數和估計賠率之間存在線性關係,這在現實世界數據中很少出現。這通常需要額外的預處理和調整以提高準確性。此外,邏輯迴歸假設可以使用簡單的線性函數做出分類決策,這可能無法反映現實場景的複雜性。因此,邏輯迴歸通常是一種近似值,可能需要定期最佳化和更新才能保持相關性。

可能無法模擬複雜的關係

如果一組預測變數與計算的賠率不存在線性關係,或者預測變數之間不夠獨立,則邏輯回歸可能無法完全發揮作用,或者可能僅檢測到線性關係的子集當系統同時具有線性和其他更複雜的屬性時。

過度擬合大型資料集

對於更大、更複雜的資料集,邏輯迴歸很容易出現過度擬合,即模型與所訓練的特定資料過於緊密地結合在一起,捕捉雜訊和次要細節而不是一般模式。這可能會導致新的、未見過的數據的性能不佳。正則化等技術可以幫助減輕過度擬合,但在將邏輯迴歸應用於複雜資料時需要仔細考慮。