簡書不支持公式,原文見
https://www.yinxiang.com/everhub/note/86471059-2eac-4b64-8781-6dbd859c98ef
1. 為什么有邏輯回歸
線性模型對分類問題表達欠缺。
2. 邏輯回歸是什么
在線性回歸上增加一個sigmod函數(shù),實現(xiàn)非線性函數(shù)映射。
y = \frac{1} {1 + e^{-(w^Tx+b)}}
為了對分類問題擬合更好,要在線性回歸上增加一個單位階躍函數(shù)。
單位階躍函數(shù)
\theta(t) =
\left\{
\begin{array}{}
1,& t>0, & \\
0,& t<0, & \\
0.5,& t=0
\end{array}
\right.
但單位階躍函數(shù)不可導晴裹,引入sigmod函數(shù), sigmod函數(shù)任意階可導,有很好的數(shù)學特性救赐。
\rm sigmoid(x) = \frac{1} {1 + e^{-x}}
為什么叫邏輯回歸涧团,不叫分類
其數(shù)學原理使其有回歸性質(zhì)
- 對數(shù)幾率其實與x是線性關(guān)系
In(y/(1-y)) = w^Tx + b
- 邏輯回歸還是對函數(shù)曲線的一個擬合, 回歸到原來的線上
3. 公式推導
1. 推導損失函數(shù)
使用最大似然估計法
最大似然估計
使用已有數(shù)據(jù)去推測參數(shù), 找到那個最大可能的參數(shù)经磅。
類似拋硬幣問題泌绣,拋10次硬幣,6次正面朝上预厌,計算正面概率P阿迈。
要最大化下面這個式子(損失函數(shù))
L(\theta) = f(x1|\theta) * f(x2|\theta) * ... *f(xm|\theta)
\begin{aligned}
L(\theta=0.5)=0.5^6*(1-0.5)^4=0.21 \\
L(\theta=0.6)=0.6^6*(1-0.6)^4 = 0.25
\end{aligned}
一般通過梯度下降估計theta值。
推導過程
現(xiàn)在我們使用最大似然法轧叽,通過用m個樣本數(shù)據(jù)去估計w
令擬合函數(shù)等于
P(y=1|x) = \frac{1} {1 + e^{-(w^Tx+b)}} = \pi(x)
損失函數(shù)為
L = \prod_{i=1}^m{[\pi(x^i)]^{y^i}*[1-\pi(x^i)]^{1-y^i}}
分類問題(y=1,0)苗沧,上式兩項會消掉一項
對損失函數(shù)去對數(shù)似然(對上式取對數(shù))
因為對數(shù)函數(shù)單調(diào)遞增刊棕,當偏導
\frac{\partial(log(L))}{\partial(x)} = 0
為0,L(x)就最大待逞。
\begin{aligned}
L(w) = \sum_{i=1}^m{[y^i*log(\pi(x^i))+(1-y^i)*log(1-\pi(x^i))]} \\
L(w) = \sum_{i=1}^m{y^iwx^i - log(1+e^{wx^i})}
\end{aligned}
使用梯度下降法使L最大甥角,求得w
4. 特點
優(yōu)點
- 直接對分類可能性建模,無事先假設(shè)數(shù)據(jù)分布
- 近似概率預(yù)測识樱,結(jié)果是概率可用作排序模型
- 容易使用和解釋
- 時間內(nèi)存高效
- 可分布式嗤无,且工程化已經(jīng)成熟
- 最數(shù)據(jù)中小噪聲魯棒性好(離散化使得異常值影響小)
缺點
- 容易欠擬合牺荠,分類精度不高
- 數(shù)據(jù)特征有缺失或特征空間很大時效果不好
使用注意點
1.過擬合
- 減少特征數(shù)量翁巍,降維
- 正則化
- 逐漸減小學習率
2.線性不可分數(shù)據(jù)
- 使用核函數(shù)
- 正則化
3.輸入向量稀疏原因
- 分類特征one-hot
- 連續(xù)特征離散化
4.為什么要離散化
- 離散特征的增加減少容易 (快速迭代)
- 稀疏向量內(nèi)積乘法快
- 離散化對異常值有魯棒性(300歲->大于50歲)
- 增加表達能力(單獨權(quán)重驴一,特征交叉)
- 簡化模型休雌,降低過擬合風險
5.應(yīng)用場景
- CTR預(yù)估
- 病理診斷
- 信用評估
- 垃圾郵件分類