はじめに C++でDNNの推論を行う時のライブラリとして、Pythonで学習を行った時のフレームワーク(PyTorchやTensorFlow)のC++APIをそのまま使う手もありますが、それ以外にONNXRuntimeが有力な候補として上げられます。 筆者の所感ですが、PyTorchやTensorFlowのC++APIと比べると バイナリサイズが小さい 静的ライブラリのビルド、リンクが比較的簡単 実行速度が同等かそれ以上 といったメリットがあります。 しかし、ビルドから実際に使用するところまでの情報が散逸しており、実際に動かしてみるまで苦労したので、この記事で一通りの流れをまとめます。 この記事でやること ONNXRuntimeをソースからビルド ONNXRuntimeのC++ライブラリをソースからビルドし、推論アプリケーションで使うために必要なライブラリ群を列挙します。 ONNXRunt