Skip to content

Latest commit

 

History

History
43 lines (31 loc) · 1.59 KB

README.md

File metadata and controls

43 lines (31 loc) · 1.59 KB

This is the PyTorch implement of SENet (train on ImageNet dataset)

Paper: Squeeze-and-Excitation Networks

Usage

Prepare data

This code takes ImageNet dataset as example. You can download ImageNet dataset and put them as follows. I only provide ILSVRC2012_dev_kit_t12 due to the restriction of memory, in other words, you need download ILSVRC2012_img_train and ILSVRC2012_img_val.

├── train.py # train script
├── se_resnet.py # network of se_resnet
├── se_resnext.py # network of se_resnext
├── read_ImageNetData.py # ImageNet dataset read script
├── ImageData # train and validation data
	├── ILSVRC2012_img_train
		├── n01440764
		├──    ...
		├── n15075141
	├── ILSVRC2012_img_val
	├── ILSVRC2012_dev_kit_t12
		├── data
			├── ILSVRC2012_validation_ground_truth.txt
			├── meta.mat # the map between train file name and label

Train

  • If you want to train from scratch, you can run as follows:
python train.py --network se_resnext_50 --batch-size 256 --gpus 0,1,2,3

parameter --network can be se_resnet_18 or se_resnet_34 or se_resnet_50 or se_resnet_101 or se_resnet_152 or se_resnext_50 or se_resnext_101 or se_resnext_152.

  • If you want to train from one checkpoint, you can run as follows(for example train from epoch_4.pth.tar, the --start-epoch parameter is corresponding to the epoch of the checkpoint):
python train.py --network se_resnext_50 --batch-size 256 --gpus 0,1,2,3 --resume output/epoch_4.pth.tar --start-epoch 4