Skip to Content
タイニーエムエル
book

タイニーエムエル

by Pete Warden, Daniel Situnayake
March 2025
Intermediate to advanced
504 pages
7h 53m
Japanese
O'Reilly Media, Inc.
Content preview from タイニーエムエル

第15章. 遅延を最適化する

この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com

組込みシステムは計算能力があまり高くないため、ニューラルネットワークに必要な集中的な計算には、他のほとんどのプラットフォームよりも時間がかかる可能性がある。組込みシステムは通常、センサーデータのストリームをリアルタイムで操作するため、動作が遅すぎると多くの問題を引き起こす可能性がある。例えば、短時間しか発生しない可能性のある何か(カメラの視野に鳥が見えるなど)を観察しようとしているとしよう。処理時間が長すぎると、センサーのサンプリングが遅すぎて、このような現象を見逃してしまうかもしれない。例えば、ウェイクワード検出の例では、ウェイクワードを検出するために音声データに対して1秒間のウィンドウを実行するが、毎回ウィンドウを100ミリ秒かそれ以下しか進めず、結果を平均化する。このような場合、遅延を減らすことで全体的な精度を向上させることができる。また、モデルの実行を高速化することで、デバイスのCPU周波数を低くしたり、推論の合間にスリープ状態にしたりすることができ、全体的なエネルギー使用量を減らすことができる。

遅延は最適化にとって非常に重要な領域であるため、この章ではモデルの実行にかかる時間を短縮するために使用できるさまざまなテクニックに焦点を当てる。

まず、それが重要であることを確認する

ニューラル・ネットワークのコードがシステム全体の遅延に占める割合が小さいため、それを高速化しても製品のパフォーマンスに大きな違いが出ない可能性がある。そうであるかどうかを判断する最も簡単な方法は、アプリケーションコードの の呼び出しをコメントアウトすることである。 tflite::MicroInterpreter::Invoke()の呼び出しをコメントアウトすることだ。これはすべての推論計算を含む関数であり、Network+が実行されるまでブロックされるため、これを削除することで全体の遅延にどのような違いが出るかを観察することができる。理想的な世界では、タイマーのログ文やプロファイラーを使ってこの変化を計算することができるだろうが、簡単に説明するように、LEDを点滅させて周波数の違いを見るだけでも、速度向上の大まかな見当をつけるには十分かもしれない。ネットワーク推論を実行した場合としなかった場合の差が小さい場合、コードのディープラーニング部分を最適化しても得るものはあまりなく、まずはアプリケーションの他の部分に集中すべきである。

ハードウェアの変更

ニューラルネットワークコードを高速化する必要がある場合、最初に尋ねるべき質問は、より強力なハードウェアデバイスを使用できるかどうかである。多くの組み込み製品では、どのハードウェアプラットフォームを使用するかは非常に早い段階で決定されるか、外部で設定されていることが多いため、これは不可能であるが、ソフトウェアの観点から変更するのが最も簡単な要因であるため、明確に検討する価値がある。選択肢がある場合、最大の制約は通常、エネルギー、スピード、コストである。もし可能なら、使用しているチップを変更することで、エネルギーやコストをスピードとトレードオフしよう。研究しているうちに、他の主要な要素を失うことなく、より高速な新しいプラットフォームを発見する幸運に恵まれるかもしれない!

ニューラルネットワークを訓練する場合、訓練ステップごとに一度に大量の訓練例を送信するのが一般的だ。これにより、一度に1つのサンプルしか送信されない場合には不可能な、多くの計算最適化が可能になる。例えば、1回のトレーニング呼び出しで100枚の画像とラベルが送信されるかもしれない。このようなトレーニングデータの集合を ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

認定倫理的ハッカー(CEH)勉強ガイド

認定倫理的ハッカー(CEH)勉強ガイド

Matt Walker
実践者向けの説明可能なAI

実践者向けの説明可能なAI

Michael Munn, David Pitman
ソフトウェア工学の基礎

ソフトウェア工学の基礎

Nathaniel Schutta, Dan Vega
エッジのAI

エッジのAI

Daniel Situnayake, Jenny Plunkett

Publisher Resources

ISBN: 9798341627000