From 65333c7910299e115f286464ad7aeb24ad9f6fd7 Mon Sep 17 00:00:00 2001 From: Nathan Zhao <nz11@tyler.cs.illinois.edu> Date: Sun, 31 Jan 2021 18:22:33 -0600 Subject: [PATCH] update expected accuracy, fix frontend causing mobilenet problem --- hpvm/projects/keras/README.md | 18 ++++++++++-------- hpvm/projects/keras/src/Config.py | 2 +- hpvm/projects/keras/src/alexnet.py | 9 ++++----- hpvm/projects/keras/src/alexnet2.py | 5 ++--- hpvm/projects/keras/src/alexnet_imagenet.py | 2 +- hpvm/projects/keras/src/lenet.py | 1 - hpvm/projects/keras/src/mobilenet_cifar10.py | 7 +++---- hpvm/projects/keras/src/resnet18_cifar10.py | 7 ++++--- hpvm/projects/keras/src/vgg16_cifar10.py | 5 ++--- hpvm/projects/keras/src/vgg16_cifar100.py | 5 ++--- 10 files changed, 29 insertions(+), 32 deletions(-) diff --git a/hpvm/projects/keras/README.md b/hpvm/projects/keras/README.md index 9cb2bb3123..892c8f0402 100644 --- a/hpvm/projects/keras/README.md +++ b/hpvm/projects/keras/README.md @@ -7,6 +7,7 @@ ``` conda env create -f keras_environment.yml --name ${KERAS_ENV_NAME} ``` +Note: pip version MUST be > 19.3 ### Activating Conda Environment: @@ -30,14 +31,15 @@ List of benchmarks and the expected accuracies: | Benchmark | Accuracy | | ----------- | ----------- | -| AlexNet-CIFAR10 | 79.03 | -| AlexNet2-CIFAR10 | 84.87 | -| AlexNet-ImageNet | 56.23 | -| LeNet-MNIST | 99.11 | -| MobileNet-CIFAR10 | 84.74 | -| ResNet18-CIFAR10 | 89.48 | -| VGG16-CIFAR10 | 89.58 | -| VGG16-CIFAR100 | 67.46 | +| AlexNet-CIFAR10 | 79.16 | +| AlexNet2-CIFAR10 | 85.10 | +| AlexNet-ImageNet | 56.23 | todo: fix broken +| LeNet-MNIST | 99.11 | todo: fix broken +| MobileNet-CIFAR10 | 82.40 | +| ResNet18-CIFAR10 | 89.52 | +| ResNet50-ImageNet | 74.50 | +| VGG16-CIFAR10 | 89.42 | +| VGG16-CIFAR100 | 66.20 | | VGG16-ImageNet | 72.50 | Activate conda environment (above) before running benchmarks diff --git a/hpvm/projects/keras/src/Config.py b/hpvm/projects/keras/src/Config.py index 9b0c4d0768..2edc5c1add 100644 --- a/hpvm/projects/keras/src/Config.py +++ b/hpvm/projects/keras/src/Config.py @@ -1,3 +1,3 @@ # Path Relative to Model Params Directory -MODEL_PARAMS_DIR = "../../build/model_params/" +MODEL_PARAMS_DIR = "../../../hpvm/test/dnn_benchmarks/model_params/" diff --git a/hpvm/projects/keras/src/alexnet.py b/hpvm/projects/keras/src/alexnet.py index 4682a96eb5..4b23fd995f 100644 --- a/hpvm/projects/keras/src/alexnet.py +++ b/hpvm/projects/keras/src/alexnet.py @@ -4,7 +4,6 @@ import glob import numpy as np import tensorflow as tf -import cv2 import scipy import scipy.io import keras @@ -56,7 +55,7 @@ class AlexNet_CIFAR10(Benchmark): #model.add(Dense(256)) model.add(Dense(self.num_classes)) model.add(Activation('softmax')) - + return model @@ -69,8 +68,8 @@ class AlexNet_CIFAR10(Benchmark): mean = np.mean(X_train) std = np.std(X_train) - X_train = (X_train - mean)/ (std + 1e-7) - X_val = (X_val - mean)/ (std + 1e-7) + X_train = (X_train - mean) / (std + 1e-7) + X_val = (X_val - mean) / (std + 1e-7) X_test = X_val[0:5000] y_test = y_val[0:5000] @@ -140,7 +139,7 @@ if __name__ == '__main__': src_dir = 'data/alexnet_cifar10_src/' num_classes = 10 batch_size = 500 - + model = AlexNet_CIFAR10('AlexNet_CIFAR10', reload_dir, keras_model_file, data_dir, src_dir, num_classes, batch_size) model.run(sys.argv) diff --git a/hpvm/projects/keras/src/alexnet2.py b/hpvm/projects/keras/src/alexnet2.py index 8f068e4d6e..de69d8c129 100644 --- a/hpvm/projects/keras/src/alexnet2.py +++ b/hpvm/projects/keras/src/alexnet2.py @@ -4,7 +4,6 @@ import glob import numpy as np import tensorflow as tf -import cv2 import scipy import scipy.io import keras @@ -68,8 +67,8 @@ class AlexNet2_CIFAR10(Benchmark): mean = np.mean(X_train) std = np.std(X_train) - X_train = (X_train - mean)/ (std + 1e-7) - X_val = (X_val - mean)/ (std + 1e-7) + X_train = (X_train - mean) / (std + 1e-7) + X_val = (X_val - mean) / (std + 1e-7) X_test = X_val[0:5000] y_test = y_val[0:5000] diff --git a/hpvm/projects/keras/src/alexnet_imagenet.py b/hpvm/projects/keras/src/alexnet_imagenet.py index 4c00650abd..c05f757a7c 100644 --- a/hpvm/projects/keras/src/alexnet_imagenet.py +++ b/hpvm/projects/keras/src/alexnet_imagenet.py @@ -141,7 +141,7 @@ class AlexNet(Benchmark): x = Activation('relu')(x) x = Dense(self.num_classes)(x) x = Activation('softmax')(x) - + model = Model(input_layer, x) return model diff --git a/hpvm/projects/keras/src/lenet.py b/hpvm/projects/keras/src/lenet.py index 72e77f756d..0210baee26 100644 --- a/hpvm/projects/keras/src/lenet.py +++ b/hpvm/projects/keras/src/lenet.py @@ -4,7 +4,6 @@ import glob import numpy as np import tensorflow as tf -import cv2 import scipy import scipy.io import keras diff --git a/hpvm/projects/keras/src/mobilenet_cifar10.py b/hpvm/projects/keras/src/mobilenet_cifar10.py index 2fba761250..367a4dfc62 100644 --- a/hpvm/projects/keras/src/mobilenet_cifar10.py +++ b/hpvm/projects/keras/src/mobilenet_cifar10.py @@ -4,7 +4,6 @@ import glob import numpy as np import tensorflow as tf -import cv2 import scipy import scipy.io import keras @@ -45,7 +44,7 @@ class MobileNet_CIFAR10(Benchmark): def _depthwise_conv_block(pointwise_conv_filters, alpha, depth_multiplier=1, strides=(1, 1)): channel_axis = 1 - model.add(ZeroPadding2D(padding = ((1,1), (1,1) ))) + model.add(ZeroPadding2D(padding=((1,1), (1,1)))) model.add(DepthwiseConv2D((3, 3), padding='valid', @@ -110,8 +109,8 @@ class MobileNet_CIFAR10(Benchmark): mean = np.mean(X_train) std = np.std(X_train) - X_train = (X_train - mean)/ (std + 1e-7) - X_val = (X_val - mean)/ (std + 1e-7) + X_train = (X_train - mean) / (std + 1e-7) + X_val = (X_val - mean) / (std + 1e-7) X_test = X_val[0:5000] y_test = y_val[0:5000] diff --git a/hpvm/projects/keras/src/resnet18_cifar10.py b/hpvm/projects/keras/src/resnet18_cifar10.py index 8842ff7c67..1367c0830b 100644 --- a/hpvm/projects/keras/src/resnet18_cifar10.py +++ b/hpvm/projects/keras/src/resnet18_cifar10.py @@ -39,7 +39,6 @@ import glob import numpy as np import tensorflow as tf -#import cv2 import scipy import scipy.io import keras @@ -443,8 +442,10 @@ class ResNet18_CIFAR10(Benchmark): mean = np.mean(X_train) std = np.std(X_train) - X_train = (X_train - mean)/ (std + 1e-7) - X_val = (X_val - mean)/ (std + 1e-7) +# X_train = (X_train - mean) / (std + 1e-7) +# X_val = (X_val - mean) / (std + 1e-7) + X_train = (X_train - mean) + X_val = (X_val - mean) X_test = X_val[0:5000] y_test = y_val[0:5000] diff --git a/hpvm/projects/keras/src/vgg16_cifar10.py b/hpvm/projects/keras/src/vgg16_cifar10.py index d8b26f9386..873e23b766 100644 --- a/hpvm/projects/keras/src/vgg16_cifar10.py +++ b/hpvm/projects/keras/src/vgg16_cifar10.py @@ -4,7 +4,6 @@ import glob import numpy as np import tensorflow as tf -#import cv2 import scipy import scipy.io import keras @@ -108,8 +107,8 @@ class VGG16_CIFAR10(Benchmark): mean = np.mean(X_train) std = np.std(X_train) - X_train = (X_train - mean)/ (std + 1e-7) - X_val = (X_val - mean)/ (std + 1e-7) + X_train = (X_train - mean) / (std + 1e-7) + X_val = (X_val - mean) / (std + 1e-7) X_test = X_val[0:5000] y_test = y_val[0:5000] diff --git a/hpvm/projects/keras/src/vgg16_cifar100.py b/hpvm/projects/keras/src/vgg16_cifar100.py index 0dd47ac992..03bb852e00 100644 --- a/hpvm/projects/keras/src/vgg16_cifar100.py +++ b/hpvm/projects/keras/src/vgg16_cifar100.py @@ -4,7 +4,6 @@ import glob import numpy as np import tensorflow as tf -#import cv2 import scipy import scipy.io import keras @@ -124,8 +123,8 @@ class VGG16_CIFAR100(Benchmark): mean = np.mean(X_train) std = np.std(X_train) - X_train = (X_train - mean)/ (std + 1e-7) - X_val = (X_val - mean)/ (std + 1e-7) + X_train = (X_train - mean) / (std + 1e-7) + X_val = (X_val - mean) / (std + 1e-7) X_test = X_val[0:5000] y_test = y_val[0:5000] -- GitLab