С использованием:
Tensorflow version: 2.3.1
TFX version: 0.23.1
TFDV version: 0.24.0
TFMA version: 0.24.0
с таким интерактивным контекстом:
from tfx.orchestration.experimental.interactive.interactive_context import \
InteractiveContext
context = InteractiveContext(
pipeline_root=os.path.join(os.getcwd(), "pipeline")
)
Я создал ExampleGen, используя:
output = example_gen_pb2.Output(
split_config=example_gen_pb2.SplitConfig(splits=[
example_gen_pb2.SplitConfig.Split(name='train', hash_buckets=7),
example_gen_pb2.SplitConfig.Split(name='test', hash_buckets=2),
example_gen_pb2.SplitConfig.Split(name='eval', hash_buckets=1)
]))
example_gen = CsvExampleGen(input_base=os.path.join(base_dir, data_dir), output_config=output)
context.run(example_gen)
а позже в коде я попытался оценить данные с помощью ExampleValidator, но похоже, что ExampleValidator не разрешает правильные пути к разделенным наборам данных.
Создание валидатора работает как положено:
example_validator = ExampleValidator(
statistics=statistics_gen.outputs['statistics'],
schema=schema_gen.outputs['schema'])
context.run(example_validator)
Никаких предупреждений или ошибок не было, но попытка показать результаты, ошибка на путях неверна:
context.show(example_validator.outputs['anomalies'])
NotFoundError: /home/jovyan/pipeline/ExampleValidator/anomalies/16/anomalies.pbtxt; Данный файл или каталог отсутствует
Фактическая структура каталогов была такой:
.
└── anomalies
└── 16
├── eval
│ └── anomalies.pbtxt
├── test
│ └── anomalies.pbtxt
└── train
└── anomalies.pbtxt
5 directories, 3 files
но код, казалось, ожидал:
└── anomalies
└── 16
└── anomalies.pbtxt
Как мне вызвать ExampleValidator для анализа разделенных наборов данных?