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 リファレンス][tfx.v1.components.StatisticsGen] を参照してください。