Il componente della pipeline StatisticsGen TFX genera statistiche sulle funzionalità sia sui dati di training che di fornitura, che possono essere utilizzati da altri componenti della pipeline. StatisticsGen utilizza Beam per adattarsi a set di dati di grandi dimensioni.
- Consuma: set di dati creati da un componente della pipeline EsempioGen.
- Emette: statistiche del set di dati.
Convalida dei dati StatisticsGen e TensorFlow
StatisticsGen fa ampio uso di TensorFlow Data Validation per generare statistiche dal tuo set di dati.
Utilizzo del componente StatsGen
Un componente della pipeline StatisticsGen è in genere molto semplice da distribuire e richiede poca personalizzazione. Il codice tipico è simile al seguente:
compute_eval_stats = StatisticsGen(
examples=example_gen.outputs['examples'],
name='compute-eval-stats'
)
Utilizzo del componente StatsGen con uno schema
Per la prima esecuzione di una pipeline, l'output di StatisticsGen verrà utilizzato per dedurre uno schema. Tuttavia, nelle esecuzioni successive potresti avere uno schema curato manualmente che contiene informazioni aggiuntive sul tuo set di dati. Fornendo questo schema a StatisticsGen, TFDV può fornire statistiche più utili basate sulle proprietà dichiarate del set di dati.
In questa impostazione, invocherai StatisticsGen con uno schema curato che è stato importato da un ImporterNode come questo:
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'
)
Creazione di uno schema curato
Schema
in TFX è un'istanza del prototipo TensorFlow Metadata Schema
. Questo può essere composto in formato testo da zero. Tuttavia, è più semplice utilizzare lo schema dedotto prodotto da SchemaGen
come punto di partenza. Una volta eseguito il componente SchemaGen
, lo schema verrà posizionato nella radice della pipeline nel seguente percorso:
<pipeline_root>/SchemaGen/schema/<artifact_id>/schema.pbtxt
Dove <artifact_id>
rappresenta un ID univoco per questa versione dello schema in MLMD. Questo prototipo di schema può quindi essere modificato per comunicare informazioni sul set di dati che non possono essere dedotte in modo affidabile, il che renderà l'output di StatisticsGen
più utile e la convalida eseguita nel componente ExampleValidator
più rigorosa.
Maggiori dettagli sono disponibili nel [riferimento API StatisticsGen] [tfx.v1.components.StatisticsGen].