microsoft / PhysioPro

A deep learning framework for physiological data processing and understanding.
MIT License
67 stars 12 forks source link

contiformer encountered an error #18

Closed xiangyi-wang closed 4 months ago

xiangyi-wang commented 5 months ago

physiopro.dataset.base.EventDataset preprocessor: Optional[Union[ClassConfig[Preprocessor], Preprocessor]] = None, physiopro.dataset.tpp.EventDataset preprocessor: Optional[Any] = None,


(pytorch) H:\PhysioPro>python -m physiopro.entry.train docs/configs/contiformer_tpp.yml --data.name data_traffic --model.lr 1e-3 --network.add_pe false --network.normalize_before false --network.actfn_ode sigmoid --network.layer_type_ode concat --model.tmax 5 --model.step_size 20  --runtime.output_dir outputs/Temporal_Point_Process/traffic
Traceback (most recent call last):
  File "e:\miniconda3\envs\pytorch\lib\site-packages\utilsd\config\type_def.py", line 185, in load
    converted = t.from_plain(payload, ctx)
  File "e:\miniconda3\envs\pytorch\lib\site-packages\utilsd\config\type_def.py", line 606, in from_plain
    dataclass = dataclass_from_class(type_, inherit_signature=inherit)
  File "e:\miniconda3\envs\pytorch\lib\site-packages\utilsd\config\registry.py", line 204, in dataclass_from_class
    raise TypeError(
TypeError: Inconsist annotations found for the same param for inherited classes:
        Param name: preprocessor
        Annotation in <class 'physiopro.dataset.tpp.EventDataset'>: typing.Optional[typing.Any]
        Annotation in <class 'physiopro.dataset.base.BaseDataset'>: typing.Union[utilsd.config.registry.ClassConfig[physiopro.dataset.preprocessor.Preprocessor], physiopro.dataset.preprocessor.Preprocessor, NoneType]

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "e:\miniconda3\envs\pytorch\lib\runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "e:\miniconda3\envs\pytorch\lib\runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "H:\PhysioPro\physiopro\entry\train.py", line 48, in <module>
    _config = TrainConfig.fromcli()
  File "e:\miniconda3\envs\pytorch\lib\site-packages\utilsd\config\python.py", line 177, in _fromcli
    TypeDef.load(cls, default_config.asdict(), ParseContext(cli_context))
  File "e:\miniconda3\envs\pytorch\lib\site-packages\utilsd\config\type_def.py", line 185, in load
    converted = t.from_plain(payload, ctx)
  File "e:\miniconda3\envs\pytorch\lib\site-packages\utilsd\config\type_def.py", line 541, in from_plain
    value = TypeDef.load(field.type, value, ctx=ctx)
  File "e:\miniconda3\envs\pytorch\lib\site-packages\utilsd\config\type_def.py", line 194, in load
    raise ValidationError(err_message)
utilsd.config.exception.ValidationError: Object can not be loaded. Cause: Inconsist annotations found for the same param for inherited classes:
        Param name: preprocessor
        Annotation in <class 'physiopro.dataset.tpp.EventDataset'>: typing.Optional[typing.Any]
        Annotation in <class 'physiopro.dataset.base.BaseDataset'>: typing.Union[utilsd.config.registry.ClassConfig[physiopro.dataset.preprocessor.Preprocessor], physiopro.dataset.preprocessor.Preprocessor, NoneType]
  Parser location: data
  Matched types: registryconfig
  Object: {'type': 'tpp', 'prefix': './data/temporal_point_process', 'name': 'data_synthetic', 'fold': 'fold1', 'max_len': 100}
suiguoxin commented 4 months ago

Fixed in #21