画像アプリケーション向けのリファレンスソリューション

多くの実際の画像アプリケーションで共有される共通の構成で、pandas UDF、PyTorch、および TensorFlow を使用して、参照ソリューション ノートブックから分散イメージ モデルの推論を行う方法について説明します。 この構成では、オブジェクト・ストアに多数のイメージを保管し、オプションで新しいイメージが継続的に到着することを前提としています。

画像モデル推論のワークフロー

画像分類とオブジェクト検出用にトレーニング済みのディープラーニング (DL) モデルが複数あり (たとえば、プライバシーを保護するためにユーザーがアップロードした写真内の人物を検出するための MobileNetV2)、これらの DL モデルを格納された画像に適用するとします。

モデルを再トレーニングし、以前のコンピュート予測を更新できます。 ただし、多くの画像を読み込んでDLモデルを適用するには、I/O負荷とコンピュート負荷の両方があります。 幸いなことに、推論ワークロードは驚くほど並列であり、理論的には簡単に分散できます。 このガイドでは、次の 2 つの主要な段階を含む実用的なソリューションについて説明します。

  1. Auto Loader を使用した画像からDeltaテーブルへのETL処理

  2. pandas UDF を使用した分散推論の実行

Auto Loader を使用した画像からDelta テーブルへのETL処理

トレーニング タスクや推論タスクなどのイメージ アプリケーションの場合、 では、イメージを を使用して テーブルに することをお勧めします。DatabricksETLDeltaAuto Loaderこの Auto Loader は、データマネジメントを支援し、継続的に到着する新しい画像を自動的に処理します。

画像データセットをDeltaテーブルに変換するETLのノートブック

ノートブックを新しいタブで開く

pandas UDF を使用した分散推論の実行

次のノートブックでは、PyTorch と TensorFlow tf を使用しています。参照ソリューションをデモンストレーションするKeras。

PyTorch と pandas UDFによる分散推論のノートブック

ノートブックを新しいタブで開く

Keras と pandas UDFによる分散推論のノートブック

ノートブックを新しいタブで開く

制限事項: 画像ファイルのサイズ

大きなイメージ ファイル (平均イメージ サイズが 100 MB を超える) の場合、Databricks では、メタデータ (ファイル名の一覧) を管理し、必要に応じてパスを使用してオブジェクト ストアからイメージを読み込むためにのみ Delta テーブルを使用することをお勧めします。