CPUのみを使用して自律航行船を開発、実際に実現

CPUのみを使用して自律航行船を開発、実際に実現

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載しています。転載の際は出典元にご連絡ください。

いつも私を魅了してきたことが一つあります。

今は2021年です。海を航行する自動運転船はあるのでしょうか?

この疑問を念頭に、私は Google を開いて「自律船」と入力しました。意外にも、現在の自律船技術が私の認識を新たにしました。

完全無人の自律船が今年大西洋を横断する予定で、排出ガスゼロの自律船も開発中だ…

[[378207]]

△ 大西洋を横断する準備を整えるメイフラワー自律航行船(IBM提供の写真)

研究室での結果に加え、その商業化の進捗は私の想像を超えています。

2018年には早くもRR(ロールス・ロイス)社が自律航行船を使ってVIP顧客の車80台を海上輸送することに成功したことが判明した。

RR の技術はノルウェーの会社Kongsberg Maritimeから提供されています。レーダーとカメラを使用して障害物を検知・回避し、途中で自動走行し、港に入った後は自動的にドッキングします。

その後、RR Commercial Marine部門は2019年4月にKongsbergに買収されました。

[[378208]]

Kongsberg は、ゼロエミッションの自律船を開発している前述の海運大手です。

コングスベルグの技術計画では、ノルウェーの企業が生産した肥料が将来、3つの港の間で積み込まれ、航行され、荷降ろしされることになる。プロセス全体を通じて、現場での人間の介入は一切必要ありません。

[[378209]]

△コングスベルグが開発中の世界初の自律型コンテナ船(写真は公式サイトより)

国際海事機関(IMO)の定義によれば、現在の自律船舶技術はL2からL3へと進化しています。

この時点で、自律航行船の商業化プロセスについては大体理解できましたので、残りの質問に移ります。

船はどうやって自動運転するのでしょうか?

自動運転車に使用されている技術やチップは多様です。画像認識のみを使用する企業もあれば、それをライダーと組み合わせる企業もあります。独自のチップを開発する企業もあれば、サードパーティのコンピューティング プラットフォームを購入する企業もあります。

Kongsberg はどのようなソリューションを使用しましたか?

ほとんどの無人車両と同様に、Kongsberg のソリューションはさまざまなセンサーを使用します。レーダーは遠くの物体を検出し、LIDAR は船体付近の領域を高精度に分析し、高解像度カメラは船の前方の海の 180 度の画像を撮影します。

これは同社が市場に投入する初の完全自律型船舶ソリューション、 Intelligent Awareness です。

3 つのセンサーによって収集された情報はアルゴリズムによって処理されて画面に表示され、乗組員はダッシュボードを通じて強調表示された潜在的な危険エリアを確認できます。

コングスベルグ社によれば、「インテリジェント認識」は、特に暗闇、悪天候、混雑した海域、ドックへの入港時や出港時に船員のリスクを軽減するのに役立つという。

もちろん、ここで使用される画像認識と分類は、自動運転車よりもはるかに複雑です。

海面では検索距離が長くなるため、画像内のオブジェクトのスケーリングは大きな課題となります。同じオブジェクトでも、距離によってサイズが大きく異なり、最小 10 ピクセルから最大 100,000 ピクセルまでの範囲になります。

△海洋ターゲット検出における距離の問題によりモデルの精度が低下する

これにより、必然的にハードウェアに高い負荷がかかります。

CPUのみを使用する

しかし驚くべきことに、Kongsberg はこのソリューションで、個別の GPU や NPU などの AI 推論アクセラレーション ハードウェアを使用せず、代わりに Intel の CPU (および内部統合 GPU) に完全に依存していました。

コンピューティング要件がより少ない自動運転車であっても、専用の AI チップを使用しないことは考えられません。

さらに、Kongsberg の過去の AI ソリューションでは GPU を使用していたため、船舶でも GPU を使用しないのはなぜでしょうか?不可解ですね。

その後、同社のプロジェクトマネージャーであるサーレラ氏はインタビューでその理由を次のように説明した。

重要な理由の 1 つは、海事認証の問題です。 GPU がなければ、サーバーが認証に合格しやすくなります。さらに、消費電力も削減したいと考えています。

私たちの理想的な解決策は、ほぼ同一の汎用サーバー システムを使用することです。すべてのサーバーに GPU が必要なわけではなく、すべてのサーバーに GPU が搭載されていない方が冗長性が得られ、どのサーバーでも任意のアプリケーションを実行できるため、より望ましいでしょう。

産業分野における厳格な認証システムと商業ユーザーのコスト削減ニーズにより、フル CPU ソリューションは「自律運転船」の優先ソリューションとなっています。

実際、CPU は AI 推論に完全に対応しています。

このセットアップでは、Kongsberg はそれぞれ 16 個のコアを持つ2 つの Intel Xeon Platinum 8153 プロセッサを使用します。各コアは 2 つのスレッドを処理できるため、合計 64 個のモデルを並列処理できます。

ハードウェアの仕様は確かに十分に豪華です。問題は、CPU が自動運転のコンピューティング ニーズを満たすことができるかどうかです。

プロジェクトマネージャーのサーレラ自身も、最初はこれに自信がなかったそうです。

CPU が十分な速さで画像を処理できない場合、自動運転船は高速で移動する他の船に衝突する可能性があります。商業船舶にとって、このような事故によって引き起こされる経済的損失は過小評価できません。

CPU は AI 推論に適していないと誰が言ったのでしょうか?

この問題を解決するために、Kongsberg は CPU サプライヤーの Intel にアプローチし、「インテリジェント意識」ソリューションを共同で最適化しました。

Kongsberg は、Intel が使用するための事前トレーニング済みの AI モデルを提供する責任を負っています。 Intel は、精度を低下させることなくデータ処理速度を向上させるOpenVINO 「アクセラレーション パッケージ」を提供しています。

OpenVINO (Open Visual Inference and Neural Network Optimization) は、2018 年に Intel がリリースしたディープラーニングの最適化と展開のためのオープンソース ツールキットであり、開発者が Intel ハードウェア プラットフォームに AI モデルをより簡単に展開するのに役立ちます。

OpenVINO は、Caffe、TensorFlow、MXNet、ONNXなどの主流のディープラーニング フレームワークをサポートしているほか、 ONNXへの変換をサポートするPyTorch や PaddlePaddleなどのフレームワークも間接的に使用できるため、大多数の AI 開発者をカバーできます。

もちろん、TensorFlow を使用して自律航行船を開発している Kongsberg も例外ではありません。

OpenVINO は、モデル オプティマイザーを通じて、トレーニング済みのモデルを中間表現 (IR) ファイル (*.bin および *.xml) に変換します。

モデル内のトレーニングにのみ関連する操作はすべて削除され、一部の推論操作が統合されるため、推論計算の速度が大幅に向上します。

下の図は、モデルにおける OpenVINO (濃い青) の役割を示しています。これは、ディープラーニング フレームワーク (薄い青) とユーザー アプリケーション (オレンジ) の間の橋渡しとなることが想定されています。

OpenVINO は、トレーニング済みのモデルを Intel ハードウェア向けに徹底的に最適化してから再展開するため、このプロセスで AI モデルを再トレーニングする必要がありません。

最適化後、Kongsberg のオブジェクト認識ベンチマーク プロジェクトで、CPU によって 1 秒あたりに処理される画像数が4.8 倍に増加しました。

この結果を見たコングスベルグのプロジェクトマネージャー、サーレラ氏は次のように語った。

その結果は私に衝撃を与えた。 GPU がなくなることはないと思っていましたが、これらの結果を見て考えが変わり、CPU を使用する可能性に気づきました。

OpenVINO の紹介ページを開くと、このツールセットが Intel CPU に大きな AI テクノロジーのボーナスをもたらすことがわかります。

最新バージョン 2021.2 はすでに非常に強力で、画像分類、セマンティックセグメンテーション、オブジェクト検出、顔認識、単眼深度推定、画像修復など、ほぼすべての CV アプリケーションモデルをサポートしています。

産業分野で安心して使用できるツールキットとして、Intel は安定性、パフォーマンスの確保、インターフェースの下位互換性、7x24 の安定性、ストレス テストを考慮した LTS バージョンも提供しています。

Intel が提供する Python ディストリビューションと組み合わせると、コードを微調整するだけで Python アプリケーションのパフォーマンスが向上し、 NumPy、SciPy、Scikit-learnなどの科学計算および機械学習ライブラリを高速化できます。

公式ドキュメントによると、Python ディストリビューションは最大数倍のパフォーマンス向上をもたらす可能性があります。

コングスベルグが CPU のみを使用して自律船を開発できた理由がようやく分かりました。

実は船上だけではなく、同じような場面はたくさんあります。多くの個人開発者を例に挙げてみましょう。開発用コンピュータには個別のグラフィック カードが搭載されていないかもしれませんが、CPU が搭載されている必要があります。

OpenVINO ツールキットのサポートにより、制限されたハードウェア環境でも AI のパフォーマンスを発揮できます。

この時点で、私は突然、以前 Intel Developer Event で獲得した賞品、第 2 世代の Neural Compute Stick を思い出しました。これは長い間、私の引き出しの中にしまわれていました。

[[378210]]

公式サイトで確認してみたところ、このIntelハードウェアもOpenVINOをサポートしていることがわかりました。私も最近Raspberry Pi開発ボードを購入したのですが、使い方が気になっていました。

意外にも、自動運転船の問題を解決すると、Raspberry Pi が埃をかぶらないようにする方法という別の問題も解決できました。次は、OpenVINO と Neural Compute Stick を使用して YOLO モデルを再展開します。

<<:  準備はできたか? GNN グラフ ニューラル ネットワーク 2021 年の主要なアプリケーション ホットスポット 5 つ

>>:  Forbes: 14 人の技術専門家が、将来 AI によって混乱が生じる業界を予測しています。

ブログ    
ブログ    
ブログ    

推薦する

...

技術革新により、AI人材が全国各地で活躍できるようになった

人力の60倍の速さで作業する送電線検査画像「認識者」、ベテラン並みの監視ビデオ「品質検査員」、さまざ...

Googleの最新の「効率的なトランスフォーマー」では、トランスフォーマーの効率を向上させる方法を説明しています

トランスフォーマー モデルは現在、言語、視覚、強化学習などの分野での有効性から注目を集めています。た...

...

ステップバイステップ | ニューラルネットワーク初心者ガイド

[[252981]]ビッグデータダイジェスト制作編纂者:李磊、大潔瓊、雲周過去数年間にブラウザを開い...

人工知能の10大技術分野

[[357814]]これを読んでいるあなたは、目の前のウェブサイトから CT スキャンの読み取りまで...

人工知能とモノのインターネットの動的統合の探究(I)

AI と IoT の統合により、私たちの日常生活に新たな効率、自動化、インテリジェンスがもたらされ...

展望: 2023 年のディープラーニングとメタバースの未来

ディープラーニング (DL) は、再帰型ニューラル ネットワーク、長期短期記憶、畳み込みニューラル ...

遠隔医療と増加する高齢者人口:高齢者ヘルスケアの強化

高齢者人口の継続的な増加は、高齢者の差し迫った健康ニーズを満たすために医療および保健システムを改善す...

Java クラシックアルゴリズム: カクテルソート

ソートアルゴリズムの中では、バブルソートが古典的です。カクテル ソートは、シェーカー ソートとも呼ば...

XGBoost機械学習モデルの意思決定プロセス

XGBoost アルゴリズムは、Kaggle やその他のデータ サイエンス コンテストで優れた結果...

ジェンセン・フアン:わずか2年で、Nvidiaと業界全体が完全に変わるだろう

黄仁訓は未来について次のように予言した。コンピューティング技術は10年ごとに100万倍に進歩します。...

機械学習におけるモデルドリフト

今日、機械学習モデルはビジネス上の意思決定の主な原動力となっています。他のビジネス戦略と同様に、これ...