多変量統計的プロセス管理(MSPC)

京都大学 教授 加納 学

前回は、複数の変数を個別に監視すると発生する問題を指摘しました。その問題とは、第一種の過誤(正常なのに異常と判断してしまう間違い)を犯しやすくなることと、変数間の関係を無視してしまうことでした。今回は、複数の変数を同時に監視したいときに有用な多変量統計的プロセス管理(Multivariate Statistical Process Control: MSPC)を紹介します。

MSPCの起源は1950年代にまで遡り、当時既に主成分分析(Principal Component Analysis: PCA)を用いる方法が提案されていました。現在広く利用されている方法が提案されたのは1970年代になってからですが、当時は計算機が高価で能力も低かったため、その後10年以上も製造現場で活用されることはほとんどありませんでした。1990年代に入ると、MSPCは化学プロセスの異常検出方法として改めて注目されるようになり、今では多くの分野で利用されています。

MSPCの基本

MSPCの基本的な考え方は、多次元空間内に正常データが存在する領域を設定し、その領域から逸脱したデータが観測されたら、異常が発生したと判断するというものです。このため、まず、監視対象(製造設備でもヒトでも何でも構いません)が正常な状態にあると判断される期間のデータを収集します。このとき、決して異常データを含めてはいけません。

次に、正常状態と異常状態の境界になる管理限界を設定します。監視したい変数が1つであれば、その変数に上下限を設定(一般的な管理図)すればよかったわけですが、多変数の場合は事情が異なります。監視したい変数が2つで、その変数が互いに無相関で分散が等しい(各変数をその標準偏差で割れば等しくできます)のであれば、正常データがちょうど含まれるような円を管理限界として用いることができます。新しく測定したデータが、この円(すなわち管理限界)の内側にあれば正常、外側にはみだせば異常と判定できます。

一般には、複数の変数は何らかの関係(正の相関や負の相関)を持って変化しており、正常データが含まれる領域を適切に定めるためには、変数間の関係を捉える必要があります。つまり、2変数なら楕円、3変数以上なら楕円体を用意する必要があります。もちろん、変数間の関係が複雑であれば、楕円体では正常データが含まれる領域をうまく表せないこともあります。このような場合には、非線形な手法を用いますが、考え方は同じです。さて、正常データがちょうど含まれる楕円体を用意し、新しく測定したデータがこの楕円体(すなわち管理限界)の内側にあれば正常、外側にはみだせば異常と判定すれば、異常検出ができそうです。これがマハラノビス距離を用いる方法です。ちなみに、この方法はMSPCではありません。

マハラノビス距離を用いる方法は、1)正常データにPCAを適用する、2)すべての主成分を分散1に規格化する、3)原点からの距離(マハラノビス距離に対応する)に閾値(管理限界)を設定する、という手順でモデルを構築し、この管理限界を超えるかどうかで、異常の有無を判定します。

Hotelling's T2統計量

一方、MSPCでは、すべての主成分ではなく、主要な主成分のみを分散1に規格化して、原点からの距離を求めます。この距離の二乗はHotelling's T2統計量と呼ばれます。もちろん、主要な主成分のみを対象とするのには理由があります。今、合計100個の変数を監視する必要があるとしましょう。変数間には強い相関関係があり、正常データにPCAを適用すると、主成分の数が80くらいで累積寄与率がほぼ100%になったとします。つまり、残りの主成分の分散はほぼゼロで、ほとんど何も情報を含んでいません。このような、せいぜい測定ノイズしか含んでいないような主成分を分散1に規格化するということは、その主成分を1万倍とか1億倍とかするということです。このような末端の主成分で異常を検出することに意味はあるでしょうか。意味はないという判断のもとに考案されたのがMSPCです。このため、MSPCでは、主要な主成分のみを分散1に規格化して、T2統計量を監視指標の1つとして用います。

採用する主成分の数は、異常検出性能が高くなるように決めればよいわけですが、異常検出性能を正確に見積もるのは容易ではありません。そこで、監視する変数をすべて分散1に規格化している場合、分散が1以上の主成分を採用するという方法が採用されることがあります(私はよくそうします)。元の変数よりも分散が小さい主成分は重要とはみなさないということです。

Q統計量またはSPE

T2統計量で監視されない、主要でない主成分については、Q統計量を用いて監視します。Q統計量は二乗予測誤差(Squared Prediction Error: SPE)とも呼ばれ、主要な主成分で張られる部分空間からの距離(予測誤差)の二乗で定義されます。

加納先生1016.jpg

MSPCまとめ

まとめると、MSPCでは、1)正常データにPCAを適用する、2)採用する主成分の数を決める、3)T2統計量とQ統計量を求める、4)T2統計量とQ統計量に閾値(管理限界)を設定する、という手順でモデルを構築し、いずれかの管理限界を超えるかどうかで、異常の有無を判定します。

別の言い方をすると、MSPCは、PCAによる次元圧縮を実施した上で、主成分で張られる部分空間とその直交補空間を別々に管理する方法です。この方法の概念図を掲載しておきます。主成分で張られる部分空間はT2統計量によって、その直交補空間はQ統計量によって管理されます。MSPCが従来法よりも優れているのは、変数間の関係を考慮した管理限界が設定できることに加えて、測定変数の数に関係なく僅か2つの統計量を監視すればよいことにあります。

MSPCの応用

MSPCは、1990年代に多くの事例が論文として発表され、今では様々な分野で利用されています。もちろん、ここで紹介したような古典的なMSPCばかりではなく、様々な発展形があります。PCAの代わりに独立成分分析(Independent Component Analysis: ICA)を用いることもできますし、ニューラルネットワークを用いることもできます。サポートベクトルマシン(Support Vector Machine: SVM)を用いる方法もよく知られています。興味のある方は調べてみて下さい。

私自身も、これまで企業と共同してMSPCやその発展形の実用化に取り組んできました。最近では、製造設備の異常検出のみならず、医療やヘルスケアの分野で、例えば、てんかん発作を事前に予知するための方法としてMSPCの利用を提案しています。そこでは、心電図から導出される複数の心拍変動指標を監視対象変数として用いています。MSPCでは正常データだけからモデルを構築します。つまり、異常データがなくても異常検出ができるわけです。これは、異常データの収集が困難な状況で大きな強みになります。

  • LINE
  • Mail