AIを搭載した機器を自作できる
最近のAIブームは、既に物珍しさからくる熱狂のステージを超えて、実際の製品に組み込まれて利用されるステージへと入っています。
そして、そのような状況になった以上、AIを搭載した機器を、実際に自作してみたい、と思うのは、「ものづくり」を実践している方であれば当然の気持ちだと思います。
AIを搭載した物体認識カメラや車載AI、ペットロボットなど、多少の電子工作の知識がある方であればなおさら、自分の手で組み立てて見たいと思うのでは無いでしょうか?
NVIDIA Jetsonシリーズとは
NVIDIAが発売している、Jetsonシリーズは、まさにそうした、AIを搭載した機器を開発したいと思う個人に向けられた製品です。
JetsonシリーズはARMベースの組み込みボードで、そこにNVIDIAのGPUをベースにした機械学習用のアクセラレーターが搭載されています。
そして、Jetsonシリーズの中でも、もっとも小さなJetsonNanoは、価格的にも手頃で、個人が趣味で行うような電子工作に、AIを導入するための、非常に優れた製品です。電子工作に詳しい方ならば、Raspberry PiにミニGPUを搭載したもの、という感じが近いかと思います。
エッジAIのための知識
しかし、AIを搭載した組み込み機器(エッジAI)を作成するためには、AIの側の知識と、組み込み開発の側の知識の両方が必要となります。
これまで、AIの研究は、主にクラウド上でビッグデータを扱う事が主戦場な人たちが行ってきており、組み込み開発のような現場とは、縁が遠いものでした。
また逆に、組み込み開発を主戦場とする人は、AI開発などとは縁が遠い事が多く、その両方の知識が求められるエッジAIは、個人で試してみるには技術的ハードルがあったのです。
ここで紹介したいのが、『JetsonNanoではじめるエッジAI入門(坂本俊之著・C&R研究所)』という書籍です。
この書籍は、JetsonNanoを使って、様々な組み込み開発を行う、という内容の技術書です。
JetsonNanoのセットアップから始まり、物体認識カメラを使ったTwitterボットやペット用の自動ドア、周囲の状況を教えてくれる車載AI、ペットロボットなど、様々なエッジAIの例と、開発方法が書かれています。
先ほど書いたとおり、エッジAIの開発では、AI側の知識と組み込み開発側の知識の両方が必要となるので、この書籍も、「AI開発の知識はあるものの組み込み開発は初めて」「組み込み開発の知識はあるもののAI開発は初めて」という、2パターンの読者を想定しています。
そのため、書籍では、AI側(ソフトウェア側)をメインにした章と、組み込み開発側(ハードウェア側)をメインにした章の両方が含まれていて、一人でエッジAIを開発したいという個人にとって、幅広く知識を得られるようになっています。
組み込み開発としては、半田付けを含む電子工作による回路作成とGPIOからの回路のコントロールなど、ハードウェア開発も含んでいますし、AI開発としては、敵対的生成ネットワーク(GAN)を使ったコンテンツの自動生成AIなど、かなり高度なAIを含んだ内容も紹介しています。
また、センサーからの値を学習するニューラルネットワークのモデル設計など、ハードウェア側とソフトウェア側の境界領域にあたる分野も紹介しているので、実戦的なエッジAIの開発に向けた第一歩として、良い学習となることが出来ます。
Jetson Nano が制御するペット用自動ドア
ここに、この本の3章で紹介している、ペット用の自動ドアをJetsonNanoが制御している様子を、動画に撮影してあるので、掲載しておきます。
また、この章で紹介している環境構築の手順は、以下のYouTubeで再現動画を見ることが出来ます
機械学習エンジニア、組み込みエンジニア、それぞれ普段はお互いなじみの薄い、遠い分野に属しているかもしれませんが、エッジAI開発という状況では、両方の分野を跨いで知識を得る必要があります。
本書を通じて、機械学習開発と組み込み開発を同時に行う、エッジAI開発の実際について学んで頂ければと思います。