Image Classification
Using Scikit-learn
Copyright Intellipaat. All rights reserved.
Agenda
01 Importing the Libraries 02 Loading the Data
03 Data Preprocessing 04 Implementing ML Algorithms
05 Hyperparameter Tuning
Copyright Intellipaat. All rights reserved.
Problem Statement
You are a data-scientist of a global
company. As a data-scientist you have
to build an image classification model
to classify 2 categories of images
namely cat and dogs.
Copyright Intellipaat. All rights reserved.
Dataset Information
Cats and Dogs dataset contains 1000 images out of which 500 images are of cat
and same for the dog.
Copyright Intellipaat. All rights reserved.
Importing the Libraries
We start off this project by importing all the necessary
libraries that will be required for the process.
Copyright Intellipaat. All rights reserved.
Loading the Image Data
Loading the image data by mounting the drive and providing the path of a
folder stored in drive.
Copyright Intellipaat. All rights reserved.
Displaying the Image
To display an image we need a path of each
image. Here we are using two functions
to handle path .
os.listdir - print a list of names of all the files
present in the specified path.
os.path.join - return a combined path by
merging arguments.
Copyright Intellipaat. All rights reserved.
Displaying the Image
Taking any random path of the previous output to display the image.
Copyright Intellipaat. All rights reserved.
Image conversion to array
Converting the image to numpy array
Copyright Intellipaat. All rights reserved.
Image conversion to array
Resizing and flattening the numpy array.
Copyright Intellipaat. All rights reserved.
Image conversion to array
Converting all the images into a
1-D array and storing it into data
variable. Here Label contains
two categories i.e 0 (Cat) and
1 (Dog)
Copyright Intellipaat. All rights reserved.
Logistic Regression
Accuracy obtained by logistic regression is 54 percent.
Copyright Intellipaat. All rights reserved.
Decision Tree
Accuracy obtained by decision tree model is 56 percent.
Copyright Intellipaat. All rights reserved.
Random Forest
Accuracy obtained by random forest model is 64.5 percent.
Copyright Intellipaat. All rights reserved.
Hyperparameter Tuning - Random Forest
Accuracy obtained by random forest model is 65.5 percent.
Copyright Intellipaat. All rights reserved.
Hyperparameter Tuning - Random Forest
Creating the dataframe for actual and predicted value.
Note - We have trained 1000 images of
cats and dogs. Increase in sample image
will lead to increase in accuracy.
Copyright Intellipaat. All rights reserved.