Image Classification Using Backpropagation Algorithm (Presentation)
Image Classification Using Backpropagation Algorithm (Presentation)
Project 2 : Course:
Artificial Neural Networks Computational Intelligence
Evangelia Anastasaki
MTP231
What is Image Classification
• Refers to the task of inputting an image into a neural network and having it output some
kind of label for that image.
• The label that the network outputs will correspond to a pre-defined class.
• There can be multiple classes that the image can be labelled as, or just one.
• A subset of image classification is object detection, where specific instances of objects are
identified as belonging to a certain class like clothes.
Image Data
Hardware • RAM – 16 GB
• CPU - Intel Core i7 8th
Generation processor
Libraries
T- SNE
Libraries
• Initializing the weights: I sample a uniform distribution with values between -1 and 1 for the
initial weights.
• Training: For each epoch, I apply the backprop algorithm, evaluate the error and the gradient
with respect to the weights. Then, I use the learning rate and gradients to update the weights.
• Measuring the error: I use Cross-Entropy loss (known as log loss) function to evaluate the
error.
Exploration
The product images are grayscale, 28x28 pixels
Result 1
Software & Results
• Lower dimensional representation of some of the products using T-SNE.
Exploration
• Transforms the data into 2-dimensional using the implementation from scikit-learn:
Result 2
Software & Results
Sigmoid Prime
defined:
Result 3
Software & Results
Softmax
can be easily differentiated and the output
depends only on input, and the elements
of the resulting vector sum to 1.
Result 4
Software & Results
By defining some parameters
Backpropagation
Solving XOR
Result 5 Result 6
Software & Results
Prediction
Result 7
Software & Results
Prediction
Accuracy
Result 8
Software & Results
Improving the predictions
Accuracy
Final Result
References
• Python: https://www.python.org/
• Scikit-Learn: https://scikit-learn.org/stable/index.html
• NumPy: https://numpy.org/
• Matplotlib: https://matplotlib.org/3.1.0/index.html
• SciPy: https://www.scipy.org/