Niektóre elementy TFX używać opis danych wejściowych zwanych schemat. Schemat jest instancją schema.proto . Może określać typy danych dla wartości cech, czy cecha musi być obecna we wszystkich przykładach, dozwolone zakresy wartości i inne właściwości. Składnik potoku SchemaGen automatycznie wygeneruje schemat, wywnioskując typy, kategorie i zakresy z danych szkoleniowych.
- Zużywa: statystyki z komponentu StatisticsGen
- Emisje: Prototyp schematu danych
Oto fragment proto schematu:
...
feature {
name: "age"
value_count {
min: 1
max: 1
}
type: FLOAT
presence {
min_fraction: 1
min_count: 1
}
}
feature {
name: "capital-gain"
value_count {
min: 1
max: 1
}
type: FLOAT
presence {
min_fraction: 1
min_count: 1
}
}
...
Ze schematu korzystają następujące biblioteki TFX:
- Walidacja danych TensorFlow
- Transformacja przepływu tensorowego
- Analiza modelu TensorFlow
W typowym potoku TFX SchemaGen generuje schemat, który jest używany przez inne składniki potoku. Jednak automatycznie wygenerowany schemat jest najlepszy i próbuje tylko wywnioskować podstawowe właściwości danych. Oczekuje się, że programiści przejrzą go i zmodyfikują w razie potrzeby.
Zmodyfikowany schemat można przywrócić do potoku za pomocą składnika ImportSchemaGen. Składnik SchemaGen do początkowego generowania schematu można usunąć, a wszystkie dalsze składniki mogą korzystać z danych wyjściowych ImportSchemaGen. Zaleca się również, aby dodać ExampleValidator pomocą schematu importowane do zbadania danych treningowych w sposób ciągły.
Walidacja danych schematu i TensorFlow
SchemaGen szeroko wykorzystują TensorFlow dane walidacyjne dla wywodząc schematu.
Korzystanie z komponentu SchemaGen
Do początkowego generowania schematu
Komponent potoku SchemaGen jest zazwyczaj bardzo łatwy do wdrożenia i wymaga niewielkiego dostosowania. Typowy kod wygląda tak:
schema_gen = tfx.components.SchemaGen(
statistics=stats_gen.outputs['statistics'])
Więcej szczegółów można znaleźć w dokumentacji API SchemaGen .
Dla recenzowanego importu schematu
Dodaj składnik ImportSchemaGen do potoku, aby przenieść definicję sprawdzonego schematu do potoku.
schema_gen = tfx.components.ImportSchemaGen(
schema_file='/some/path/schema.pbtxt')
schema_file
powinna być pełna ścieżka do pliku Protobuf tekst.
Więcej szczegółów można znaleźć w dokumentacji API ImportSchemaGen .