0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

對于機器學習/數(shù)據(jù)科學初學者 應該掌握的七種回歸分析方法

zhKF_jqr_AI ? 來源:未知 ? 作者:steve ? 2018-04-27 15:55 ? 次閱讀

對于機器學習/數(shù)據(jù)科學的初學者來說,線性回歸,或者Logistic回歸是許多人在建立預測模型時接觸的第一/第二種方法。由于這兩種算法適用性極廣,有些人甚至在走出校門當上數(shù)據(jù)分析師后還固執(zhí)地認為回歸只有這兩種形式,或者換句話說,至少線性回歸和Logistic回歸應該是其中最重要兩個算法。那么事實真的是這樣嗎?

Sunil Ray是一位在印度保險行業(yè)擁有豐富經(jīng)驗的商業(yè)分析師和人工智能專家,針對這個問題,他指出其實回歸有無數(shù)種形式,每種回歸算法都有自己擅長的領域和各自的特色。在本文中,他將以最簡單的形式介紹7種較為常見的回歸形式,希望讀者們在耐心閱讀完畢后,可以在學習、工作中多做嘗試,而不是無論遇到什么問題都直接上“萬金油”的線性回歸和Logistic回歸。

目錄

1. 什么是回歸分析?

2. 為什么要用回歸分析?

3. 幾種常見的回歸分析方法

線性回歸

Logistic回歸

多項式回歸

逐步回歸

嶺回歸

Lasso回歸

ElasticNet回歸

4. 如何挑選適合的回歸模型?

什么是回歸分析?

回歸分析是一種預測建模技術,它可以被用來研究因變量(目標)和自變量(預測)之間的關系,常見于預測建模、時間序列建模和查找變量間關系等應用。舉個例子,通過回歸分析,我們能得出司機超速駕駛和發(fā)生交通事故次數(shù)之間的關系。

它是建模和分析數(shù)據(jù)的重要工具?;貧w分析在圖像上表示為一條努力擬合所有數(shù)據(jù)點的曲線/線段,它的目標是使數(shù)據(jù)點和曲線間的距離最小化。

為什么要用回歸分析?

如上所述,回歸分析估計的是兩個或兩個以上變量間的關系。我們可以舉這樣一個例子來幫助理解:

假設A想根據(jù)公司當前的經(jīng)濟狀況估算銷售增長率,而最近一份數(shù)據(jù)表明,公司的銷售額增長約為財務增長的2.5倍。在此基礎上,A就能基于各項數(shù)據(jù)信息預測公司未來的銷售情況。

使用回歸分析有許多優(yōu)點,其中最突出的主要是以下兩個:

它能顯示因變量和自變量之間的顯著關系;

它能表現(xiàn)多個獨立變量對因變量的不同影響程度。

除此之外,回歸分析還能揭示同一個變量帶來的不同影響,如價格變動幅度和促銷活動多少。它為市場研究人員/數(shù)據(jù)分析師/數(shù)據(jù)科學家構建預測模型提供了評估所用的各種重要變量。

幾種常見的回歸分析方法

回歸分析的方法有很多,但其中出名的沒幾個。綜合來看,所有方法基本上都由這3個重要參數(shù)驅動:自變量的數(shù)量、因變量的類型和回歸曲線的形狀。

對于機器學習/數(shù)據(jù)科學初學者 應該掌握的七種回歸分析方法

至于為什么是這三點,我們會在后文作出具體解釋。當然,對于那些有創(chuàng)意、能獨立設計參數(shù)的人,他們的模型大可不必局限于這些參數(shù)。這只是以前大多數(shù)人的做法。

1. 線性回歸

線性回歸是知名度最廣的建模方法之一。每當提及建立一個預測模型,它總能占一個首選項名額。對于線性回歸,它的因變量是連續(xù)的,自變量則可以是連續(xù)的或是離散的。它的回歸線在本質(zhì)上是線性的。

在一元問題中,如果我們要用線性回歸建立因變量Y和和自變量X之間的關系,這時它的回歸線是一條直線,如下圖所示。

對于機器學習/數(shù)據(jù)科學初學者 應該掌握的七種回歸分析方法

它的相應表達式為:Y = a + b × X + e。其中a是y軸截距,b是回歸線斜率,e是誤差項。

但有時我們可能擁有不止一個自變量X,即多元問題,這時多元線性回歸的回歸方程就是一個平面或是一個超平面。

既然有了一條線,那我們?nèi)绾未_定擬合得最好的那條回歸線呢(a和b的值)?對于這個問題,最常規(guī)的方法是最小二乘法——最小化每個點到回歸線的歐氏距離平方和。由于做了平方,距離不存在正負差別影響。

對于機器學習/數(shù)據(jù)科學初學者 應該掌握的七種回歸分析方法

對于機器學習/數(shù)據(jù)科學初學者 應該掌握的七種回歸分析方法

線性回歸重點:

自變量和因變量之間必須存在線性關系;

多元回歸受多重共線性、自相關和異方差影響;

線性回歸對異常值非常敏感。它會嚴重影響回歸線,并最終影響預測值。

多重共線性會使參數(shù)估計值的方差增大,可能會過度地影響最小二乘估計值,從而造成消極影響。

在存在多個自變量的情況下,我們可以用前進法、后退法和逐步法選擇最顯著的自變量。

2. Logistic回歸

Logistic回歸一般用于判斷事件成功/失敗的概率,如果因變量是一個二分類(0/1,真/假,是/否),這時我們就應該用Logistic回歸。它的Y是一個值域為[0, 1]的值,可以用下方等式表示:

odds = p/ (1-p) = 事件發(fā)生概率 / 事件未發(fā)生概率 ln(odds) = ln(p/(1-p)) logit(p) = ln(p/(1-p)) = b0+b1×1+b2×2+b3×3....+bk×k

在上式中,p是目標特征的概率。不同于計算平方和的最小值,這里我們用的是極大似然估計,即找到一組參數(shù)θ,使得在這組參數(shù)下,樣本數(shù)據(jù)的似然度(概率)最大??紤]到對數(shù)損失函數(shù)與極大似然估計的對數(shù)似然函數(shù)在本質(zhì)上是等價的,所以Logistic回歸使用了對數(shù)函數(shù)求解參數(shù)。

對于機器學習/數(shù)據(jù)科學初學者 應該掌握的七種回歸分析方法

Logistic回歸重點:

Logistic回歸被廣泛用于分類問題。

Logistic回歸無需依賴自變量和因變量之間的線性關系,而是用非線性對數(shù)計算用于預測的比值比,因此可以處理各種類型的問題。

為了避免過擬合和欠擬合,Logistic回歸需要包含所有重要變量,然后用逐步回歸方法去估計邏輯回歸。

Logistic回歸對樣本大小有較高要求,因為對于過小的數(shù)據(jù)集,最大似然估計不如普通最小二乘法。

各自變量間不存在多重共線性。

如果因變量的值是序數(shù),那么它就該被稱為序數(shù)Logistic回歸。

如果因變量是多個類別,那么它就該被稱為多項Logistic回歸。

3. 多項式回歸

多項式回歸是對線性回歸的補充。線性回歸假設自變量和因變量之間存在線性關系,但這個假設并不總是成立的,所以我們需要擴展至非線性模型。Logistic回歸采取的方法是用非線性的對數(shù)函數(shù),而多項式回歸則是把一次特征轉換成高次特征的線性組合多項式。

對于機器學習/數(shù)據(jù)科學初學者 應該掌握的七種回歸分析方法

一元多項式回歸

簡而言之,如果自變量的冪大于1,那么該回歸方程是多項式回歸方程,即Y = A + B × X2。在這種回歸方法中,它的回歸線不是一條直線,而是一條力爭擬合所有數(shù)據(jù)點的曲線。

對于機器學習/數(shù)據(jù)科學初學者 應該掌握的七種回歸分析方法

多項式回歸重點:

盡管更高階的多項式回歸可以獲得更低的誤差,但它導致過擬合的可能性也更高。

要注意曲線的方向,觀察它的形狀和趨勢是否有意義,在此基礎上在逐步提高冪。

對于機器學習/數(shù)據(jù)科學初學者 應該掌握的七種回歸分析方法

過擬合

4. 逐步回歸

截至目前,上述方法都需要針對因變量Y選擇一個目標自變量X,再用線性的、非線性的方法建立“最優(yōu)”回歸方程,以便對因變量進行預測或分類。那么當我們在處理多個自變量時,有沒有一種回歸方法能按照對Y的影響大小,自動篩選出那些重要的自變量呢?

這種方法就是本節(jié)要介紹的逐步回歸,它利用觀察統(tǒng)計值(如R方,t-stats和AIC度量)來辨別重要變量。作為一種回歸分析方法,它使用的方法是基于給定的水平指標F一次一個地添加/丟棄變量,以下是幾種常用的做法:

標準的逐步回歸只做兩件事:根據(jù)每個步驟添加/刪除變量。

前進法:基于模型中最重要的變量,一次一個添加剩下的變量中最重要的變量。

后退法:基于模型中所有變量,一次一個刪除最不重要的變量。

這種建模方法的目的是用盡可能小的變量預測次數(shù)來最大化預測能力,它是處理更高維數(shù)據(jù)集的方法之一。

5. 嶺回歸

在談及線性回歸重點時,我們曾提到多重共線性會使參數(shù)估計值的方差增大,并過度地影響最小二乘估計值,從而降低預測精度。因此方差和偏差是導致輸出值偏離真值的罪魁禍首之一。

我們先來回顧一下線性回歸方程:Y = a + b × X + e。

如果涉及多個自變量,那它是:Y = a + Y = a + b1X1+ b2X2+ … + e

上式表現(xiàn)了偏差和誤差對最終預測值的明顯影響。為了找到方差和偏差的折中,一種可行的做法是在平方誤差的基礎上增加一個正則項λ,來解決多重共線性問題。請看以下公式:

對于機器學習/數(shù)據(jù)科學初學者 應該掌握的七種回歸分析方法

這個代價函數(shù)可以被分為兩部分,第一部分是一個最小二乘項,第二部分則是系數(shù)β的平方和,再乘以一個調(diào)節(jié)參數(shù)λ作為懲罰項,它能有效控制方差和偏差的變化:隨著λ的增大,模型方差減小而偏差增大。

嶺回歸重點:

嶺回歸的假設與最小二乘法回歸的假設相同,除了假設正態(tài)性。

嶺回歸可以縮小系數(shù)的值,但因為λ不可能為無窮大,所以它不會等于0。

這實際上是一種正則化方法,使用了l2范數(shù)。

6. Lasso回歸

同樣是解決多重共線性問題,嶺回歸是在平方誤差的基礎上增加一個正則項λ,那么Lasso回歸則把二次項改成了一次絕對值。它可以降低異常值對模型的影響,并提高整體準確度。

對于機器學習/數(shù)據(jù)科學初學者 應該掌握的七種回歸分析方法

一次項求導可以抹去變量本身,因此Lasso回歸的系數(shù)可以為0。這樣可以起來真正的特征篩選效果。

Lasso回歸重點:

Lasso回歸的假設與最小二乘法回歸的假設相同,除了假設正態(tài)性。

Lasso回歸的系數(shù)可以為0。

這實際上是一種正則化方法,使用了l1范數(shù)。

如果一組變量高度相關,Lasso回歸會選擇其中的一個變量,然后把其他的都變?yōu)?。

7. ElasticNet回歸

ElasticNet是Lasso和Ridge回歸技術的結合。它使用L1和L2范數(shù)作為懲罰項,既能用于權重非零的稀疏模型,又保持了正則化屬性。簡單來說,就是當有多個相關特征時,Lasso回歸只會選擇其中的一個變量,但ElasticNet回歸會選擇兩個。

對于機器學習/數(shù)據(jù)科學初學者 應該掌握的七種回歸分析方法

在Lasso和Ridge之間進行權衡的一個實際優(yōu)勢是,它允許Elastic-Net繼承嶺回歸的一些穩(wěn)定性。

ElasticNet回歸重點:

它鼓勵在高度相關變量的情況下的群體效應。

在選擇變量的數(shù)量上沒有限制。

受雙重收縮影響。

除了這7中常用的回歸分析方法外,貝葉斯回歸、生態(tài)學回歸和魯棒回歸也是出鏡率很高的一些選擇。

如何挑選適合的回歸模型?

當你只知道一種或兩種方法時,生活通常很簡單。相信不少讀者都聽到過這種論調(diào):如果結果是連續(xù)的,用線性回歸;如果是個二分類,就用Logistic回歸。然而隨著現(xiàn)在我們的選擇越來越多,許多人不免要深受選擇恐懼癥影響,無法做出滿意的決定。

那么面對這么多的回歸分析方法,我們該怎么選擇呢?以下是一些可以考慮的關鍵因素:

數(shù)據(jù)探索是構建預測模型不可或缺的一部,因此在選擇正確的模型前,我們可以先分析數(shù)據(jù),找到變量間的關系。

為了比較不同方法的擬合成都,我們可以分析統(tǒng)計顯著性參數(shù)、R方、調(diào)整R方、最小信息標準、BIC和誤差準則等統(tǒng)計值,或者是Mallow‘s Cp準則。將模型與所有可能的子模型進行比較來檢查模型中可能存在的偏差。

交叉驗證是評估預測模型最好的方法沒有之一。

如果你的數(shù)據(jù)集中有多個奇怪變量,你最好手動添加而不要用自動的方法。

殺雞焉用牛刀。根據(jù)你的任務選擇強大/不強大的模型。

嶺回歸、Lasso回歸和ElasticNet回歸在高維度、多重共線性情況下有較好的表現(xiàn)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴

原文標題:初學者應該掌握的七種回歸分析方法

文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    DSP5509A這個芯片,對于初學者應該從哪里開始學習?。???

    DSP5509A這個芯片,對于初學者應該從哪里開始學習?????看些什么資料啊?還有就是網(wǎng)上的視頻我也看了一部分,但是一開始就是軟件,對于硬件
    發(fā)表于 08-14 13:26

    初學者如何快速掌握

    初學者如何快速掌握
    發(fā)表于 04-22 16:30

    初學者之路—硬件學習經(jīng)驗

    初學者之路—硬件學習經(jīng)驗一文是一位搞硬件的在校研究生寫的,希望對那些初學者之路電腦網(wǎng)等處于迷茫的硬件初學者學習之路有所幫助!
    發(fā)表于 12-29 10:20 ?1.5w次閱讀

    HDL初學者謹記:學習HDL前必知

    電子發(fā)燒友網(wǎng)核心提示: 對于初學者而言,在學硬件描述語言(HDL)之前一定要注意以下幾點。算是電子發(fā)燒友網(wǎng)小編給HDL語言初學者的一點小小提示吧,希望對初學者起到一些指引作
    發(fā)表于 10-15 11:14 ?2714次閱讀

    cad初學者應該注意的問題

    很多學習CAD的新手都不免在學習過程中犯下各種各樣的錯誤,下面是小編整理出一些cad初學都應注意的問題,這此問題都是CAD初學者經(jīng)常會遇到的問題,希望下面的文章對CAD
    發(fā)表于 10-18 09:43 ?1656次閱讀

    verilog初學者學習ppt

    適合verilog初學者的教程,可以好好參考學習。
    發(fā)表于 03-25 14:01 ?32次下載

    電子學習資料[適初學者]

    適合初學者學習資料
    發(fā)表于 02-08 17:25 ?0次下載

    九張機器學習和深度學習代碼速查表分享_初學者必備

    本文作者在 Github 上建立了一個代碼速查表,對機器學習初學者來說是不可多得的一個資源。 對于初學者來講,入門
    的頭像 發(fā)表于 06-30 00:52 ?4036次閱讀
    九張<b class='flag-5'>機器</b><b class='flag-5'>學習</b>和深度<b class='flag-5'>學習</b>代碼速查表分享_<b class='flag-5'>初學者</b>必備

    機器學習初學者必看指南

    文章簡潔地介紹了機器學習的主要算法和一些偽代碼,對于初學者有很大幫助,是一篇不錯的總結文章,后期可以通過文中提到的算法展開去做一些實際問題。 引言 Google的自駕車和
    發(fā)表于 11-15 14:26 ?6972次閱讀
    <b class='flag-5'>機器</b><b class='flag-5'>學習</b>的<b class='flag-5'>初學者</b>必看指南

    最適合初學者機器人有哪些

    學習知識的最好方式是在現(xiàn)實生活中實現(xiàn)。機器人也一樣,如果你用自己的雙手創(chuàng)造他們,你就能學好它。初學者和有經(jīng)驗的機器人創(chuàng)客會在編譯和運行這些機器
    的頭像 發(fā)表于 02-05 12:52 ?3992次閱讀

    學習機器學習方法及如何運用Python

    ,如今在實體和在線的學習機器學習的資源有很多,本文整理了一些好用學習資源希望幫助初學者能更容易使用 Python 入門機器
    發(fā)表于 08-07 16:02 ?909次閱讀

    fpga開發(fā)板推薦初學者

    對于一個初學者來說,選擇一款適合學習的FPGA是整個FPGA學習生涯的必經(jīng)之路。我個人建議在選擇FPGA的時候,應該抓住如下幾個原則:
    的頭像 發(fā)表于 11-10 14:55 ?1.9w次閱讀

    給Linux初學者的一些經(jīng)驗與建議與學習方法及其學習方向

    這篇文章是寫給 Linux 初學者的,我會分享一些作為初學者應該知道的一些東西,這些內(nèi)容都是本人從事 Linux 開發(fā)工作多年的心得體會,相信會對初學者有所幫助。
    的頭像 發(fā)表于 03-19 11:33 ?2896次閱讀

    FPGA初學者必讀文檔

    FPGA初學者必讀文檔(嵌入式開發(fā)適合哪個城市)-FPGA初學者必讀文檔,為學習FPGA做好準備。
    發(fā)表于 08-04 11:39 ?32次下載
    FPGA<b class='flag-5'>初學者</b>必讀文檔

    PLC初學者必須掌握的梯形圖

    PLC初學者必須掌握大梯形圖
    發(fā)表于 05-25 16:44 ?5次下載