常見的七種迴歸技術
常見的七種迴歸技術
介紹根據受歡迎程度,線性迴歸和邏輯迴歸經常是我們做預測模型時,且第一個學習的演算法。但是如果認為迴歸就兩個演算法,就大錯特錯了。事實上我們有許多型別的迴歸方法可以去建模。每一個演算法都有其重要性和特殊性。
內容
1.什麼是迴歸分析?
2.我們為什麼要使用迴歸分析?
3.迴歸有哪些型別 ?
4.線性迴歸
5.邏輯迴歸
6.多項式迴歸
7.逐步迴歸
8.嶺迴歸
9.Lasso迴歸
10.ElasticNet迴歸
什麼是迴歸分析?
迴歸分析是研究自變數和因變數之間關係的一種預測模型技術。這些技術應用於預測,時間序列模型和找到變數之間關係。例如可以通過迴歸去研究超速與交通事故發生次數的關係。
我們為什麼要用迴歸分析?
這裡有一些使用迴歸分析的好處:它指示出自變數與因變數之間的顯著關係;它指示出多個自變數對因變數的影響。迴歸分析允許我們比較不同尺度的變數,例如:價格改變的影響和宣傳活動的次數。這些好處可以幫助市場研究者/資料分析師去除和評價用於建立預測模型裡面的變數。
迴歸有哪些型別?
我們有很多種迴歸方法用預測。這些技術可通過三種方法分類:自變數的個數、因變數的型別和迴歸線的形狀。
1.線性迴歸
線性迴歸可謂是世界上最知名的建模方法之一,也是應該是我們第一個接觸的模型。在模型中,因變數是連續型的,自變數可以使連續型或離散型的,迴歸線是線性的。
線性迴歸用最適直線(迴歸線)去建立因變數Y和一個或多個自變數X之間的關係。可以用公式來表示:
Y=a+b*X+e
a為截距,b為迴歸線的斜率,e是誤差項。
簡單線性迴歸與多元線性迴歸的差別在於:多元線性迴歸有多個(>1)自變數,而簡單線性迴歸只有一個自變數。到現在我們的問題就是:如何找到那條迴歸線?
我們可以通過最小二乘法把這個問題解決。其實最小二乘法就是線性迴歸模型的損失函式,只要把損失函式做到最小時得出的引數,才是我們最需要的引數。
我們一般用決定係數(R方)去評價模型的表現。
重點:
1.自變數與因變數之間必須要有線性關係。
2.多重共線性、自相關和異方差對多元線性迴歸的影響很大。
3.線性迴歸對異常值非常敏感,其能嚴重影響迴歸線,最終影響預測值。
4.在多元的自變數中,我們可以通過前進法,後退法和逐步法去選擇最顯著的自變數。
2.邏輯迴歸
邏輯迴歸是用來找到事件成功或事件失敗的概率。當我們的因變數是二分類(0/1,True/False,Yes/No)時我們應該使用邏輯迴歸。
重點:
1.在分類問題中使用的非常多。
2.邏輯迴歸因其應用非線性log轉換方法,使得其不需要自變數與因變數之間有線性關係。
3.為防止過擬合和低擬合,我們應該確保每個變數是顯著的。應該使用逐步迴歸方法去估計邏輯迴歸。
4.邏輯迴歸需要大樣本量,因為最大似然估計在低樣本量的情況下表現不好。
5.要求沒有共線性。
6.如果因變數是序數型的,則稱為序數型邏輯迴歸。
7.如果因變數有多個,則稱為多項邏輯迴歸。
3.多項式迴歸
如果一個迴歸,它的自變數指數超過1,則稱為多項式迴歸。可以用公式表示:
y = a + b * x^2
在這個迴歸技術中,最適的線不是一條直線,而是一條曲線。
重點:
1.很多情況下,我們為了降低誤差,經常會抵制不了使用多項式迴歸的誘惑,但事實是,我們經常會造成過擬合。所以要經常的把資料視覺化,觀察資料與模型的擬合程度。
2.特別是要看曲線的結尾部分,看它的形狀和趨勢是否有意義。高的多項式往往會產生特別古怪的預測值。
4.逐步迴歸
當我們要處理多個自變數時,我們就需要這個迴歸方法。在這個方法中選擇變數都是通過自動過程實現的,不需要人的干預。
這個工程是通過觀察統計值,比如判定係數,t值和最小資訊準則等去篩選變數。逐步迴歸變數一般是基於特定的標準加入或移除變數來擬合迴歸模型。一些常用的逐步迴歸方法如下:
1.標準逐步迴歸做兩件事情。只要是需要每一步它都會新增或移除一些變數。
2.前進法是開始於最顯著的變數然後在模型中逐漸增加次顯著變數。
3.後退法是開始於所有變數,然後逐漸移除一些不顯著變數。
4.這個模型技術的目的是為了用最少的變數去最大化模型的預測能力。它也是一種降維技術。
5.嶺迴歸
當碰到資料有多重共線性時,我們就會用到嶺迴歸。所謂多重共線性,簡單的說就是自變數之間有高度相關關係。在多重共線性中,即使是最小二乘法是無偏的,它們的方差也會很大。通過在迴歸中加入一些偏差,嶺迴歸酒會減少標準誤差。
‘嶺迴歸是一種專用於共線性資料分析的有偏估計迴歸方法,實質上是一種改良的最小二乘估計法,通過放棄最小二乘法的無偏性,以損失部分資訊、降低精度為代價獲得迴歸係數更為符合實際、更可靠的迴歸方法,對病態資料的擬合要強於最小二乘法。’ ---百度百科
嶺迴歸是通過嶺引數λ去解決多重共線性的問題。看下面的公式:
其中loss為損失函式,penalty為懲罰項。
重點:
1.嶺迴歸的假設與最小二乘法迴歸的假設相同除了假設正態性。
2.它把係數的值收縮了,但是不會為0.
3.正則化方法是使用了l2正則.
6.LASSO迴歸
和嶺迴歸類似,Lasso(least Absolute Shrinkage and Selection Operator)也是通過懲罰其迴歸係數的絕對值。看下面的公式:
Lasso迴歸和嶺迴歸不同的是,Lasso迴歸在懲罰方程中用的是絕對值,而不是平方。這就使得懲罰後的值可能會變成0.
重點:
1.其假設與最小二乘迴歸相同除了正態性。
2.其能把係數收縮到0,使得其能幫助特徵選擇。
3.這個正則化方法為l1正則化。
4.如果一組變數是高度相關的,lasso會選擇其中的一個,然後把其他的都變為0.
7.ElasticNet迴歸
ElasticNet迴歸是Lasso迴歸和嶺迴歸的組合。它會事先訓練L1和L2作為懲罰項。當許多變數是相關的時候,Elastic-net是有用的。Lasso一般會隨機選擇其中一個,而Elastic-net則會選在兩個。
與Lasso和嶺迴歸的利弊比較,一個實用的優點就是Elastic-Net會繼承一些嶺迴歸的穩定性。
重點:
1.在選擇變數的數量上沒有限制
2.雙重收縮對其有影響
3.除了這7個常用的迴歸技術,你也可以看看貝葉斯迴歸、生態學迴歸和魯棒迴歸。
如何去選擇迴歸模型
面對如此多的迴歸模型,最重要的是根據自變數因變數的型別、資料的維數和其他資料的重要特徵去選擇最合適的方法。以下是我們選擇正確迴歸模型時要主要考慮的因素:
1.資料探索是建立預測模型不可或缺的部分。它應該是在選擇正確模型之前要做的。
2.為了比較不同模型的擬合程度,我們可以分析不同的度量,比如統計顯著性引數、R方、調整R方、最小資訊標準、BIC和誤差準則。另一個是Mallow‘s Cp準則。
3.交叉驗證是驗證預測模型最好的方法。你把你的資料集分成兩組:一組用於訓練,一組用於驗證。
4.如果你的資料集有許多讓你困惑的變數,你就不應該用自動模型選擇方法,因為你不想把這些變數放在模型當中。
5.不強大的模型往往容易建立,而強大的模型很難建立。
6.迴歸正則方法在高維度和多重共線性的情況下表現的很好。
轉自
https://www.jianshu.com/p/15dd20f8d02c
https://blog.csdn.net/wanghuan203/article/details/79329427
常見的七種迴歸技術
介紹根據受歡迎程度,線性迴歸和邏輯迴歸經常是我們做預測模型時,且第一個學習的演算法。但是如果認為迴歸就兩個演算法,就大錯特錯了。事實上我們有許多型別的迴歸方法可以去建模。每一個演算法都有其重要性和特殊性。
內容
1.什麼是迴歸分析?
2.我們為什麼要使用迴歸分析?
3.迴歸有哪些型別 ?
4.線性迴歸
5.邏輯迴歸
6.多項式迴歸
7.逐步迴歸
8.嶺迴歸
9.Lasso迴歸
10.ElasticNet迴歸
什麼是迴歸分析?
迴歸分析是研究自變數和因變數之間關係的一種預測模型技術。這些技術應用於預測,時間序列模型和找到變數之間關係。例如可以通過迴歸去研究超速與交通事故發生次數的關係。
我們為什麼要用迴歸分析?
這裡有一些使用迴歸分析的好處:它指示出自變數與因變數之間的顯著關係;它指示出多個自變數對因變數的影響。迴歸分析允許我們比較不同尺度的變數,例如:價格改變的影響和宣傳活動的次數。這些好處可以幫助市場研究者/資料分析師去除和評價用於建立預測模型裡面的變數。
迴歸有哪些型別?
我們有很多種迴歸方法用預測。這些技術可通過三種方法分類:自變數的個數、因變數的型別和迴歸線的形狀。
1.線性迴歸
線性迴歸可謂是世界上最知名的建模方法之一,也是應該是我們第一個接觸的模型。在模型中,因變數是連續型的,自變數可以使連續型或離散型的,迴歸線是線性的。
線性迴歸用最適直線(迴歸線)去建立因變數Y和一個或多個自變數X之間的關係。可以用公式來表示:
Y=a+b*X+e
a為截距,b為迴歸線的斜率,e是誤差項。
簡單線性迴歸與多元線性迴歸的差別在於:多元線性迴歸有多個(>1)自變數,而簡單線性迴歸只有一個自變數。到現在我們的問題就是:如何找到那條迴歸線?
我們可以通過最小二乘法把這個問題解決。其實最小二乘法就是線性迴歸模型的損失函式,只要把損失函式做到最小時得出的引數,才是我們最需要的引數。
我們一般用決定係數(R方)去評價模型的表現。
重點:
1.自變數與因變數之間必須要有線性關係。
2.多重共線性、自相關和異方差對多元線性迴歸的影響很大。
3.線性迴歸對異常值非常敏感,其能嚴重影響迴歸線,最終影響預測值。
4.在多元的自變數中,我們可以通過前進法,後退法和逐步法去選擇最顯著的自變數。
2.邏輯迴歸
邏輯迴歸是用來找到事件成功或事件失敗的概率。當我們的因變數是二分類(0/1,True/False,Yes/No)時我們應該使用邏輯迴歸。
重點:
1.在分類問題中使用的非常多。
2.邏輯迴歸因其應用非線性log轉換方法,使得其不需要自變數與因變數之間有線性關係。
3.為防止過擬合和低擬合,我們應該確保每個變數是顯著的。應該使用逐步迴歸方法去估計邏輯迴歸。
4.邏輯迴歸需要大樣本量,因為最大似然估計在低樣本量的情況下表現不好。
5.要求沒有共線性。
6.如果因變數是序數型的,則稱為序數型邏輯迴歸。
7.如果因變數有多個,則稱為多項邏輯迴歸。
3.多項式迴歸
如果一個迴歸,它的自變數指數超過1,則稱為多項式迴歸。可以用公式表示:
y = a + b * x^2
在這個迴歸技術中,最適的線不是一條直線,而是一條曲線。
重點:
1.很多情況下,我們為了降低誤差,經常會抵制不了使用多項式迴歸的誘惑,但事實是,我們經常會造成過擬合。所以要經常的把資料視覺化,觀察資料與模型的擬合程度。
2.特別是要看曲線的結尾部分,看它的形狀和趨勢是否有意義。高的多項式往往會產生特別古怪的預測值。
4.逐步迴歸
當我們要處理多個自變數時,我們就需要這個迴歸方法。在這個方法中選擇變數都是通過自動過程實現的,不需要人的干預。
這個工程是通過觀察統計值,比如判定係數,t值和最小資訊準則等去篩選變數。逐步迴歸變數一般是基於特定的標準加入或移除變數來擬合迴歸模型。一些常用的逐步迴歸方法如下:
1.標準逐步迴歸做兩件事情。只要是需要每一步它都會新增或移除一些變數。
2.前進法是開始於最顯著的變數然後在模型中逐漸增加次顯著變數。
3.後退法是開始於所有變數,然後逐漸移除一些不顯著變數。
4.這個模型技術的目的是為了用最少的變數去最大化模型的預測能力。它也是一種降維技術。
5.嶺迴歸
當碰到資料有多重共線性時,我們就會用到嶺迴歸。所謂多重共線性,簡單的說就是自變數之間有高度相關關係。在多重共線性中,即使是最小二乘法是無偏的,它們的方差也會很大。通過在迴歸中加入一些偏差,嶺迴歸酒會減少標準誤差。
‘嶺迴歸是一種專用於共線性資料分析的有偏估計迴歸方法,實質上是一種改良的最小二乘估計法,通過放棄最小二乘法的無偏性,以損失部分資訊、降低精度為代價獲得迴歸係數更為符合實際、更可靠的迴歸方法,對病態資料的擬合要強於最小二乘法。’ ---百度百科
嶺迴歸是通過嶺引數λ去解決多重共線性的問題。看下面的公式:
其中loss為損失函式,penalty為懲罰項。
重點:
1.嶺迴歸的假設與最小二乘法迴歸的假設相同除了假設正態性。
2.它把係數的值收縮了,但是不會為0.
3.正則化方法是使用了l2正則.
6.LASSO迴歸
和嶺迴歸類似,Lasso(least Absolute Shrinkage and Selection Operator)也是通過懲罰其迴歸係數的絕對值。看下面的公式:
Lasso迴歸和嶺迴歸不同的是,Lasso迴歸在懲罰方程中用的是絕對值,而不是平方。這就使得懲罰後的值可能會變成0.
重點:
1.其假設與最小二乘迴歸相同除了正態性。
2.其能把係數收縮到0,使得其能幫助特徵選擇。
3.這個正則化方法為l1正則化。
4.如果一組變數是高度相關的,lasso會選擇其中的一個,然後把其他的都變為0.
7.ElasticNet迴歸
ElasticNet迴歸是Lasso迴歸和嶺迴歸的組合。它會事先訓練L1和L2作為懲罰項。當許多變數是相關的時候,Elastic-net是有用的。Lasso一般會隨機選擇其中一個,而Elastic-net則會選在兩個。
與Lasso和嶺迴歸的利弊比較,一個實用的優點就是Elastic-Net會繼承一些嶺迴歸的穩定性。
重點:
1.在選擇變數的數量上沒有限制
2.雙重收縮對其有影響
3.除了這7個常用的迴歸技術,你也可以看看貝葉斯迴歸、生態學迴歸和魯棒迴歸。
如何去選擇迴歸模型
面對如此多的迴歸模型,最重要的是根據自變數因變數的型別、資料的維數和其他資料的重要特徵去選擇最合適的方法。以下是我們選擇正確迴歸模型時要主要考慮的因素:
1.資料探索是建立預測模型不可或缺的部分。它應該是在選擇正確模型之前要做的。
2.為了比較不同模型的擬合程度,我們可以分析不同的度量,比如統計顯著性引數、R方、調整R方、最小資訊標準、BIC和誤差準則。另一個是Mallow‘s Cp準則。
3.交叉驗證是驗證預測模型最好的方法。你把你的資料集分成兩組:一組用於訓練,一組用於驗證。
4.如果你的資料集有許多讓你困惑的變數,你就不應該用自動模型選擇方法,因為你不想把這些變數放在模型當中。
5.不強大的模型往往容易建立,而強大的模型很難建立。
6.迴歸正則方法在高維度和多重共線性的情況下表現的很好。
轉自
https://www.jianshu.com/p/15dd20f8d02c
https://blog.csdn.net/wanghuan203/article/details/79329427