Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Data-Analytics
Benchmarks
Commits
bfea8c2c
Commit
bfea8c2c
authored
Mar 22, 2019
by
Agnes Ansari
Browse files
add ImageNet V2 benchmark
parent
c0e21e4d
Changes
119
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
2020861 additions
and
0 deletions
+2020861
-0
ImageNetUseCaseV2/Caffe/Model/VGG_ILSVRC_19_layers_solver.prototxt
...seCaseV2/Caffe/Model/VGG_ILSVRC_19_layers_solver.prototxt
+15
-0
ImageNetUseCaseV2/Caffe/Model/VGG_ILSVRC_19_layers_solver.prototxt.template
...Caffe/Model/VGG_ILSVRC_19_layers_solver.prototxt.template
+15
-0
ImageNetUseCaseV2/Caffe/Model/VGG_ILSVRC_19_layers_train_val.prototxt
...aseV2/Caffe/Model/VGG_ILSVRC_19_layers_train_val.prototxt
+466
-0
ImageNetUseCaseV2/Caffe/Model/VGG_ILSVRC_19_layers_train_val.prototxt.template
...fe/Model/VGG_ILSVRC_19_layers_train_val.prototxt.template
+466
-0
ImageNetUseCaseV2/Caffe/Preprocessing/preprocess_training.sh
ImageNetUseCaseV2/Caffe/Preprocessing/preprocess_training.sh
+24
-0
ImageNetUseCaseV2/Caffe/Preprocessing/preprocess_validation.sh
...NetUseCaseV2/Caffe/Preprocessing/preprocess_validation.sh
+20
-0
ImageNetUseCaseV2/Caffe/Preprocessing/preprocessing_step.sh
ImageNetUseCaseV2/Caffe/Preprocessing/preprocessing_step.sh
+8
-0
ImageNetUseCaseV2/Caffe/Training/train_imagenet_vgg.sh
ImageNetUseCaseV2/Caffe/Training/train_imagenet_vgg.sh
+46
-0
ImageNetUseCaseV2/Dataset/Metadata/image_metadata_file.txt
ImageNetUseCaseV2/Dataset/Metadata/image_metadata_file.txt
+21842
-0
ImageNetUseCaseV2/Dataset/Metadata/imagenet_2012_bounding_boxes.csv
...eCaseV2/Dataset/Metadata/imagenet_2012_bounding_boxes.csv
+615299
-0
ImageNetUseCaseV2/Dataset/Metadata/imagenet_2012_validation_synset_labels.txt
...taset/Metadata/imagenet_2012_validation_synset_labels.txt
+50000
-0
ImageNetUseCaseV2/Dataset/Metadata/synsets.txt
ImageNetUseCaseV2/Dataset/Metadata/synsets.txt
+1000
-0
ImageNetUseCaseV2/Dataset/Metadata/train.txt
ImageNetUseCaseV2/Dataset/Metadata/train.txt
+1281167
-0
ImageNetUseCaseV2/Dataset/Metadata/val.txt
ImageNetUseCaseV2/Dataset/Metadata/val.txt
+50000
-0
ImageNetUseCaseV2/KerasHorovod/Code/keras_imagenet_resnet50.py
...NetUseCaseV2/KerasHorovod/Code/keras_imagenet_resnet50.py
+173
-0
ImageNetUseCaseV2/KerasHorovod/Code/keras_imagenet_resnet50_mod.py
...seCaseV2/KerasHorovod/Code/keras_imagenet_resnet50_mod.py
+165
-0
ImageNetUseCaseV2/KerasHorovod/Preprocessing/preprocess_imagenet_data.sh
...V2/KerasHorovod/Preprocessing/preprocess_imagenet_data.sh
+26
-0
ImageNetUseCaseV2/KerasHorovod/Preprocessing/preprocess_imagenet_validation_data.py
...ovod/Preprocessing/preprocess_imagenet_validation_data.py
+89
-0
ImageNetUseCaseV2/KerasHorovod/Preprocessing/preprocessing_step.sh
...seCaseV2/KerasHorovod/Preprocessing/preprocessing_step.sh
+3
-0
ImageNetUseCaseV2/KerasHorovod/Training/train_imagenet_resnet.sh
...tUseCaseV2/KerasHorovod/Training/train_imagenet_resnet.sh
+37
-0
No files found.
ImageNetUseCaseV2/Caffe/Model/VGG_ILSVRC_19_layers_solver.prototxt
0 → 100644
View file @
bfea8c2c
test_iter: 1000
test_interval: 1000
base_lr: 0.01
lr_policy: "step"
gamma: 0.1
stepsize: 100000
display: 20
momentum: 0.9
weight_decay: 0.0005
snapshot: 10000
snapshot_after_train: true
solver_mode: GPU
max_iter: 10009
net: "/gpfs16l/pwrwork/idris/sts/ssts001/ImageNetUseCaseV2/Caffe/Model/VGG_ILSVRC_19_layers_train_val.prototxt"
snapshot_prefix: "/gpfs16l/pwrwork/idris/sts/ssts001/ImageNetUseCaseV2/Caffe/Model/Snapshots/VGG_ILSVRC_19_layers_train_"
ImageNetUseCaseV2/Caffe/Model/VGG_ILSVRC_19_layers_solver.prototxt.template
0 → 100644
View file @
bfea8c2c
test_iter: 1000
test_interval: 1000
base_lr: 0.01
lr_policy: "step"
gamma: 0.1
stepsize: 100000
display: 20
momentum: 0.9
weight_decay: 0.0005
snapshot: 10000
snapshot_after_train: true
solver_mode: GPU
max_iter: <num-iterations>
net: "<path-to-net-file>"
snapshot_prefix: "<path-to-snapshot-dir>/VGG_ILSVRC_19_layers_train_"
ImageNetUseCaseV2/Caffe/Model/VGG_ILSVRC_19_layers_train_val.prototxt
0 → 100644
View file @
bfea8c2c
name: "VGG_ILSVRC_19_layers"
layers {
name: "data"
type: DATA
include {
phase: TRAIN
}
# transform_param {
# crop_size: 224
# mean_value: 104
# mean_value: 117
# mean_value: 123
# mirror: true
# }
transform_param {
mirror: true
crop_size: 224
mean_file: "/gpfs16l/pwrwork/idris/sts/ssts001/ImageNetUseCaseV2/Dataset/PostProcessedLMDB/train//imagenet_mean.binaryproto"
}
data_param {
source: "/gpfs16l/pwrwork/idris/sts/ssts001/ImageNetUseCaseV2/Dataset/PostProcessedLMDB/train/"
batch_size: 32
backend: LMDB
}
top: "data"
top: "label"
}
layers {
name: "data"
type: DATA
include {
phase: TEST
}
# transform_param {
# crop_size: 224
# mean_value: 104
# mean_value: 117
# mean_value: 123
# mirror: false
# }
transform_param {
mirror: false
crop_size: 224
mean_file: "/gpfs16l/pwrwork/idris/sts/ssts001/ImageNetUseCaseV2/Dataset/PostProcessedLMDB/train//imagenet_mean.binaryproto"
}
data_param {
source: "/gpfs16l/pwrwork/idris/sts/ssts001/ImageNetUseCaseV2/Dataset/PostProcessedLMDB/val/"
batch_size: 50
backend: LMDB
}
top: "data"
top: "label"
}
layers {
bottom: "data"
top: "conv1_1"
name: "conv1_1"
type: CONVOLUTION
convolution_param {
num_output: 64
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv1_1"
top: "conv1_1"
name: "relu1_1"
type: RELU
}
layers {
bottom: "conv1_1"
top: "conv1_2"
name: "conv1_2"
type: CONVOLUTION
convolution_param {
num_output: 64
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv1_2"
top: "conv1_2"
name: "relu1_2"
type: RELU
}
layers {
bottom: "conv1_2"
top: "pool1"
name: "pool1"
type: POOLING
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layers {
bottom: "pool1"
top: "conv2_1"
name: "conv2_1"
type: CONVOLUTION
convolution_param {
num_output: 128
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv2_1"
top: "conv2_1"
name: "relu2_1"
type: RELU
}
layers {
bottom: "conv2_1"
top: "conv2_2"
name: "conv2_2"
type: CONVOLUTION
convolution_param {
num_output: 128
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv2_2"
top: "conv2_2"
name: "relu2_2"
type: RELU
}
layers {
bottom: "conv2_2"
top: "pool2"
name: "pool2"
type: POOLING
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layers {
bottom: "pool2"
top: "conv3_1"
name: "conv3_1"
type: CONVOLUTION
convolution_param {
num_output: 256
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv3_1"
top: "conv3_1"
name: "relu3_1"
type: RELU
}
layers {
bottom: "conv3_1"
top: "conv3_2"
name: "conv3_2"
type: CONVOLUTION
convolution_param {
num_output: 256
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv3_2"
top: "conv3_2"
name: "relu3_2"
type: RELU
}
layers {
bottom: "conv3_2"
top: "conv3_3"
name: "conv3_3"
type: CONVOLUTION
convolution_param {
num_output: 256
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv3_3"
top: "conv3_3"
name: "relu3_3"
type: RELU
}
layers {
bottom: "conv3_3"
top: "conv3_4"
name: "conv3_4"
type: CONVOLUTION
convolution_param {
num_output: 256
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv3_4"
top: "conv3_4"
name: "relu3_4"
type: RELU
}
layers {
bottom: "conv3_4"
top: "pool3"
name: "pool3"
type: POOLING
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layers {
bottom: "pool3"
top: "conv4_1"
name: "conv4_1"
type: CONVOLUTION
convolution_param {
num_output: 512
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv4_1"
top: "conv4_1"
name: "relu4_1"
type: RELU
}
layers {
bottom: "conv4_1"
top: "conv4_2"
name: "conv4_2"
type: CONVOLUTION
convolution_param {
num_output: 512
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv4_2"
top: "conv4_2"
name: "relu4_2"
type: RELU
}
layers {
bottom: "conv4_2"
top: "conv4_3"
name: "conv4_3"
type: CONVOLUTION
convolution_param {
num_output: 512
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv4_3"
top: "conv4_3"
name: "relu4_3"
type: RELU
}
layers {
bottom: "conv4_3"
top: "conv4_4"
name: "conv4_4"
type: CONVOLUTION
convolution_param {
num_output: 512
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv4_4"
top: "conv4_4"
name: "relu4_4"
type: RELU
}
layers {
bottom: "conv4_4"
top: "pool4"
name: "pool4"
type: POOLING
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layers {
bottom: "pool4"
top: "conv5_1"
name: "conv5_1"
type: CONVOLUTION
convolution_param {
num_output: 512
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv5_1"
top: "conv5_1"
name: "relu5_1"
type: RELU
}
layers {
bottom: "conv5_1"
top: "conv5_2"
name: "conv5_2"
type: CONVOLUTION
convolution_param {
num_output: 512
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv5_2"
top: "conv5_2"
name: "relu5_2"
type: RELU
}
layers {
bottom: "conv5_2"
top: "conv5_3"
name: "conv5_3"
type: CONVOLUTION
convolution_param {
num_output: 512
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv5_3"
top: "conv5_3"
name: "relu5_3"
type: RELU
}
layers {
bottom: "conv5_3"
top: "conv5_4"
name: "conv5_4"
type: CONVOLUTION
convolution_param {
num_output: 512
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv5_4"
top: "conv5_4"
name: "relu5_4"
type: RELU
}
layers {
bottom: "conv5_4"
top: "pool5"
name: "pool5"
type: POOLING
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layers {
bottom: "pool5"
top: "fc6"
name: "fc6"
type: INNER_PRODUCT
inner_product_param {
num_output: 4096
}
}
layers {
bottom: "fc6"
top: "fc6"
name: "relu6"
type: RELU
}
layers {
bottom: "fc6"
top: "fc6"
name: "drop6"
type: DROPOUT
dropout_param {
dropout_ratio: 0.5
}
}
layers {
bottom: "fc6"
top: "fc7"
name: "fc7"
type: INNER_PRODUCT
inner_product_param {
num_output: 4096
}
}
layers {
bottom: "fc7"
top: "fc7"
name: "relu7"
type: RELU
}
layers {
bottom: "fc7"
top: "fc7"
name: "drop7"
type: DROPOUT
dropout_param {
dropout_ratio: 0.5
}
}
layers {
name: "fc8"
bottom: "fc7"
top: "fc8"
type: INNER_PRODUCT
inner_product_param {
num_output: 1000
}
}
layers {
name: "loss"
type: SOFTMAX_LOSS
bottom: "fc8"
bottom: "label"
top: "loss/loss"
}
layers {
name: "accuracy/top1"
type: ACCURACY
bottom: "fc8"
bottom: "label"
top: "accuracy@1"
include: { phase: TEST }
accuracy_param {
top_k: 1
}
}
layers {
name: "accuracy/top5"
type: ACCURACY
bottom: "fc8"
bottom: "label"
top: "accuracy@5"
include: { phase: TEST }
accuracy_param {
top_k: 5
}
}
ImageNetUseCaseV2/Caffe/Model/VGG_ILSVRC_19_layers_train_val.prototxt.template
0 → 100644
View file @
bfea8c2c
name: "VGG_ILSVRC_19_layers"
layers {
name: "data"
type: DATA
include {
phase: TRAIN
}
# transform_param {
# crop_size: 224
# mean_value: 104
# mean_value: 117
# mean_value: 123
# mirror: true
# }
transform_param {
mirror: true
crop_size: 224
mean_file: "<mean-file>"
}
data_param {
source: "<dataset-train>"
batch_size: <batch-size>
backend: LMDB
}
top: "data"
top: "label"
}
layers {
name: "data"
type: DATA
include {
phase: TEST
}
# transform_param {
# crop_size: 224
# mean_value: 104
# mean_value: 117
# mean_value: 123
# mirror: false
# }
transform_param {
mirror: false
crop_size: 224
mean_file: "<mean-file>"
}
data_param {
source: "<dataset-val>"
batch_size: 50
backend: LMDB
}
top: "data"
top: "label"
}
layers {
bottom: "data"
top: "conv1_1"
name: "conv1_1"
type: CONVOLUTION
convolution_param {
num_output: 64
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv1_1"
top: "conv1_1"
name: "relu1_1"
type: RELU
}
layers {
bottom: "conv1_1"
top: "conv1_2"
name: "conv1_2"
type: CONVOLUTION
convolution_param {
num_output: 64
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv1_2"
top: "conv1_2"
name: "relu1_2"
type: RELU
}
layers {
bottom: "conv1_2"
top: "pool1"
name: "pool1"
type: POOLING
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layers {
bottom: "pool1"
top: "conv2_1"
name: "conv2_1"
type: CONVOLUTION
convolution_param {
num_output: 128
pad: 1
kernel_size: 3
}
}
layers {
bottom: "conv2_1"
top: "conv2_1"
name: "relu2_1"