基於ICA的線性監督分類的故障診斷方法-I2統計量的計算

ICA+I2統計量

數據預處理

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

XX進行ICA分解(可用sklearn庫的FastICA計算):
Xnm=SnmAmmT {{\rm{X}}_{{\rm{n*m}}}}{\rm{ = }}{{\rm{S}}_{{\rm{n*m}}}}{\rm{A}}_{{\rm{m*m}}}^{\rm{T}}

Snm=XnmWmmT {{\rm{S}}_{{\rm{n*m}}}}{\rm{ = }}{{\rm{X}}_{{\rm{n*m}}}}{\rm{W}}_{{\rm{m*m}}}^{\rm{T}}

對於第ii個的樣本xi(m1)x_{i(m*1)},變換是:
xi=Asi {x_i}{\rm{ = A}}{{\rm{s}}_i}

si=Wxi {{\rm{s}}_i}{\rm{ = W}}{x_i}

其中,S=(s1,...,sn)T{\rm{S = (}}{{\rm{s}}_{\rm{1}}}{\rm{,}}...{\rm{,}}{{\rm{s}}_{\rm{n}}}{{\rm{)}}^{\rm{T}}}是分解之後的統計獨立的分量,A稱作混淆矩陣,W稱作解混矩陣(每行是一個分量)。

從W中選取d個分量出來,作爲變換矩陣WdW_d,選取方法有:

  1. 選擇前d個具有最大 向量無窮範數 的分量
  2. 選擇前d個具有最大 向量二範數 的分量。(或者其他選法)(採用sklearn庫的FastICA時,建議n_components參數設置爲上述m,然後按此法選擇d個分量,而不是直接設置爲d)

一般選擇樣本的d個統計獨立的分量進行計算:
S(nd)=XnmWdmT=(s1(d1),...,sn(d1))T {{\rm{S}}_{{\rm{(n*d)}}}}{\rm{ = }}{{\rm{X}}_{{\rm{n*m}}}}{\rm{W}}_{{\rm{d*m}}}^T = {({s_{1(d*1)}},...,{s_{n(d*1)}})^{\rm{T}}}

I2I^2統計量的計算

首先經過FastICA變換,得到n個樣本的所有源信號s(d維)組成的源矩陣:
S(nd)=XnmWdmT=(s1(d1),...,sn(d1))T {{\rm{S}}_{{\rm{(n*d)}}}}{\rm{ = }}{{\rm{X}}_{{\rm{n*m}}}}{\rm{W}}_{{\rm{d*m}}}^T = {({s_{1(d*1)}},...,{s_{n(d*1)}})^{\rm{T}}}
計算n個樣本的I2I^2統計量的值,第ii個樣本的I2I^2值(注意sis_i是d維):
Ii2=siTsi {\rm{I}}_i^2{\rm{ = s}}_i^{\rm{T}}{{\rm{s}}_{\rm{i}}}
對於新樣本,在均值化和FastICA分解時,均使用訓練樣本集的參數(如向量均值,還有上述變換矩陣WdW_d等)進行操作。最後求出新樣本的sis_i值後,再求取新樣本的I2I^2值。

I2I^2統計量的控制限

由於ICA是基於源信號中至多存在一個高斯的假設,因此無法求出公式化的概率密度或概率分佈函數。所以,採用核密度估計法(Kernel density estimation)求取。步驟如下:

  1. 首先,使用滑窗法,估計出比較合適的概率密度函數(注,應是所有正常樣本的I2I^2值,構成的一維向量)p(I2)p({I^2})。(可使用sklearn庫的KernelDensity)。此處求取的即是正常樣本的I2I^2值分佈情況。類似於橫座標是I2I^2值,縱座標是該I2I^2值出現的頻次(概率)。注:儘管上述公式求解的I2I^2應大於等於0,但估計出來的概率密度函數,在負數區域的概率密度可能並不爲零。

  2. 求出0.99置信位置處的I2I^2值作爲控制限IαI_{\alpha}

    一個使用面積積分法的0.99置信位置估計方案(應該有更好的方案):在足夠大的區間內(應涵蓋上述概率密度函數所有非零函數值的橫座標範圍),以非常小的步長,生成一系列的點(即橫座標的值),求取所有點對應的概率密度函數值,以步長作爲積分區間的寬,以該區間左側或右側的點的概率密度值作爲高,求出該小區間的面積。求取所有小積分區間的面積和作爲概率爲1時的總面積值。然後,從左至右累加小積分區間的面積,當達到總面積的0.99時,此時積分區間所在的橫座標值可作爲置信度爲0.99時的置信位置,即控制限值。(注:此方案暫未找到合適的文獻作爲論證。若發現誤差很大,先嚐試提高FastICA的迭代次數和收斂精度,在考慮這裏的方案是不是有問題。沒有找到合適文獻的意思就是不知道別人論文裏這一部分究竟是怎麼實現的。哭)

故障判定

若系統正常運行,新樣本的I2I^2值應滿足I2<Iα{I^2}<{I_{\alpha}},反之,認爲出現故障。

參考文獻

Lee, Jong-Min, ChangKyoo Yoo和In-Beum Lee. 《Statistical process monitoring with
independent component analysis》. Journal of Process Control 14, 期 5 (2004年8月1日): 467–85. https://doi.org/10.1016/j.jprocont.2003.09.004.

Hsu, Chun-Chin, Mu-Chen Chen和Long-Sheng Chen. 《A Novel Process Monitoring Approach
with Dynamic Independent Component Analysis》. Control Engineering Practice 18, 期 3 (2010年3月): 242–53. https://doi.org/10.1016/j.conengprac.2009.11.002.

DICA+I2統計量

X(l)生成過程同DPCA,參見鏈接

剩餘步驟同此。

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