轉(zhuǎn)載自丨沈浩老師 來源丨h(huán)ttps://www./blog/2015/08/comprehensive-guide-regression/ 編輯丨極市平臺 前言機(jī)器學(xué)習(xí)者對線性回歸和邏輯回歸這兩種分析方法一定不陌生,,可以說它們是最重要的回歸分析技術(shù),但千萬不要認(rèn)為回歸分析僅限于這兩種方法,。事實(shí)上,,有無數(shù)種形式的回歸,每種形式都有其自身的重要性和最適合應(yīng)用的特定條件,。在本文中,,我們將簡單地介紹7種最常用的回歸類型,一起來看看吧~ 1 什么是回歸分析,?回歸分析是一種預(yù)測建模技術(shù),,它研究的是因變量(目標(biāo))和自變量(預(yù)測因子)之間的關(guān)系。通常將這種技術(shù)用于預(yù)測分析,、時(shí)間序列建模以及發(fā)現(xiàn)變量間的因果關(guān)系,。例如,我們要研究司機(jī)的魯莽駕駛和其交通事故數(shù)量之間的關(guān)系,,最好的方法就是回歸分析,。 回歸分析是建模和分析數(shù)據(jù)的重要工具。其核心思想是,,通過將曲線或直線擬合到數(shù)據(jù)點(diǎn),以使各數(shù)據(jù)點(diǎn)到曲線或直線的距離差最小化,。太抽象,?沒關(guān)系,我們將在下文中詳細(xì)解釋這一點(diǎn),。 2 為什么要使用回歸分析,?如前所述,回歸分析通常用于估計(jì)兩個(gè)或多個(gè)變量間的關(guān)系,。舉一個(gè)簡單的例子,,假設(shè)你要根據(jù)當(dāng)前的經(jīng)濟(jì)狀況估算一家公司的銷售額增長情況,你手中的公司最新數(shù)據(jù)顯示,,銷售額增長約為經(jīng)濟(jì)增長的2.5倍,,那么,使用回歸分析,,我們就可以根據(jù)當(dāng)前和過去的數(shù)據(jù)預(yù)測公司未來的銷售情況,。 使用回歸分析主要有以下優(yōu)點(diǎn): ① 它可以表明自變量和因變量之間的顯著關(guān)系 ② 它可以表明多個(gè)自變量對一個(gè)因變量的不同影響強(qiáng)度 ③ 回歸分析還允許我們?nèi)ケ容^用不同尺度衡量的變量之間的相互影響,如價(jià)格變化與促銷活動(dòng)數(shù)量之間的聯(lián)系 這些優(yōu)點(diǎn)都有助于我們排除無關(guān)變量,,并評估出一組用于構(gòu)建預(yù)測模型的最佳變量,。 3 七種常見的回歸模型有各種各樣的回歸技術(shù)可用于進(jìn)行預(yù)測分析,這些技術(shù)主要從自變量個(gè)數(shù),、因變量類型,、回歸線形狀這三個(gè)方面度量,。 使用這些參數(shù)的組合,我們甚至可以創(chuàng)造出一個(gè)從未被使用過的回歸模型,。但現(xiàn)在,,讓我們先來了解一下最常見的回歸方法吧~ 1. 線性回歸(Linear Regression)線性回歸通常是人們在學(xué)習(xí)預(yù)測建模時(shí)首選的技術(shù)之一。它的因變量是連續(xù)的,,自變量可以是連續(xù)的也可以是離散的,,并且回歸線是線性的。 線性回歸使用最佳擬合直線(也就是回歸線)在因變量(Y)和一個(gè)或多個(gè)自變量(X)之間建立一種關(guān)系,。它由方程式Y(jié)=a+b*X+e表示,,其中a表示截距,b表示直線的斜率,,e是誤差項(xiàng),。這個(gè)方程可用于根據(jù)給定的預(yù)測變量來預(yù)測目標(biāo)變量的值。 一元線性回歸和多元線性回歸的區(qū)別在于,,多元線性回歸有(>1)個(gè)自變量,,而一元線性回歸通常只有1個(gè)自變量。 那么,,我們?nèi)绾蔚玫揭粋€(gè)最佳的擬合線呢,?使用最小二乘法可以輕松完成。最小二乘法也是用于擬合回歸線最常用的方法,。它通過最小化每個(gè)數(shù)據(jù)點(diǎn)到線的垂直偏差的平方和來計(jì)算觀測數(shù)據(jù)的最佳擬合線,。由于偏差先平方再相加,所以正值和負(fù)值之間不會抵消,。 我們可以使用R-square指標(biāo)來評估模型性能,。在使用線性回歸時(shí),我們需要注意: ① 自變量和因變量之間必須要有線性關(guān)系 ② 多元線性回歸存在多重共線性,,自相關(guān)性和異方差性 ③ 線性回歸對異常值非常敏感,,它會嚴(yán)重影響回歸線,并最終影響預(yù)測值 ④ 多重共線性會增加系數(shù)估計(jì)值的方差,,并使得估計(jì)對模型的輕微變化也非常敏感,,從而導(dǎo)致系數(shù)估計(jì)值不穩(wěn)定 ⑤ 在有多個(gè)自變量的情況下,我們可以使用向前選擇法,,向后剔除法和逐步篩選法來選擇最重要的自變量 2. 邏輯回歸(Logistic Regression)邏輯回歸用于計(jì)算“事件=Success”和“事件=Failure”的概率,。當(dāng)因變量是二元變量(1/0,真/假,,是/否)時(shí),,我們應(yīng)該使用邏輯回歸。其中,Y的取值范圍是0到1,,可以用以下等式表示: odds=p/(1-p)=事件發(fā)生的概率/事件不發(fā)生的概率 ln(odds) = ln(p/(1-p)) logit(p) = ln(p/(1-p)) = b0+b1X1+b2X2+b3X3....+bkXk 在上式中,,p表示具有某個(gè)特征的概率。你可能會問,,為什么要在公式中使用對數(shù)log呢,?因?yàn)樵谶@里我們對因變量使用的是二項(xiàng)分布,就需要選擇一個(gè)對這個(gè)分布來說最佳的連結(jié)函數(shù)——Logit函數(shù),。在上述方程中,,通過觀測樣本的極大似然估計(jì)值來選擇參數(shù),而不是最小化平方誤差的總和(在普通回歸中使用的),。 劃重點(diǎn): ① 邏輯回歸被廣泛用于分類問題 ② 邏輯回歸不要求自變量和因變量間具有線性關(guān)系,,它甚至可以處理各種類型的關(guān)系,因?yàn)樗鼘︻A(yù)測的相對風(fēng)險(xiǎn)指數(shù)OR使用了一個(gè)非線性的log轉(zhuǎn)換 ③ 為了避免過擬合和欠擬合,,我們應(yīng)該使用所有重要的變量,。確保這一點(diǎn)的一個(gè)很好的方法是,使用逐步篩選來估計(jì)邏輯回歸 ④ 邏輯回歸需要很大的樣本量,,因?yàn)樵跇颖緮?shù)量較少的情況下,,極大似然估計(jì)的效果還不如普通的最小二乘法 ⑤ 使用的自變量不應(yīng)該是相互關(guān)聯(lián)的,即不具有多重共線性,。然而,,在分析和建模時(shí),我們可以選擇包含分類變量相互作用的影響 ⑥ 如果因變量的值是序數(shù),,則稱它為序邏輯回歸 ⑦ 如果因變量是多類的,,則稱它為多元邏輯回歸 3. 多項(xiàng)式回歸(Polynomial Regression)如果一個(gè)回歸方程的自變量的指數(shù)大于1,那么它就是多項(xiàng)式回歸方程,。可表示為: y = a + b * x ^ 2 在這種回歸技術(shù)中,,最佳擬合線不是直線,,而是一條用于擬合數(shù)據(jù)點(diǎn)的曲線(如下圖所示) 劃重點(diǎn): 雖然可以嘗試擬合一個(gè)更高階的多項(xiàng)式以獲得較低的誤差,但這可能會導(dǎo)致過擬合,。你需要經(jīng)常畫出關(guān)系圖來查看擬合情況,,并確保既沒有過擬合又沒有欠擬合。下面是一個(gè)圖例,,可以幫助理解: 尤其要注意向兩端尋找曲線點(diǎn),,看看這些形狀和趨勢是否有意義,高階多項(xiàng)式最終可能會產(chǎn)生奇怪的結(jié)果,。 4.逐步回歸(Stepwise Regression)當(dāng)要處理多個(gè)自變量時(shí),,我們可以使用這種形式的回歸。在這種技術(shù)中,自變量的選擇是在一個(gè)自動(dòng)的過程中完成的,,該過程無需人工干預(yù),。具體實(shí)現(xiàn)是通過觀察R-square,t-stats和AIC指標(biāo)等統(tǒng)計(jì)值來識別重要變量,。 逐步回歸可以通過基于指定條件一次添加或刪除一個(gè)協(xié)變量來擬合回歸模型,。下面是一些最常用的逐步回歸方法: ① 標(biāo)準(zhǔn)逐步回歸,根據(jù)每個(gè)步驟的需要添加和刪除預(yù)測變量 ② 向前選擇法,,從模型中最重要的預(yù)測變量開始,,然后在每一步中添加變量 ③ 向后剔除法,從模型中的所有預(yù)測變量開始,,然后在每一步中去除最低有效變量 逐步回歸建模技術(shù)的目的是,,使用最少的預(yù)測變量來最大化預(yù)測能力。這也是處理高維數(shù)據(jù)集的方法之一,。 5.嶺回歸(Ridge Regression)嶺回歸分析用于當(dāng)數(shù)據(jù)存在多重共線性(自變量高度相關(guān))時(shí),。在多重共線的情況下,即使最小二乘法(OLS)對每個(gè)變量是無偏的,,它們的方差也很大,,這使得觀測值偏離了真實(shí)值。嶺回歸通過在回歸估計(jì)中增加一個(gè)偏差度,,來降低標(biāo)準(zhǔn)誤差,。 你還記得我們在上面提到的線性回歸方程嗎?它可以表示為: y = a + b * x 添加誤差項(xiàng)后,,等式變?yōu)椋?/span> y = a + b * x + e 當(dāng)有多個(gè)自變量時(shí)可寫為: y = a + b1x1 + b2x2 + .... + e 其中,,e是誤差項(xiàng),即校正觀測值和預(yù)測值間的誤差所需的值 在線性方程中,,預(yù)測誤差可以分解為兩部分:偏差和方差,。它們中的一個(gè)或兩個(gè)都可能會導(dǎo)致預(yù)測錯(cuò)誤。在這里,,我們將討論由方差引起的誤差,。 嶺回歸通過收縮參數(shù)λ解決多重共線性問題??聪旅娴墓?/span> 這個(gè)公式有兩個(gè)組成部分,,第一個(gè)是最小二乘項(xiàng),第二個(gè)是相關(guān)系數(shù)β平方和的λ倍,,把它添加到最小二乘項(xiàng)以縮小參數(shù),,從而得到一個(gè)非常低的方差。 劃重點(diǎn): ① 除常數(shù)項(xiàng)外,,嶺回歸的假設(shè)與最小二乘回歸類似,; ② 嶺回歸縮小了相關(guān)系數(shù)的值,,但不會達(dá)到零,這表明它沒有特征選擇功能 ③ 這是一個(gè)正則化方法,,并且使用的是L2正則化,。 6. 套索回歸(Lasso Regression)類似于嶺回歸,“套索”(Lasso,,最小絕對收縮和選擇算子)也會懲罰回歸系數(shù)的絕對值大小,。此外,它能夠減少變化程度并提高線性回歸模型的精度,??纯聪旅娴墓剑?/span> 套索回歸與嶺回歸的區(qū)別之處在于,它使用的懲罰函數(shù)是絕對值而不是平方,。這導(dǎo)致懲罰值(或等于約束估計(jì)的絕對值之和)使一些參數(shù)估計(jì)結(jié)果等于零,。使用的懲罰值越大,進(jìn)一步估計(jì)會使得縮小值趨近于零,。這將導(dǎo)致我們要從給定的n個(gè)變量中選擇變量,。 劃重點(diǎn): ① 除常數(shù)項(xiàng)以外,這種回歸的假設(shè)與最小二乘回歸類似 ② 套索回歸將系數(shù)縮小至接近零(等于零),,將有助于特征選擇 ③ 這是一個(gè)正則化方法,,使用的是L1正則化; ④ 如果一組預(yù)測變量是高度相關(guān)的,,套索回歸會選出其中一個(gè)并將其它變量收縮為零 7. ElasticNet回歸ElasticNet回歸是套索回歸和嶺回歸的結(jié)合,,它使用L1和L2正則化器進(jìn)行訓(xùn)練。當(dāng)有多個(gè)相互關(guān)聯(lián)的特征時(shí),,ElasticNet回歸是很有用的,,套索回歸會隨機(jī)挑選這些特征中的一個(gè),而ElasticNet回歸會都選 在套索回歸和嶺回歸之間進(jìn)行折中的一個(gè)優(yōu)點(diǎn)是,,它允許ElasticNet回歸繼承循環(huán)狀態(tài)下嶺回歸的某些穩(wěn)定性,。 劃重點(diǎn): ① 在變量高度相關(guān)的情況下,它會產(chǎn)生群體效應(yīng) ② 選擇變量的數(shù)目沒有限制 ③ 它可以承受雙重收縮 除了這7種最常用的回歸方法,,還有一些其他的回歸模型,,如Bayesian、Ecological和Robust回歸,。 4 如何選擇正確的回歸模型?此前,,你可能會有這樣的結(jié)論:如果結(jié)果是連續(xù)的,,就使用線性回歸;如果是二元的,,就使用邏輯回歸,。然而,,在了解了另外5種回歸方法后,在回歸建模時(shí)你可能會有“選擇困難癥“,。 別擔(dān)心,!還記得我們在前面提到的嗎?在多種類型的回歸模型中,,我們需要根據(jù)自變量和因變量的類型,、數(shù)據(jù)的維數(shù)以及數(shù)據(jù)的其它基本特征,來選擇最合適的方法,。以下列出了一些在選擇時(shí)需考慮的關(guān)鍵因素: ① 數(shù)據(jù)探索是預(yù)測建模必不可少的一部分,。在選擇合適的模型之前,比如確定變量的關(guān)系和影響時(shí),,它應(yīng)該是你進(jìn)行的第一步 ② 我們可以通過分析不同指標(biāo)參數(shù),,如R-square、調(diào)整后的 R-square,、AIC,、BIC以及誤差項(xiàng)等,來比較不同模型的擬合程度,。另外也可以使用Mallows’ Cp準(zhǔn)則,,通過將模型與所有可能的子模型進(jìn)行對比,檢查在你的模型中可能出現(xiàn)的偏差 ③ 交叉驗(yàn)證是評估預(yù)測模型的最佳方法,。將數(shù)據(jù)集分成訓(xùn)練集和驗(yàn)證集,,使用觀測值和預(yù)測值之間的一個(gè)簡單均方差可以衡量你的模型的預(yù)測精度 ④ 如果數(shù)據(jù)集中有多個(gè)混合變量,那么就不應(yīng)該使用自動(dòng)模型選擇方法,,畢竟你應(yīng)該不想同時(shí)把所有變量放在一個(gè)模型中 ⑤ 取決于你的目的,,與具有高度統(tǒng)計(jì)學(xué)意義的模型相比,功能較弱的模型更易于實(shí)現(xiàn) ⑥ 在高維數(shù)據(jù)集,,以及數(shù)據(jù)集變量間有多重共線性的情況下,,回歸正則化方法(套索回歸、嶺回歸和ElasticNet回歸)效果很好 |
|