mmrazor icon indicating copy to clipboard operation
mmrazor copied to clipboard

RTM Head

Open grpinto opened this issue 1 year ago • 4 comments

Why do I get this error when i try to run my own fisher prunning template :

Traceback (most recent call last): File "/content/mmrazor/mmpose/tools/train.py", line 162, in main() File "/content/mmrazor/mmpose/tools/train.py", line 155, in main runner = Runner.from_cfg(cfg) File "/usr/local/lib/python3.10/dist-packages/mmengine/runner/runner.py", line 462, in from_cfg runner = cls( File "/usr/local/lib/python3.10/dist-packages/mmengine/runner/runner.py", line 429, in init self.model = self.build_model(model) File "/usr/local/lib/python3.10/dist-packages/mmengine/runner/runner.py", line 836, in build_model model = MODELS.build(model) File "/usr/local/lib/python3.10/dist-packages/mmengine/registry/registry.py", line 570, in build return self.build_func(cfg, *args, **kwargs, registry=self) File "/usr/local/lib/python3.10/dist-packages/mmengine/registry/build_functions.py", line 232, in build_model_from_cfg return build_from_cfg(cfg, registry, default_args) File "/usr/local/lib/python3.10/dist-packages/mmengine/registry/build_functions.py", line 121, in build_from_cfg obj = obj_cls(**args) # type: ignore File "/content/mmrazor/mmrazor/implementations/pruning/group_fisher/algorithm.py", line 57, in init self.mutator.prepare_from_supernet(self.architecture) File "/content/mmrazor/mmrazor/models/mutators/channel_mutator/channel_mutator.py", line 113, in prepare_from_supernet units = self._prepare_from_tracer(supernet, self.parse_cfg) File "/content/mmrazor/mmrazor/models/mutators/channel_mutator/channel_mutator.py", line 311, in _prepare_from_tracer unit_configs = tracer.analyze(model) File "/content/mmrazor/mmrazor/models/task_modules/tracer/channel_analyzer.py", line 107, in analyze fx_graph = self._fx_trace(model) File "/content/mmrazor/mmrazor/models/task_modules/tracer/channel_analyzer.py", line 132, in _fx_trace args = self.demo_input.get_data(model) File "/content/mmrazor/mmrazor/models/task_modules/demo_inputs/demo_inputs.py", line 34, in get_data data = self._get_data(model, input_shape, training) File "/content/mmrazor/mmrazor/models/task_modules/demo_inputs/default_demo_inputs.py", line 108, in _get_data return defaul_demo_inputs(model, input_shape, training, self.scope) File "/content/mmrazor/mmrazor/models/task_modules/demo_inputs/default_demo_inputs.py", line 79, in defaul_demo_inputs return demo_input().get_data(model, input_shape, training) File "/content/mmrazor/mmrazor/models/task_modules/demo_inputs/demo_inputs.py", line 34, in get_data data = self._get_data(model, input_shape, training) File "/content/mmrazor/mmrazor/models/task_modules/demo_inputs/demo_inputs.py", line 57, in _get_data data = self._get_mm_data(model, input_shape, training) File "/content/mmrazor/mmrazor/models/task_modules/demo_inputs/demo_inputs.py", line 147, in _get_mm_data data = demo_mmpose_inputs(model, input_shape) File "/content/mmrazor/mmrazor/models/task_modules/demo_inputs/mmpose_demo_input.py", line 32, in demo_mmpose_inputs from mmpose.models.heads import RTMHead ImportError: cannot import name 'RTMHead' from 'mmpose.models.heads' (/content/mmrazor/mmpose/mmpose/models/heads/init.py)

Thank you fro the attention

grpinto avatar Oct 17 '23 16:10 grpinto

Please show your versions of mmpose, mmrazor and so on. It seems you are using latest mmpose which may be not supported by mmrazor.

LKJacky avatar Oct 18 '23 02:10 LKJacky

The version of mmpose is 1.1.0 and teh version of mmrazor is the most recent one

grpinto avatar Oct 18 '23 12:10 grpinto

Same issue.

Y-T-G avatar Nov 27 '23 12:11 Y-T-G

Fixed by changing https://github.com/open-mmlab/mmrazor/blob/90c7af1fdf35a606a2fceaaeb4b6be2f0dac4eb7/mmrazor/models/task_modules/demo_inputs/mmpose_demo_input.py#L32 to from mmpose.models.heads import RTMCCHead as RTMHead

Y-T-G avatar Nov 27 '23 12:11 Y-T-G