機器學習入門(七)之----logistic回歸(回歸函數與概率模型)


Toast to the ones here today,

Toast to the ones we lost on the way。

現在我們討論分類問題。主要關注目標變量為0,1的二分類問題,1為正例,0為負例。目標變量在分類問題中又稱為標簽。

logistic回歸函數與概率模型

我們用之前回歸的方法來做分類最大的問題在於預測值小於0或者大於1都是無意義的。為此我們添加如下約束,將它限制在0到1之間,

\[\begin{equation} h_{\theta}(x)=g\left(\theta^{T} x\right)=\frac{1}{1+e^{-\theta^{T} x}} \end{equation} \]

\[g\left( x_1\right)=\frac{1}{1+e^{- x_1}} \]

其中稱為logistic函數,或者sigmoid函數。函數長這樣,

對$g\left( x_1\right) $ 不同選擇會導致不同算法,以后我們會看到這個選擇是非常自然的。關於這個函數的導數有如下性質,

\[\begin{equation} \begin{aligned} g^{\prime}(z) &=\frac{d}{d z} \frac{1}{1+e^{-z}} \\ &=\frac{-1}{\left(1+e^{-z}\right)^{2}}\frac{d}{d z}\left(e^{-z}\right) \\ &=\frac{1}{\left(1+e^{-z}\right)^{2}}\left(e^{-z}\right) \\ &=\frac{1}{\left(1+e^{-z}\right)} \cdot\left(1-\frac{1}{\left(1+e^{-z}\right)}\right) \\ &=g(z)(1-g(z)) \end{aligned} \end{equation} \]

現在有了logistic回歸模型,怎樣擬合他的參數呢?我們先給它一個概率模型,用最大似然法來擬合參數,假設給定$ x$ 標簽滿足二項分布,且輸出0,1之間的值為標簽為1的概率,則有,

\[\begin{equation} \begin{aligned} P(y=1 | x ; \theta) &=h_{\theta}(x) \\ P(y=0 | x ; \theta) &=1-h_{\theta}(x) \end{aligned} \end{equation} \]

即我們假設它的預測值是樣本為正例的概率值。這兩個等式子可以統一起來等價地,有,

\[\begin{equation} p(y | x ; \theta)=\left(h_{\theta}(x)\right)^{y}\left(1-h_{\theta}(x)\right)^{1-y} \end{equation} \]

對於一批獨立樣本,我們有,

\[\begin{aligned} L(\theta) &=p(\vec{y} | X ; \theta) \\ &=\prod_{i=1}^{n} p\left(y^{(i)} | x^{(i)} ; \theta\right) \\ &=\prod_{i=1}^{n}\left(h_{\theta}\left(x^{(i)}\right)\right)^{y^{(i)}}\left(1-h_{\theta}\left(x^{(i)}\right)\right)^{1-y^{(i)}} \end{aligned} \]

老規矩,要最大化下式給出的對數似然函數,

\[\begin{aligned} \ell(\theta) &=\log L(\theta) \\ &=\sum_{i=1}^{n} y^{(i)} \log h\left(x^{(i)}\right)+\left(1-y^{(i)}\right) \log \left(1-h\left(x^{(i)}\right)\right) \end{aligned} \]

logistic回歸更新公式

和求線性回歸問題時用梯度下降最小化損失函數一樣,我們在此用梯度上升最大化對數似然函數(因此是加號),

\[\begin{equation} \theta :=\theta+\alpha \nabla_{\theta} \ell(\theta) \end{equation} \]

還是先只考慮一個樣本$ (x,y)$ ,求梯度,

\[\begin{equation} \begin{aligned} \frac{\partial}{\partial \theta_{j}} \ell(\theta) &=\left(y \frac{1}{g\left(\theta^{T} x\right)}-(1-y) \frac{1}{1-g\left(\theta^{T} x\right)}\right) \frac{\partial}{\partial \theta_{j}} g\left(\theta^{T} x\right) \\ &=\left(y \frac{1}{g\left(\theta^{T} x\right)}-(1-y) \frac{1}{1-g\left(\theta^{T} x\right)}\right) g\left(\theta^{T} x\right)\left(1-g\left(\theta^{T} x\right)\right) \frac{\partial}{\partial \theta_{j}} \theta^{T} x \\ &=\left(y\left(1-g\left(\theta^{T} x\right)\right)-(1-y) g\left(\theta^{T} x\right)\right) x_{j} \\ &=\left(y-h_{\theta}(x)\right) x_{j} \end{aligned} \end{equation} \]

第二個等式用到sigmoid函數導數性質。因此,有如下參數更新公式,

\[\begin{equation} \theta_j :=\theta_j+\alpha \left(y-h_{\theta}(x)\right) x_{j} \end{equation} \]

我們可以看到形式上更新公式和線性回歸的一模一樣。但這里要注意,假設函數是不同的兩個函數。但這多少還是讓人感到有些驚訝的。這到底是巧合,還是有更背后更深層的原因。我們在廣義線性模型那里將會揭曉答案。

img

機器學


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM