Coder Social home page Coder Social logo

durandtibo / wildcat.pytorch Goto Github PK

View Code? Open in Web Editor NEW
266.0 15.0 61.0 18 KB

PyTorch implementation of "WILDCAT: Weakly Supervised Learning of Deep ConvNets for Image Classification, Pointwise Localization and Segmentation", CVPR 2017

License: MIT License

Python 100.00%
pytorch convnet image-classification weakly-supervised-learning deep-learning cvpr-2017 cvpr2017 cvpr17

wildcat.pytorch's Introduction

wildcat.pytorch

PyTorch implementation of "WILDCAT: Weakly Supervised Learning of Deep ConvNets for Image Classification, Pointwise Localization and Segmentation", CVPR 2017 (http://webia.lip6.fr/~durandt/pdfs/2017_CVPR/Durand_WILDCAT_CVPR_2017.pdf)

Requirements

Please, install the following packages

  • numpy
  • torch
  • torchnet
  • torchvision
  • tqdm

Options

  • k: number of regions for the spatial pooling. If k is larger than 1, k is the number of regions, otherwise k is the proportion of selected regions. k=0.2 means that 20% of the regions are used.
  • maps: number of maps for each class
  • alpha: weight for minimum regions
  • lr: learning rate
  • lrp: factor for learning rate of pretrained layers. The learning rate of the pretrained layers is lr * lrp
  • batch-size: number of images per batch
  • image-size: size of the image
  • epochs: number of training epochs

Demo VOC 2007

python3 -m wildcat.demo_voc2007 ../data/voc --image-size 448 --batch-size 16 --lrp 0.1 --lr 0.01 --epochs 20 --k 0.2 --maps 8 --alpha 0.7

Demo MIT67

python3 -m wildcat.demo_mit67 ../data/mit67 --image-size 448 --batch-size 16 --lrp 0.1 --lr 0.001 --epochs 20 --k 0.4 --maps 8

Citing this repository

If you find this code useful in your research, please consider citing us:

@inproceedings{Durand_WILDCAT_CVPR_2017,
author = {Durand, Thibaut and Mordan, Taylor and Thome, Nicolas and Cord, Matthieu},
title = {{WILDCAT: Weakly Supervised Learning of Deep ConvNets for Image Classification, Pointwise Localization and Segmentation}},
booktitle = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
year = {2017}
}

Licence

MIT License

wildcat.pytorch's People

Contributors

durandtibo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wildcat.pytorch's Issues

about def AveragePrecisionMeter.average_precision

hi, I don't figure out the function AveragePrecisionMeter.average_precision which is used to caculate the precision for each class. is that right? the result is different from precision definition "TP / (TP + FP)", could you explain it in detail, thanks very much

Training stuck at 0%

I'm currently using a docker image which include all required pytorch and CUDA 8.0 dependencies.
I just cloned the repo and executed the demo_voc2007 with the default argument values.
The training stuck at 0%, nothing happens.
Is there a known reason why is this happening?

Real Work Or Not?

Anyone uses this code to reproduce the performance reported in the paper?
From my understanding, max+min pooling really doesn't make any sense in deep learning. Any rationality mentioned by author in this paper all redirect to their several own previous work. Why does it work?
From my experiments using this code, I cannot produce any reported performance number in VOC2007. I can get highest MAP-92.3 via different parameter trials.
If anyone get the correct reported number (say VOC2007, MAP 95.0) in experiment, please kindly let me know the magic tricks. Thanks.

No code in _init_.py

Thank you for your implementation.
I find there is no code in init.py, is there anything wrong?

Pretrained Model

Thank you for your effort.Could you please share the pretrained model?

The hyperparameters about ms-coco dataset.

Just like voc2007 we need to run "python3 -m wildcat.demo_voc2007 ../data/voc --image-size 448 --batch-size 16 --lrp 0.1 --lr 0.01 --epochs 20 --k 0.2 --maps 8 --alpha 0.7", the ms-coco dataset's hyperparameters are?

About Learning a Deep ConvNet for Multi-label Classification with Partial Label.

Hello,
sorry for submitting an issue here.
I read this paper recently, and be interested in the topic.
I want to experiment it for:

  1. analysis whether the GNN is still useful when the number of classes is small
  2. think and try how to apply on object detection tasks.

But, I couldn't find source code on your github.
Could you release the PyTorch code of GNN and Never Ending Leaning parts?

Thanks.

The mAP in voc2007

I only get best=93.395 when I run “python3 -m wildcat.demo_voc2007 ../data/voc --image-size 448 --batch-size 16 --lrp 0.1 --lr 0.01 --epochs 20 --k 0.2 --maps 8 --alpha 0.7”. How to get the same result as your paper(voc2007 best mAP=95)?

Not learning different modalities?

My experiments using this code so far (using the settings suggested in the readme) seem to be learning, and producing good classification and localization results, but the separate output layers are not learning different modalities as suggested by the paper. All 8 layers appear to be more or less identical to each other. Am I missing something?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.