この度、RubyでCPUによるDeep Neural Networkの推論を可能にするExtension: menoh-ruby を開発・公開しました。 正確には、ONNXフォーマットで出力されたDNNモデルパラメータを用いて推論を行うC++ベースのライブラリmenoh(初出Instant(解説記事))のRubyラッパーを開発しています。 機能概要 C++ベースのMenohの性能をほぼそのまま活用できる 任意の層のノード値へのアクセスが可能 MKL-DNNベースの高速推論 バッチサイズ指定により複数画像に対する同時推論が可能 入出力をRubyのデータ型に適切にバインドしている 1バッチあたりの入力はRMagickのImageオブジェクトの配列 推論結果をHash/Array形式で取得可能 Rubyコードの実装例 本家のC++による実装例と同等の処理を、このように書けます。 兎にも角にも実装