600米ドル未満でディープラーニング検査システムを構築する方法
はじめに
ディープラーニングの導入は、大局的な見方をすればマシンのビジョンの情勢に改革をもたらします。新しいアプリケーションの創造、確立した市場の破壊が起こっています。FLIRの製品マネージャーとして、私は多岐にわたる範囲の業界の企業を訪問する恩恵にあずかりました。私が今年、訪問した各企業はディープラーニングに取り組んでいます。始めるのは決して簡単ではありませんが、どこから始めたら良いのでしょうか? この記事は、600米ドル未満でディープラーニングの推論システムを構築するために、簡単にできる手順を示します。
ディープラーニングの推論とは何ですか?
推論とは、新しいデータについて推測を行うために、ディープラーニングでトレーニングしたニューラルネットワークを使用することです。推論は従来のルールベースの画像分析よりも、複雑で主観的な質問に答える上でより良い方法です。ネットワークをローパワーのハードウェアで実行することにより、推論はデータソースの近くの「エッジで」実行することができます。これは、画像分析時のシステムの中央サーバーへの依存を排除し、レイテンシーを下げ、信頼性を高め、セキュリティを改善します。
1. ハードウェアの選択
このガイドの目的は、現場で展開する信頼できる高品質のシステムを構築することにあります。このガイドの対象範囲外ではありますが、従来のコンピュータービジョン技術をディープラーニング推論と組み合わせると、各アプローチの長所を利用することで、非常に正確で高い計算効率を提供することができます。Aaeon UP Squared-Celeron-4GB-32GB シングルボードコンピューターは、このアプローチに必要なメモリーとCPU パワーを備えています。その X64 Intel CPUは、従来型のデスクトップ PC と同じソフトウェアを実行し、ARMベースのシングルボードコンピューター(SBC)と比較して、開発を簡素化します。
ディープラーニング推論を可能にするコードは、ブランチングロジックを使用します。専用のハードウェアはこのコードの実行を大幅に加速します。Intel® Movidius™ Myriad™ 2 Vision Processing Unit (VPU) は、非常にパワフルで、効率的な推論アクセラレーターであり、新しい推論カメラであるFirefly DLに内蔵されています。
部品 |
品番 |
価格[USD] |
新しい推論カメラであるFirefly DL |
299 |
|
シングルボードコンピューター |
UP Squared-Celeron-4GB-32GB-PACK |
239 |
3m USB 3ケーブル |
10 |
|
レンズ |
10 |
|
ソフトウェア |
Ubuntu 16.04/18.04, TensorFlow, Intel NCSDK, FLIR Spinnaker SDK |
0 |
合計 558ドル |
2. ソフトウェア要件
ディープラーニング推論モデルを構築、トレーニング、展開するための多くの無料ツールが利用できます。このプロジェクトでは、無料のオープンソースソフトウェアのアレイを使用します。各ソフトウェアパッケージのインストール手順は、それぞれのウェブサイトで確認できます。このガイドは、Linuxコンソールの基本に精通していることを想定しています。
トレーニングデータの収集 |
トレーニングネットワーク(拡張オプション) |
パフォーマンス評価 |
Movidiusグラフ形式への変換 |
Firefly DLに展開する |
取得した画像 での推論の実行 |
図 1. ディープラーニング推論のワークフローと各ステップに関連づけられたツール。
3. 詳細ガイド
Getting Started with Firefly Deep Learning on Linux では、ニューラルネットワークを再トレーニングし、結果のファイルをFirefly互換形式に変換し、SpinViewを使用して結果を表示する方法について紹介します。 ユーザーには、端末を介して推論ネットワーク自体をトレーニングおよび変換する方法について段階的なプロセスが提供されます。
関連記事
Neural Networks Supported by the Firefly Deep Learning は、Firefly-DLでの動作をテストしたニューラルネットワークを示します。
Tips on creating Training Data for Deep Learning Neural Networks は、特定のアプリケーション向けに高品質のトレーニングデータを作成することにより、効率的なディープラーニングニューラルネットワークを作成する方法について説明します。
Troubleshooting neural network graph conversion issues は、推論ネットワークファイルをFirefly互換形式に変換するときに発生する可能性のある問題とその解決方法に関する役立つヒントを提供します。