5.5 强影响点
5.5 強影響點
前面分析指出,最小二乘法是殘差平方和 ∑i(bi?ariTx)2\sum_i (b_i-\mathbf{a}^T_{ri}\mathbf{x})^2∑i?(bi??ariT?x)2 最小對應的解,為什么會有殘差呢?測量誤差導致的,如果沒有測量誤差,則不需要過測量,只需剛剛好的測量次數就能獲得真實值。但由于測量誤差,我們過測量,取平均,測量誤差正負抵消,估計值更可靠,估計值不會因為偶然一次測量誤差而導致過大的偏差。如果測量誤差不能正負抵消,比如由于測量差錯或人為錯誤,使某個測量誤差很大(應該稱測量差錯),且遠遠大于其它測量誤差,為了使 ∑i(bi?ariTx)2\sum_i (b_i-\mathbf{a}^T_{ri}\mathbf{x})^2∑i?(bi??ariT?x)2 最小,則最優解必須進行較大調整才能使之最小,這樣就偏離了沒有差錯時的理想最優解,導致最小二乘法失敗!假設某次測量有差錯,不失一般性,假設第一次有差錯,本來理想測量值是 b1b_1b1? ,現在為 b1+?b_1+\epsilonb1?+? 。無差錯時的最優解為 x^=(ATA)?1ATb\mathbf{\hat{x}}=(A^TA)^{-1}A^T\mathbfx^=(ATA)?1ATb ,有差錯為 x′^=(ATA)?1AT(b+?e1)=x^+?(ATA)?1ATe1\mathbf{\hat{x'}}=(A^TA)^{-1}A^T(\mathbf+\epsilon\mathbf{e}_1)=\mathbf{\hat{x}}+\epsilon (A^TA)^{-1}A^T\mathbf{e}_1x′^=(ATA)?1AT(b+?e1?)=x^+?(ATA)?1ATe1? ,所以偏差為 x′^?x^=?(ATA)?1ATe1\mathbf{\hat{x'}}-\mathbf{\hat{x}}=\epsilon (A^TA)^{-1}A^T\mathbf{e}_1x′^?x^=?(ATA)?1ATe1? ,與 ?\epsilon? 成正比,其較大時,偏差也大。理論上,只要存在一個強影響點,最小二乘法就會失敗,所以在使用最小二乘法時,必須先去除測量中的差錯,再進行最小二乘!
根據 x^m=x^m?1+Km?m\mathbf{\hat{x}_{m}} = \mathbf{\hat{x}_{m-1}}+K_{m}\epsilon_{m}x^m?=x^m?1?+Km??m? ,我們可以分析第 mmm 次測量對近似解的影響 Km?mK_{m}\epsilon_{m}Km??m?。 ?m=bm?armTx^m?1\epsilon_{m}=b_{m}-\mathbf{a^T_{rm}}\mathbf{\hat{x}_{m-1}}?m?=bm??armT?x^m?1? 表示第 mmm 次測量數據按前 m?1m-1m?1 次最優近似解 x^m?1\mathbf{\hat{x}_{m-1}}x^m?1? 計算預測值 b^mm?1=armTx^m?1\hat^{m-1}_{m}=\mathbf{a^T_{rm}}\mathbf{\hat{x}_{m-1}}b^mm?1?=armT?x^m?1? ,與實際測量值 bmb_{m}bm? 的殘差,由于計算 x^m?1\mathbf{\hat{x}_{m-1}}x^m?1? 并未利用第 mmm 次測量數據,故稱 ?m\epsilon_{m}?m? 為預測殘差。根據 x^m?x^m?1=Km?m\mathbf{\hat{x}_{m}} - \mathbf{\hat{x}_{m-1}} = K_{m}\epsilon_{m}x^m??x^m?1?=Km??m? ,說明最優近似解的更新量與預測殘差成正比,預測殘差越大,更新量越大。我們把預測殘差大的點稱為異常點,異常點為可能的強影響點。以無人駕駛車輛實時判斷前面車輛的運動狀態為例,如果前面車輛運動狀態不變,即做勻加速運動,則最優近似解是不變的,也就是更新量為零。這說明只要方程代表的系統在測量過程中,待測量沒有發生變化,則最優近似解更新量為零。前面又表明更新量與預測殘差成正比,這說明預測殘差在待測量沒有發生變化時,在零附近隨機變動。
最優近似解的更新量還與向量 KmK_{m}Km? 成正比,由于向量不好分析,我們需要把其變換為一個數,內積就可以把向量變為數。計算第 mmm 次測量數據按前 m?1m-1m?1 次最優近似解 x^m?1\mathbf{\hat{x}_{m-1}}x^m?1? 計算預測值 b^mm?1\hat^{m-1}_{m}b^mm?1? 和按前 mmm 次最優近似解 x^m\mathbf{\hat{x}_{m}}x^m? 計算預測值 b^mm\hat^{m}_{m}b^mm? 之差,稱為預測差值,預測差值越大,說明第 mmm 次測量數據影響越大,是強影響點。
∵b^mm?1=armTx^m?1,b^mm=armTx^m∴b^mm?b^mm?1=armTx^m?armTx^m?1=armT(x^m?x^m?1)∵x^m=x^m?1+Km?m∴b^mm?b^mm?1=armT(ATA)m?1arm?m=pmm?mpmm=armT(ATA)m?1arm\because \hat^{m-1}_{m} = \mathbf{a^T_{rm}}\mathbf{\hat{x}_{m-1}},\hat^{m}_{m} = \mathbf{a^T_{rm}}\mathbf{\hat{x}_{m}} \\ \therefore \hat^{m}_{m}-\hat^{m-1}_{m} = \mathbf{a^T_{rm}}\mathbf{\hat{x}_{m}}-\mathbf{a^T_{rm}}\mathbf{\hat{x}_{m-1}}=\mathbf{a^T_{rm}}(\mathbf{\hat{x}_{m}} - \mathbf{\hat{x}_{m-1}}) \\ \because \mathbf{\hat{x}_{m}} = \mathbf{\hat{x}_{m-1}}+K_{m}\epsilon_{m}\\ \therefore \hat^{m}_{m}-\hat^{m-1}_{m} = \mathbf{a^T_{rm}}(A^TA)_m^{-1}\mathbf{a_{rm}}\epsilon_{m}=p_{mm}\epsilon_{m}\\ p_{mm} = \mathbf{a^T_{rm}}(A^TA)_m^{-1}\mathbf{a_{rm}} ∵b^mm?1?=armT?x^m?1?,b^mm?=armT?x^m?∴b^mm??b^mm?1?=armT?x^m??armT?x^m?1?=armT?(x^m??x^m?1?)∵x^m?=x^m?1?+Km??m?∴b^mm??b^mm?1?=armT?(ATA)m?1?arm??m?=pmm??m?pmm?=armT?(ATA)m?1?arm?
預測差值與數 pmmp_{mm}pmm? 成正比,pmmp_{mm}pmm? 稱為杠桿值,故高杠桿點可能是強影響點,注意這里是可能,不是一定。因為 pmmp_{mm}pmm? 只與矩陣 AAA 有關,而與 b\mathbfb 無關。觀察 pmmp_{mm}pmm? 表達式,可以發現它是投影矩陣 P=A(ATA)?1ATP=A(A^TA)^{-1}A^TP=A(ATA)?1AT 對角線元素 pmmp_{mm}pmm? 。投影矩陣對角線任意元素具有如下性質 0≤pii≤10 \le p_{ii} \le 10≤pii?≤1 ,證明如下:因為 PT=P,P=P2=PTPP^T=P,P=P^2=P^TPPT=P,P=P2=PTP ,所以 pii=piTpi=∑j=1mpji2=pii2+∑j≠ipji2p_{ii}=\mathbf{p}^T_i \mathbf{p}_i=\sum^m_{j=1}p^2_{ji} = p^2_{ii} + \sum_{j\ne i}p^2_{ji}pii?=piT?pi?=∑j=1m?pji2?=pii2?+∑j?=i?pji2? ,故 pii≥pii2p_{ii} \ge p^2_{ii}pii?≥pii2? 得 0≤pii≤10 \le p_{ii} \le 10≤pii?≤1 。
所以 ∣b^mm?b^mm?1∣≤∣bm?b^mm?1∣|\hat^{m}_{m}-\hat^{m-1}_{m}| \le |b_{m}-\hat^{m-1}_{m}|∣b^mm??b^mm?1?∣≤∣bm??b^mm?1?∣ ,即預測差值小于預測殘差,也就是預測值比測量值更接近預測值,這是符合常識。
(b^mm?b^mm?1)2=pmm2?m2(\hat^{m}_{m}-\hat^{m-1}_{m})^2=p^2_{mm}\epsilon^2_{m}(b^mm??b^mm?1?)2=pmm2??m2? 只是度量了第 mmm 個測量數據的預測差值,所以 pmm2?m2p^2_{mm}\epsilon^2_{m}pmm2??m2? 乘積只能部分反映第 mmm 個測量數據的影響強度。我們需要度量所有測量數據的預測差值,計算預測差值的平方和,該值可以較全面度量第 mmm 個測量數據的影響強度。第 iii 個測量數據的預測差值
b^im?b^im?1=ariT(ATA)m?1arm?m=pim?mpim=ariT(ATA)m?1arm是投影矩陣P元素pim∴(b^im?b^im?1)2=pim2?m2∴∑i=1m(b^im?b^im?1)2=∑i=1m(pim2?m2)=?m2∑i=1mpim2=pmm?m2\hat^{m}_{i}-\hat^{m-1}_{i} = \mathbf{a^T_{ri}}(A^TA)_m^{-1}\mathbf{a_{rm}}\epsilon_{m}=p_{im}\epsilon_{m}\\ p_{im} = \mathbf{a^T_{ri}}(A^TA)_m^{-1}\mathbf{a_{rm}} 是投影矩陣P元素 p_{im} \\ \therefore (\hat^{m}_{i}-\hat^{m-1}_{i})^2 = p^2_{im}\epsilon^2_{m}\\ \therefore \sum^m_{i=1} (\hat^{m}_{i}-\hat^{m-1}_{i})^2 = \sum^m_{i=1} (p^2_{im}\epsilon^2_{m} ) = \epsilon^2_{m} \sum^m_{i=1} p^2_{im} = p_{mm}\epsilon^2_{m}\\ b^im??b^im?1?=ariT?(ATA)m?1?arm??m?=pim??m?pim?=ariT?(ATA)m?1?arm?是投影矩陣P元素pim?∴(b^im??b^im?1?)2=pim2??m2?∴i=1∑m?(b^im??b^im?1?)2=i=1∑m?(pim2??m2?)=?m2?i=1∑m?pim2?=pmm??m2?
所以 pmm?m2p_{mm}\epsilon^2_{m}pmm??m2? 較全面度量第 mmm 個測量數據的影響強度。由于 ?m\epsilon_{m}?m? 是預測殘差,是利用 x^m?1\mathbf{\hat{x}_{m-1}}x^m?1? 計算,實際使用中,我們一般不會計算 x^m?1\mathbf{\hat{x}_{m-1}}x^m?1? ,而是計算 x^m\mathbf{\hat{x}_{m}}x^m? ,故需轉化。
?m=bm?armTx^m?1∵x^m=x^m?1+Km?m∴?m=bm?armT(x^m?Km?m)=bm?armTx^m+armTKm?m=δm+pmm?m?m=δm/(1?pmm)\epsilon_{m} = b_{m}-\mathbf{a^T_{rm}}\mathbf{\hat{x}_{m-1}} \\ \because \mathbf{\hat{x}_{m}} = \mathbf{\hat{x}_{m-1}}+K_{m}\epsilon_{m} \\ \therefore \epsilon_{m} = b_{m}-\mathbf{a^T_{rm}}(\mathbf{\hat{x}_{m}} - K_{m}\epsilon_{m}) = b_{m}-\mathbf{a^T_{rm}}\mathbf{\hat{x}_{m}} + \mathbf{a^T_{rm}}K_{m}\epsilon_{m} = \delta_{m} + p_{mm}\epsilon_{m}\\ \epsilon_{m} = \delta_{m}/(1-p_{mm}) ?m?=bm??armT?x^m?1?∵x^m?=x^m?1?+Km??m?∴?m?=bm??armT?(x^m??Km??m?)=bm??armT?x^m?+armT?Km??m?=δm?+pmm??m??m?=δm?/(1?pmm?)
定義 殘差 δm=bm?armTx^m\delta_{m} = b_{m}-\mathbf{a^T_{rm}}\mathbf{\hat{x}_{m}}δm?=bm??armT?x^m? 為第 mmm 次測量數據按前 mmm 次最優近似解 x^m\mathbf{\hat{x}_{m}}x^m? 計算預測 bm^\hat{b_{m}}bm?^? ,與實際測量值的差。高殘差點稱為異常點。
根據 ?m=δm/(1?pmm)\epsilon_{m} = \delta_{m}/(1-p_{mm})?m?=δm?/(1?pmm?) 得 ∣?m∣≥∣δm∣|\epsilon_{m}| \ge |\delta_{m}|∣?m?∣≥∣δm?∣ ,即預測殘差大于殘差,因為預測殘差沒有利用第 mmm 次測量數據,而殘差利用了,所以殘差更小,合乎常識。在機器學習中,殘差是訓練集樣本殘差,預測殘差是測試集樣本殘差,預測殘差大于殘差,表明模型在訓練集殘差比測試集要小,即訓練集性能要高于測試集,即模型的泛化性能要變差些。線性模型能證明該顯而易見的結論,但非線性模型如神經網絡就比較難證明了。
所以 Dm=pmm?m2=pmm(1?pmm)2δm2D_m = p_{mm}\epsilon^2_{m}=\frac {p_{mm}}{(1-p_{mm})^2} \delta^2_{m}Dm?=pmm??m2?=(1?pmm?)2pmm??δm2? ,該式能全面反映第 mmm 次測量數據的影響。pmm(1?pmm)2\frac {p_{mm}}{(1-p_{mm})^2}(1?pmm?)2pmm?? 是 pmmp_{mm}pmm? 的增函數。這里有個特別迷惑的地方,當 pmm=1p_{mm}=1pmm?=1 時,pmm(1?pmm)2\frac {p_{mm}}{(1-p_{mm})^2}(1?pmm?)2pmm?? 無窮大,是不是第 mmm 次測量數據的影響很大呢?其實不是,此時 δm2=0\delta^2_{m}=0δm2?=0 ,故 DmD_mDm? 不會無窮大,其實 Dm=pmm?m2=?m2D_m=p_{mm}\epsilon^2_{m}=\epsilon^2_{m}Dm?=pmm??m2?=?m2? 不會很大。同理當 δm2\delta^2_{m}δm2? 很大時,pmmp_{mm}pmm? 可能比較小,故 DmD_mDm? 有可能比較小。為什么會這樣,這是因為 pmmp_{mm}pmm? 只與矩陣 AAA 有關,δm2\delta^2_{m}δm2? 和 A,b,bmA,\mathbf,b_mA,b,bm? 都有關。所以如果第 mmm 次測量數據是高杠桿點或異常點,只是有可能是強影響點,必須綜合考慮。本質上,杠桿值 pmmp_{mm}pmm? 度量了點 armT\mathbf{a^T_{rm}}armT? 在點集 ariT,i∈[1,m]\mathbf{a^T_{ri}}, i \in [1, m]ariT?,i∈[1,m] 中的位置,可以認為是距離點集中心的距離,如果遠離中心,則杠桿值大,否則小,是離群程度的一種度量。δm2\delta^2_{m}δm2? 度量了擬合好壞的程度。
前面都是分析最后一個測量點的影響,其實任意一個測量點 iii 的影響,分析流程完全一致,結果也是一樣,即 Di=pii?i2=pii(1?pii)2δi2D_i = p_{ii}\epsilon^2_{i}=\frac {p_{ii}}{(1-p_{ii})^2} \delta^2_{i}Di?=pii??i2?=(1?pii?)2pii??δi2? ,該式能全面反映第 iii 次測量數據的影響。
與其它測量點比較起來,具有很大 DiD_iDi? 值的測量點,為強影響點。具體相對大多少可以認為是強影響點,這個沒有普遍的結論,需具體問題具體分析。
我們已經推導出 DiD_iDi? 計算公式,所以讀者容易誤認為檢測強影響點很容易,其實檢測強影響點很難,目前沒有特別好的辦法,為什么呢?首先,我們計算 DiD_iDi? 是假定測量數據滿足線性關系 Ax=bA\mathbf{x}=\mathbfAx=b ,其實很多實際問題,很難判斷其是否滿足該假設,如果不滿足該假設,則所有理論都是不適用該問題,根據這些理論檢測出的強影響點顯然就很有問題。其次,即使滿足線性假設,如果數據很理想,只有一個強影響點,則檢測相對容易。但如果數據不理想,有多個強影響點,則最優近似解受多個強影響點的影響,擬合直線會拉向強影響點,導致遠離理想最優近似解,而計算 DiD_iDi? 應該采用理想最優近似解,但此時我們不能獲得該解,只能用遠離理想最優近似解的最優近似解代替,這樣會導致 DiD_iDi? 遠離理想值,由于擬合直線會拉向強影響點,這就有可能使本來是強影響點偽裝成正常點,而正常點看起來像強影響點了,它們互相偽裝起來,難以辨別。
測量中為什么會產生強影響點呢?一般來說有兩種途徑,一是收集數據失誤導致的,如測量差錯,記錄時筆誤等,這種強影響點一般都是孤立的,但影響十分巨大,必須要發現,并去除,所以在收集數據時,必須仔細小心,盡量避免出現差錯,或使差錯盡量小。二是測量數據本來就具有隨機性,如果不幸抽樣到一個誤差很大的點,則該點成為強影響點。例如假設測量誤差滿足正態分布,則誤差大部分位于 222 倍標準差之內,此時測量點都是正常點。如果某次測量,誤差大于 333 倍標準差,雖然沒有測量差錯,是正常測量,但由于誤差不在正常范圍內,也成為強影響點。
如何知道測量中存在差錯呢?對于低維問題,如果能做出 (ariT,bi)(\mathbf{a}^T_{ri},b_i)(ariT?,bi?) 的圖形,則觀察圖形中偏離直線的點,這些離群點即是差錯點,去掉這些點后再最小二乘。對于高維問題,由于無法作圖,則很難判斷離群點,在機器學習中,這稱為異常點檢測,是個十分困難的問題,目前沒有很好的解決方案。
如果有幸發現強影響點,該如何處置呢?首先要根據問題的領域知識,數據收集過程,分析強影響點產生的原因。如果是收集數據失誤導致的,應刪除。如果不是測量失誤導致的,則有可能是誤差超大的正常測量點成為強影響點,可能會導致強影響點和正常點互相偽裝,需要仔細分析,但強影響點能提供巨大信息,比普通點更有價值。
Di=pii(1?pii)2δi2D_i = \frac {p_{ii}}{(1-p_{ii})^2} \delta^2_{i}Di?=(1?pii?)2pii??δi2? 中殘差 δi\delta_{i}δi? 進行歸一化,就得到標準度量,該度量即是著名的Cook距離。
總結
- 上一篇: 5.4 加权最小二乘法
- 下一篇: 5.6 稳健最小二乘法