TinyML as-a-Serviceとは? IoT Edgeに対してどのような意味を持つのか?

Available in English 日本語

機械学習(ML)は組み込みIoT分野において、 技術的に大きな影響を及ぼす可能性があります。 いま現在、IoT EdgeにおいてMLの価値を完全に実現するには 様々な技術的課題が立ちはだかっています。 TinyMLはそれらの課題を解決することができるでしょうか? このエリクソンリサーチの連載で、 IoTにおける機械学習の可能性と課題を探り、 そして私たちのTinyML as-a-Serviceのコンセプトを紹介したいと思います。

 重要なIoTの提供は大きな一歩を踏み出します

Senior Researcher IoT

Experienced Researcher IoT technologies

Senior Researcher IoT

Contributor (+1)

Experienced Researcher IoT technologies

Category & Hashtags

機械学習(ML)は過去10年間にコンピューター技術をかなり変革しました。 更に医療、自動車、スマートシティ、スマートファクトリー、エンタープライズ、 金融などを含む派生分野や産業にまで影響を及ぼしました。今日においても、 産業界と学会の両面にわたり、これまでにわたり追加されてきた多大な機械学習アルゴリズムを利用するため、著しい研究の努力は依然として続けられています。それらの目的は、すべての形態の計算機械をよりスマートにし、洗練されかつ信頼性のあるサービスを提供できるようにすることです。

機械学習とIoT

Internet of Things (IoT)の関連で機械学習を適用するということは、間違いなくエンタープライズ、産業界および学会において多大な興味を引き起こす分野です。今日、研究者はスマートデバイスのユーザーエクスペリエンスと産業プロセスの改善のために既存のIoT機械学習を進展させようと励んでいます。

しかしながら、ここで注意してほしいのは、 「何がデファクトのIoT機械学習か」に対しての公式なかつ統一された見解が存在しないことです。そして、これに関して様々は解釈が存在しています。 私たちの見解では、 IoTにおけるインテリジェントなアルゴリズム利用とは、IoTエンドデバイス (センサーやアクチュエータといったマイクロコントーラー)での利用も意味しま す。それは、まさにIoTデバイス上で機械学習アルゴリズムのパワーを解き放ちます。 これがクラウドやLinuxが動作する高機能デバイスという従来の範疇を超えて、 IoT機械学習を実現するということです。

ほとんどの場合、IoT機械学習とは、 有名なシングルボード・コンピューターの「ラズベリーパイ」と同様のデバイス上に 機械学習の推論機能を載せることと思うかもしれませんが、 ここでの問題は、どうすればLinuxが動作しないような組み込み32bitのマイクロコントローラー上に機械学習アルゴズムを載せることが可能か?ということになります。

これに対して回答するために、まずはじめに「組み込みIoTデバイス (constrained IoT device)」の定義を明確にする必要があります。過去10年間 のIoT関連の研究でこの共通認識を形成するためのに数え切れないほどの試みがなされました。私たちはIETF RFC7228bisでの定義を取り入れます。私たちは組み込みの世界のIoTのもっとも末端にあるデバイスを考慮する必要があると考えます。「組み込み」とはハードウェアとソフトウェアの制約と同義と考えることができます。かわって、これはクラウドやエッジと対称なものと考えれます。クラウドやエッジは強大で無尽蔵なリソースを持ちえます。「組み込み (Embedded)」とは、計算装置、センサー、アクチュエーターを日常的なデバイス や環境に「組み込む」ということです。例えば、土壌センサーやビルの備え付け装置などといったもののことです。

TinyML as-a-Serviceとは?

まずこの「組み込みIoTデバイス(constrained IoT device)」の明確な定義を採用することで、 機械学習をIoTデバイスのために「提供(serving)」することと、 機械学習をIoTデバイス上で「実行(processing)」することを分けて考えることが必要です。

最初のケースでは、すべての機械学習関連のタスクはエッジやクラウドへアウ トソースされます。つまりIoTデバイスはMLアルゴリズムの出力を待つという 意味で受け身なのです。逆に第2のケースでは、IoTデバイスは実際にインテリジェント・サービスに参加します。これがTinyML as-a-Serviceの定義です。 クラウドやエッジと比較して非力なリソースであるということは関係ありません。

以下の図1はそれぞれ違った技術分野と構成要素の重なりを示しています。 そして我々の研究の焦点も示しています。 技術的観点から、いくつかの重なった領域がある共通認識を提示していることがわかります。 例えば、「Linux」と「IoT」の重なりが「組み込みLinux」です。 IoTはデバイス~エッジ~クラウドにまたがっています。 「TinyML」は「IoT」と「ML」の重なりです。 さらにTinyMLはLinuxを含まずに機械学習を組み込みの世界へ導入することを意味します。 これは我々の研究分野の重要な側面を表しています。 今後の続編でさらに明らかしていきます。

重なる技術分野と構成要素

図 1: 重なる技術分野と構成要素

TinyML as-a-Serviceの課題

IoTデバイスに対する機械学習の「提供(serving)」と「実行(processing)」の差は大きな技術的課題として現れます。 IoTデバイスに対する機械学習の「実行(processing)」の労力は研究開発において増大してきています。 これはエリクソンに限った話ではなく、業界の他の主要なテクノロジー企業においても同様です。 目的は機械学習の「実行(processing)」を容易かつシンプルにすることです。

これに関して、以下の三つの課題を吟味します。

  1. エッジコンピューティングの技術的課題、エッジコンピューティングが万能でない理由
  2. Webと組み込みの技術的差異、特にデプロイと実行の観点から
  3. 機械学習に必要な計算リソース、高精度かつ高信頼性を提供するために

このシリーズで私たちは TinyML as-a-Serviceがどのように「組み込みIoT」と機械学習をつなげることが できるか紹介し説明します。TinyML as-a-Serviceのポイントを紹介し、なぜ 機械学習を組み込みIoTに持ち込むのが容易でないのかを詳解します。そして TinyML as-a-Serviceとともに「組み込みIoT機械学習」を可能する方法を示しま す。

機械学習とエッジIoTの魅惑的な融合を発見するために楽しみにお待ちください。

The Ericsson Blog

Like what you’re reading? Please sign up for email updates on your favorite topics.

Subscribe now

At the Ericsson Blog, we provide insight to make complex ideas on technology, innovation and business simple.