jayleicn / ClipBERT

[CVPR 2021 Best Student Paper Honorable Mention, Oral] Official PyTorch code for ClipBERT, an efficient framework for end-to-end learning on image-text and video-text tasks.
https://arxiv.org/abs/2102.06183
MIT License
709 stars 86 forks source link

got an unexpected keyword argument 'train_on_pred_boxes' #10

Closed serenayj closed 3 years ago

serenayj commented 3 years ago

Hey,

Thanks for releasing the codes! I am trying to train MSRVTT retrieval, using this line:

python src/tasks/run_video_retrieval.py --config src/configs/msrvtt_ret_base_resnet50.json --output_dir .

However, I ran into this problem which I believe is relevant to the detectron2:

2021-04-24 23:50:40.741785: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudart.so.11.0 04/24/2021 23:50:42 - INFO - __main__ - device: cuda:0 n_gpu: 1, rank: 0, 16-bits training: True 04/24/2021 23:50:42 - INFO - __main__ - Setup model... 04/24/2021 23:50:42 - INFO - __main__ - setup e2e model cnn_cls <class 'src.modeling.grid_feat.GridFeatBackbone'> Traceback (most recent call last): File "src/tasks/run_video_retrieval.py", line 826, in <module> start_training(input_cfg) File "src/tasks/run_video_retrieval.py", line 296, in start_training model = setup_model(cfg, device=device) File "src/tasks/run_video_retrieval.py", line 201, in setup_model model = ClipBert( File "/home/yug125/ClipBERT-main/src/modeling/e2e_model.py", line 23, in __init__ self.cnn = cnn_cls( File "/home/yug125/ClipBERT-main/src/modeling/grid_feat.py", line 42, in __init__ self.feature = build_model(self.detectron2_cfg) File "/home/yug125/anaconda-test/envs/clipbert/lib/python3.8/site-packages/detectron2/modeling/meta_arch/build.py", line 22, in build_model model = META_ARCH_REGISTRY.get(meta_arch)(cfg) File "/home/yug125/anaconda-test/envs/clipbert/lib/python3.8/site-packages/detectron2/config/config.py", line 174, in wrapped explicit_args = _get_args_from_config(from_config_func, *args, **kwargs) File "/home/yug125/anaconda-test/envs/clipbert/lib/python3.8/site-packages/detectron2/config/config.py", line 229, in _get_args_from_config ret = from_config_func(*args, **kwargs) File "/home/yug125/anaconda-test/envs/clipbert/lib/python3.8/site-packages/detectron2/modeling/meta_arch/rcnn.py", line 76, in from_config "roi_heads": build_roi_heads(cfg, backbone.output_shape()), File "/home/yug125/anaconda-test/envs/clipbert/lib/python3.8/site-packages/detectron2/modeling/roi_heads/roi_heads.py", line 43, in build_roi_heads return ROI_HEADS_REGISTRY.get(name)(cfg, input_shape) File "/home/yug125/ClipBERT-main/src/modeling/grid_feats/roi_heads.py", line 175, in __init__ super(StandardROIHeads, self).__init__(cfg, input_shape) File "/home/yug125/anaconda-test/envs/clipbert/lib/python3.8/site-packages/detectron2/config/config.py", line 175, in wrapped init_func(self, **explicit_args) TypeError: __init__() got an unexpected keyword argument 'train_on_pred_boxes'

I think it might have something to do with the detectron2 version. Could you tell me what version you are using for Clipbert? Have you encountered this problem before? Any suggestion about what to do? Thanks!

Chuhanxx commented 3 years ago

You could try python -m pip install 'git+https://github.com/facebookresearch/detectron2.git@ffff8ac'

jayleicn commented 3 years ago

Hey Yanjun @serenayj,

Thank you for using our code! Sorry for the late reply, to complement @Chuhanxx's answer, you can also refer to the full list of packages and versions in the two files here: https://github.com/jayleicn/ClipBERT/tree/main/docker.

We generally recommend directly using our compiled docker image, which will be automatically pulled at the 3rd step of https://github.com/jayleicn/ClipBERT#general. It has everything needed to run the code in this repo.

Best, Jie