文章轉(zhuǎn)載自Google,最近更新:2018-07-26
Google上線了一個“機器學(xué)習(xí)速成課程”,英文簡稱MLCC。這個課程節(jié)奏緊湊、內(nèi)容實用。課程基本可以全程中文(包括視頻),免費,并且有相關(guān)的練習(xí).
如果可以翻墻的小伙伴,可以看看,鏈接如下:機器學(xué)習(xí)速成課程
具體內(nèi)容如下:
1.邏輯回歸 (Logistic Regression):計算概率
許多問題需要將概率估算值作為輸出。邏輯回歸是一種極其高效的概率計算機制。實際上,您可以通過下兩種方式之一使用返回的概率:
- “按原樣”
- 轉(zhuǎn)換成二元類別。
我們來了解一下如何“按原樣”使用概率。假設(shè)我們創(chuàng)建一個邏輯回歸模型來預(yù)測狗在半夜發(fā)出叫聲的概率。我們將此概率稱為: p(bark | night)
如果邏輯回歸模型預(yù)測 p(bark | night) 的值為 0.05,那么一年內(nèi),狗的主人應(yīng)該被驚醒約 18 次:
startled = p(bark | night) * nights
18 ~= 0.05 * 365
在很多情況下,您會將邏輯回歸輸出映射到二元分類問題的解決方案,該二元分類問題的目標是正確預(yù)測兩個可能的標簽(例如,“垃圾郵件”或“非垃圾郵件”)中的一個。之后的單元會重點介紹這一內(nèi)容。
您可能想知道邏輯回歸模型如何確保輸出值始終落在 0 和 1 之間。巧合的是,S 型函數(shù)生成的輸出值正好具有這些特性,其定義如下:

S 型函數(shù)會產(chǎn)生以下曲線圖:

圖 1:S 型函數(shù)。
如果 z 表示使用邏輯回歸訓(xùn)練的模型的線性層的輸出,則 S 型(z) 函數(shù)會生成一個介于 0 和 1 之間的值(概率)。用數(shù)學(xué)方法表示為:

其中:
- y' 是邏輯回歸模型針對特定樣本的輸出。
- z 是 b + w1x1 + w2x2 + … wNxN
- “w”值是該模型學(xué)習(xí)的權(quán)重和偏差。
- “x”值是特定樣本的特征值。
請注意,z 也稱為對數(shù)幾率,因為 S 型函數(shù)的反函數(shù)表明,z 可定義為標簽“1”(例如“狗叫”)的概率除以標簽“0”(例如“狗不叫”)的概率得出的值的對數(shù):

以下是具有機器學(xué)習(xí)標簽的 S 型函數(shù):

以下內(nèi)容是邏輯回歸推斷計算,具體如下:
假設(shè)我們的邏輯回歸模型具有學(xué)習(xí)了下列偏差和權(quán)重的三個特征:
- b = 1
- w1 = 2
- w2 = -1
- w3 = 5
進一步假設(shè)給定樣本具有以下特征值:
- x1 = 0
- x2 = 10
- x3 = 2
因此,對數(shù)幾率:

將是: (1) + (2)(0) + (-1)(10) + (5)(2) = 1
因此,此特定樣本的邏輯回歸預(yù)測值將是 0.731:

關(guān)鍵字詞
1)二元分類 (binary classification)
一種分類任務(wù),可輸出兩種互斥類別之一。例如,對電子郵件進行評估并輸出“垃圾郵件”或“非垃圾郵件”的機器學(xué)習(xí)模型就是一個二元分類器。
2)邏輯回歸 (logistic regression)
一種模型,通過將 S 型函數(shù)應(yīng)用于線性預(yù)測,生成分類問題中每個可能的離散標簽值的概率。雖然邏輯回歸經(jīng)常用于二元分類問題,但也可用于多類別分類問題(其叫法變?yōu)?strong>多類別邏輯回歸或多項回歸)。
3)S 型函數(shù) (sigmoid function)
一種函數(shù),可將邏輯回歸輸出或多項回歸輸出(對數(shù)幾率)映射到概率,以返回介于 0 到 1 之間的值。S 型函數(shù)的公式如下:

在邏輯回歸問題中,σ 非常簡單:

換句話說,S 型函數(shù)可將 σ 轉(zhuǎn)換為介于 0 到 1 之間的概率。在某些神經(jīng)網(wǎng)絡(luò)中,S 型函數(shù)可作為激活函數(shù)使用。
2.模型訓(xùn)練
邏輯回歸的損失函數(shù)
線性回歸的損失函數(shù)是平方損失。邏輯回歸的損失函數(shù)是對數(shù)損失函數(shù),定義如下:

其中:
- (xy)?D 是包含很多有標簽樣本 (x,y) 的數(shù)據(jù)集。
- “y”是有標簽樣本中的標簽。由于這是邏輯回歸,因此“y”的每個值必須是 0 或 1。
- “y'”是對于特征集“x”的預(yù)測值(介于 0 和 1 之間)。
對數(shù)損失函數(shù)的方程式與 Shannon 信息論中的熵測量密切相關(guān)。它也是似然函數(shù)的負對數(shù)(假設(shè)“y”屬于伯努利分布)。實際上,最大限度地降低損失函數(shù)的值會生成最大的似然估計值。
邏輯回歸中的正則化
正則化在邏輯回歸建模中極其重要。如果沒有正則化,邏輯回歸的漸近性會不斷促使損失在高維度空間內(nèi)達到 0。因此,大多數(shù)邏輯回歸模型會使用以下兩個策略之一來降低模型復(fù)雜性:
- L2 正則化。
- 早停法,即,限制訓(xùn)練步數(shù)或?qū)W習(xí)速率。
(我們會在之后的單元中討論第三個策略,即 L1 正則化。)
假設(shè)您向每個樣本分配一個唯一 ID,且將每個 ID 映射到其自己的特征。如果您未指定正則化函數(shù),模型會變得完全過擬合。這是因為模型會嘗試促使所有樣本的損失達到 0 但始終達不到,從而使每個指示器特征的權(quán)重接近正無窮或負無窮。當有大量罕見的特征組合且每個樣本中僅一個時,包含特征組合的高維度數(shù)據(jù)會出現(xiàn)這種情況。
幸運的是,使用 L2 或早停法可以防止出現(xiàn)此類問題。
總結(jié):
- 邏輯回歸模型會生成概率。
- 對數(shù)損失函數(shù)是邏輯回歸的損失函數(shù)。
- 邏輯回歸被很多從業(yè)者廣泛使用。
關(guān)鍵字詞
1)早停法 (early stopping)
一種正則化方法,涉及在訓(xùn)練損失仍可以繼續(xù)減少之前結(jié)束模型訓(xùn)練。使用早停法時,您會在基于驗證數(shù)據(jù)集的損失開始增加(也就是泛化效果變差)時結(jié)束模型訓(xùn)練。
2)對數(shù)損失函數(shù) (Log Loss)
二元邏輯回歸中使用的損失函數(shù)。
3)L2 損失函數(shù) (L? loss)
請參閱平方損失函數(shù)。
3)L2 正則化 (L? regularization)
一種正則化,根據(jù)權(quán)重的平方和來懲罰權(quán)重。L2 正則化有助于使離群值(具有較大正值或較小負值)權(quán)重接近于 0,但又不正好為 0。(與 L1 正則化相對。)在線性模型中,L2 正則化始終可以改進泛化。
4)L1 正則化 (L? regularization)
一種正則化,根據(jù)權(quán)重的絕對值的總和來懲罰權(quán)重。在依賴稀疏特征的模型中,L1 正則化有助于使不相關(guān)或幾乎不相關(guān)的特征的權(quán)重正好為 0,從而將這些特征從模型中移除。與 L2 正則化相對。