機器學習之 邏輯回歸

2021-08-29 01:13:06 字數 2571 閱讀 2391

邏輯回歸又稱logistic回歸,邏輯斯諦回歸,是一種廣義的線性回歸分析模型。

sigmoid函式也是神經網路中常用的函式,用於把x從負無窮到正無窮壓縮到y從0到1之間。畫出來就是一條s型曲線,如下圖中的藍色曲線:

它以0點為中心對稱,公式如下:

當x值接近負無窮時,分母很大,s(x)接近0,當x接近正無窮時,分母接近1,s(x)接近1,當x為0時,s(x)為1/2在正中間。s曲線的彎曲程度由e決定。 它的導數是上圖中的橙色曲線:

導數的意義是變化率,當x很大時或很小時,s』(x)接近0,而在x接近0時,s』(x)值最大,即s曲線在0點處變化劇烈,它勾勒出了y在0與1之間模稜兩可的區域。

必須滿足邏輯斯諦分布,才能用邏輯回歸。那麼什麼是邏輯斯諦分布?

邏輯斯諦分布即增長分布,增長分布的分布函式是「增長函式」,公式如下:

可以看到,它把(x-μ)/γ代入sigmoid函式。其中μ是位置引數,也可解釋為數學期望(大多數情況下是均值),散布中心,而γ是形狀引數,它描述了散布程度(集中還是分散)。邏輯斯諦分布記為l(μ,γ),當時μ=0,γ=1,稱為標準的邏輯斯諦分布,就是sigmoid函式。

我們形象地看一下μ和γ的功能:假設μ=3, γ=2,繪出的曲線如下:

相比,它的中心點在μ=3(橫座標3,縱座標1/2),且曲線也比較平緩γ=2,γ值越小,中心附近變化越劇烈。 增長函式是sigmoid的擴充套件,它將以0為中心以1為單位的s曲線,擴充套件為以μ為中心,以γ為單位的s曲線。 換言之,只要分布符合s曲線,就能用邏輯回歸。

從概率的角度上講,藍色曲線它是分布函式,分布函式也叫累計分布函式(積分),它的函式值是概率p(x<=x),x越靠右,概率x發生的概率越大。

常用的說明例子是:植物群體中發病的普遍率,橫軸為時間,縱軸為發病率,一開始發病的植物少,增長緩慢,在中段出現爆發式增長,最終增長變慢,飽合達到100%。可以說分布函式中的y是乙個隨時間積累得到的量(單調上公升),即到時刻x為止,發病植物佔所有植物的比例。而它的導數橙色線,即x時刻新發病的植物佔整體的比例,即密度函式。

邏輯回歸又稱logistic回歸,邏輯斯諦回歸,是一種廣義的線性回歸分析模型。線性模型是通過一組值x0…xn**y的具體值(從特徵**結果),而邏輯回歸是將用x0…xn**y屬於哪個分類(a/b分類),基本的邏輯是先**具體值,然後再用sigmoid函式將具體值對映到0-1之間。如果這個概率大於0.5,則認為是a類。而決定0.5的因素是各個特徵的權重。

(1) 疑問一:直線和s曲線有什麼關係?

y1=wx+b想像它的影象是x為橫軸,y1為縱軸的一條直線,縱軸範圍很大。而sigmoid是0-1間的曲線,先把wx+b計算出y1,再將y1代入sigmoid函式,計算y2: y1=w*x+b (公式1)

y2=sigmoid(y1) (公式2) 這是個函式巢狀,所以結果並不直觀;它相當於把x軸對映到y軸(藍色),再把y軸按s曲線從正無窮到負無窮壓縮到了0-1之間(橙色)。

(2) 疑問二:sigmoid函式和概率有什麼關係?

把直線方程代入sigmoid函式(公式1代入公式2),公式如下:

如果看成二分類問題,當sigmoid函式值大於0.5時認為是a類,否則認為是b類。通過直線方程,我們用特徵x**目標值y1,而通過sigmoid的變換,計算出該值屬於哪個分類的概率y2。容易看出:上式的兩個概率之和為1(兩種可能性加起來是100%)。邏輯斯諦回歸比較兩個條件概率值的大小,將例項x分到概率值較大的一類中。

把x和w推廣到高維多特徵的情況下,w=(w1,w2,w3…b), x=(x1,x2,x3,…1)則公式變換如下:

可以說,邏輯回歸基本上就是線性回歸的擴充套件。

具體應用時,我們知道例項有多個特徵x(x1,x2,x3…),求各個特徵對應的權重w(w1,w2,w3…b),使得各個例項都能正確分類,求取w一般使用梯度上公升法或牛頓法,這裡講講梯度上公升法。

需要注意的是w*x是線性函式,每個x與y之間,需要服從單調上公升或者調下降的關係,如果不服從這種關係,就不能用邏輯回歸。比如目標分類y是強壯與否,而特徵x是年齡,我們知道並不是年齡越大越強壯(老年人),二者間並不存在同增同減的關係,年齡因素就沒法直接使用邏輯回歸,除非先對年齡做變換,例如abs(年齡-35)。

(1) 概率論中常見分布總結以及python的scipy庫使用:兩點分布、二項分布、幾何分布、泊松分布、均勻分布、指數分布、正態分佈

機器學習之邏輯回歸

什麼叫邏輯回歸?簡單來講便是目標值只有,而線性回歸的目標值卻是乙個區域 0,1 可以代表得病沒得病,正確錯誤,etc.那麼怎麼才能把給定的輸入值正確的分類到呢,下面就介紹乙個特別的函式 sigmoid函式,g z 1 1 exp z 啥都不說先上圖。上圖便是sigmoid函式圖了,之所以引用這個函式...

機器學習之邏輯回歸

邏輯回歸 logistic regression 最初是為了解決二分類問題。對於線性模型要想進行如二分類任務,最簡單的辦法就是通過階躍函式 unit step function 即將線性模型的輸出值套上乙個函式進行分割,大於z的判定為0,小於z的判定為1。如下圖左所示 但這有個問題是,分段函式不連續...

機器學習之邏輯回歸

知識點 邏輯回歸 只能解決二分類問題 損失函式 1 均方誤差 不存在多個區域性最低點 只有乙個最小值 2 對數似然損失 存在多個區域性最小值 改善方法 1 多次隨機初始化,多次比較最小值結果 2 調整學習率 邏輯回歸缺點 不好處理多分類問題 生成模型 有先驗概率 邏輯回歸,隱馬爾科夫模型 判別模型 ...