Присоединяйтесь к нам на DevFest for Ukraine 14-15 июня Онлайн Зарегистрироваться сейчас

Компонент конвейера TFX SchemaGen

Некоторые компоненты TFX использовать описание входных данных называется схемой. Схема является экземпляром schema.proto . Он может указывать типы данных для значений функций, необходимость присутствия функции во всех примерах, допустимые диапазоны значений и другие свойства. Компонент конвейера SchemaGen автоматически генерирует схему, определяя типы, категории и диапазоны из обучающих данных.

  • Потребляет: статистика из компонента StatisticsGen.
  • Излучает: прототип схемы данных

Вот отрывок из прототипа схемы:

...
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
  }
}
...

Следующие библиотеки TFX используют схему:

  • Проверка данных TensorFlow
  • Преобразование TensorFlow
  • Анализ модели TensorFlow

В типичном конвейере TFX SchemaGen генерирует схему, которая используется другими компонентами конвейера. Однако автоматически сгенерированная схема является оптимальной и пытается вывести только основные свойства данных. Ожидается, что разработчики рассмотрят его и при необходимости внесут в него изменения.

Измененную схему можно вернуть в конвейер с помощью компонента ImportSchemaGen. Компонент SchemaGen для первоначального создания схемы может быть удален, и все последующие компоненты могут использовать выходные данные ImportSchemaGen. Кроме того , рекомендуется добавить ExampleValidator с использованием импортированной схемы для изучения обучающих данных непрерывно.

Проверка данных SchemaGen и TensorFlow

SchemaGen широко использует TensorFlow Data Validation для выводя схемы.

Использование компонента SchemaGen

Для первоначальной генерации схемы

Компонент конвейера SchemaGen обычно очень прост в развертывании и требует небольшой настройки. Типичный код выглядит так:

schema_gen = tfx.components.SchemaGen(
    statistics=stats_gen.outputs['statistics'])

Более подробная информация доступна в справочнике API SchemaGen .

Для импорта проверенной схемы

Добавьте компонент ImportSchemaGen в конвейер, чтобы перенести проверенное определение схемы в конвейер.

schema_gen = tfx.components.ImportSchemaGen(
    schema_file='/some/path/schema.pbtxt')

schema_file должен быть полный путь к файлу текста Protobuf.

Более подробная информация доступна в справочнике API ImportSchemaGen .