Comments (4)
Hi,
I used the mmseg library: https://github.com/open-mmlab/mmsegmentation for all the segmentation results.
The configs and models to copy into mmseg are available in our segmentation folder and should be enough to reproduce the results.
from vicregl.
Hi @Adrien987k ,
Thanks for your quick reply! I would use mmseg to evaluate the segmentation task.
I evaluated a ResNet-50 model downloaded from your github on the Pascal VOC object detection task. The results I got are not good (26.5/57.5/20.0 (AP/AP50/AP75). I wonder if you can tell me what is wrong with my test. I repeated the same test on a ResNet-50 model from PixPro, but got better results. My 2 experiments are described below.
(Exp_1) I downloaded the ResNet-50 backbone (alpha=0.75) "resnet50_alpha0.75.pth" from https://github.com/facebookresearch/VICRegL. I evaluated this model on the Pascal Voc object detection task using the attached codes. I first converted resnet50_alpha0.75.pth to resnet50_alpha0.75.pkl using the command "python convert-pretrain-to-detectron2.py resnet50_alpha0.75.pth ./resnet50_alpha_75.pkl". Then I run the command "
python train_net.py --config-file configs/pascal_voc_R_50_C4_24k_moco.yaml --num-gpus 2 MODEL.WEIGHTS ./resnet50_alpha_75.pkl". The detection results are "26.5/57.5/20.0 (AP/AP50/AP75) ", which can be found in "detection\output\log.txt" in the attachment.
(Exp_2) I downloaded the ResNet50 (100 epochs) model from "https://github.com/zdaxie/PixPro", converted the model to pkl by running " python convert_pretrain_to_d2 pixpro_base_r50_100ep_md5_91059202.pth ./output.pkl (this command can be found in "PixPro transfer/detection)" and evaluated the converted model by running "python train_net.py --config-file configs/pascal_voc_R_50_C4_24k_PixPro.yaml --num-gpus 2 MODEL.WEIGHTS ./output.pkl" and got the result "59.2/83.1/67.1 (AP/ AP50)/AP75)".
Thanks!
from vicregl.
Hi,
I don't have the config for detectron2 but a very important detail is that you need to adjust the learning rate. VICRegL uses a different loss than the contrastive loss used by MoCo and PixPro and therefore needs different hyper-parameters for the downstream tasks.
Also, given that the difference in performance is so large, are you sure the model is loaded properly ?
from vicregl.
Hello.Thanks for your wonderful work. Would you mind telling me which part of output I should pass to LinearHead for segmentation? There are five values in output dictionary , "representation" "embedding" "maps_embedding" "logits" and "logits_val".Thanks a lot!
from vicregl.
Related Issues (17)
- README typo HOT 2
- Does this have a requirements file? HOT 1
- Missing keys in ConvNeXt state dict HOT 2
- Need seg pretrained model
- Do you really use the top-k filtering on feature-based matching? HOT 3
- Symmetry on local and feature-based loss functions HOT 2
- No 'InterpolationMode' in torchvision 0.8.2 HOT 2
- Classification loss HOT 4
- where were they from to views and locations? were they from f"{prefix}_images.npy"? HOT 2
- Missing maps_projection in the checkpoint and batch_norm in the code HOT 5
- High local loss while finetuning resnet50 HOT 4
- Unable to reproduce object detection results on Pascal VOC
- Plots of losses for different configurations HOT 1
- Request for Change in Licensing Terms HOT 1
- Dimension of global and local
- fine tune vicregl to coco object detection
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vicregl.