メルマガ
STM32マイクロコントローラで『Hello World』機械学習モデルを実行する方法 (Digi-Key社【アプリケーションラボ】技術解説記事のご紹介)
|
||||||||||||
![]() |
STM32マイクロコントローラで『Hello World』機械学習モデルを実行する方法 (Digi-Key社【アプリケーションラボ】技術解説記事のご紹介) | ||
「アプリケーションラボ」は、Digi-Key社のご協力をいただいて、Digi-Key社が公開している新製品や技術情報を日本語でご紹介するWebページです。基礎技術から最新技術まで有益な情報を公開していますので、是非ご活用ください。 今回は、低価格なマイコン上でAIの機械学習(machine learning、ML)を実現させる方法について解説した記事をご紹介します。 ■STM32マイクロコントローラで『Hello World』機械学習モデルを実行する方法 音声認識や画像認識などのAI処理をリアルタイムで実現するには、サーバーやクラウドに集めたデータを使って行うのではなく、エッジ端末で直接行う方が効率的です。しかし、高機能なAI処理をエッジ端末で行うには高性能なハードウェアが必要になり現実的ではありません。 そこで、IoTなどの安価なマイコンを使った組み込み機器では、tinyMLが採用されています。tinyMLは、mW以下の低電力デバイスで機械学習を行うためのハードウェア、アルゴリズム、ソフトウェアで、2019年3月に設立されたtinyMLファウンデーションにより仕様などの検討が行われています。
上図はtinyMLにより音声を認識する過程を示したもので、マイクで拾った"yes"という単語を事前に学習したキーワードと一致させることで認識します(Arm社の資料より引用)。tinyMLモデルは、音声をスペクトログラム(音声の特徴)に変換しています。 【アプリケーションラボ】の解説記事では、tinyMLの概要とtinyMLモデルによる「Hello World」アプリケーションを作成する方法について解説した後、STMicroelectronics社が開発したtinyML用のハードウェアとソフトウェアを紹介しています。
STM32CubeIDEは、STM32マイコン用としてペリフェラルの設定、コンパイル、デバッグなどを行う統合開発環境で、初期化コード自動生成ツールSTM32CubeMXを統合しています。 X-CUBE-AIは、STM32CubeIDEの拡張パッケージとして提供される組込みAI開発用ツールで、パソコンやSTM32マイコン上でニューラルネットワークの検証ができます。学習済みニューラルネットワークの生成と自動変換を行い、STM32マイコンに最適化されたライブラリをユーザのプロジェクトに統合することができます。STM32CubeMX(バージョン5.4以降)にインストールすることで、簡単に使用することができます。 TensorFlow Lite for Microcontrollersは、メモリが数KBのマイコン上でMLモデルを実行できます。コアランタイムはArm Cortex-M3の場合16KBに収まります。OSのサポートやC/C++ライブラリ、動的メモリの割り当てなどは必要ありません。 ここで解説されているデバイスは、マルツオンラインのウェブサイトで購入できますので、是非参考にしてください。
|
| ▼ IMUセンサーを活用した位置推定 【LP08:センシング回路編】 IMU センサーを活用した小型携帯回路基板を製作し、GPS を採用出来ない制約環境にて、位置推定を実現致しました。 資料のダウンロードはこちらから。 回路設計に関するご相談・お見積りは無料です。こちらからお気軽にお問合せください。 |
||
|
||||||||||||||||||||||||||||||||||||||||||||||||






tinyMLにより"yes"という単語を認識する過程







