1. 程式人生 > >LR演算法(基礎及核心概念)

LR演算法(基礎及核心概念)

前言

首先需要清楚的是,LR(Logistic Regression)雖然是迴歸模型,但卻是經典的分類方法。 為什麼分類不用SVM呢?我們對比一下SVM,在二分類問題中,如果你問SVM,它只會回答你該樣本是正類還是負類;而你如果問LR,它則會回答你該樣本是正類的概率是多少~

  • 文章主要內容如下:

    • LR的理論基礎

    • LR的引數求解過程

    • 正則化

LR的理論基礎

Logistic

如指數分佈、高斯分佈等分佈一樣,logistic是一種變數的分佈,它也有自己的概率分佈函式和概率密度函式,其中概率分佈函式如下:

F(x)=P(Xx)=11+e(xμ)/γ

對概率分佈函式求導,記得到對應的概率密度函式:

f(x)=e(xμ)/γγ(1+e(xμ)/γ)2
其中,μ就是分佈對應的均值,γ是對應的形狀引數。

對應示例圖如下:
這裡寫圖片描述

Regression

為什麼我們說LR(Logistic Regression)是個分類模型而不是迴歸模型呢?對於二項LR模型,設因變數的Y為0或者1,得到如下條件概率分佈:

P(Y=1|X)=ewx1+ewx
P(Y=0|X)=11+ewx
  • 一個事件的機率(odds),定義為該事件發生與不發生的概率比值,若事件發生概率為p:

    odds=p1p
  • 那麼該事件的對數機率(log odds或者logit)如下:

    logit(p)=logp1p

那麼,對於上述二項LR邏,Y=1的對數機率就是:

logP(Y=1|x)1P(Y=1|x)=logP(Y=1|x)P(Y=0|x)=w.x

也就是說,輸出Y=1的對數機率是由輸入x的線性函式表示的模型,這就是邏輯迴歸模型。易知,當 w.x的值越大,P(Y=1|x) 越接近1;w.x越小(f負無窮大),P(Y=1|x) 越接近0。

其實,LR就是一個線性分類的模型。與線性迴歸不同的是:LR將線性方程輸出的很大範圍的數壓縮到了[0,1]區間上;更優雅地說:LR就是一個被logistic方程歸一化後的線性迴歸

LR的引數求解過程

極大似然估計

接下來便是引數估計過程,統計學中,常根據最大化似然函式的值來估計總體引數。其實,在機器學習領域,我們聽到的更多是損失函式的概念,常通過構建損失函式,然後最小化損失函式求得目標引數。在這裡,最大化對數似然函式與最小化對數似然損失函式其實是等價的

,下面我們可以看到。

  • 假設我們有n個獨立的訓練樣本{(x1,y1),(x2,y2),(x3,y3),...,(xn,yn)},y=0,1,那麼每一個觀察到的樣本(xi,yi)出現的概率是:

    P(yi,xi)=P(yi=1|xi)yi(1P(yi=1|xi))1yi
    顯然,yi為1時,保留前半部分;yi為0時,保留後半部分。
  • 構建似然函式:

    L(θ)=P(yi=1|xi)yi(1P(yi=1|xi))1yi
  • OK,對似然函式取對數,得到對數似然函式:
    LL(θ)=log(L(θ))=log(P(yi=1|xi)yi(1P(yi=1|xi))1

    相關推薦

    LR演算法(基礎核心概念)

    前言 首先需要清楚的是,LR(Logistic Regression)雖然是迴歸模型,但卻是經典的分類方法。 為什麼分類不用SVM呢?我們對比一下SVM,在二分類問題中,如果你問SVM,它只會回答你該樣本是正類還是負類;而你如果問LR,它則會回答你該樣本是正類

    EM演算法(基礎核心概念)

    Jensen不等式 其實在運籌學以及基礎的優化理論中,便有涉及。設f是定義域為實數的函式,如果對於所有的實數x,,那麼f是凸函式。拓展到多元的情形,x是向量時,如果其對應的Hessian矩陣H是半正定的(),那麼f是凸函式。特別的,當或者海瑟矩陣為正定時(H&

    聚類演算法基礎核心概念

    聚類分析簡介 將物理或抽象物件的集合分組成為由類似的物件組成的多個類的過程被稱為聚類。由聚類所生成的簇是一組資料物件的集合,這些物件與同一個簇中的物件彼此相似,與其他簇中的物件相異。在許多應用中,一個簇中的資料物件可以被作為一個整體來對待。 作為統計學的一個分支,聚類分

    Docker基礎教程——介紹核心概念

        1、介紹     額,介紹我就拉一段百科吧。     Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後釋出到任何流行的 Linux 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面。  

    GBDT+LR演算法解析Python實現

    1. GBDT + LR 是什麼 2. GBDT + LR 用在哪 GBDT+LR 使用最廣泛的場景是CTR點選率預估,即預測當給使用者推送的廣告會不會被使用者點選。 一個典型的CTR流程如下圖所示: 如上圖,主要包括兩大部分:離線部分、線上部分,其中離線部分目標主要是訓練出可用模型,而線上部分則考慮模型

    Docker(一)簡介核心概念

    linu bubuko 什麽 height lin 什麽是 gis 客戶 啟動 1、簡介 Docker是一個開源的應用容器引擎;是一個輕量級容器技術; Docker支持將軟件編譯成一個鏡像;然後在鏡像中各種軟件做好配置,將鏡像發布出去,其他使用者可以直接使用這個鏡像; 運行

    ZooKeeper系列(一)—— ZooKeeper 簡介核心概念

    一、Zookeeper簡介 Zookeeper 是一個開源的分散式協調服務,目前由 Apache 進行維護。Zookeeper 可以用於實現分散式系統中常見的釋出/訂閱、負載均衡、命令服務、分散式協調/通知、叢集管理、Master 選舉、分散式鎖和分散式佇列等功能。它具有以下特性: 順序一致性:從一個客戶端

    Hive 系列(一)—— Hive 簡介核心概念

    一、簡介 Hive 是一個構建在 Hadoop 之上的資料倉庫,它可以將結構化的資料檔案對映成表,並提供類 SQL 查詢功能,用於查詢的 SQL 語句會被轉化為 MapReduce 作業,然後提交到 Hadoop 上執行。 特點: 簡單、容易上手 (提供了類似 sql 的查詢語言 hql),使得精通 sql

    Elasticsearch基本概念核心配置文件詳解

    last log4j 強烈 內存 文檔 size oca 機制 集群   Elasticsearch5.X,下列的是Elasticsearch2.X系類配置,其實很多配置都是相互兼容的 1. 配置文件 config/elasticsearch.yml 主配置文件

    TensorFlow核心概念基本使用

    更新 分支 例如 bsp 可能 異常 變量存儲 ant tensor TensorFlow核心概念   綜述:TensorFlow中的計算可以表示為一個有向圖,或稱計算圖,其中每一個運算操作將作為一個節點,節點間的鏈接叫做邊。這個計算圖描述了數據的計算流程,它也負責維護和更

    資料結構與演算法--基礎入門概念

    資料結構與演算法--基礎入門概念 一: 資料結構 1:資料的層次劃分 1:資料型別 2:資料元素 3:資料物件 4:資料項 5:借圖輔助理解 2:基於資料的資料結構

    演算法基礎概念

    演算法(Algorithm):解決特定問題求解步驟的描述,計算機中表現為指令的有限序列,並且每條指令表示一個或多個操作。 演算法的特性: 輸入輸出 有窮性(無死迴圈) 確定性(執行路徑唯一,相同的輸入唯一的輸出) 可行性(每一步都是可行的) 演算法設計的要求:

    maven介紹(作用,核心概念,用法,常用命令,擴張配置)

    maven介紹(作用,核心概念,用法,常用命令,擴張及配置) maven作用,核心概念(pom,repositories,artifact,build lifecycle,goal),用法(archetype意義及建立各種專案),maven常用引數和命令以及簡單故障排除 1、maven的作用 &

    Mybatis基礎核心元件的構成用法)

    學習Mybatis框架,首要任務就是學習Mybatis基本構成,也即Mybatis核心元件。對核心元件的學習大致可分為兩部分,首先是核心元件的構成及用法,其次是核心元件的生命週期,本文主要介紹元件的構成及用法。 Mybatis核心元件包括四部分,分別為: (1)SqlSessionFacto

    WebSocket 入門概念基礎 HTTP輪詢簡介

    WebSocket 是一種網路通訊協議,很多高階功能都需要它。 百度百科解析: WebSocket協議是基於TCP的一種新的網路協議。它實現了瀏覽器與伺服器全雙工(full-duplex)通訊——允許伺服器主動傳送資訊給客戶端。 目錄 一、為什麼需要

    你也可以手繪二維碼(二)糾錯碼字演算法:數論基礎伽羅瓦域GF(2^8)

    摘要:本文講解二維碼糾錯碼字生成使用到的數學數論基礎知識,伽羅瓦域(Galois Field)GF(2^8),這是手繪二維碼填格子理論基礎,不想深究可以直接跳過。同時數論基礎也是Hash演算法,RSA演算法等密碼學的入門基礎。 二維碼生成演算法最為核心的就是編碼規則和糾錯碼字的生成。本篇專門講解糾錯涉及到的伽

    C++影象演算法基礎知識(一)

    PS:為了面試準備的,總結的有點粗糙。 1.receptive field:感受野 在卷積神經網路CNN中,決定某一層輸出結果中一個元素所對應的輸入層的區域大小,被稱作感受野 左圖:如果只看特徵圖,我們無法得知特徵的位置(即感受野的中心位置)和區域大小(即感

    linux基礎命令核心瞭解

    1.ls 功能:1)列出目錄下的子目錄和檔案   2)列出檔案的資訊 常用選項: -a 列出包括以“.”開頭的隱藏檔案 -l 列出該檔案的詳細資訊 -t 以時間排序 -R 列出子目錄下所有檔案 2.pwd 功能:顯示使用者當前所在目錄 3.cd 功能:改變

    資料結構和演算法基礎概念介紹

    一、什麼是演算法 演算法是指一系列解決問題的清晰指令。 二、演算法特徵 有窮性:演算法必須能夠在執行有限個步驟之後終止 確切性:演算法的每一步都必須要有確切的定義 輸入項:演算法必須有0個或多個輸入,描述演算法執行的初始狀態。0個輸入即演算法本身已經擁有了初始條

    c++記憶體模型------計算機系統核心概念軟硬體實現

     c++程式語言有3中不同類項的變數:全域性變數、區域性變數和動態分配變數。變數的值儲存在計算機的記憶體中,但是變數儲存的方式取決於變數的類項。3種類型的變數分別對應儲存器中3個特定的區域: 全域性變數存放在儲存器中的固定位置。區域性變數存放在執行時棧上。動態分配變數存放