我們為什么使用回歸分析?

如上所述,回歸分析估計了兩個或多個變量之間的關系。下面,讓我們舉一個簡單的例子來理解它:

比如說,在當前的經濟條件下,你要估計一家公司的銷售額增長情況?,F在,你有公司最新的數據,這些數據顯示出銷售額增長大約是經濟增長的2.5倍。那么使用回歸分析,我們就可以根據當前和過去的信息來預測未來公司的銷售情況。

使用回歸分析的好處良多。具體如下:

  1. 它表明自變量和因變量之間的顯著關系;
  2. 它表明多個自變量對一個因變量的影響強度。

回歸分析也允許我們去比較那些衡量不同尺度的變量之間的相互影響,如價格變動與促銷活動數量之間聯系。這些有利于幫助市場研究人員,數據分析人員以及數據科學家排除并估計出一組最佳的變量,用來構建預測模型。

我們有多少種回歸模型?

有各種各樣的回歸技術用于預測。這些技術主要有三個度量(自變量的個數,因變量的類型以及回歸線的形狀)。我們將在下面的部分詳細討論它們。

對于那些有創意的人,如果你覺得有必要使用上面這些參數的一個組合,你甚至可以創造出一個沒有被使用過的回歸模型。但在你開始之前,先了解如下最常用的回歸方法:

1. Linear Regression線性回歸

它是最為人熟知的建模技術之一。線性回歸通常是人們在學習預測模型時首選的技術之一。在這種技術中,因變量是連續的,自變量可以是連續的也可以是離散的,回歸線的性質是線性的。

線性回歸使用最佳的擬合直線(也就是回歸線)在因變量(Y)和一個或多個自變量(X)之間建立一種關系。

用一個方程式來表示它,即Y=a+b*X+e,其中a表示截距,b表示直線的斜率,e是誤差項。這個方程可以根據給定的預測變量(s)來預測目標變量的值。

一元線性回歸和多元線性回歸的區別在于,多元線性回歸有(>1)個自變量,而一元線性回歸通常只有1個自變量。現在的問題是“我們如何得到一個最佳的擬合線呢?”。

如何獲得最佳擬合線(a和b的值)?

這個問題可以使用最小二乘法輕松地完成。最小二乘法也是用于擬合回歸線最常用的方法。對于觀測數據,它通過最小化每個數據點到線的垂直偏差平方和來計算最佳擬合線。因為在相加時,偏差先平方,所以正值和負值沒有抵消。

我們可以使用R-square指標來評估模型性能。想了解這些指標的詳細信息,可以閱讀:模型性能指標Part 1,Part 2。

要點:
1.自變量與因變量之間必須有線性關系。
2.多元回歸存在多重共線性,自相關性和異方差性。
3.線性回歸對異常值非常敏感。它會嚴重影響回歸線,最終影響預測值。
4.多重共線性會增加系數估計值的方差,使得在模型輕微變化下,估計非常敏感。結果就是系數估計值不穩定
5.在多個自變量的情況下,我們可以使用向前選擇法,向后剔除法和逐步篩選法來選擇最重要的自變量。

2. Logistic Regression邏輯回歸

邏輯回歸是用來計算“事件=Success”和“事件=Failure”的概率。

當因變量的類型屬于二元(1 / 0,真/假,是/否)變量時,我們就應該使用邏輯回歸。這里,Y的值從0到1,它可以用下方程表示。

odds= p/ (1-p) = probability of event occurrence / probability of not event occurrenceln(odds) = ln(p/(1-p))logit(p) = ln(p/(1-p)) = b0+b1X1+b2X2+b3X3….+bkXk

上述式子中,p表述具有某個特征的概率。你應該會問這樣一個問題:“我們為什么要在公式中使用對數log呢?”。

因為在這里我們使用的是的二項分布(因變量),我們需要選擇一個對于這個分布最佳的連結函數。它就是Logit函數。在上述方程中,通過觀測樣本的極大似然估計值來選擇參數,而不是最小化平方和誤差(如在普通回歸使用的)。

要點:1.它廣泛的用于分類問題。2.邏輯回歸不要求自變量和因變量是線性關系。它可以處理各種類型的關系,因為它對預測的相對風險指數OR使用了一個非線性的log轉換。3.為了避免過擬合和欠擬合,我們應該包括所有重要的變量。有一個很好的方法來確保這種情況,就是使用逐步篩選方法來估計邏輯回歸。4.它需要大的樣本量,因為在樣本數量較少的情況下,極大似然估計的效果比普通的最小二乘法差。5.自變量不應該相互關聯的,即不具有多重共線性。然而,在分析和建模中,我們可以選擇包含分類變量相互作用的影響。6.如果因變量的值是定序變量,則稱它為序邏輯回歸。

7.如果因變量是多類的話,則稱它為多元邏輯回歸。

3. Polynomial Regression多項式回歸

對于一個回歸方程,如果自變量的指數大于1,那么它就是多項式回歸方程。如下方程所示:y=a+b*x^2

在這種回歸技術中,最佳擬合線不是直線。而是一個用于擬合數據點的曲線。

重點:

雖然會有一個誘導可以擬合一個高次多項式并得到較低的錯誤,但這可能會導致過擬合。你需要經常畫出關系圖來查看擬合情況,并且專注于保證擬合合理,既沒有過擬合又沒有欠擬合。

下面是一個圖例,可以幫助理解:

明顯地向兩端尋找曲線點,看看這些形狀和趨勢是否有意義。更高次的多項式最后可能產生怪異的推斷結果。

4. Stepwise Regression逐步回歸

在處理多個自變量時,我們可以使用這種形式的回歸。在這種技術中,自變量的選擇是在一個自動的過程中完成的,其中包括非人為操作。

這一壯舉是通過觀察統計的值,如R-square,t-stats和AIC指標,來識別重要的變量。逐步回歸通過同時添加/刪除基于指定標準的協變量來擬合模型。

下面列出了一些最常用的逐步回歸方法:

這種建模技術的目的是使用最少的預測變量數來最大化預測能力。這也是處理高維數據集的方法之一。

5. Ridge Regression嶺回歸

嶺回歸分析是一種用于存在多重共線性(自變量高度相關)數據的技術。在多重共線性情況下,盡管最小二乘法(OLS)對每個變量很公平,但它們的差異很大,使得觀測值偏移并遠離真實值。嶺回歸通過給回歸估計上增加一個偏差度,來降低標準誤差。

上面,我們看到了線性回歸方程。還記得嗎?它可以表示為:

y=a+b*x這個方程也有一個誤差項。完整的方程是:

y=a+b*x+e (error term),  [error term is the value needed to correct for a prediction error between the observed and predicted value]

=> y=a+y= a+ b1x1+ b2x2+….+e, for multiple independent variables.

在一個線性方程中,預測誤差可以分解為2個子分量。一個是偏差,一個是方差。預測錯誤可能會由這兩個分量或者這兩個中的任何一個造成。在這里,我們將討論由方差所造成的有關誤差。

嶺回歸通過收縮參數λ(lambda)解決多重共線性問題??聪旅娴墓剑?/p>

在這個公式中,有兩個組成部分。第一個是最小二乘項,另一個是β2(β-平方)的λ倍,其中β是相關系數。為了收縮參數把它添加到最小二乘項中以得到一個非常低的方差。

要點:1.除常數項以外,這種回歸的假設與最小二乘回歸類似;2.它收縮了相關系數的值,但沒有達到零,這表明它沒有特征選擇功能3.這是一個正則化方法,并且使用的是L2正則化。

6. Lasso Regression套索回歸

它類似于嶺回歸,Lasso (Least Absolute Shrinkage and Selection Operator)也會懲罰回歸系數的絕對值大小。此外,它能夠減少變化程度并提高線性回歸模型的精度??纯聪旅娴墓剑?/p>

Lasso 回歸與Ridge回歸有一點不同,它使用的懲罰函數是絕對值,而不是平方。這導致懲罰(或等于約束估計的絕對值之和)值使一些參數估計結果等于零。使用懲罰值越大,進一步估計會使得縮小值趨近于零。這將導致我們要從給定的n個變量中選擇變量。

要點:1.除常數項以外,這種回歸的假設與最小二乘回歸類似;2.它收縮系數接近零(等于零),這確實有助于特征選擇;

3.這是一個正則化方法,使用的是L1正則化;

如果預測的一組變量是高度相關的,Lasso 會選出其中一個變量并且將其它的收縮為零。

7. ElasticNet回歸

ElasticNet是Lasso和Ridge回歸技術的混合體。它使用L1來訓練并且L2優先作為正則化矩陣。當有多個相關的特征時,ElasticNet是很有用的。Lasso 會隨機挑選他們其中的一個,而ElasticNet則會選擇兩個。

Lasso和Ridge之間的實際的優點是,它允許ElasticNet繼承循環狀態下Ridge的一些穩定性。

要點:1.在高度相關變量的情況下,它會產生群體效應;2.選擇變量的數目沒有限制;

3.它可以承受雙重收縮。

除了這7個最常用的回歸技術,你也可以看看其他模型,如Bayesian、Ecological和Robust回歸。

如何正確選擇回歸模型?

當你只知道一個或兩個技術時,生活往往很簡單。我知道的一個培訓機構告訴他們的學生,如果結果是連續的,就使用線性回歸。如果是二元的,就使用邏輯回歸!然而,在我們的處理中,可選擇的越多,選擇正確的一個就越難。類似的情況下也發生在回歸模型中。

在多類回歸模型中,基于自變量和因變量的類型,數據的維數以及數據的其它基本特征的情況下,選擇最合適的技術非常重要。以下是你要選擇正確的回歸模型的關鍵因素

1.數據探索是構建預測模型的必然組成部分。在選擇合適的模型時,比如識別變量的關系和影響時,它應該首選的一步。

2. 比較適合于不同模型的優點,我們可以分析不同的指標參數,如統計意義的參數,R-square,Adjusted R-square,AIC,BIC以及誤差項,另一個是Mallows’ Cp準則。這個主要是通過將模型與所有可能的子模型進行對比(或謹慎選擇他們),檢查在你的模型中可能出現的偏差。

3.交叉驗證是評估預測模型最好額方法。在這里,將你的數據集分成兩份(一份做訓練和一份做驗證)。使用觀測值和預測值之間的一個簡單均方差來衡量你的預測精度。

4.如果你的數據集是多個混合變量,那么你就不應該選擇自動模型選擇方法,因為你應該不想在同一時間把所有變量放在同一個模型中。

5.它也將取決于你的目的。可能會出現這樣的情況,一個不太強大的模型與具有高度統計學意義的模型相比,更易于實現。

6.回歸正則化方法(Lasso,Ridge和ElasticNet)在高維和數據集變量之間多重共線性情況下運行良好。

線性回歸的假設是什么?

線性回歸有四個假設:

什么是殘差,它如何用于評估回歸模型?

殘差是指預測值與觀測值之間的誤差。它測量數據點與回歸線的距離。它是通過從觀察值中減去預測值的計算機。
殘差圖是評估回歸模型的好方法。它是一個圖表,在垂直軸上顯示所有殘差,在 x 軸上顯示特征。如果數據點隨機散布在沒有圖案的線上,那么線性回歸模型非常適合數據,否則我們應該使用非線性模型。

如何區分線性回歸模型和非線性回歸模型?

兩者都是回歸問題的類型。兩者的區別在于他們訓練的數據。
線性回歸模型假設特征和標簽之間存在線性關系,這意味著如果我們獲取所有數據點并將它們繪制成線性(直線)線應該適合數據。
非線性回歸模型假設變量之間沒有線性關系。非線性(曲線)線應該能夠正確地分離和擬合數據。

找出數據是線性還是非線性的三種最佳方法:

  1. 殘差圖;
  2. 散點圖;
  3. 假設數據是線性的,訓練一個線性模型并通過準確率進行評估。

什么是多重共線性,它如何影響模型性能?

當某些特征彼此高度相關時,就會發生多重共線性。相關性是指表示一個變量如何受到另一個變量變化影響的度量。
如果特征 a 的增加導致特征 b 的增加,那么這兩個特征是正相關的。如果 a 的增加導致特征 b 的減少,那么這兩個特征是負相關的。在訓練數據上有兩個高度相關的變量會導致多重共線性,因為它的模型無法在數據中找到模式,從而導致模型性能不佳。所以在訓練模型之前首先要盡量消除多重共線性。

異常值如何影響線性回歸模型的性能?

異常值是值與數據點的平均值范圍不同的數據點。換句話說,這些點與數據不同或在第 3 標準之外。

線性回歸模型試圖找到一條可以減少殘差的最佳擬合線。如果數據包含異常值,則最佳擬合線將向異常值移動一點,從而增加錯誤率并得出具有非常高 MSE 的模型。

什么是 MSE 和 MAE 有什么區別?

MSE 代表均方誤差,它是實際值和預測值之間的平方差。而 MAE 是目標值和預測值之間的絕對差。
MSE 會懲罰大錯誤,而 MAE 不會。隨著 MSE 和 MAE 的值都降低,模型趨向于一條更好的擬合線。

L1 和 L2 正則化是什么,應該在什么時候使用?

機器學習中,我們的主要目標是創建一個可以在訓練和測試數據上表現更好的通用模型,但是在數據非常少的情況下,基本的線性回歸模型往往會過度擬合,因此我們會使用 l1 和l2 正則化。
L1 正則化或 lasso 回歸通過在成本函數內添加添加斜率的絕對值作為懲罰項。有助于通過刪除斜率值小于閾值的所有數據點來去除異常值。
L2 正則化或ridge 回歸增加了相當于系數大小平方的懲罰項。它會懲罰具有較高斜率值的特征。
l1 和 l2 在訓練數據較少、方差高、預測特征大于觀察值以及數據存在多重共線性的情況下都很有用。

異方差是什么意思?

它是指最佳擬合線周圍的數據點的方差在一個范圍內不一樣的情況。它導致殘差的不均勻分散。如果它存在于數據中,那么模型傾向于預測無效輸出。檢驗異方差的最好方法之一是繪制殘差圖。
數據內部異方差的最大原因之一是范圍特征之間的巨大差異。例如,如果我們有一個從 1 到 100000 的列,那么將值增加 10% 不會改變較低的值,但在較高的值時則會產生非常大的差異,從而產生很大的方差差異的數據點。

方差膨脹因子的作用是什么的作用是什么?

方差膨脹因子(vif)用于找出使用其他自變量可預測自變量的程度。
讓我們以具有 v1、v2、v3、v4、v5 和 v6 特征的示例數據為例?,F在,為了計算 v1 的 vif,將其視為一個預測變量,并嘗試使用所有其他預測變量對其進行預測。如果 VIF 的值很小,那么最好從數據中刪除該變量。因為較小的值表示變量之間的高相關性。

逐步回歸(stepwise regression)如何工作?

逐步回歸是在假設檢驗的幫助下,通過移除或添加預測變量來創建回歸模型的一種方法。它通過迭代檢驗每個自變量的顯著性來預測因變量,并在每次迭代之后刪除或添加一些特征。它運行n次,并試圖找到最佳的參數組合,以預測因變量的觀測值和預測值之間的誤差最小。
它可以非常高效地管理大量數據,并解決高維問題。

除了MSE 和 MAE 外回歸還有什么重要的指標嗎?

我們用一個回歸問題來介紹這些指標,我們的其中輸入是工作經驗,輸出是薪水。下圖顯示了為預測薪水而繪制的線性回歸線。

指標一:平均絕對誤差(MAE)

平均絕對誤差 (MAE) 是最簡單的回歸度量。它將每個實際值和預測值的差值相加,最后除以觀察次數。為了使回歸模型被認為是一個好的模型,MAE 應該盡可能小。
MAE的優點是:簡單易懂。結果將具有與輸出相同的單位。例如:如果輸出列的單位是 LPA,那么如果 MAE 為 1.2,那么我們可以解釋結果是 +1.2LPA 或 -1.2LPA,MAE 對異常值相對穩定(與其他一些回歸指標相比,MAE 受異常值的影響較?。?。
MAE的缺點是:MAE使用的是模函數,但模函數不是在所有點處都可微的,所以很多情況下不能作為損失函數。

指標二:均方誤差(MSE)

MSE取每個實際值和預測值之間的差值,然后將差值平方并將它們相加,最后除以觀測數量。為了使回歸模型被認為是一個好的模型,MSE 應該盡可能小。
MSE的優點:平方函數在所有點上都是可微的,因此它可以用作損失函數。
MSE的缺點:由于 MSE 使用平方函數,結果的單位是輸出的平方。因此很難解釋結果。由于它使用平方函數,如果數據中有異常值,則差值也會被平方,因此,MSE 對異常值不穩定。

指標三:均方根誤差 (RMSE)

均方根誤差(RMSE)取每個實際值和預測值之間的差值,然后將差值平方并將它們相加,最后除以觀測數量。然后取結果的平方根。因此,RMSE 是 MSE 的平方根。為了使回歸模型被認為是一個好的模型,RMSE 應該盡可能小。
RMSE 解決了 MSE 的問題,單位將與輸出的單位相同,因為它取平方根,但仍然對異常值不那么穩定。
上述指標取決于我們正在解決的問題的上下文, 我們不能在不了解實際問題的情況下,只看 MAE、MSE 和 RMSE 的值來判斷模型的好壞。

指標四:R2 score

如果我們沒有任何輸入數據,但是想知道他在這家公司能拿到多少薪水,那么我們能做的最好的事情就是給他們所有員工薪水的平均值。

R2 score 給出的值介于 0 到 1 之間,可以針對任何上下文進行解釋。它可以理解為是擬合度的好壞。
SSR 是回歸線的誤差平方和,SSM 是均線誤差的平方和。我們將回歸線與平均線進行比較。

如果我們模型的 R2 得分為 0.8,這意味著可以說模型能夠解釋 80% 的輸出方差。也就是說,80%的工資變化可以用輸入(工作年限)來解釋,但剩下的20%是未知的。
如果我們的模型有2個特征,工作年限和面試分數,那么我們的模型能夠使用這兩個輸入特征解釋80%的工資變化。
R2的缺點:
隨著輸入特征數量的增加,R2會趨于相應的增加或者保持不變,但永遠不會下降,即使輸入特征對我們的模型不重要(例如,將面試當天的氣溫添加到我們的示例中,R2是不會下降的即使溫度對輸出不重要)。

指標五:Adjusted R2 score

上式中R2為R2,n為觀測數(行),p為獨立特征數。Adjusted R2解決了R2的問題。
當我們添加對我們的模型不那么重要的特性時,比如添加溫度來預測工資…..

當添加對模型很重要的特性時,比如添加面試分數來預測工資……

文章轉自微信公眾號@算法進階

上一篇:

圖解機器學習神器:Scikit-Learn

下一篇:

金融風控的遷移學習及實踐(Tabular Data)
#你可能也喜歡這些API文章!

我們有何不同?

API服務商零注冊

多API并行試用

數據驅動選型,提升決策效率

查看全部API→
??

熱門場景實測,選對API

#AI文本生成大模型API

對比大模型API的內容創意新穎性、情感共鳴力、商業轉化潛力

25個渠道
一鍵對比試用API 限時免費

#AI深度推理大模型API

對比大模型API的邏輯推理準確性、分析深度、可視化建議合理性

10個渠道
一鍵對比試用API 限時免費