1. 程式人生 > >機器學習筆記(一) 邏輯斯蒂迴歸LR

機器學習筆記(一) 邏輯斯蒂迴歸LR

本文是在學習完李航老師的《統計學習方法》後,在網上又學習了幾篇關於LR的部落格,算是對LR各個基礎方面的一個回顧和總結。

一 簡述

  邏輯斯蒂迴歸是一種對數線性模型。經典的邏輯斯蒂迴歸模型(LR)可以用來解決二分類問題,但是它輸出的並不是確切類別,而是一個概率。

  在分析LR原理之前,先分析一下線性迴歸。線性迴歸能將輸入資料通過對各個維度的特徵分配不同的權重來進行表徵,使得所有特徵協同作出最後的決策。但是,這種表徵方式是對模型的一個擬合結果,不能直接用於分類。

  在LR中,將線性迴歸的結果通過sigmod函式對映到01之間,對映的結果剛好可以看做是資料樣本點屬於某一類的概率,如果結果越接近

0或者1,說明分類結果的可信度越高。這樣做不僅應用了線性迴歸的優勢來完成分類任務,而且分類的結果是0~1之間的概率,可以據此對資料分類的結果進行打分。對於線性不可分的資料,可以對非線性函式進行線性加權,得到一個不是超平面的分割面。

二 原理

    2.1sigmoid函式

sigmoid函式形式為分佈如下圖所示:


     2.2 LR迴歸模型

    二項邏輯斯蒂迴歸模型由條件概率分佈P(Y|X)表示,隨機變數X取值為實數,隨機變數Y取值為10。模型的條件概率分佈

 

    在進行分類時,通過比較上面兩式的大小來將輸入例項分配到概率值大的那一類。

    也就是說,LR將輸入例項x

的線性迴歸的加權結果w·x+b通過sigmoid函式對映到0~1之間,加權結果的值越接近正無窮,概率值就越接近1,反之則越接近0

2.3  多項LR迴歸模型

LR模型也可以推廣到解決多分類問題,模型如下:

          

       2.4模型引數估計

         LR的引數估計使用最大似然估計。LR損失函式為對數損失函式,所以這裡最大似然估計可以理解為損失函式為對數損失函式的經驗風險最小化。

   若假設

   那麼似然函式為 

   求解最大似然函式,對上式取對數後求解最大。


   在解這個最優化問題的時候,若是直接求取解析解會使計算非常複雜,通常採用近似方法如梯度上升法和擬牛頓法。其中梯度上升法可能導致計算量太大,於是用隨機梯度上升法代替;牛頓法或擬牛頓法一般收斂速度更快。

      2.5 損失函式

LR損失函式為對數損失函式。對數損失函式的定義是


   在引數模型估計中的對數似然函式極大化即對應著損失函式極小化。

   在Andrew Ng的課程中將損失函式定義為(這裡符號取w以保證本文的符號統一)。

   與2.4部分統一後,LR損失函式可以表示為


   使用梯度下降法使損失函式極小化,每一步的迭代公式為

   在推導前,由上文

   需要知道對於siamoid函式有如下求導性質


   那麼在權值w的更新過程中,推導如下:


    基於此,迭代公式為 

三 LR的應用和優缺點

         LR是解決工業規模問題最流行的演算法。在工業應用上,如果需要分類的資料擁有很多有意義的特徵,每個特徵都對最後的分類結果有或多或少的影響,那麼最簡單最有效的辦法就是將這些特徵線性加權,一起參與到決策過程中。比如預測廣告的點選率,從原始資料集中篩選出符合某種要求的有用的子資料集等等。

   優點:1)適合需要得到一個分類概率的場景。2)計算代價不高,容易理解實現。LR在時間和記憶體需求上相當高效。它可以應用於分散式資料,並且還有線上演算法實現,用較少的資源處理大型資料。3LR對於資料中小噪聲的魯棒性很好,並且不會受到輕微的多重共線性的特別影響。(嚴重的多重共線性則可以使用邏輯迴歸結合L2正則化來解決,但是若要得到一個簡約模型,L2正則化並不是最好的選擇,因為它建立的模型涵蓋了全部的特徵。)

   缺點:1)容易欠擬合,分類精度不高。2)資料特徵有缺失或者特徵空間很大時表現效果並不好。

與其他演算法比較

SVM比較

   線性迴歸做分類因為考慮了所有樣本點到分類決策面的距離,所以在兩類資料分佈不均勻的時候將導致誤差非常大;LRSVM克服了這個缺點,其中LR將所有資料採用sigmod函式進行了非線性對映,使得遠離分類決策面的資料作用減弱;SVM直接去掉了遠離分類決策面的資料,只考慮支援向量的影響。

   但是對於這兩種演算法來說,線上性分類情況下,如果異常點較多無法剔除的話,LR中每個樣本都是有貢獻的,最大似然後會自動壓制異常的貢獻;SVM+軟間隔對異常比較敏感,因為其訓練只需要支援向量,有效樣本本來就不高,一旦被幹擾,預測結果難以預料。

參考:

李航《統計學習方法》

http://www.jianshu.com/p/95e5faa3f709

http://www.tuicool.com/articles/uiMjyuu



相關推薦

機器學習筆記 邏輯迴歸LR

本文是在學習完李航老師的《統計學習方法》後,在網上又學習了幾篇關於LR的部落格,算是對LR各個基礎方面的一個回顧和總結。 一 簡述   邏輯斯蒂迴歸是一種對數線性模型。經典的邏輯斯蒂迴歸模型(LR

機器學習筆記邏輯迴歸與多項邏輯迴歸

1.邏輯迴歸與多項邏輯迴歸 1.1什麼是邏輯迴歸? 邏輯迴歸,可以說是線上性迴歸的基礎上加上一個sigmoid函式,將線性迴歸產生的值歸一化到[0-1]區間內。sigmoid函式如下: ​

機器學習筆記:極大似然估計與貝葉估計的區別

似然函式: 樣本資料的分佈和在引數為下的概率分佈的相似程度 極大似然估計:只要求出符合樣本資料分佈的最優引數即可,不需要考慮先驗。 貝葉斯估計   MAP(最大後驗估計)

機器學習筆記樸素貝葉的Python程式碼實現

上研究生的時候,一心想讀生物資訊學的方向,由此也選修了生物數學,計算生物學等相關課程。給我印象最深的是給我們計算生物學的主講老師,他北大數學系畢業,後來做起了生物和數學的交叉學科研究。課上講的一些演算法比如貝葉斯,馬爾科夫,EM等把我給深深折磨了一遍。由於那時候

機器學習筆記邏輯回歸

邏輯回歸 alt 表示 結果 不變 改變 最小值 nbsp 可能性 一、邏輯回歸問題 二分類的問題為是否的問題,由算出的分數值,經過sign函數輸出的是(+1,-1),想要輸出的結果為一個幾率值,則需要改變函數模型 ,其中,, 則邏輯回歸的函數為 二、邏輯回歸錯誤評價 線性

機器學習筆記

get 實現 mach 理論 怎樣 算法 分類 AI 結構 1、基礎概念   什麽是機器學習?   機器學習(Machine Learning, ML)是一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、算法復雜度理論等多門學科。專門研究計算機怎樣模擬或實現人類的

模式識別與機器學習筆記

本系列博文是對研一課程《模式識別與機器學習》的隨堂筆記,希望將老師所講的與自己的見解記錄下來,方便加深自己的理解以及以後複習檢視,筆記完全按照老師所講順序,歡迎交流。 一、模式識別與機器學習的基本問題 機器學習主要解決以下四類問題: 1.監督學習:指的是訓練的資料既包括特徵(feat

機器學習筆記:最小二乘法和梯度下降

一、最小二乘法 1.一元線性擬合的最小二乘法 先選取最為簡單的一元線性函式擬合助於我們理解最小二乘法的原理。 要讓一條直接最好的擬合紅色的資料點,那麼我們希望每個點到直線的殘差都最小。 設擬合直線為

機器學習筆記線性迴歸模型

一、線性迴歸模型 (一)引入—梯度下降演算法 1. 線性假設: 2. 方差代價函式:   3. 梯度下降:   4. : learning rate (用來控制我們在梯度下降時邁出多大的步子,值較大,梯度下降就很迅速) 值過大易造成無法收斂到minimum(每一步邁更大)

吳恩達機器學習筆記,含作業及附加題答案連結

吳恩達機器學習筆記(一) 標籤(空格分隔): 機器學習 吳恩達機器學習筆記一 一機器學習簡介 機器學習的定義 監督學習 非監督學習

深入理解java虛擬機器學習筆記

Java記憶體區域模型 Java虛擬機器在執行Java程式的過程中,會把它所管理的記憶體區域劃分為若干個不同的資料區域,這些區域一般被稱為執行時資料區(Runtime Data Area),也就是我們常說的JVM記憶體。 執行時資料區通常包括以下這幾個部分: 程式計數器(Program Counte

深入理解JAVA虛擬機器學習筆記JVM記憶體模型

一、JVM記憶體模型概述 JVM記憶體模型其實也挺簡單的,這裡先提2個知識點: 1、組成:java堆,java棧(即虛擬機器棧),本地方法棧,方法區和程式計數器。 2、是否共享:其中方法區和堆區是執行緒共享的,虛擬機器棧,本地方法棧和程式計數器是執行緒私有的,也稱執行緒

Java虛擬機器學習筆記:記憶體區域與HotSpot虛擬機器物件探祕

執行時資料區域 Java虛擬機器在執行Java程式的過程中會把它所管理的記憶體劃分為若干個不同的資料區域。這些區域都有各自的用途,以及建立和銷燬的時間,有的區域隨著虛擬機器程序的啟動而存在,有些區域則依賴使用者執行緒的啟動和結束而建立和銷燬。根據《Java虛擬機

機器學習筆記—— 邏輯迴歸

邏輯迴歸演算法是二分類問題中最常用的幾種分類演算法之一,通過變形,也能夠在多分類問題中發揮餘熱。今天我將從向大家揭開這個簡單演算法的神祕面紗! 一、Sigmoid函式 在迴歸問題中,我們曾經提到,對於資料集

機器學習筆記----線性方程擬合的梯度下降法

機器學習 引言 定義:一個年代近一點的定義,由 Tom Mitchell 提出,來自卡內基梅隆大學,Tom 定義的機器學習是,一個好的學習問題定義如下,他說,一個程式被認為能從經驗 E 中學習,解決任務 T,達到效能度量值P,當且僅當,有了經驗 E 後,

機器學習筆記——基於單層決策樹的AdaBoost演算法實踐

                             基於單層決策樹的AdaBoost演算法實踐    最近一直在學習周志華老師的西瓜書,也就是《機器學習》,在第八章整合學習中學習了一個整合學習演算法,即AdaBoost演算法。AdaBoost是一種迭代演算法,其核心思想

李航·統計學習方法筆記·第6章 logistic regression與最大熵模型1·邏輯迴歸模型

第6章 logistic regression與最大熵模型(1)·邏輯斯蒂迴歸模型 標籤(空格分隔): 機器學習教程·李航統計學習方法 邏輯斯蒂:logistic 李航書中稱之為:邏輯斯蒂迴歸模型 周志華書中稱之為:對數機率迴歸模

機器學習筆記:關於隱含馬爾科夫模型

這篇文章是我在看完吳軍老師的數學之美一書中關於隱馬爾科夫模型之後所寫,旨在記錄一下自己對隱馬爾科夫模型的認識, 隱馬爾科夫模型我在很早之前就有所接觸,在學習語音識別的時候,會涉及到隱馬爾科夫模型,當時是完全不懂,現在雖然還是一知半解,因為沒有再次去使用,接下來的主攻方向是機器視覺,對隱馬爾可

周志華機器學習筆記

新人一枚,既是機器學習的初學者,也是首次發部落格。謹以此記錄我的學習體會,做一些總結。望與大家共同學習、共同進步。文中若有內容錯誤或有措詞不嚴謹之處,望大家不吝指出。謝謝! 機器學習中的基本概念 基本術語 根據上圖我們可以用一個三維空間來了解以

機器學習筆記微積分

微積分 @(Machine Learning)[微積分, 概率論] 1.夾逼定理: 當x∈U(x0,r)時,有g(x)≤f(x)≤h(x)成立,並且limx→x0g(x)=A,limx→x0h(x)=A那麼:limx→x0f(x)=A 2.極限存