機器學習之邏輯迴歸:模型訓練

Lois發表於2020-06-27

邏輯迴歸的損失函式

線性迴歸的損失函式是平方損失。邏輯迴歸的損失函式是對數損失函式,定義如下:

\displaystyle LogLoss = \sum_{(x,y)\in D} - ylog(y') - (1-y)log(1-y')

其中:
1.(x,y)\in D 是包含很多有標籤樣本 ( x, y ) 的資料集
2.“y”是有標籤樣本中的標籤。由於這是邏輯迴歸,因此“y”的每個值必須是 0 或 1。
3.“y”是對於特徵集“X”的預測值(介於 0 和 1 之間)。
對數損失函式的方程式與 Shannon 資訊理論中的熵測量密切相關。它也是似然函式的負對數(假設“y”屬於伯努利分佈)。實際上,最大限度地降低損失函式的值會生成最大的似然估計值。

邏輯迴歸中的正則化

正則化在邏輯迴歸建模中極其重要。如果沒有正則化,邏輯迴歸的漸近性會不斷促使損失在高維度空間內達到 0。因此,大多數邏輯迴歸模型會使用以下兩個策略之一來降低模型的複雜性:
1.L_2 正則化。
2.早停法,即,限制訓練步數或學習速率。
(我們在之後的單元會討論第三個策略,即L_1正則化。)
假設您向每個樣本分配一個唯一 ID ,且將每個 ID 對映到其自己的特徵。如果您未指定正則化函式,模型會變得完全過擬合。這是因為模型會嘗試促使所有樣本的損失達到 0 但始終達不到,從而使每個指示器特徵的權重接近正無窮或負無窮。當有大量罕見的特徵組合且每個樣本中僅一個時,包含特徵組合的高維度資料會出現這種情況。
幸運的是,使用L_2或早停法可以防止出現此類問題。
總結:

  • 邏輯迴歸模型會生成機率。
  • 對數損失函式是邏輯迴歸的損失函式。
  • 邏輯迴歸被很多從業者廣泛使用。
本作品採用《CC 協議》,轉載必須註明作者和本文連結
Hacking

相關文章