邏輯迴歸--分類問題【機器學習】

邏輯迴歸定義

邏輯迴歸(Logistic Regression)是一種用於解決二分類(0 or 1)問題的機器學習方法,用於估計某種事物的可能性。比如某用戶購買某商品的可能性,某病人患有某種疾病的可能性,垃圾郵件的分類等等,以及某廣告被用戶點擊的可能性等。但這裏的可能性與數學上的概率不一樣。

問題引入

對於腫瘤是惡性還是良性的分類,我們得出一下模型
在這裏插入圖片描述
從上圖可以看到,在現在的情況下,當hθ(x)>=0.5h_\theta(x) >= 0.5的時候,我們認爲腫瘤是惡性的,這裏我們會得到完全一樣的結果,正確率達到100%。但是當我們的數據變成下圖這樣的時候
在這裏插入圖片描述
我們仍然認爲0.5是一個閾值,那麼此時模型對結果的預測的性能將會表現得很差。說明我們不能用簡單的直線對數據進行分類。

邏輯迴歸

分類問題我們可以將其轉化爲數值的計算問題,我們根據計算得到的數值對數據進行分類,我們要求
0<=hθ(x)<=10 <= h_\theta(x) <= 1
從而我們認爲當0<=hθ(x)<0.50 <= h_\theta(x) < 0.5的時候,y=0y = 0;當0.5<=hθ(x)<=10.5 <= h_\theta(x) <= 1的時候,y=1y = 1;這樣便將數據分爲兩類。滿足條件的邏輯迴歸函數爲
g(z)=11+ezg(z) = \frac{1}{1 + e^{-z}}
從而
hθ(x)=g(θTx)=11+eθTxh_\theta(x) = g(\theta^Tx) = \frac{1}{1 + e^{-\theta^Tx}}
在這裏插入圖片描述
我們最後分類的根據是
在這裏插入圖片描述
對應特徵變量來說,其幾何意義是非常明顯的
在這裏插入圖片描述

邏輯函數的推導

要理解下面的過程,要對概率的知識有一定的理解.
我們用到的邏輯函數爲
y=11+ezy = \frac{1}{1 + e^{-z}}
在這裏插入圖片描述
若y >= 0.5被歸爲1的類,y < 0.5被歸爲0這類,根據概率論知識,有
P(Y=1X)=ez1+ezP(Y = 1|X) = \frac{e^z}{1 + e^z}
P(Y=0X)=11+ezP(Y = 0|X) = \frac{1}{1 + e^z}
所以
logP(Y=1X)1P(Y=1X)=z=&gt;p1p=ez=&gt;1pp=ez=&gt;p=11+ezlog\frac{P(Y = 1|X)}{1 - P(Y = 1|X)} = z =&gt; \frac{p}{1 - p} = e^z =&gt; \frac{1 - p}{p} = e^{-z} =&gt; p = \frac{1}{1 + e^{-z}}

損失函數的設置

我們這裏的損失函數與線性迴歸的損失函數設置有很大的不同,由於我們的範圍是在0-1之間的,我們使用的損失函數爲
在這裏插入圖片描述
理由如下,當y = 1的時候,函數圖像爲
在這裏插入圖片描述
我們看一下是否符號邏輯,我們要求在預測正確的時候cost要小一些,預測錯誤的時候cost要大一些,上圖我們正確的結果是1,如果我們預測的是0,那麼cost的計算相應會大一些,同理當y = 0也是一樣
在這裏插入圖片描述
兩個函數合並可以寫成
在這裏插入圖片描述
最後損失函數的形式爲
在這裏插入圖片描述

梯度下降訓練

對每個參數求導,我們最後得到
在這裏插入圖片描述

延申

在特徵平面表現爲非線性的時候,我們的模型要做出變化
在這裏插入圖片描述

更多技術博客https://vilin.club/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章