柚子快報激活碼778899分享:【數(shù)學建模】插值、擬合與回歸
柚子快報激活碼778899分享:【數(shù)學建模】插值、擬合與回歸
目錄
1 插值1.1 插值的定義1.2 多項式插值1.2.1 拉格朗日插值法1.2.2 牛頓插值法
1.3 分段插值1.3.1 分段三次埃爾米特插值1.3.2 三次樣條插值
1.4 n維數(shù)據(jù)的插值
2 擬合2.1 最小二乘法2.2 對于擬合的評價2.3 對于線性函數(shù)的理解
3 回歸3.1、線性回歸3.1.1、變量的內(nèi)生性3.1.2、回歸系數(shù)的解釋3.1.3、虛擬變量3.1.4、擾動項滿足的條件3.1.4.1 異方差3.1.4.2 檢驗異方差3.1.4.3 處理異方差(推薦使用第一種)
3.1.5、多重共線性3.1.5.1 檢驗多重共線性3.1.5.2 處理多重共線性3.1.5.3 逐步回歸
1 插值
當我們需要根據(jù)已知的函數(shù)點進行數(shù)據(jù)處理時,有的時候現(xiàn)有數(shù)據(jù)非常少,不足以支撐分析,這時就需要使用一些數(shù)學方法來**“模擬產(chǎn)生”一些新的、可信度高的值來滿足需求,這就是插值**。
1.1 插值的定義
設(shè)函數(shù)
y
=
f
(
x
)
y=f(x)
y=f(x)在區(qū)間
[
a
,
b
]
[a,b]
[a,b]上有定義,且已知在點
a
≤
x
0
<
x
1
<
.
.
.
<
x
n
≤
b
a≤x_0 a≤x0? y 0 , y 1 , . . . , y n y_0,y_1,...,y_n y0?,y1?,...,yn?,若存在以簡單函數(shù) P ( x ) P(x) P(x),使 P ( x i ) = y i , ( i = 1 , 2 , . . . , n ) P(x_i)=y_i,(i=1,2,...,n) P(xi?)=yi?,(i=1,2,...,n),則稱 P ( x ) P(x) P(x)為 f ( x ) f(x) f(x)的插值函數(shù),點 x 0 , x 1 , . . . , x n x_0,x_1,...,x_n x0?,x1?,...,xn?稱為插值節(jié)點,區(qū)間 [ a , b ] [a,b] [a,b]稱為插值區(qū)間,求 P ( x ) P(x) P(x)的方法稱為插值法。 常見的插值法有三種: 多項式插值: P ( x ) P(x) P(x)是次數(shù)不超過n的代數(shù)多項式,即 P ( x ) = a 0 + a 1 x + . . . + a n x n P(x)=a_0+a_1x+...+a_nx^n P(x)=a0?+a1?x+...+an?xn;分段插值: P ( x ) P(x) P(x)為分段多項式;三角插值: P ( x ) P(x) P(x)為三角多項式。 其中,三角插值非常復雜,基本上用不到,因此本文不提及;多項式插值在次數(shù)較高的情況下,會在兩端處產(chǎn)生極大的不穩(wěn)定(Runge現(xiàn)象),因此最常用的是分段插值。 1.2 多項式插值 定理:設(shè)有 n + 1 n+1 n+1個不同的節(jié)點,則存在唯一的 n n n次多項式 L n ( x ) = a 0 + a 1 x + a x x 2 + . . . + a n x n L_n(x)=a_0+a_1x+a_xx^2+...+a_nx^n Ln?(x)=a0?+a1?x+ax?x2+...+an?xn,使得其過所有節(jié)點。 簡單證明如下: 1.2.1 拉格朗日插值法 對于多項式插值,拉格朗日給出了一個公式: L n ( x ) = ∑ i = 0 n ( Π j = 0 , j ≠ i n x ? x j x i ? x j ) L_n(x)=∑_{i=0}^n(Π_{j=0,j≠i}^n\frac{x-x_j}{x_i-x_j}) Ln?(x)=∑i=0n?(Πj=0,j=in?xi??xj?x?xj??) 但應(yīng)用拉格朗日插值在高次的情況下,會產(chǎn)生Runge現(xiàn)象,即在兩端極其不穩(wěn)定,震蕩明顯。因此在不確定曲線運動趨勢的情況下,不要使用高次插值。 1.2.2 牛頓插值法 對于多項式插值,牛頓給出的公式為: f ( x ) = f ( x 0 ) + f [ x 0 , x 1 ] ( x ? x 0 ) + f [ x 0 , x 1 , x 2 ] ( x ? x 0 ) ( x ? x 1 ) + . . . + f [ x 0 , x 1 , . . . , x n ? 1 , x n ] ( x ? x 0 ) ( x ? x 1 ) . . . ( x ? x n ? 2 ) ( x ? x n ? 1 ) f(x)=f(x_0)+f[x_0,x_1](x-x_0)+f[x_0,x_1,x_2](x-x_0)(x-x_1)+...+f[x_0,x_1,...,x_{n-1},x_n](x-x_0)(x-x_1)...(x-x_{n-2})(x-x_{n-1}) f(x)=f(x0?)+f[x0?,x1?](x?x0?)+f[x0?,x1?,x2?](x?x0?)(x?x1?)+...+f[x0?,x1?,...,xn?1?,xn?](x?x0?)(x?x1?)...(x?xn?2?)(x?xn?1?) 其中, f [ x 0 , x k ] = f ( x k ) ? f ( x 0 ) x k ? x 0 f[x_0,x_k]=\frac{f(x_k)-f(x_0)}{x_k-x_0} f[x0?,xk?]=xk??x0?f(xk?)?f(x0?)?為函數(shù) f ( x ) f(x) f(x)關(guān)于點 x 0 , x k x_0,x_k x0?,xk?的一階差商(均差),二階差商 f [ x 0 , x 1 , x 2 ] = f [ x 1 , x 2 ] ? f [ x 0 , x 1 ] x 2 ? x 0 f[x_0,x_1,x_2]=\frac{f[x_1,x_2]-f[x_0,x_1]}{x_2-x_0} f[x0?,x1?,x2?]=x2??x0?f[x1?,x2?]?f[x0?,x1?]?,k階段差商 f [ x 0 , x 1 , . . . , x k ] = f [ x 1 , . . . , x k ? 1 , x k ] ? f [ x 0 , x 1 , . . . , x k ? 1 ] x k ? x 0 f[x_0,x_1,...,x_k]=\frac{f[x_1,...,x_{k-1},x_k]-f[x_0,x_1,...,x_{k-1}]}{x_k-x_0} f[x0?,x1?,...,xk?]=xk??x0?f[x1?,...,xk?1?,xk?]?f[x0?,x1?,...,xk?1?]? 這兩種插值法相比來說,牛頓插值法具有繼承性,即它是一個遞推的過程,但牛頓插值法也存在Runge現(xiàn)象。同時,兩種插值法不能全面反映被插值函數(shù)的性態(tài),它們只滿足了插值多項式在插值節(jié)點處和被插值函數(shù)有相同的函數(shù)值。在許多實際問題中,更是要求在一個或全部節(jié)點上插值多項式與被插值函數(shù)有相同的低階甚至高階導數(shù)值。兩種插值法都不能滿足這種要求。滿足這種要求的插值多項式是埃爾米特插值多項式。 1.3 分段插值 分段插值即選取距離待插值點最近的若干點,使用多項式插值。因此對于整條曲線,使用了多次多項式插值,最終得到一個分段函數(shù)。 1.3.1 分段三次埃爾米特插值 埃爾米特插值的具體原理非常復雜,這里就不做過多贅述,對于數(shù)學建模,只需要會使用即可。直接使用埃爾米特插值得到的多項式次數(shù)較高,也存在Runge現(xiàn)象,因此實際應(yīng)用中,往往使用分段三次Hermite插值多項式(PCHIP)。 在matlab中,我們直接調(diào)用內(nèi)置函數(shù)pchip即可實現(xiàn),其函數(shù)原型為: p = pchip(x, y, new_x) 其中,x是已知樣本點的橫坐標,y是已知樣本點的縱坐標,new_x是要插入處對應(yīng)的橫坐標。 1.3.2 三次樣條插值 三次樣條插值也是一種分段插值方法,同樣,原理不做過多贅述,我們只需要會使用即可。在matlab中,我們直接調(diào)用內(nèi)置函數(shù)spline即可。其函數(shù)原型為: p = spline(x, y, new_x) 其參數(shù)和pchip一樣,下面我們來實際應(yīng)用一下這兩中插值。 x = -pi: pi; y = sin(x); new_x = -pi: 0.1: pi; p1 = pchip(x, y, new_x); % 分段三次埃爾米特插值 p2 = spline(x, y, new_x); % 三次樣條插值 plot(x, y, 'o', new_x, p1, '-', new_x, p2, '-'); legend('插值節(jié)點', '分段三次埃爾米特插值', '三次樣條插值') 得到的結(jié)果為: 可以看到,三次樣條插值更加光滑一些。實際中,由于我們不知道數(shù)據(jù)的生成過程,因此兩種插值法都可以使用。 1.4 n維數(shù)據(jù)的插值 n維數(shù)據(jù)插值使用較少,這里不做過多贅述,了解如何使用函數(shù)接口即可。matlab中內(nèi)置函數(shù)interpn,原型為: p = interpn(x1, x2, ..., xn, y, new_x1, new_x2, ..., new_xn, method) 其中,x1,x2,…,xn是已知樣本點的橫坐標,y是已知樣本點的縱坐標,new_x1,new_x2,…,new_xn是要插入點的坐標,method是內(nèi)部使用的算法: ‘linear’:線性插值(默認參數(shù))‘cubic’:三次插值'spline:三次樣條插值(最精確)‘nearest’:最鄰近插值算法 2 擬合 與插值不同的是,在擬合問題中,曲線不一定過給定的點。擬合的目標是找到一個函數(shù),使得該曲線在某種準則下和所有數(shù)據(jù)點最近,即擬合的最好,也即最小化損失函數(shù)。 2.1 最小二乘法 舉個例子,首先我們根據(jù)函數(shù) y = 5 x + 8 y=5x+8 y=5x+8隨機生成一些帶有擾動項的點: clear; clc % 函數(shù)y=5x+8 x = 10 * rand(1, 10); y = 5 * x + 8 + normrnd(0, 1, 1, 10); f = @(x) 5 * x + 8; plot(x, y, 'o') hold on % 繼續(xù)作圖 grid on % 顯示網(wǎng)格線 fplot(f, [0, 10]) legend('隨機生成的數(shù)據(jù)', 'y=5x+8') 在我們不知道原始函數(shù),只知道這些已知點的情況下,我們設(shè)置擬合曲線為 y = k x + b y=kx+b y=kx+b,現(xiàn)在要求的就是 k k k和 b b b使樣本點和擬合曲線最接近。 那么,如何定義最接近呢?首先我們假設(shè) y ^ i = k x i + b \hat{y}_i=kx_i+b y^?i?=kxi?+b: 第一種定義是用一次絕對值,即使得 ∑ i = 1 n ∣ y i ? y ^ i ∣ \sum\limits_{i=1}^n|y_i-\hat{y}_i| i=1∑n?∣yi??y^?i?∣最小的 k k k和 b b b,但是這種算法含有絕對值,不容易求導,因此計算起來比較復雜; 第二種定義用差值的平方,即使得 ∑ i = 1 n ( y i ? y ^ i ) 2 \sum\limits_{i=1}^n(y_i-\hat{y}_i)^2 i=1∑n?(yi??y^?i?)2最小的 k k k和 b b b; 對于更高次,首先奇數(shù)次會正負抵消,自然是不合理的;偶數(shù)高次對于異常值,會對擬合產(chǎn)生極大的影響,因此也不建議使用。因此使用平方最合理,這也就是最小二乘法。 下面就是計算使得 ∑ i = 1 n ( y i ? y ^ i ) 2 \sum\limits_{i=1}^n(y_i-\hat{y}_i)^2 i=1∑n?(yi??y^?i?)2最小的 k k k和 b b b了,記作 k ^ , b ^ \hat{k},\hat k^,b^,具體計算過程大家可以自行查看相關(guān)資料,這里從簡,只給出結(jié)果: k ^ = n ∑ i = 1 n x i y i ? ∑ i = 1 n y i ∑ i = 1 n x i n ∑ i = 1 n x i 2 ? ∑ i = 1 n x i ∑ i = 1 n x i \hat{k}=\frac{n\sum\limits_{i=1}^nx_iy_i-\sum\limits_{i=1}^ny_i\sum\limits_{i=1}^nx_i}{n\sum\limits_{i=1}^nx_i^2-\sum\limits_{i=1}^nx_i\sum\limits_{i=1}^nx_i} k^=ni=1∑n?xi2??i=1∑n?xi?i=1∑n?xi?ni=1∑n?xi?yi??i=1∑n?yi?i=1∑n?xi?? b ^ = ∑ i = 1 n x i 2 ∑ i = 1 n y i ? ∑ i = 1 n x i ∑ i = 1 n x i y i n ∑ i = 1 n x i 2 ? ∑ i = 1 n x i ∑ i = 1 n x i \hat=\frac{\sum\limits_{i=1}^nx_i^2\sum\limits_{i=1}^ny_i-\sum\limits_{i=1}^nx_i\sum\limits_{i=1}^nx_iy_i}{n\sum\limits_{i=1}^nx_i^2-\sum\limits_{i=1}^nx_i\sum\limits_{i=1}^nx_i} b^=ni=1∑n?xi2??i=1∑n?xi?i=1∑n?xi?i=1∑n?xi2?i=1∑n?yi??i=1∑n?xi?i=1∑n?xi?yi?? 其中 n n n是已知點的個數(shù)。 下面根據(jù)計算公式,給出matlab實現(xiàn)代碼: clear; clc % 函數(shù)y=5x+8 x = 10 * rand(10, 1); y = 5 * x + 8 + normrnd(0, 1, 10, 1); f = @(x) 5 * x + 8; plot(x, y, 'o') hold on grid on fplot(f, [0, 10]) xlabel('x') ylabel('y') n = size(x, 1); k = (n * sum(x .* y) - sum(x) * sum(y)) / (n * sum(x .* x) - sum(x) * sum(x)) b = (sum(x .* x) * sum(y) - sum(x) * sum(x .* y)) / (n * sum(x .* x) - sum(x) * sum(x)) f_new = @(x) k * x + b; hold on fplot(f_new, [0, 10]) legend('隨機生成的數(shù)據(jù)', 'y=5x+8', '擬合曲線') 下面是運行結(jié)果: 2.2 對于擬合的評價 那么如何評價擬合的好壞呢? 這里首先定義一些概念: 擬合優(yōu)度(可決系數(shù)) R 2 R^2 R2;總體平方和SST(Total sum of squares): S S T = ∑ i = 1 n ( y i ? y  ̄ ) 2 SST=\sum\limits_{i=1}^n(y_i-\overline{y})^2 SST=i=1∑n?(yi??y?)2;誤差平方和SSE(Sum of squares due to error): S S E = ∑ i = 1 n ( y i ? y ^ ) 2 SSE=\sum\limits_{i=1}^n(y_i-\hat{y})^2 SSE=i=1∑n?(yi??y^?)2;回歸平方和SSR(Sum of squares of the regression): S S R = ∑ i = 1 n ( y ^ i ? y  ̄ ) 2 SSR=\sum\limits_{i=1}^n(\hat{y}_i-\overline{y})^2 SSR=i=1∑n?(y^?i??y?)2; 對于線性擬合函數(shù),有 S S T = S S E + S S R SST=SSE+SSR SST=SSE+SSR,擬合優(yōu)度 0 ≤ R 2 = S S R S S T = S S T ? S S E S S T = 1 ? S S E S S T ≤ 1 0≤R^2=\frac{SSR}{SST}=\frac{SST-SSE}{SST}=1-\frac{SSE}{SST}≤1 0≤R2=SSTSSR?=SSTSST?SSE?=1?SSTSSE?≤1 R 2 R^2 R2越接近1,說明誤差越小,說明擬合越好。 對于其他函數(shù),直接比較SSE即可。 下面給出計算擬合優(yōu)度的matlab代碼: y_hat = k * x + b; SSR = sum((y_hat - mean(y)) .^ 2) SSE = sum((y_hat - y) .^ 2) SST = sum((y - mean(y)) .^ 2) R_2 = SSR / SST 對于本例,我們得到R_2為0.9955(隨機數(shù)據(jù)可能值不相同,但都幾乎為1,說明擬合效果好) 2.3 對于線性函數(shù)的理解 線性函數(shù)分為對變量為線性以及對參數(shù)為線性。線性擬合所針對的是對參數(shù)為線性的函數(shù)。對變量為線性的函數(shù)想必大家都了解,那么何為對參數(shù)為線性的函數(shù)?這里舉幾個例子: y = a + b x 2 y=a+bx^2 y=a+bx2是對參數(shù)為線性的; y = e a + b x y=e^{a+bx} y=ea+bx是對參數(shù)為線性的(兩側(cè)取對數(shù)); y = s i n ( b + c x ) y=sin(b+cx) y=sin(b+cx)不是對參數(shù)為線性的; y = a b x y=abx y=abx不是對參數(shù)為線性的。 判斷標準概括下來就是:在函數(shù)中,參數(shù)僅以一次方出現(xiàn),且不能乘以或除以其他參數(shù),且不能出現(xiàn)參數(shù)的復合函數(shù)形式(例如例子3)。 3 回歸 回歸分析的任務(wù)是:通過研究自變量X和因變量Y的相關(guān)關(guān)系,嘗試去解釋Y的形成機制,進而達到通過X去預測Y的目的。 要完成的任務(wù)主要有以下三個: 識別重要變量;判斷相關(guān)性的方向;估計權(quán)重(回歸系數(shù))。 依據(jù)因變量Y的類型,我們將回歸分為以下幾類: 類型模型Y的特點例子線性回歸OLS、GLS(最小二乘)連續(xù)數(shù)值型變量GDP、產(chǎn)量、收入0-1回歸Logistichuigui二值變量是否怎樣定序回歸probit定序回歸定序變量等級評定計數(shù)回歸泊松回歸計數(shù)變量每分鐘行人通過數(shù)生存回歸Cox等比例風險回歸生存變量(截斷數(shù)據(jù))企業(yè)、產(chǎn)品壽命 補充: 不同數(shù)據(jù)的處理方法: 數(shù)據(jù)類型常見建模方法橫截面數(shù)據(jù)多元線性回歸時間序列數(shù)據(jù)移動平均、指數(shù)平滑、ARIMA、GARCH、VAR、協(xié)積面板數(shù)據(jù)固定效應(yīng)和隨機效應(yīng)、靜態(tài)面板和動態(tài)面板 其中前兩種數(shù)據(jù)類型最常見,面板類數(shù)據(jù)往往需要深入的計量經(jīng)濟學知識。 解釋一下這幾種數(shù)據(jù)類型: 橫截面數(shù)據(jù):在某一時間收集的不同對象的數(shù)據(jù);時間序列數(shù)據(jù):對同一對象在不同時間連續(xù)觀察所取得的數(shù)據(jù);面板數(shù)據(jù):橫截面數(shù)據(jù)與時間序列數(shù)據(jù)綜合起來的一種數(shù)據(jù)資源; 3.1、線性回歸 這里的線性指的是線性于系數(shù)。使用線性回歸模型建模時,需要對數(shù)據(jù)進行預處理。也即計算出變量的對數(shù)、平方、交叉項等。 3.1.1、變量的內(nèi)生性 內(nèi)生性現(xiàn)象:引入了新的自變量后,對回歸系數(shù)的影響非常大。 內(nèi)生性解釋:假設(shè)模型為 y ^ = β 0 + β 1 x 1 + β 2 x 2 + . . . + β k x k + μ \hat{y}=β_0+β_1x_1+β_2x_2+...+β_kx_k+μ y^?=β0?+β1?x1?+β2?x2?+...+βk?xk?+μ,μ為無法觀測且滿足一定條件的擾動項,包含了所有與y相關(guān),但未添加到回歸模型中的變量。如果滿足==誤差項μ和所有的自變量x均不相關(guān),則稱該回歸模型具有外生性==。如果相關(guān),則存在內(nèi)生性,內(nèi)生性會導致回歸系數(shù)估計的不準確,不滿足無偏和一致性。 無內(nèi)生性要求太強,其中解釋變量可以分為核心解釋變量(關(guān)鍵的變量,當樣本容量無限增大時,收斂于待估計參數(shù)的真值)和控制變量(不太關(guān)鍵的變量)。 實際中,只要保證核心解釋變量和μ不相關(guān)即可。 3.1.2、回歸系數(shù)的解釋 幾種情況: 一元線性回歸: y = a + b x + μ y=a+bx+μ y=a+bx+μ,x每增加一個單位,y平均變化b個單位;雙對數(shù)模型: l n y = a + b l n x + μ lny=a+blnx+μ lny=a+blnx+μ,x每增加%1,y平均變化%b;半對數(shù)模型: y = a + b l n x + μ y=a+blnx+μ y=a+blnx+μ,x每增加%1,y平均變化b/100個單位; l n y = a + b x + μ lny=a+bx+μ lny=a+bx+μ,x每增加1個單位,y平均變化(100b)%。 什么時候取對數(shù): 與市場價值相關(guān)的,例如價格、銷售額、工資等都可以取;以年度量的變量,如受教育年限、工作經(jīng)歷等通常不取;比例變量,例如失業(yè)率、參與率等,取不取都行;變量取值必須是非負數(shù),如果包含0,可以對y取對數(shù) l n ( 1 + y ) ln(1+y) ln(1+y)。 取對數(shù)的好處:減弱數(shù)據(jù)的異方差性;如果變量本身不服從正態(tài)分布,取對數(shù)后可能漸進服從正態(tài)分布;可以讓模型更具有經(jīng)濟學意義。 含有交互項的自變量 3.1.3、虛擬變量 多分類虛擬變量:例如不同省份,可以使用獨熱編碼,模型可以寫作 ∑ i = 1 n β i × V i r t u a l V a r i a b l e i \sum\limits_{i=1}^{n}β_i×VirtualVariable_i i=1∑n?βi?×VirtualVariablei? 注意,為避免完全多重共線性,通常引入的虛擬變量的個數(shù)一般是分類數(shù)減1。減去的一類作為對照組,其獨熱編碼全部為0。 3.1.4、擾動項滿足的條件 擾動項要是球形擾動項,即滿足同方差和無自相關(guān)兩個條件。 3.1.4.1 異方差 如果擾動項存在異方差,那么: OLS估計出來的回歸系數(shù)是無偏的、一致的;假設(shè)檢驗無法使用(因為構(gòu)造的統(tǒng)計量無效);OLS估計量不再是最優(yōu)線性無偏估計量。 解決方法:使用OLS+穩(wěn)健的標準誤(常用);使用廣義最小二乘GLS(原理:方差較小的數(shù)據(jù)包含的信息較多,我們可以給予信息量大的數(shù)據(jù)更大的權(quán)重)。 3.1.4.2 檢驗異方差 可以繪制殘差圖,大體觀察一下殘差變化趨勢。如果波動非常大,那么說明存在明顯異方差,反之則不明顯。 回歸后運行命令: rvfplot // 畫殘差與擬合值散點圖 graph export a1.png, replace // 保存圖片 rvpplot x // 畫殘差與自變量x散點圖 graph export a2.png, replace 擬合值有可能出現(xiàn)負數(shù)的原因:因變量分布極其不均衡。 異方差的假設(shè)檢驗(推薦使用懷特) BP檢驗 // 回歸后使用 estat hettest, rhs iid 其中,原假設(shè)為擾動項不存在異方差,p值小于0.05說明在95%的置信水平下拒絕原假設(shè),即存在異方差。 懷特檢驗 // 回歸后使用 estat imtest, white 3.1.4.3 處理異方差(推薦使用第一種) 使用OLS+穩(wěn)健標準誤。只要樣本容量較大,即使存在異方差,使用穩(wěn)健標準誤,那么所有的參數(shù)估計、假設(shè)檢驗均可照常進行。廣義最小二乘GLS。缺點:不知道擾動項的真實協(xié)方差矩陣,只能用樣本數(shù)據(jù)來估計,得到的結(jié)果不穩(wěn)健,存在偶然性。 OLS+穩(wěn)健標準誤操作方法: // 或reg y x1 x2 ..., r regress y x1 x2 ..., robust 3.1.5、多重共線性 3.1.5.1 檢驗多重共線性 通過計算方差膨脹因子VIF(Variance Inflation Factor) 假設(shè)有k個自變量,那么第m個自變量的 V I F m = 1 1 ? R 1 ? k / m 2 VIF_m=\frac{1}{1-R^2_{1-k/m}} VIFm?=1?R1?k/m2?1?, R 1 ? k / m 2 R^2_{1-k/m} R1?k/m2?是將第m個自變量作為因變量,對剩下k-1個自變量回歸得到的擬合優(yōu)度。 V I F m VIF_m VIFm?越大,說明第m個自變量和其他變量的相關(guān)性越大。 定義回歸模型的VIF為 m a x { V I F 1 , V I F 2 , . . . V I F k } max\{VIF_1,VIF_2,...VIF_k\} max{VIF1?,VIF2?,...VIFk?}。一般VIF大于10,則認為該回歸方程存在嚴重的多重共線性。 // 回歸后使用 setat vif 3.1.5.2 處理多重共線性 如果不關(guān)心具體的回歸系數(shù),而只關(guān)心整個方程預測被解釋變量的能力,通??梢圆挥美頃嘀毓簿€性(假設(shè)整個方程是顯著的)。因為多重共線性的主要后果是使得對單個變量的貢獻估計不準,但所有變量的整體效果仍可以較準確估計。如果關(guān)心具體回歸系數(shù),但多重共線性不影響所關(guān)心變量的顯著性,也可以忽略。即使在有方差膨脹的情況下,這些系數(shù)依然顯著,沒有多重共線性只會更加顯著。如果多重共線性嚴重影響所關(guān)心變量的顯著性,則需要增大樣本容量,刪除導致嚴重共線性的變量,不要輕易刪除(可能會導致內(nèi)生性);或者修改模型。 3.1.5.3 逐步回歸 向前逐步回歸Forward selection:將自變量逐個引入模型,每引入一個自變量后都進行檢驗,顯著時才加入模型。 缺點:后來引入的自變量可能導致原來顯著的自變量不顯著了。 stepwise regress y x1 x2 ..., pe(#1) // 篩選后變量太多,減小#1;反之則增加#1 向后逐步回歸Backward elimination(推薦使用):先將所有自變量放入模型,之后嘗試將其中一個自變量剔除,看整個模型解釋因變量的能力是否有顯著變化,之后將最沒有解釋力的那個自變量剔除。此過程逐漸迭代,直到?jīng)]有自變量符合條件。 缺點:計算量較大。 stepwise regress y x1 x2 ..., pr(#2) // 篩選后變量太多,減小#2;反之則增加#2 注意: x1,x2,…之間不能有完全多重共線性,如果有,需要自己手動剔除;可以加上參數(shù)b(標準化回歸系數(shù))和r(穩(wěn)健標準誤)。迫不得已的情況下再使用逐步回歸,因為很容易導致內(nèi)生性。 柚子快報激活碼778899分享:【數(shù)學建?!坎逯怠M合與回歸 好文推薦
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。