基於PCA的線性監督分類的故障診斷方法-T2與SPE統計量的計算

基於PCA的線性監督分類的故障診斷方法

數據預處理

訓練集樣本(只有正樣本)爲 Xnm{{\rm{X}}_{{\rm{n*m}}}} (需要列均值爲零,採用z-score歸一化即可),每行一個樣本,樣本數目n,特徵維度m。

計算m個特徵之間的協方差矩陣(也有文獻是除以n):
mm=1n1XTX {\sum _{{\rm{m*m}}}}{\rm{ = }}\frac{1}{{{\rm{n - 1}}}}{{\rm{X}}^{\rm{T}}}{\rm{X}}
求協方差矩陣的特徵值λi\lambda_i與特徵向量pip_i,並將特徵值按從小達到順序排列:
λ1λ2λkλk+1λm {\lambda _{\rm{1}}} \ge {\lambda _{\rm{2}}} \ge \cdots \ge {\lambda _k} \ge {\lambda _{k + 1}} \ge \cdots \ge {\lambda _m}
將特徵向量按照對應的特徵值重新排列。假設排序後爲:
Vmm=[p1,p2, ,pm] {{\rm{V}}_{{\rm{m*m}}}}{\rm{ = [}}{p_1},{p_2}, \cdots ,{p_m}{\rm{]}}
按照某個原則(如特徵值累計和的佔比),選擇前k個特徵值進行PCA降維。令前k個從大到小的特徵值構成對角陣SkkS_{k*k},k個對應的特徵向量組成降維矩陣PmkP_{m*k}。即:
Skk=diag(λ1,λ2, ,λk) {{\rm{S}}_{{\rm{k*k}}}}{\rm{ = diag(}}{\lambda _{\rm{1}}}{\rm{,}}{\lambda _{\rm{2}}}{\rm{,}} \cdots ,{\lambda _k})

Pmk=[p1,p2, ,pk] {{\rm{P}}_{{\rm{m*k}}}}{\rm{ = [}}{p_1},{p_2}, \cdots ,{p_k}{\rm{]}}

PCA降維之後,樣本數目仍爲n,特徵數目變爲k,降維公式:
X~nk=XP {{\rm{\tilde X}}_{{\rm{n*k}}}}{\rm{ = XP}}
注:重構公式是(X’是X降維後重構得到的矩陣):
X=X~nkPT=XPPT {\rm{X' = }}{{\rm{\tilde X}}_{{\rm{n*k}}}}{{\rm{P}}^{\rm{T}}}{\rm{ = XP}}{{\rm{P}}^{\rm{T}}}

T2T^2統計量的計算

對於新樣本xnew(m1)x_{new(m*1)},(注:應使用訓練樣本歸一化的參數對新樣本歸一化操作),其T2T^2統計量計算公式如下:
T2=xnewTPS1PTxnew=S1/2PTxnew22 {\rm{T2 = }}x_{new}^T{\rm{P}}{{\rm{S}}^{{\rm{ - 1}}}}{{\rm{P}}^T}{x_{new}}{\rm{ = }}\left\| {{{\rm{S}}^{ - 1/2}}{{\rm{P}}^T}{x_{new}}} \right\|_2^2
其中S1/2S^{-1/2}表示對矩陣中每個非零元素(非零的那些λ\lambda)取-1/2指數。2{\left\| \bullet \right\|_2}是向量2範數。

T2T^2統計量的控制限計算公式:
Tα=k(n21)n(nk)Fα(k,nk) {{\rm{T}}_\alpha }{\rm{ = }}\frac{{{\rm{k(}}{{\rm{n}}^{\rm{2}}}{\rm{ - 1)}}}}{{{\rm{n(n - k)}}}}{F_\alpha }({\rm{k,n - k}})
其中,1α{1-\alpha}是置信度,Fα(k,nk){F_\alpha }({\rm{k,n - k}})是服從第一自由度爲k,第二自由度爲n-k的F分佈。

注:由於不同地方似乎對α\alpha稱呼不一致,此處特指滿足一下概率公式的α\alpha
P{F(n1,n2)>Fα(n1,n2)}=α P{\rm{\{ F(}}{{\rm{n}}_{\rm{1}}}{\rm{,}}{{\rm{n}}_{\rm{2}}}{\rm{) > }}{{\rm{F}}_\alpha }{\rm{(}}{{\rm{n}}_{\rm{1}}}{\rm{,}}{{\rm{n}}_{\rm{2}}}{\rm{)\} = }}\alpha
所以,在此定義下,α\alpha取值通常爲0.01左右。由於定義相反,有的文獻則是0.99左右。

故障判定

如系統正常運行,則樣本的T2T^2值應該滿足T2<Tα{T^2}<{T_{\alpha}},反之,可認爲出現故障。

參考鏈接:

https://wenku.baidu.com/view/b9ef2df9dd3383c4bb4cd2e0.html

SPE統計量(也稱Q統計量)的計算

對於新樣本xnew(m1)x_{new(m*1)},其SPESPE統計量計算公式如下:
SPE=xnewT(IPPT)xnew {\rm{SPE = }}x_{{\rm{new}}}^{\rm{T}}({\rm{I - P}}{{\rm{P}}^{\rm{T}}}){x_{{\rm{new}}}}
SPESPE統計量的控制限計算公式:
Qα=θ1[cαh02θ2θ1+1+θ2h0(h01)θ12]1/h0 {{\rm{Q}}_\alpha }{\rm{ = }}{\theta _1}{[\frac{{{c_\alpha }{h_0}\sqrt {2{\theta _2}} }}{{{\theta _1}}} + 1 + \frac{{{\theta _2}{h_0}({h_0} - 1)}}{{\theta _1^2}}]^{1/{h_0}}}
其中:
θr=j=k+1mλjr(r=1,2,3) {\theta _{\rm{r}}}{\rm{ = }}\sum\limits_{j = k + 1}^{\rm{m}} {\lambda _j^r(r = 1,2,3)}

h0=12θ1θ33θ22 {h_0} = 1 - \frac{{2{\theta _1}{\theta _3}}}{{3\theta _2^2}}

cαc_{\alpha}是標準正態分佈的置信極限,滿足如下公式:
P{N(0,1)>Ncα(0,1)}=cα P{\rm{\{ N(0,1) > }}{{\rm{N}}_{{{\rm{c}}_\alpha }}}{\rm{(0,1)\} = }}{{\rm{c}}_\alpha }
所以,這種定義方式下α\alpha也是取值0.01左右。

故障判定

如系統正常運行,則樣本的SPESPE值應該滿足SPE<Qα{SPE}<{Q_{\alpha}},反之,可認爲出現故障。

參考鏈接:

https://wenku.baidu.com/view/b9ef2df9dd3383c4bb4cd2e0.html

https://wenku.baidu.com/view/f8b6c51c08a1284ac9504339.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章