Как мне вызвать ExampleValidator для анализа разделенных наборов данных?

С использованием:

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 для анализа разделенных наборов данных?


person Lorin S.    schedule 26.09.2020    source источник
comment
Обратите внимание, что пример компонента Keras здесь та же проблема, поэтому я открыл проблему здесь.   -  person Lorin S.    schedule 29.09.2020
comment
Проблема решена обновлением tfx до 0.24   -  person Lorin S.    schedule 29.09.2020


Ответы (1)


Спасибо @Lorin S. за то, что поделились ссылкой на решение. В интересах сообщества я предлагаю здесь решение (раздел ответов) размером 1025 КБ в github.

Добавлен сплит в версии TFX 0.23, но Colab не обновляется в версии 0.23. Colab исправлен в 0,24

Проблема устранена обновлением tfx до 0.24.

person Community    schedule 05.10.2020