StatisticsGen TFX パイプライン コンポーネント

StatisticsGen TFX パイプライン コンポーネントは、トレーニング データとサービング データの両方に関する特徴統計を生成し、他のパイプライン コンポーネントで使用できます。 StatisticsGen は Beam を使用して大規模なデータセットにスケールします。

  • 使用するもの: ExampleGen パイプライン コンポーネントによって作成されたデータセット。
  • 出力: データセットの統計。

StatisticsGen と TensorFlow データの検証

StatisticsGen は、データセットから統計を生成するためにTensorFlow Data Validationを広範囲に利用します。

StatsGen コンポーネントの使用

StatisticsGen パイプライン コンポーネントは通常、展開が非常に簡単で、カスタマイズはほとんど必要ありません。典型的なコードは次のようになります。

compute_eval_stats = StatisticsGen(
      examples=example_gen.outputs['examples'],
      name='compute-eval-stats'
      )

スキーマでの StatsGen コンポーネントの使用

パイプラインの最初の実行では、StatisticsGen の出力を使用してスキーマを推論します。ただし、その後の実行では、データ セットに関する追加情報を含む手動でキュレーションされたスキーマが作成される場合があります。このスキーマを StatisticsGen に提供することにより、TFDV は、データ セットの宣言されたプロパティに基づいて、より有用な統計を提供できます。

この設定では、次のように ImporterNode によってインポートされた厳選されたスキーマを使用して StatisticsGen を呼び出します。

user_schema_importer = Importer(
    source_uri=user_schema_dir, # directory containing only schema text proto
    artifact_type=standard_artifacts.Schema).with_id('schema_importer')

compute_eval_stats = StatisticsGen(
      examples=example_gen.outputs['examples'],
      schema=user_schema_importer.outputs['result'],
      name='compute-eval-stats'
      )

厳選されたスキーマの作成

TFX のSchemaは、TensorFlow Metadata Schema protoのインスタンスです。ゼロからテキスト形式で作成できます。ただし、 SchemaGenによって生成された推論スキーマを開始点として使用する方が簡単です。 SchemaGenコンポーネントが実行されると、スキーマは次のパスのパイプライン ルートの下に配置されます。

<pipeline_root>/SchemaGen/schema/<artifact_id>/schema.pbtxt

<artifact_id>は、MLMD のこのバージョンのスキーマの一意の ID を表します。このスキーマ プロトは、確実に推論できないデータセットに関する情報を伝達するように変更できます。これにより、 StatisticsGenの出力がより便利になり、 ExampleValidatorコンポーネントで実行される検証がより厳格になります。

詳細については、 StatisticsGen API リファレンスを参照してください。