2017/07/06
ご無沙汰しています、DATUM STUDIOの長岡です。
今日はとうとう連載最終回となります。
今回は、事例とともに、分析において注意したい「見せかけの相関」についてご紹介したいと思います。
1.前回までのおさらい
a. 異常検知の手順
前回は、異常検知の手法を三つご紹介しました。ある企業様から「複数の、かつ相互依存しているセンサーの異常を検知したい」というご依頼がありました。
一般的な異常検知の手順は以下の通りです。
STEP1 正常なセンサーデータを機械学習によって学習し、正常パターンを出す
STEP2 未知のデータをパターンに当てはめる
STEP3 異常かどうか判定
そして、STEP1を進める上で手順は三種類ありました。
1)外れ値検知
個々のセンサーの値の分布をもとに外れ値を検出する。代表的な手法にOne-class SVM や Local Outlier Factor 等がある。
2)時系列モデル
過去データから時系列モデルを構築して、モデルの予測値と実測値の乖離をもとに異常度を算出する。このような手法は一般的に変化点検知と呼ばれる。
3)異常状態検出
複数の正常な時系列データ(個別のセンサーの動きを時系列であらわしたもの)の関係性をモデル化。そのモデルを元に異常判定するもの
b. センサー同士の連鎖は正常?異常?
上記の三種類のうち、1)外れ値検知では時系列による変化を取得することができず、2)時系列モデルが適切だろう、と考え、2)の方法を試してみましたが、問題が起こりました。
単一のセンサーでは異常と判断されても、他のセンサーを考慮すると異常ではないというケースが発生しました。
前回の記事でもご紹介した例を再掲します。
例えば、発電機の出力量について異常を検知したいとします。冬には暖房を使うため、発電機の出力が上がります。この場合、季節要因を考慮すると、出力上昇そのものは異常ではないと考えられます。しかし、季節要因(暖房の使用量)を考慮せずに、発電機の出力だけに着目すると異常と判定されてしまうかもしれません。
このように、複数のセンサーが相互に影響しあっている時、全体で見ると正常な状態にあったとしても、センサーを個別で見ていると「異常」と判定される場合があります。
しかしながら、このようなセンサー同士の連鎖を正常か異常か判定する場合、気を付けなければいけないことがあります。センサー同士が連鎖しているように見えて実は連鎖していない、という「見せかけの相関」があるためです。
2.見せかけの相関とは?
a.「見せかけの相関」の定義
たとえば、「タクシーの回転率とコンビニの傘の売り上げは相関関係(値に関連性があること)がある」としましょう。以下、わかりやすくするため、条件等を簡略化しておりますが、ご了承ください。
傘の売り上げが伸びる日は「雨の日」だとわかったとします。タクシーの利用が増えるのも、「雨の日」・・・つまり、「雨」という要因がタクシーの回転率とコンビニの傘の売り上げを増やしているとわかります。この場合、タクシーの回転率とコンビニの傘の売り上げには相関関係が無い「見せかけの相関」となります。
このように、一見、変数A(この場合「タクシーの回転率」)と変数B(コンビニの傘の売上げ)の間に相関関係があるように見えても実際は違います。これは新たな変数C(雨)が変数Aと変数Bの両方に同等の影響を及ぼしている、つまり変数Aと変数Cの間、変数Bと変数Cの間に相関関係があるのであって、変数Aと変数Bの間には相関関係はないのではないか、という場合に、変数Aと変数Bの間に「見せかけの相関がある」となります。
b.センサーの「見せかけの相関関係」
では、センサーの例に戻ってみましょう。
センサーAの異常パターンとセンサーBの異常パターンに相関関係がある、と仮定します。
しかしセンサーAとセンサーBの両方に何らかのノイズがかかっていた場合(例えば機械の温度の上昇など、ノイズという新たな変数によって、センサーAとセンサーBに影響を及ぼした場合)、センサーAとセンサーBに見られる相関は「見せかけの相関」となります。
3.「見せかけの相関」を除去するには
もう一度異常検知の手順に戻ります。
1)外れ値検知
2)時系列モデル
3)異常状態検出
この三つのうち、今回は
3)異常状態検出
を選択しました。
下の図のように、複数の正常な時系列モデルの関係性をモデル化し、そのモデルを元に異常判定するものです。
そのなかで、このノイズによる見せかけの相関を除去し、本当の相関関係を抽出しなければなりません。
ノイズを除去し、本当の相関関係を抽出するため、「グラフィカルLasso」という手法を試行しましたが、技術的な話になるので割愛します。
この本当の相関関係を見ると、センサーAもセンサーBも異常ではないパターンがあります。そういったパターンを考慮し、改めてモデル化します。
4.異常検知システムの構築
こうして「見せかけの相関」の問題は解決しました。
それでは、第二回、第三回(今回)にわたってご紹介した本事例の手順をおさらいします。
STEP1 正常なセンサーデータを機械学習によって学習し、正常パターン・異常パターンを構築
STEP2 未知のデータをパターンに当てはめる
STEP3 異常かどうか判定
先ほどご紹介した通り、「異常状態検出」を使って「見せかけの相関」を考慮したモデルを作成しました。これは、上の図のSTEP1の部分になります。
あとは、未知のデータを当てはめるSTEP2、異常かどうか判定するSTEP3を行う仕組みを構築し完成させました。
5.まとめ
a. ビジネスシーンでも見られる「見せかけの相関」
今回の記事もまた専門的な記事となってしまいましたが、「見せかけの相関」は、誰もがエクセルなどを使ってビジネスデータを統計解析する場面においても起こりやすい問題ですので気に留めていただければ幸いです。
b. 人工知能(機械学習)は人間の脅威!?
三回にわたって機械学習についてご紹介してきました。
今回の事例は、今まで人手でセンサーの異常を判断していたが、機械学習によって自動化することができた、というケースです。
このように、人間の仕事を機械学習に置き換えられるケースはでてきています。しかし、人間にしかできない仕事もあるのではないかと考えます。こういったケーススタディはこれからも発表されていくと思います。人間の脅威(ヒトの仕事を奪うもの)と捉えず、どういう仕組みで成り立っているのかを知ることで、人にしかできない仕事とは何かということに思いを馳せてみてはいかがでしょうか。
また、是非みなさまも、自社のビジネスシーンで活用できないだろうか?と検討いただけますと幸いです。
DATUM STUDIOは人工知能を構築する会社です。
お問い合わせはこちらまで
↓
https://datumstudio.jp/contact
長岡 裕己(Hiroki Nagaoka)
DATUM STUDIO株式会社
エグゼクティブ・プランナー
■経歴
アメリカ、オレゴン大学にてマーケティングを専攻。
前職では人材領域で新規事業開発や南インド支社長などを経験
2015年、DATUM STUDIOに入社。
様々な規模・業種の企業様にデータ活用の提案を行っている。
愛犬(パグ)の散歩が趣味。
DATUM STUDIOへのお問い合わせはこちらまで
https://datumstudio.jp/contact