1. 程式人生 > >線性迴歸、邏輯迴歸和softmax方法

線性迴歸、邏輯迴歸和softmax方法

線性迴歸(Linear Regression,LR)

對於m個樣本X=[x1,x2xn]TX=[x_{1},x_{2}\cdots x_{n}]^{T},用引數Θ=[θ1,θ2θn]T\Theta =[\theta _{1},\theta _{2}\cdots \theta _{n}]^{T}進行估計,記為
hθ(x)=ΘTX=θ0x0+θ1x1+θnxn便x0=1h_{\theta }(x)=\Theta ^{T}X=\theta _{0}x_{0}+\theta _{1}x_{1}+\cdots \theta _{n}x_{n}(為表示方便令x_{0}=1。)

定義損失函式
J(θ)=12i=1m(hθ(xi)yi)2J(\theta )=\frac{1}{2}\sum_{i=1}^{m}(h_{\theta }(x^{i})-y^{i})^{2}
目標為最小化損失函式J(θ)J(\theta ),可使用梯度下降法或者最小二乘法。

  • 梯度下降法
    J(θ)J(\theta)相對於θ\theta的梯度J(θ)θj=(hθ(xi)yi)xji\frac{\partial J(\theta )}{\partial \theta _{j}}=(h_{\theta }(x^{i})-y^{i})x^{i}_{j}
    ,這裡上標i表示第i個樣本,下標j表示樣本的第j個特徵。在梯度的負方向上更新θ\theta,即
    θj:=θjαJ(θ)θj=θj+α(yihθ(xi))xji\theta _{j}:=\theta _{j}-\alpha \frac{\partial J(\theta )}{\partial \theta _{j}}=\theta _{j}+\alpha(y^{i}-h_{\theta }(x^{i}))x^{i}_{j}
  • 最小二乘法
    將樣本整體表示為矩陣X,結果表示為向量y
    \overrightarrow{y}
    ,則引數θ\theta可由下式求得
    θ=(XTX)1XTy\theta =(X^{T}X)^{-1}X^{T}\overrightarrow{y}但要求X為列滿秩(列滿秩要求行數大於列數,即樣本數量應大於特徵維度,否則(XTX)(X^{T}X)為奇異矩陣,不可逆),並且求逆矩陣較慢。並且當出現多重共線性時無法計算。

線性迴歸注意事項

  • 特徵歸一化:即對特徵資料進行歸一化操作,進行特徵縮放的好處有兩點,一是能夠提升模型的收斂速度,因為如果特徵間的資料相差級別較大的話,以兩個特徵為例,以這兩個特徵為橫縱座標繪製等高線圖,繪製出來是扁平狀的橢圓,這時候通過梯度下降法尋找梯度方向最終將走垂直於等高線的之字形路線,迭代速度變慢。但是如果對特徵進行歸一化操作之後,整個等高線圖將呈現圓形,梯度的方向是指向圓心的,迭代速度遠遠大於前者。二是能夠提升模型精度。關於歸一化可以參考模式識別之樣本資料歸一化(Normalization)與標準化(Standardization)
  • 學習率α的選取:如果學習率α選取過小,會導致迭代次數變多,收斂速度變慢;學習率α選取過大,有可能會跳過最優解,最終導致根本無法收斂。可使用3倍法選擇學習率,即0.01,0.03,0.1,0.3,1,3···
  • 繪製迭代次數與損失函式的曲線判斷優化效率即選擇合適的引數。此方法適用於梯度下降法。
  • 線上性迴歸中,可能出現多重共線性,會對結果產生較大影響。多重共線性即不同特徵之間存在近似線性關係。解決方法可參考多重共線性的解決方法

嶺迴歸(Ridge Regression)和Lasso迴歸

線上性迴歸中,存在以下問題:

  • 變數間存在多重共線性時模型估計不準或者無法估計
  • 樣本數較小時發生過擬合
    為解決此類問題提出嶺迴歸和Lasso迴歸,其分別對應L2正則化和L1正則化。

嶺迴歸

損失函式修改為
J(θ)=12i=1m(hθ(xi)yi)2+λj=1nθj2J(\theta )=\frac{1}{2}\sum_{i=1}^{m}(h_{\theta }(x^{i})-y^{i})^{2}+\lambda \sum_{j=1}^{n}\theta _{j}^{2}λ\lambda為懲罰係數,可以限制引數的範圍,使用的是L2正則化項。

Lasso迴歸

損失函式修改為
J(θ)=12i=1m(hθ(xi)yi)2+λj=1nθjJ(\theta )=\frac{1}{2}\sum_{i=1}^{m}(h_{\theta }(x^{i})-y^{i})^{2}+\lambda \sum_{j=1}^{n}\left |\theta _{j} \right |λ\lambda為懲罰係數,可以限制引數的範圍,使用的是L1正則化項。

如果λ\lambda選取過大,會把所有引數θ均最小化,造成欠擬合,如果λ選取過小,會導致對過擬合問題解決不當

嶺迴歸和Lasso迴歸的聯絡與區別

二者都通過正則化項來減少過擬合,但Lasso使用L1正則化可以使更多引數變為0,起到特徵選擇的作用,一定程度上優於嶺迴歸。關於L1的稀疏作用參考文章L1相較於L2的稀疏性

無論對於嶺迴歸還是lasso迴歸,本質都是通過調節λ來實現模型誤差vs方差的平衡調整。

邏輯迴歸

線性迴歸可用於解決資料擬合問題,要解決分類問題時需要將輸出轉化為標籤0和1。使用Sigmoid函式進行轉換,得到邏輯迴歸。
Sigmoid函式形式為:ϕ(z)=11+ez\phi (z)=\frac{1}{1+e^{-z}},其導數形式為ϕ(z)=ϕ(z)(1ϕ(z)){\phi}' (z)=\phi(z)(1- \phi(z))
其影象如下。
Sigmoid函式
則邏輯迴歸可表達為y=ϕ(z)=ϕ(θTx)y=\phi(z)=\phi(\theta ^{T}x)當y>=0.5認為屬於類別1,否則屬於類別0。
定義損失函式
這裡y可以看做x屬於類別1的概率,即ϕ(z)=P(y=1x;θ)\phi(z)=P(y=1|x;\theta)。若假設分類問題滿足伯努利分佈,則1ϕ(z)=P(y=0x;θ)1-\phi(z)=P(y=0|x;\theta)。綜合兩式得到P(yx;θ)=ϕ(z)y(1ϕ(z))1yP(y|x;\theta)=\phi(z)^{y}(1-\phi(z))^{1-y}根據最大似然法估計θ\theta引數,有L(θ)=i=1nP(yixi;θ)=i=1nϕ(zi)yi(1ϕ(zi))1yiL(\theta)=\prod_{i=1}^{n} P(y^{i}|x^{i};\theta)=\prod_{i=1}^{n}\phi(z^{i})^{y^{i}}(1-\phi(z^{i}))^{1-y^{i}}

相關推薦

線性迴歸邏輯迴歸softmax方法

線性迴歸(Linear Regression,LR) 對於m個樣本X=[x1,x2⋯xn]TX=[x_{1},x_{2}\cdots x_{n}]^{T}X=[x1​,x2​⋯xn​]T,用引數Θ=[θ1,θ2⋯θn]T\Theta =[\theta _{1}

機器學習cs229——(三)區域性加權迴歸邏輯迴歸感知器牛頓方法廣義線性模型

 首先,我們先來討論一下欠擬合(underfitting)和過擬合(overfitting)問題。比如我們同樣採用線性迴歸來對一組房屋價格和房屋大小的資料進行擬合,第一種情況下我們只選取一個數據特徵(比如房屋大小 x)採用直線進行擬合。第二種情況下選取兩個資料特徵(比如房屋大

線性迴歸邏輯迴歸感知機的區別

轉自:https://www.cnblogs.com/muzixi/p/6642203.html寫的很好,但也發現了一些問題嗯,三者在模型,策略(目標函式),演算法(優化方法)上不一樣。一、線性迴歸線性迴歸是一個迴歸問題,即用一條線去擬合訓練資料線性迴歸的模型: 通過訓練資料

ml課程:線性迴歸邏輯迴歸入門(含程式碼實現)

以下是我的學習筆記,以及總結,如有錯誤之處請不吝賜教。 本文主要介紹簡單的線性迴歸、邏輯迴歸先關推倒,以及案例程式碼。 昨天做專案發現K-means都忘了,想想之前很多基礎都忘了,於是決定重新開始學一遍ml的基礎內容,順便記錄一下,也算是梳理自己的知識體系吧。 機器學習:目前包括有監

線性迴歸邏輯迴歸各種迴歸的概念學習

原文為:http://blog.csdn.net/viewcode/article/details/8794401 迴歸問題的條件/前提: 1) 收集的資料 2) 假設的模型,即一個函式,這個函式裡含有未知的引數,通過學習,可以估計出引數。然後利用這個模型去預測/分

線性迴歸迴歸Lasso迴歸邏輯迴歸的總結

對於所有的模型和演算法,都有一個目標方程,比較理想的目標方程應該有兩部分構成:損失函式和正則項,一個用來衡量模型的擬合效果,一個用來儘可能保證模型的簡單和穩定: Obj(Θ)=L(Θ)+Ω(Θ)(2)(2)Obj(Θ)=L(Θ)+Ω(Θ) 損失函式: 平方

對極大似然估計梯度下降線性迴歸邏輯迴歸的理解

極大似然 我對極大似然估計條件概率(後驗概率)和先驗概率的的理解:假設一次實驗,可能出現兩種結果,A或者B 總共進行了50次實驗,A出現了20次,B出現了30次,那麼求A的概率p。 問題來了,怎麼求一個合理的p值呢 L表示A出現的概率為p的情況下,進行50次實驗,各種

各種迴歸全解:傳統迴歸邏輯迴歸加權迴歸/核迴歸迴歸廣義線性模型/指數族

2、從‘廣義線性模型(GLM:generalized linear models)’和‘指數族’說起: (1)指數族(the exponential family) 伯努利分佈: 高斯分佈: (2)GLM 3、為什麼sigma函式可以代表概率? 設y只取0,1 4、邏輯迴歸

《機器學習》學習筆記(一):線性迴歸邏輯迴歸

    本筆記主要記錄學習《機器學習》的總結體會。如有理解不到位的地方,歡迎大家指出,我會努力改正。     在學習《機器學習》時,我主要是通過Andrew Ng教授在mooc上提供的《Machine Learning》課程,不得不說Andrew Ng老師在講授這門課程時,

迴歸問題總結(梯度下降線性迴歸邏輯迴歸原始碼正則化)

原文地址:http://blog.csdn.net/gumpeng/article/details/51191376 最近,應妹子要求,對迴歸問題進行了總結。 網上相關資料很多,主要是針對Andrew Ng的線上課程寫的筆記, 但大部分都講得不清晰。這篇部落格不能

機器學習-對線性迴歸邏輯迴歸各種迴歸的概念學習

迴歸問題的條件/前提:1) 收集的資料2) 假設的模型,即一個函式,這個函式裡含有未知的引數,通過學習,可以估計出引數。然後利用這個模型去預測/分類新的資料。1. 線性迴歸假設 特徵 和 結果 都滿足線性。即不大於一次方。這個是針對 收集的資料而言。收集的資料中,每一個分量,

梯度下降原理及線上性迴歸邏輯迴歸中的應用

1 基本概念 1)定義 梯度下降法,就是利用負梯度方向來決定每次迭代的新的搜尋方向,使得每次迭代能使待優化的目標函式逐步減小。 梯度下降法是2範數下的最速下降法。 最速下降法的一種簡單形式是:x(k+1)=x(k)-a*g(k),其中a稱為學習速率,可以是較小的常數。g(k

Machine Learning--week3 邏輯迴歸函式(分類)決策邊界邏輯迴歸代價函式多分類與(邏輯迴歸線性迴歸的)正則化

Classification It's not a good idea to use linear regression for classification problem. We can use logistic regression algorism, which is a classificati

各種機器學習方法線性迴歸支援向量機決策樹樸素貝葉斯KNN演算法邏輯迴歸)實現手寫數字識別並用準確率召回率F1進行評估

本文轉自:http://blog.csdn.net/net_wolf_007/article/details/51794254 前面兩章對資料進行了簡單的特徵提取及線性迴歸分析。識別率已經達到了85%, 完成了數字識別的第一步:資料探測。 這一章要做的就各

線性迴歸邏輯迴歸softmax迴歸

1.線性迴歸 預測函式: hθ(x)=θ0+θ1xh_\theta(x)=\theta_0+\theta_1xhθ​(x)=θ0​+θ1​x 1.1 梯度下降法 損失函式(均方差損失函式): min⁡J(θ)=12m∑i=1m(hθ(xi)−yi)2\min J

邏輯迴歸決策樹支援向量機

摘要:分類問題是商業業務中遇到的主要問題之一。本文對三種主要技術展開討論,邏輯迴歸(Logistic Regression)、決策樹(Decision Trees)和支援向量機(Support Vector Machine,SVM)。 分類問題是我們在各個行業的商業業務中遇到的主要問題之一。在本

資料科學人工智慧技術筆記 十二邏輯迴歸

十二、邏輯迴歸 作者:Chris Albon 譯者:飛龍 協議:CC BY-NC-SA 4.0 C 超引數快速調優 有時,學習演算法的特徵使我們能夠比蠻力或隨機模型搜尋方法更快地搜尋最佳超引數。 scikit-learn 的LogisticRegre

【機器學習入門】Andrew NG《Machine Learning》課程筆記之四:分類邏輯迴歸過擬合

分類和邏輯迴歸 在實際的生活中,會遇到很多二元分類問題(Binary Classification Problem),比如判斷一封郵件是否是垃圾郵件,攝像頭判斷使用者是男是女和一張圖片裡包含的是貓還是狗等等。 在有監督的分類問題中,通常使用帶標記(Label

機器學習筆記:線性迴歸邏輯斯蒂迴歸推導

參考書籍:《統計學習方法》,cs229,其他 1、線性迴歸 1.1、線性迴歸表示 線性迴歸屬於監督學習問題,輸入X與輸出Y成線性關係,只要我們得到了這個具體的關係,那麼對於待預測的資料X我們便可以知道Y的值。現在就來求這個線性關係 先定義好變量表示。記輸入變量表示為

機器學習(七)線性迴歸正規方程邏輯迴歸的正規化

問題:過分擬合  為了片面追求對已知樣本的識別率,擬合過於高階的函式輸入,導致出現很多區域性最優情況 解決方法:為代價函式引入新的引數項 1)線性迴歸        代價函式       梯度 2)正規方程       方程 3)邏輯迴歸       代價函