最新AI論文をキャッチアップ

IoTデバイスデータを精度、遅延を両立して異状検知

IoTデバイスデータを精度、遅延を両立して異状検知

Time-series

3つの要点
✔️ IoTデバイスデータに対し、高精度、高速に異状検知を行うニーズがあります
✔️ クラウドまでの階層に分散システムを構築し、かつデータに適応して推論実施レベルを変える方法です
✔️ 集中系、分散系のいずれも超えるバランスの取れた結果が確認されています

Adaptive Anomaly Detection for Internet of Things in Hierarchical Edge Computing: A Contextual-Bandit Approach
written by Mao V. NgoTie LuoTony Q.S. Quek
(Submitted on 9 Aug 2021)
Comments: Accepted by ACM Transactions on Internet of Things (TIOT)

Subjects: Machine Learning (cs.LG); Artificial Intelligence (cs.AI); Distributed, Parallel, and Cluster Computing (cs.DC); Networking and Internet Architecture (cs.NI)

code:  

本記事で使用している画像は論文中のもの、またはそれを参考に作成したものを使用しております。

概要

IoTの普及に伴い、IoTデータをより有機的に活用するという要求が高まってくるのは必然だろうと思います。この論文では、IoT, エッジコンピュータからクラウドまでの階層的エッジ計算機システム(HEC)上で、IoTデバイスから発生したデータをリアルタイム性と精度を両立させながら異状診断を行うシステムを提案しています。さらに特徴的なのは、各時点のデータのコンテキストにより、どのレイヤーのモデルを適用するのがよいかアダプティブに判断するということです。こうしたシステムは、強化学習を用いて学習します。それでは、詳細を見ていきましょう。

はじめに

スマートIoTデバイスは、世界中でスマート・ファクトリー、スマート・ホーム、自律走行車、デジタル・ヘルスなどへの適用に拍車がかかっています。これらのIoTデバイスによる巨大なネットワークは膨大なセンサーデータを生み出し、そこから機械学習、深層学習を用いて知見の抽出、異状検知が行われます。火災報知システムなどいくつかのシステムはリアルタイムの応答を要求します。そのような場合に、従来のIoTデータをすべてクラウド・コンピュータにストリーミングするのは、通信遅延、バックボーンネットワークの圧迫、データプライバシーのリスクの問題があると提起しています。

一方で、エッジあるいはフォグ・コンピューティングはセンサーデータ源の近傍で異状検知処理を行いますが、計算機性能、全体としての過大なリソースというチャレンジに直面します。大きく複雑なモデルをIoTデバイスの性能に合わせる手法として、プルーニングや蒸留がありますが、ケースバイケースでファインチューニングを行わなければならず、スパース性の高い一部のDNNモデルにしか適用できないという限界があります。

分散異状検知のアプローチについては3つの問題があります。1)ワンサイズフィットオール的なアプローチになるが、実際は個々の問題が異なる、2)遅延とかメモリー使用に焦点をあてず、精度を追うものになる、3)分散系の中の局所の分析が適切に行われず、クラウドとの間で何度もデータをやり取りすることになりかねない。

そこで、本論文では階層的なHECに対するリアルタイム性が高く、計算機負荷も考慮した異常検知システムを提案することになりました。 

関連研究

影響を受けている先行研究はBranchyNetです。これは画像分類についてのモデルで推論の信頼度が上がってきたところで推論を打ち切るものですが、これを異なる層に分割して階層コンピューティングへの適用を行っています。

入力データがしばしば分析の難易度が異なるのを見て、別の先行研究も参考にしました。kNN分類を用いたモデルで、入力画像と要求される精度に応じて、適切な推論モデルを選択するものがあります。Linらは、強化学習ベースのアプローチを用いてランタイムに動的にプルーニングを行う手法を提案しています。BlockDropでは推論時に動的にレジデュアル・ブロックを使ったりドロップしたりします。

提案手法の説明

本論文では、画像ではなくIoT、エッジコンピューティングでの異状検知に適用し、多層のシーケンシャルkNNの代わりに、単一のポリシーネットワークを用いて状況情報に応じた適切なモデルを直接出力し、分散コンピューティングでの複数のモデルを強化学習で取り扱っています。

全体構成

Fig.1に3つのフローからなる適応異状検知の全体構成を示します。1) 異状検知モデルの学習(黒い実線)、2) ポリシーネットワークの学習(紫線)、3) オンライン適応検出(オレンジ線)です。データ前処理までは共通して行われます。

最初のフローでは多変量異状検知モデルの学習を行います。正常値のパターンを把握します。2番目のフローでは、異状検知のためのスコアと閾値を決めます。ボトムアップで、各階層に設定されます。3つ目のフローでは、ポリシーネットワークの学習をします。入力のコンテキストに応じて最適の異状検知モデルを選択するものです。最後に、オンライン適応検知フェーズで、学習済みポリシーネットワークを実装したIoTは実行中に適切な異状検知モデルを選択します。

階層エッジコンピューティング(HEC)での複数異状検知

k層の分散積層エッジコンピューティングシステム(HEC)を想定します。第1層がIoTデバイス、第2層からk-1層がエッジサーバー、k層がクラウドです。

・単変量異常検知モデル

単変量IoTデータに対しては、オートエンコーダを適用します。上の層になるに従い、隠れ層の数が増えます。

 ・多変量異常検知モデル 

多変量データの場合には、LSTMベースのSequence-to-sequenceモデルを用います。やはり、上層に向かってモデルは複雑になり、クラウドでは双方向LSTMベースのseq2seqを用います。

・異状スコア

学習後、復元誤差は正常値に対して小さい値を、異常値に対して大きい値を出します。復元誤差は一般的にガウス分布に従うとし、復元誤差の対数確率分布(logPD)を異状スコアとします。正常値は高いlogPD, 異常値は低いlogPDを示します。正常値データセットの最小のlogPDを異状検出の閾値とします。

 ・適応モデル選択スキーム

各データが各層(IoT、エッジ、クラウド)のうち適切な層で処理されるように、入力データのコンテキストに応じて最適の異状検知モデルを選択する適応モデル選択スキームを提案します。データはまずIoTデバイスに入力され、適切な層に至るまで上位に転送されます。

報酬に対応してポリシーを決めるcontextual-banditモデルを用い、報酬には精度とデータ転送にかかるコストを入れています。学習にかかる時間を減らすために、一度にN個の入力コンテキストに対して学習を行うミニバッチ処理を行います。過学習を防ぐために損失関数にL2正則化項を加えています。探索と活用のバランスについては、decayed-$\epsilon$-greedyアルゴリズムを使用しています。

実装と実験

データセット

UC Riversideの時系列データセットのうちオランダの研究機関の1年の電力消費とUC Irvineの多変量のMHEALTHデータを用いています。前者はさらにアップデートされたデータベースも公開されています。

 

 

異状検知モデルとポリシーネットワークの実装

Tensorflow, Kerasを用いて実装しています。IoTデバイスにはRaspberry Pi 3, エッジコンピュータにはJetson-TX2を用い、エッジとクラウドにはGPUが備えられています。

ポリシーネットワークの加速学習

最近Googleが発表した深層強化学習の学習過程を効率的に加速する分散メカニズムに倣って、アルゴリズムの一部を変更できます。1) 各入力の報酬を逐次問い合わせするのではなく、同じアクションに属する入力をグループ化し、バッチ式に推論をするようにまとめて異状検知モデルに投げる。2)$\epsilon$-greedy法のアクション出力に1つ以上の異状検知モデルがある場合に、複数の異状検知モデルを並行して実施する。

ソフトウェアアーキテクチャーと実験設定

ソフトウェアアーキテクチャーはFig.7のようになっています。GUI, ポリシーネットワークによる適応モデル選択スキーム、各層での異常検知モデルからなります。GUIからは、どのデータセットおよび選択スキームを使用するかを設定し、結果を確認します。(Fig.8)

 

比較対象SOTAスキーム

ベンチマーク対象は、kNN-sequence, Adaptive-BlockDrop, kNN-Singleです。

実験結果

異状検知モデル比較

Table 1は3層のモデル間の性能比較です。ハードウェアの性能、モデルの大きさに対応した結果になっています。 

 

モデル選択スキーム比較

Table 2はベンチマークとの比較です。Proposedは階層適応ネットワークです。精度の向上に対して、遅延が抑え込まれていることがわかります。

コスト関数:精度と遅延のトレードオフ

精度と遅延の重みを調整するパラメータαを変えるとFig.11のようになります。単変量もでるでは依存性を確認できますが、多変量データでは、精度は常にクラウドと同じレベルを推移するようです。

ポリシーネットワークの加速学習

前記した加速学習のアルゴリズムを適用した場合、単変量では転送時間が大幅に、多変量では計算時間も大幅に改善しています。

コンテキスト情報:手設定とエンコード特徴値

精度はエンコードの方が良いですが、遅延は大きくなる結果です。従って、精度、遅延両方を改善したい場合には、手設定を行うのが一つの手です。しかし、ドメインナレッジがないと、効果的な設定を行うのは難しいです。

結論

見てきたように、IoTデバイスからのデータを適切なレベルの計算能力、モデルを適用して異状検知を行うのに、ここで提案したリアルタイム適応ポリシー選択スキームは効果的な改善を見せています。

(記事著者の意見)パラメータあるいは特徴値間の相関を把握するモデルにはいくつかの手法が提案されています。ここで提案されたLSTMベースのseq2seq以外にも階層を考慮したモデル設定が可能になるのか興味があるところです。

  • メルマガ登録(ver
  • ライター
  • エンジニア_大募集!!
友安 昌幸 (Masayuki Tomoyasu) avatar
JDLA G検定2020#2, E資格2021#1 データサイエンティスト協会 DS検定 日本イノベーション融合学会 DX検定エキスパート 合同会社アミコ・コンサルティング CEO

記事の内容等について改善箇所などございましたら、
お問い合わせフォームよりAI-SCHOLAR編集部の方にご連絡を頂けますと幸いです。
どうぞよろしくお願いします。

お問い合わせする