Home Blogs Edge AI:仕組み
Applications

About The Author

Outline

さまざまな産業分野におけるリアルタイムエンタープライズAIアプリケーションには、クラウドにとらわれない相互接続を備えたリアルタイムの実用的なデータとMLインサイトプラットフォームが必要である。 Verizon MediaのEdge AIは、データ管理と機械学習運用(MLOPS)の交差点で顧客を支援することに焦点を当てた専用プラットフォームであり、グローバル規模で異種インフラストラクチャ上で運用できる。 人工知能をネットワークエッジに移動することで、ほぼリアルタイムで意思決定とアクションを行うことができる。 これにより、産業セグメントと消費者セグメントにおけるエキサイティングで変革的なアプリケーションの範囲が開かれる。これは、このシリーズの最初のブログ記事で概説した。

多くの点で、これから説明するように、Edge AIの目的は、エッジで商用AIアプリケーションを設計、開発、デプロイするために必要なすべての要素を接続して、リアルタイムのエンタープライズユースケースを可能にすることである。 これには、世界中のほぼすべてのインターネットユーザーにわずか10-25ミリ秒の遅延をもたらすコンテンツ・デリバリー・ネットワーク(CDN)、オンプレミス5Gテクノロジー、拡張可能なアプリケーション・プラットフォーム・アズ・ア・サービス(aPaaS)レイヤー、クラウドデータ管理、包括的なセキュリティ、詳細な監視と分析が含まれる。

エッジAI開発プロセスの初期から、私たちのビジョンは、クラウドにとらわれない相互接続を備えたインフラストラクチャにとらわれない軽量コンテナ化プラットフォームを作成し、エッジでリアルタイムで実用的なデータと機械学習の洞察を提供することだった。 このビジョンは、次の図に概要を示すように、プラットフォームの目標と技術決定を遵守するのに役立った。

図1。 エッジAIアーキテクチャ要素。

これら9つの要素は、Edge AIプラットフォームを可能にする上で不可欠な役割を果たし、商用ソリューションが本番環境に展開される際の成功に不可欠である。 これらの要素を、ボトムアップで詳しく見てみよう。

  1. インフラストラクチャ: Kubernetesとコンテナは、AI/MLモデルをエッジに高可用性、超低遅延、高速展開するための明らかな選択肢であった。 インフラストラクチャに依存しないKubernetesは、コンテナ化されたワークロードとサービスを管理するための移植性と拡張性に優れたオープンソースプラットフォームである。 コンテナはDockerプラットフォームをベースにしており、ソフトウェアをパッケージ化して配信する効率的な方法であり、AWS、Microsoft Azure、Googleなどの大手クラウドプロバイダーが提供するマネージドKubernetesサービスで動作する。

  2. データの取り込み: AI/MLモデルが進化し、その可能性を実現するためには、データは取り込みから分析と監視のためのダッシュボードやモデルトレーニングのためのApache Hadoopベースのファイルなど、複数の下流システムに流れる必要がある。 この機能では、Apache Kafkaを使用しており、リアルタイムのデータ取り込み、統合、メッセージング、Pub/Subを大規模に提供している。 結果として得られるマルチパーティデータ取り込み層はミリ秒のレイテンシ、保証された配信、スロットリングのサポートを提供する。

  3. 低遅延データストレージ: Edge AIでは、データストレージが重要な役割を果たす。これは、1秒未満の遅延、高スループット、低フットプリントのデータストレージレイヤーが必要であり、ストレージや過去の洞察のためにさまざまなクラウドプラットフォームに同期する機能が必要であるためである。 ここではRedis NoSQLデータベースシステムに目を向けた。 RedisのようなNoSQLデータベースはリレーショナルデータベースよりも構造化されていない。 さらに、柔軟性が高く、拡張性も優れているため、このアプリケーションに最適なソリューションとなっている。

  4. データ処理: Edge AIでは、多様なソースからのイベントをキャプチャし、複雑な条件を検出し、リアルタイムで多様なエンドポイントにパブリッシュするために、リアルタイムのストリーム処理が必要である。 Siddhi Complex Event Processor(CEP)を使用している。 オープンソースでクラウドネイティブでスケーラブルなマイクロストリーミングCEPシステムであり、リアルタイム分析、データ統合、通知管理、適応型意思決定などのユースケース向けのイベント駆動型アプリケーションを構築できる。

  5. AI/MLサービング:エッジAIプラットフォームは、Seldon.ioオープンソースフレームワークを通じて、クラウドとエッジインフラストラクチャ全体にわたる完全なAI/MLデプロイとライフサイクル管理をリアルタイムで提供する。 複数の異機種混在のツールキットと言語をサポートしている。

  6. データの視覚化:リアルタイム分析とダッシュボードの視覚化は、GrafanaダッシュボードとRedisデータストアのリアルタイムクエリ用のカスタム開発のNode.js RESTサービスを使用して構築される。

  7. MLトレーニングとユースケース: Edge AIプラットフォームは、sci-kit-learn、TensorFlow、Keras、PyTorchなどの最も人気のあるMLフレームワークをサポートし、完全なモデルライフサイクル管理を提供する。 モデルが開発されテストされると、大規模なデータセットを使用してモデルがトレーニングされ、パッケージ化され、最終的にエッジにシームレスにデプロイされる。

  8. ‍‍セキュリティとガバナンス:セキュリティはEdge AIプラットフォーム全体に組み込まれている。 カスタマイズ可能なセキュリティフレームワークに対応でき、顧客の導入シナリオに依存せず、マルチクラウド戦略全体で相互運用可能。

  9. モニタリングとオーケストレーション: Kubernetesの継続的デリバリーツールであるArgo CDなどのツールを使用して、CI/CDパイプラインを介してクラウドからエッジまでのオーケストレーションを実現する。 私たちの目的は、Edge AIアプリケーションのデプロイとライフサイクル管理を自動化し、監査可能で、理解しやすいものにすることだった。

プラットフォームリファレンスアーキテクチャ

Edge AIプラットフォームで使用されているテクノロジーの概要がわかったので、それらがどのように組み合わされるかを見てみよう。 次の図に示すように、Edge AIプラットフォームアーキテクチャには3つの主要な部分がある。

  1. データの取り込みと処理

  2. モデルトレーニング

  3. モデルの導入とサービス提供

モデルはクラウド上でトレーニングされ、リアルタイムのユースケースのためにエッジで提供される。 時間に依存しないバッチ推論はクラウドで行われる。

図2。 Edge AI—リファレンスアーキテクチャ。

実装、デプロイ、たまに更新できる従来のアプリケーションとは異なり、AI/MLアプリケーションは常に学習し、改善する。 プラットフォーム内には、上記を達成するのに役立つ3つの主要なワークフローがある。

  1. リアルタイムストリーミングワークフロー:アプリケーションのメイン機能が行われる場所。 CEPはストリーミングデータをキャプチャして処理し、洞察やエラー状態をインテリジェントにスキャンする。 CEPは受信データの生のストリームから特徴や注目すべき情報を抽出し、分析のために訓練されたモデルに送る。 リアルタイムでは、予測は集約のためにCEPルールエンジンに送り返される。 一定の条件が満たされた場合、外部システムのシャットダウンや機械操作者への潜在的な故障の警告などの処置が行われる。 リアルタイムの予測と推論はすべてオフラインクラウドに渡され、さらなる監視と評価が行われる。 この領域では、進化するデータに基づいて機能を更新し、図4に示す機械学習パイプラインと統合した機能エンジニアリングを行うことができる。

  2. データのバッチによるオンデマンドワークフロー:レコメンドやパーソナライゼーションなどの外部システムは、エッジプラットフォーム内にモデルを埋め込むことができる。 これらは組み込みAPIゲートウェイを介してRESTやgRPCのエンドポイントとして公開され、リアルタイムの推論呼び出しと予測が可能になる。

  3. 履歴インサイトワークフロー:すべてのデータ(生データ、集約データ、予測データ)はエッジプラットフォームのインメモリストアに保存される。 このデータはクラウドコネクタを介してクラウドプラットフォームに定期的に同期される。 データがクラウドに到達すると、継続的な改善のためにモデルを再トレーニングし、進化させるために使用される。 再トレーニングされたモデルは、トレーニングからトラッキング、クラウド上での公開までのライフサイクル全体をたどる。 公開されたモデルは、継続的なデプロイでエッジプラットフォームにシームレスに提供される。 過去のインサイトとバッチ推論はクラウドで実行される。

エッジAIの取り込み、処理、ストレージ

AI/MLソリューションの最も重要な側面の1つは、データを迅速かつ効率的にキャプチャして保存する能力である。 IoTセンサーなどの一部のアプリケーションでは、データ量が膨大になる可能性がある。 IDCは、IoTデバイスだけで2025年までに80ゼタバイト近くのデータが生成されると予測している。

Edge AIプラットフォームは、最も大量のデータをサポートするために、以下に示すように、複数のインジェストソース(IoT、ビデオ、位置情報、センサー)、プロトコル、インジェストプロバイダーをサポートしている。 また、高スループットと低レイテンシをサポート(10ミリ秒のレイテンシで毎秒数百万イベント)。

図3。 プラットフォームの取り込み、処理、およびストレージ。

着信ビデオ、IoT、センサーデータが到着すると、取り込み層はデータ配信を保証しオーバーフロー状態を防ぐために内蔵のスロットルを使用する。 メッセージブローカーは、受信データをストリーム/イベントエンジンに配信し、メモリストアに移動する前に変換、エンリッチ化、クレンジングを行う。 データがメモリストアに格納されると、定期的に分散クラウドストアと同期される。 可視化ツールは、メモリストア内のデータを使用してリアルタイムの分析と運用ダッシュボードを提供する。

機械学習パイプライン

機械学習はアルゴリズムに依存している。データサイエンティストやMLのエキスパートでない限り、これらのアルゴリズムは理解して機能するのが非常に複雑である。 そこで機械学習フレームワークが登場し、基礎となるアルゴリズムを深く理解しなくてもMLモデルを簡単に開発できるようになる。 TensorFlow、PyTorch、およびsci-kit-learnは間違いなく今日最も人気のあるMLフレームワークであるが、将来的にはそうではないかもしれないため、目的のアプリケーションに最適なフレームワークを選択することが重要である。

この目的のために、Edge AIプラットフォームはモデルトレーニング、フィーチャーエンジニアリング、サービスのためのあらゆるMLフレームワークをサポートしている。 下図に示すように、Edge AIはトレーニング、トラッキング、パッケージング、サービス提供を含む完全なモデルライフサイクル管理をサポートする。

図4。 機械学習パイプライン。

Edge AIプラットフォームの典型的な機械学習ワークフローを見てみよう。 まず、選択したMLフレームワークを活用して、ローカル環境でモデルを作成する。 一度モデルがまとめられると、テストは小さなデータセットから始まり、MLflowやSagemakerのようなモデルライフサイクルツールを用いて実験が捕捉される。 最初のテストの後、モデルはハイパーパラメータのチューニングとともに、より大きなデータセットでクラウドでトレーニングする準備が整った。 モデルバージョンはクラウド上のモデルリポジトリに格納される。

モデルがクラウドで完全にトレーニングされたら、次のステップは、さらなるテストのためにエッジでの初期デプロイである。 その後、最終的なテストとパッケージングが行われ、エッジでの特定のデプロイトリガーに基づいて、クラウドからプルされ、エッジプラットフォームにシームレスにデプロイされる。 モデルメトリクスは継続的に収集され、さらなるモデルのチューニングと進化のためにクラウドに送信される。

プラットフォームのサービングとモニタリング

MLフレームワークの選択とサポートの柔軟性を最大限に高めるため、Edge AIプラットフォームはRESTまたはgRPCエンドポイントを使用してモデルをリアルタイムで提供する。 サービングとモニタリングのアーキテクチャの概要を以下に示す。

図5。 Edge AIは、あらゆるタイプの機械学習フレームワークで作成されたモデルを提供できる。

Jenkins Xのようなプラットフォームの継続的な統合ツールにより、デプロイトリガーを使用してモデルをエッジのモデルストアにプッシュできる。 Argo CDのような継続的デプロイメントツールは、リポジトリからモデルイメージを引き出し、各モデルを自己完結型ポッドとしてデプロイするために使用される。

デプロイされたモデルは、REST/gRPCインターフェイスを備えたSeldonを使用して提供され、APIゲートウェイの背後でロードバランシングが行われる。 クライアントはREST/gRPCコールをAPIゲートウェイに送信して予測を生成する。 モデル管理とメトリクスはSeldonを使用して提供され、ロギングとモニタリングはElk StackやPrometheusを使用して行われる。

AIとコンピューティング能力をネットワークエッジで直接クラウドサービスと組み合わせることで、企業はますます高度化し、変革をもたらすリアルタイムエンタープライズユースケースを市場に投入できる。 この記事で説明したように、エッジAIプラットフォームは、リアルタイムエンタープライズAIを大規模に運用するのに役立ち、幅広いリアルタイムMLアプリケーションを実現するためのハードルを大幅に削減する。 これにより、お客様はパイロットの導入を加速し、パイロットから本番まで効果的に拡張できる。

このブログシリーズの最終回では、Edge AIプラットフォームをベースにしたソリューションの設計と展開のプロセスを探り、予測分析、スマート製造、ロジスティクスにおけるEdge AIソリューションの顧客事例を提供する。

弊社のEdge AIプラットフォームがアプリケーションにどのようなメリットをもたらすかについては、弊社までお問い合わせください。

このシリーズの最初のブログを読むには、ここをクリック。