低性能ハードウェアでDeepFaceを最適化する
DeepFaceはディープラーニング・ツール・ライブラリであるため、CPUデバイスで実行するとスピードのボトルネックに直面する可能性がある。ここでは、実績のある最適化オプションをいくつか紹介する:
- 事前に計算された顔の埋め込み反復的なクエリーを必要とするデータベース・シナリオの場合は、先取りして
DeepFace.represent()すべての顔特徴ベクトルを計算し、pickleファイルとして保存し、その後のクエリのために埋め込まれたデータを直接ロードする。 - モデルの選択VGG-Faceの代わりにGhostFaceNetのような軽量モデルを選択し、初期化時に指定することができる。
model_name='GhostFaceNet' - バッチ制御複数の画像を分析するときに使用
batch_sizeパラメータは、1回のセッションでの治療回数を制御する(推奨4~8回) - 画像の前処理スルー
enforce_detection=False厳密な顔検出をスキップする。resample入力解像度の低下
より徹底的な最適化のためには、1) ONNX Runtimeを使用して推論を高速化する、2) モデルの定量化バージョンを使用する、3) Raspberry Piなどのデバイスに特別に最適化されたバージョンのTensorFlow Liteをコンパイルしてインストールする、を検討する。
この答えは記事から得たものである。DeepFace: 顔の年齢、性別、感情、人種認識のための軽量Pythonライブラリについて































