※本企画は雑誌『Interface』のWebサイトに掲載された記事を再編集したものです。
※本記事はアイリアの製品およびサービスを紹介するPR記事です。
ailia SDKとは?
アイリア(Ailia Inc.)が開発、提供するエッジAI向け推論フレームワーク「アイリアSDK」を、ラズベリー・パイ4上で動作検証します(写真1)。
アイリアSDKについて、開発元による紹介文を引用し、その概要を示します(1)。
*****
「あらゆるデバイスに実装できる,独自開発のエッジAIフレームワーク」
現在、既存のAIフレームワークはデバイスやプラットフォームごとに細分化が進んでいます。私たちは、推論に特化したAIフレームワークであるアイリアSDKによって、クロスプラットフォームで一貫性のある推論環境を提供します。
さまざまな認識・結果を出力するAIモデルと、OSやハードウェアの実行プラットフォームを接続し、高速なエッジAIを実現する、世界最高水準のAI開発環境です。
*****

ライセンス…個人は無償
アイリアSDKはGitHub上で公開されていますが、公式サイトから本体一式をダウンロードできます。ライセンスはオープンソースソフトウェア(OSS)ではありませんが、以下の条件で無償利用が可能です。
・個人利用
・年間収益10万米ドル未満の小規模商用利用
法人利用(受託開発など)は無償利用の対象外となりますので、ご留意ください。また、ライセンスには30日間の評価期限が設定されており、期限後は再取得が必要です。
なお、pip経由で導入した場合は、30日ごとにライセンス・ファイルが自動で更新されるため、継続的な利用が可能です。
ラズベリー・パイOSの選定とセットアップ
アイリアSDKのチュートリアル(Python)では、下記のラズベリー・パイOSが指定されています。やや古い32ビット版である点にご注意ください。
*****
Raspberry Pi OS (32-bit) with desktop and recommended software(August 2020)
*****
なお、ダウンロードしたSDK内のインストール用ファイル(bootstrap.py)には、「arm64 v8a」フォルダを利用する旨の記述が確認できました。このことから、アイリアSDKはAArch64(ARM64)にも対応していると判断できます。
そこで本記事では,より新しい64ビット版ラズベリー・パイOS(Debian 12 Bookwormベース)を用いて動作検証を行います。64ビット版のOSを使用する理由は、アイリアSDKの性能を最大限に引き出すためです。64ビット環境では、32ビット環境に比べてより大きなメモリ空間を扱えたり、より効率的な命令セットを使用できるため、AI処理のような計算負荷の高いタスクにおいてパフォーマンスが向上します。
アイリアSDKのインストール
チュートリアルに従い、SDKのインストールを行います。実行結果は(リスト1)のとおりです。インストールログから、aarch64(64ビット)版のパッケージが自動的に選択され、インストールできることを確認しました。これにより64ビット版ラズベリー・パイOS上でもアイリアSDKが動作することが期待できます。
$ cd ~/ailia_1_5_0_trial
$ pip3 install ailia
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting ailia
Downloading ailia-1.5.0.0-py3-none-manylinux2014_aarch64.whl.metadata (1.2 kB)
Downloading ailia-1.5.0.0-py3-none-manylinux2014_aarch64.whl (70.8 MB)
━━━━━━━━━━━━━━━━━━ 70.8/70.8 MB 3.1 MB/s eta 0:00:00
Installing collected packages: ailia
Successfully installed ailia-1.5.0.0
$ python3 bootstrap.py
$ pip3 install
Processing /home/mike/ailia_1_5_0_trial/python
:
:
:
Successfully installed ailia-1.5.0.0
(リスト1)アイリアSDKのインストール
アイリアが公開しているサンプルの実行準備
インストールしたSDKが64ビットOS環境で正常に動作するかどうかを、アイリアが公開しているサンプル・プログラムを用いて確認します。
サンプル・プログラムはailia MODELSに含まれているため、これを利用します。
$ git clone https://github.com/axinc-ai/ailia-models
▲必要なライブラリのインストール
ラズベリー・パイ用として、(リスト2)のパッケージをインストールします。全てのライブラリが正常にインストールできました。
pip3 install numpy
pip3 install opencv-python
pip3 install matplotlib
pip3 install scikit-image
sudo apt-get install libatlas-base-dev
(リスト2)必要なライブラリのインストール
サンプル・プログラムの実行
続いてチュートリアル(Python)に従い、確認用サンプル・プログラムresnet50.pyを実行します(リスト3)。これも正常に終了したため、結果を確認します。
このプログラムは、同じフォルダ内に含まれている画像「pizza.jpg」に写っている物体を分類するものです。実行したところ、画像はピザだったため、idx=0 category=963 [pizza, pizza pie] という推論結果が得られ、分類も正確でした(図1)。
サンプル・プログラムも正常に動作したことから、最新の64ビット版ラズベリー・パイOS上でもアイリアSDKをインストールし、利用できることが確認できました。
$ python3 resnet50.py
:
class_count=3
+ idx=0
category=963[pizza, pizza pie ]
prob=0.8781408071517944
+ idx=1
category=927[trifle ]
prob=0.04941943287849426
+ idx=2
category=567[frying pan, frypan, skillet ]
prob=0.011217023245990276
INFO resnet50.py (146) : Script finished successfully.
(リスト3)確認用サンプル・プログラムresnet50.pyを実行する

まとめ
今回はラズベリー・パイ4のラズベリー・パイOS(64ビット)にアイリアSDKをインストールし、サンプル・プログラムの動作を確認しました。
アイリアSDKには多くのAIモデルが用意されているため、今後は今回構築した環境および公開されているモデルを活用し、さまざまな機能や性能を評価していく予定です。なお、アイリアSDKのチュートリアルでは古い32ビットOSの利用が指定されています。そのため、内容によっては今回の64ビットOS環境では動作しない場合も考えられます。その場合は、32ビットOSに切り替えて評価を進める予定です。
【参考文献】
(1)クロスプラットフォーム高速推論SDK,アイリア(株)
https://ailia.ai/sdk
※ラズベリーパイはラズベリーパイ財団の商標です。その他会社名、各製品名は、一般に各社の商標または登録商標です。
氏森 充(うじもり・たかし)氏
約30年間、株式会社構造計画研究所にてIoT、ビッグデータ、機械学習、AI関連のシステム開発や実務応用に従事。退職後はLLM(大規模言語モデル)関連の情報収集や技術動向の調査・発信に注力し、雑誌『Interface』でもLLM技術に関する記事を執筆中。
コンピューター・サイエンス&テクノロジ専門誌『Interface』
CQ出版社が発行するコンピュータ技術専門の月刊誌です。1974年の創刊以来、組み込みシステム、ソフトウェア、AI、IoTなど、時代とともに進化するコンピュータ技術を幅広く紹介しています。理論だけでなく、実践的なプログラミングや実機製作の記事も豊富で、エンジニアから学生まで、コンピュータ技術を深く学びたい読者に支持されています。
https://interface.cqpub.co.jp/











