Multi-Class Image Classification Deep Learning Model for Weed Species Image Using TensorFlow Take 2

Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery.

SUMMARY: This project aims to construct a predictive model using a TensorFlow convolutional neural network (CNN) and document the end-to-end steps using a template. The Flower Photos dataset is a multi-class classification situation where we attempt to predict one of several (more than two) possible outcomes.

INTRODUCTION: The DeepWeeds dataset consists of 17,509 images capturing eight different weed species native to Australia in situ with neighboring flora. The selected weed species are local to pastoral grasslands across the state of Queensland. They include: “Chinee apple”, “Snake weed”, “Lantana”, “Prickly acacia”, “Siam weed”, “Parthenium”, “Rubber vine” and “Parkinsonia”.

The research team built and tested their models using a five-fold cross-validation approach. Each fold of the dataset contains the subset of data for training (60%), validation (20%), and testing (20%). The research team set up the Python script for multi-label classification. To keep our experiments straight-forward for now, this series of exercises will focus on predicting a single class for each image.

From iteration Take1, we constructed a CNN model using the ResNet50 architecture and tested the model’s performance using the dataset’s five subsets.

In this Take2 iteration, we will construct a CNN model using the InceptionV3 architecture and test the model’s performance using the dataset’s five subsets.

ANALYSIS: In this Take2 iteration and using the subset0 portion of the dataset, the model’s performance achieved an accuracy score of 80.18% on the validation dataset after 50 epochs. Furthermore, the final model processed the test dataset with an accuracy measurement of 84.63%.

  • Data subset1: Validation – 82.01%, Test – 86.30%
  • Data subset2: Validation – 82.18%, Test – 86.12%
  • Data subset3: Validation – 82.04%, Test – 86.54%
  • Data subset4: Validation – 80.90%, Test – 83.91%

CONCLUSION: In this iteration, the InceptionV3 TensorFlow CNN model appeared to be suitable for modeling this dataset. We should consider experimenting with TensorFlow for further modeling.

Dataset Used: Weed Species Image Dataset

Dataset ML Model: Multi-class image classification with numerical attributes

Dataset Reference: https://github.com/AlexOlsen/DeepWeeds

One potential source of performance benchmarks: https://github.com/AlexOlsen/DeepWeeds

The HTML formatted report can be found here on GitHub.

Multi-Class Image Classification Deep Learning Model for Weed Species Image Using TensorFlow Take 1

Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery.

SUMMARY: This project aims to construct a predictive model using a TensorFlow convolutional neural network (CNN) and document the end-to-end steps using a template. The Flower Photos dataset is a multi-class classification situation where we attempt to predict one of several (more than two) possible outcomes.

INTRODUCTION: The DeepWeeds dataset consists of 17,509 images capturing eight different weed species native to Australia in situ with neighboring flora. The selected weed species are local to pastoral grasslands across the state of Queensland. They include: “Chinee apple”, “Snake weed”, “Lantana”, “Prickly acacia”, “Siam weed”, “Parthenium”, “Rubber vine” and “Parkinsonia”.

The research team built and tested their models using a five-fold cross-validation approach. Each fold of the dataset contains the subset of data for training (60%), validation (20%), and testing (20%). The research team set up the Python script for multi-label classification. To keep our experiments straight-forward for now, this series of exercises will focus on predicting a single class for each image.

In this Take1 iteration, we will construct a CNN model using the ResNet50 architecture and test the model’s performance using one of the dataset’s five subsets.

ANALYSIS: In this Take1 iteration and using the subset0 portion of the dataset, the model’s performance achieved an accuracy score of 78.61% on the validation dataset after 50 epochs. Furthermore, the final model processed the test dataset with an accuracy measurement of 82.81%.

Data subset1: Validation – 73.70%, Test – 80.73%

Data subset2: Validation – 78.04%, Test – 81.43%

Data subset3: Validation – 79.59%, Test – 84.54%

Data subset4: Validation – 79.76%, Test – 84.99%

CONCLUSION: In this iteration, the ResNet50 TensorFlow CNN model appeared to be suitable for modeling this dataset. We should consider experimenting with TensorFlow for further modeling.

Dataset Used: Weed Species Image Dataset

Dataset ML Model: Multi-class image classification with numerical attributes

Dataset Reference: https://github.com/AlexOlsen/DeepWeeds

One potential source of performance benchmarks: https://github.com/AlexOlsen/DeepWeeds

The HTML formatted report can be found here on GitHub.

Multi-Class Image Classification Deep Learning Model for Flower Photos Using TensorFlow Take 4

Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery.

SUMMARY: This project aims to construct a predictive model using a TensorFlow convolutional neural network (CNN) and document the end-to-end steps using a template. The Flower Photos dataset is a multi-class classification situation where we attempt to predict one of several (more than two) possible outcomes.

INTRODUCTION: The Flower Photos dataset is a collection of 3,670 flower photos in five different species. This dataset is part of the TensorFlow standard dataset collection.

From iteration Take1, we constructed and tuned a machine learning model using a simple three-layer MLP network. We also observed the best result that we could obtain using the validation dataset.

From iteration Take2, we constructed and tuned a machine learning model using the VGG-16 architecture. We also observed the best result that we could obtain using the validation dataset.

From iteration Take3, we constructed and tuned a machine learning model using the Inception V3 architecture. We also observed the best result that we could obtain using the validation dataset.

In this Take4 iteration, we will construct and tune a machine learning model using the ResNet50 V2 architecture. We will also observe the best result that we can obtain using the validation dataset.

ANALYSIS: From iteration Take1, the baseline model’s performance achieved an accuracy score of 80.24% after 25 epochs using the training dataset. The model also processed the validation dataset with an accuracy score of 74.69%.

From iteration Take2, the VGG-16 model’s performance achieved an accuracy score of 73.71% after 25 epochs using the training dataset. The model also processed the validation dataset with an accuracy score of 65.53%.

From iteration Take3, the Inception V3 model’s performance achieved an accuracy score of 75.89% after 25 epochs using the training dataset. The model also processed the validation dataset with an accuracy score of 72.50%.

In this Take4 iteration, the ResNet50 V2 model’s performance achieved an accuracy score of 77.94% after 25 epochs using the training dataset. The model also processed the validation dataset with an accuracy score of 72.91%.

CONCLUSION: In this iteration, the TensorFlow CNN model appeared to be suitable for modeling this dataset. We should consider experimenting with TensorFlow for further modeling.

Dataset Used: Flower Photos Dataset

Dataset ML Model: Multi-class image classification with numerical attributes

Dataset Reference: https://www.tensorflow.org/datasets/catalog/tf_flowers

One potential source of performance benchmarks: https://www.tensorflow.org/tutorials/images/classification

The HTML formatted report can be found here on GitHub.

Multi-Class Image Classification Deep Learning Model for Flower Photos Using TensorFlow Take 3

Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery.

SUMMARY: This project aims to construct a predictive model using a TensorFlow convolutional neural network (CNN) and document the end-to-end steps using a template. The Flower Photos dataset is a multi-class classification situation where we attempt to predict one of several (more than two) possible outcomes.

INTRODUCTION: The Flower Photos dataset is a collection of 3,670 flower photos in five different species. This dataset is part of the TensorFlow standard dataset collection.

From iteration Take1, we constructed and tuned a machine learning model using a simple three-layer MLP network. We also observed the best result that we could obtain using the validation dataset.

From iteration Take2, we constructed and tuned a machine learning model using the VGG-16 architecture. We also observed the best result that we could obtain using the validation dataset.

In this Take3 iteration, we will construct and tune a machine learning model using the Inception V3 architecture. We will also observe the best result that we can obtain using the validation dataset.

ANALYSIS: From iteration Take1, the baseline model’s performance achieved an accuracy score of 80.24% after 25 epochs using the training dataset. The model also processed the validation dataset with an accuracy score of 74.69%.

From iteration Take2, the VGG-16 model’s performance achieved an accuracy score of 73.71% after 25 epochs using the training dataset. The model also processed the validation dataset with an accuracy score of 65.53%.

In this Take3 iteration, the Inception V3 model’s performance achieved an accuracy score of 75.89% after 25 epochs using the training dataset. The model also processed the validation dataset with an accuracy score of 72.50%.

CONCLUSION: In this iteration, the TensorFlow CNN model appeared to be suitable for modeling this dataset. We should consider experimenting with TensorFlow for further modeling.

Dataset Used: Flower Photos Dataset

Dataset ML Model: Multi-class image classification with numerical attributes

Dataset Reference: https://www.tensorflow.org/datasets/catalog/tf_flowers

One potential source of performance benchmarks: https://www.tensorflow.org/tutorials/images/classification

The HTML formatted report can be found here on GitHub.

Multi-Class Image Classification Deep Learning Model for Flower Photos Using TensorFlow Take 2

Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery.

SUMMARY: This project aims to construct a predictive model using a TensorFlow convolutional neural network (CNN) and document the end-to-end steps using a template. The Flower Photos dataset is a multi-class classification situation where we attempt to predict one of several (more than two) possible outcomes.

INTRODUCTION: The Flower Photos dataset is a collection of 3,670 flower photos in five different species. This dataset is part of the TensorFlow standard dataset collection.

From iteration Take1, we constructed and tuned a machine learning model using a simple three-layer MLP network. We also observed the best result that we could obtain using the validation dataset.

In this Take2 iteration, we will construct and tune a machine learning model using the VGG-16 architecture. We will also observe the best result that we can obtain using the validation dataset.

ANALYSIS: From iteration Take1, the baseline model’s performance achieved an accuracy score of 80.24% after 25 epochs using the training dataset. After tuning the model, the model also processed the validation dataset with an accuracy score of 74.69%.

In this Take2 iteration, the VGG-16 model’s performance achieved an accuracy score of 73.71% after 25 epochs using the training dataset. After tuning the model, the model also processed the validation dataset with an accuracy score of 65.53%.

CONCLUSION: In this iteration, the TensorFlow CNN model appeared to be suitable for modeling this dataset. We should consider experimenting with TensorFlow for further modeling.

Dataset Used: Flower Photos Dataset

Dataset ML Model: Multi-class image classification with numerical attributes

Dataset Reference: https://www.tensorflow.org/datasets/catalog/tf_flowers

One potential source of performance benchmarks: https://www.tensorflow.org/tutorials/images/classification

The HTML formatted report can be found here on GitHub.

Multi-Class Image Classification Deep Learning Model for Flower Photos Using TensorFlow Take 1

Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery.

SUMMARY: This project aims to construct a predictive model using a TensorFlow convolutional neural network (CNN) and document the end-to-end steps using a template. The Flower Photos dataset is a multi-class classification situation where we attempt to predict one of several (more than two) possible outcomes.

INTRODUCTION: The Flower Photos dataset is a collection of 3,670 flower photos in five different species. This dataset is part of the TensorFlow standard dataset collection.

In this Take1 iteration, we will construct and tune a machine learning model using a simple three-layer MLP network. We will also observe the best result that we can obtain using the validation dataset.

ANALYSIS: In this Take1 iteration, the baseline model’s performance achieved an accuracy score of 80.24% after 25 epochs using the training dataset. After tuning the model, the best model processed the validation dataset with an accuracy score of 74.69%.

CONCLUSION: In this iteration, the TensorFlow CNN model appeared to be suitable for modeling this dataset. We should consider experimenting with TensorFlow for further modeling.

Dataset Used: Flower Photos Dataset

Dataset ML Model: Multi-class image classification with numerical attributes

Dataset Reference: https://www.tensorflow.org/datasets/catalog/tf_flowers

One potential source of performance benchmarks: https://www.tensorflow.org/tutorials/images/classification

The HTML formatted report can be found here on GitHub.

Multi-Class Image Classification Deep Learning Model for Intel Image Classification Using TensorFlow Take 5

Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery.

SUMMARY: This project aims to construct a predictive model using a TensorFlow convolutional neural network (CNN) and document the end-to-end steps using a template. The Intel Image Classification dataset is a multi-class classification situation where we attempt to predict one of several (more than two) possible outcomes.

INTRODUCTION: This dataset contains over 17,000 images of size 150×150 distributed under six categories: buildings, forest, glacier, mountain, sea, and street. There are approximately 14,000 images in the training set and 3,000 in the test/validation set. This dataset was initially published on https://datahack.analyticsvidhya.com by Intel as part of a data science competition.

From iteration Take1, we constructed a simple three-layer CNN neural network as the baseline model. We plan to use this model’s performance as the baseline measurement for future iterations of modeling.

From iteration Take2, we constructed a VGG16 neural network as an alternate model. We also compared this model’s performance with the baseline model from iteration Take1.

From iteration Take3, we constructed an InceptionV3 neural network as an alternate model. We also compared this model’s performance with the baseline model from iteration Take1.

From iteration Take4, we constructed a ResNet50V2 neural network as an alternate model. We also compared this model’s performance with the baseline model from iteration Take1.

In this Take5 iteration, we will construct a DenseNet201 neural network as an alternate model. We will compare this model’s performance with the baseline model from iteration Take1.

ANALYSIS: From iteration Take1, the baseline model’s performance achieved an accuracy score of 88.62% after 30 epochs using the training images. The baseline model also processed the validation images with an accuracy score of 85.37%.

From iteration Take2, the VGG16 model’s performance achieved an accuracy score of 83.57% after 30 epochs using the training images. The VGG16 model also processed the validation images with an accuracy score of 79.53%.

From iteration Take3, the InceptionV3 model’s performance achieved an accuracy score of 91.24% after 30 epochs using the training images. The InceptionV3 model also processed the validation images with an accuracy score of 87.10%.

From iteration Take4, the ResNet50V2 model’s performance achieved an accuracy score of 88.93% after 30 epochs using the training images. The ResNet50V2 model also processed the validation images with an accuracy score of 87.17%.

In this Take5 iteration, the DenseNet201 model’s performance achieved an accuracy score of 91.44% after 30 epochs using the training images. The DenseNet201 model also processed the validation images with an accuracy score of 87.27%.

CONCLUSION: In this iteration, the TensorFlow CNN model appeared to be suitable for modeling this dataset. We should consider experimenting with TensorFlow for further modeling.

Dataset Used: Intel Image Classification Dataset

Dataset ML Model: Multi-class image classification with numerical attributes

Dataset Reference: https://www.kaggle.com/puneet6060/intel-image-classification

One potential source of performance benchmarks: https://www.kaggle.com/puneet6060/intel-image-classification

The HTML formatted report can be found here on GitHub.

Multi-Class Image Classification Deep Learning Model for Intel Image Classification Using TensorFlow Take 4

Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery.

SUMMARY: This project aims to construct a predictive model using a TensorFlow convolutional neural network (CNN) and document the end-to-end steps using a template. The Intel Image Classification dataset is a multi-class classification situation where we attempt to predict one of several (more than two) possible outcomes.

INTRODUCTION: This dataset contains over 17,000 images of size 150×150 distributed under six categories: buildings, forest, glacier, mountain, sea, and street. There are approximately 14,000 images in the training set and 3,000 in the test/validation set. This dataset was initially published on https://datahack.analyticsvidhya.com by Intel as part of a data science competition.

From iteration Take1, we constructed a simple three-layer CNN neural network as the baseline model. We plan to use this model’s performance as the baseline measurement for future iterations of modeling.

From iteration Take2, we constructed a VGG16 neural network as an alternate model. We also compared this model’s performance with the baseline model from iteration Take1.

From iteration Take3, we constructed an InceptionV3 neural network as an alternate model. We also compared this model’s performance with the baseline model from iteration Take1.

In this Take4 iteration, we will construct a ResNet50V2 neural network as an alternate model. We will compare this model’s performance with the baseline model from iteration Take1.

ANALYSIS: From iteration Take1, the baseline model’s performance achieved an accuracy score of 88.62% after 30 epochs using the training images. The baseline model also processed the validation images with an accuracy score of 85.37%.

From iteration Take2, the VGG16 model’s performance achieved an accuracy score of 83.57% after 30 epochs using the training images. The VGG16 model also processed the validation images with an accuracy score of 79.53%.

From iteration Take3, the InceptionV3 model’s performance achieved an accuracy score of 91.24% after 30 epochs using the training images. The InceptionV3 model also processed the validation images with an accuracy score of 87.10%.

In this Take4 iteration, the ResNet50V2 model’s performance achieved an accuracy score of 88.93% after 30 epochs using the training images. The ResNet50V2 model also processed the validation images with an accuracy score of 87.17%.

CONCLUSION: In this iteration, the TensorFlow CNN model appeared to be suitable for modeling this dataset. We should consider experimenting with TensorFlow for further modeling.

Dataset Used: Intel Image Classification Dataset

Dataset ML Model: Multi-class image classification with numerical attributes

Dataset Reference: https://www.kaggle.com/puneet6060/intel-image-classification

One potential source of performance benchmarks: https://www.kaggle.com/puneet6060/intel-image-classification

The HTML formatted report can be found here on GitHub.