{"id":2548,"date":"2019-06-18T13:06:43","date_gmt":"2019-06-18T13:06:43","guid":{"rendered":"https:\/\/cloudxlab.com\/blog\/?p=2548"},"modified":"2019-06-27T16:23:10","modified_gmt":"2019-06-27T16:23:10","slug":"fashion-mnist-using-deep-learning-with-tensorflow-keras","status":"publish","type":"post","link":"https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-deep-learning-with-tensorflow-keras\/","title":{"rendered":"Fashion-MNIST using Deep Learning with TensorFlow Keras"},"content":{"rendered":"\n<p><\/p>\n\n\n\n<p>A few months back, I had presented results of my experiments with Fashion-MNIST using Machine Learning algorithms which you can find in the below mentioned blog:<\/p>\n\n\n\n<p><a href=\"https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-machine-learning\/\">https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-machine-learning\/<\/a><\/p>\n\n\n\n<p>In the current article, I am presenting the results of my experiments with Fashion-MNIST using Deep Learning (Convolutional Neural Network &#8211; CNN) which I have implemented using &nbsp;TensorFlow Keras APIs (version 2.1.6-tf).<\/p>\n\n\n\n<!--more-->\n\n\n\n<p>The complete code for this project you can find here :<\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/cloudxlab\/ml\/tree\/master\/projects\/Fashion-MNIST\">https:\/\/github.com\/cloudxlab\/ml\/tree\/master\/projects\/Fashion-MNIST<\/a><\/p>\n\n\n\n<p>Fashion-MNIST is a dataset of Zalando&#8217;s fashion article images \u2014consisting of a <strong>training set of 60,000<\/strong> examples and <strong>a test set of 10,000<\/strong> examples. Each instance is a 28&#215;28 grayscale image, associated with a label.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img width=\"192\" height=\"203\" src=\"https:\/\/blog.cloudxlab.com\/wp-content\/uploads\/2019\/06\/Screenshot-2019-03-13-at-10.46.28.png\" alt=\"Fashion-MNIST dataset sample images\" class=\"wp-image-2550\"\/><figcaption>Fashion-MNIST dataset sample images<\/figcaption><\/figure>\n\n\n\n<h2><strong>Objective<\/strong><br><\/h2>\n\n\n\n<p>This work is part of my experiments with Fashion-MNIST dataset using Convolutional Neural Network (CNN) which I have implemented using TensorFlow Keras APIs(version 2.1.6-tf). The objective is to identify (predict) different fashion products from the given images using a CNN model. For regularization, I have used \u2018dropout\u2019 technique for this problem.<\/p>\n\n\n\n<h2><strong>Acknowledgements <\/strong><br><\/h2>\n\n\n\n<p>I have used Fashion-MNIST dataset for this experiment with Deep Learning. Fashion-MNIST dataset is a collection of fashion articles images provided by <a href=\"http:\/\/www.zalando.com\/\">Zalando<\/a> . Thanks to Zalando Research for <a href=\"https:\/\/github.com\/zalandoresearch\/fashion-mnist\">hosting the dataset<\/a>. <\/p>\n\n\n\n<h2><strong>Understanding and Analysing the dataset<\/strong><br><\/h2>\n\n\n\n<p>Fashion MNIST Training dataset consists of 60,000 images and each image has 784 features (i.e. 28&#215;28 pixels). Each pixel is a value from 0 to 255, describing the pixel intensity. 0 for white and 255 for black.<\/p>\n\n\n\n<p>The class labels for Fashion MNIST are: <br><\/p>\n\n\n\n<table class=\"wp-block-table\"><tbody><tr><td><strong>Label &nbsp;<\/strong><\/td><td><strong>Description <\/strong><\/td><\/tr><tr><td>0<\/td><td>T-shirt\/top<\/td><\/tr><tr><td>1<\/td><td>Trouser<\/td><\/tr><tr><td>2<\/td><td>Pullover<\/td><\/tr><tr><td>3<\/td><td>Dress<\/td><\/tr><tr><td>4<\/td><td>Coat<\/td><\/tr><tr><td>5<\/td><td>Sandal<\/td><\/tr><tr><td>6<\/td><td>Shirt<\/td><\/tr><tr><td>7<\/td><td>Sneaker<\/td><\/tr><tr><td>8<\/td><td>Bag<\/td><\/tr><tr><td>9<\/td><td>Ankle boot <\/td><\/tr><\/tbody><\/table>\n\n\n\n<p>Let us have a look at one instance (an article image), say at index 220, of the training dataset.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>plt.figure() \nplt.imshow(np.squeeze(train_images[220]))<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img width=\"267\" height=\"231\" src=\"https:\/\/blog.cloudxlab.com\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-17.48.37.png\" alt=\"One sample Fashion-MNIST image (at index 220)\" class=\"wp-image-2557\"\/><figcaption>One sample Fashion-MNIST image (at index 220)<\/figcaption><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code>train_labels[220]\n8<\/code><\/pre>\n\n\n\n<p>So, we see that image at index (instance no.) 220 is a bag, and the corresponding label value also indicates the same (8 &#8211; Bag).<\/p>\n\n\n\n<h2><strong>Problem Definition<\/strong><br><\/h2>\n\n\n\n<p>The \u2018target\u2019 dataset has 10 class labels, as we can see from above (0 &#8211; T-shirt\/top, 1 \u2013 Trouser,,\u2026.9 \u2013 Ankle Boot). <\/p>\n\n\n\n<p>Given the images of the articles, we need to classify them into one of these classes, hence, it is essentially a <strong>\u2018Multi-class Classification\u2019<\/strong> problem.<br><\/p>\n\n\n\n<p>We will be using CNN to come up with a model for this problem and will use \u201cAccuracy\u201d as the performance measure.<\/p>\n\n\n\n<h2><strong>Preparing the Data<\/strong><br><\/h2>\n\n\n\n<p>We already have the splitted dataset (training and test) available in ratio 85:15 (60,000:10,000) from Zalando Research, we will use the same for this experiment.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>fashion_mnist = keras.datasets.fashion_mnist\n\n(train_images, train_labels), (test_images, test_labels) = fashion_mnist.load_data()\n\ntrain_images.shape\n\n(60000, 28, 28)\n\ntrain_labels.shape\n\n(60000,)\n\ntest_images.shape\n\n(10000, 28, 28)\n\ntest_labels.shape\n\n(10000,)<\/code><\/pre>\n\n\n\n<p>As part of data preparation, following techniques were applied on the dataset:<\/p>\n\n\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Shuffling<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Normalization<\/span><\/li>\n<\/ol>\n<\/li>\n<\/ol>\n\n\n<p>We shuffle the training dataset to get uniform samples for cross-validation. This also &nbsp;ensures that we don&#8217;t miss out any digit in a cross-validation fold.<br><\/p>\n\n\n\n<p>Each image (instance) in the dataset has 784 pixels (features) and value of each feature(pixel) ranges from 0 to 255, this range is too wide, hence we have performed Normalization on the training and test dataset, by dividing the pixels by 255, so that values of all features (pixels) are in a small range (0 to 1).<br><\/p>\n\n\n<pre class=\"\">train_images_norm = train_images \/ 255.0\ntest_images_norm = test_images \/ 255.0\n<\/pre>\n\n\n<h2><strong>CNN Model Architecture<\/strong><br><\/h2>\n\n\n\n<p>Below is the architecture of my final CNN model. It has 3 convolutional layers, 2 max. Pool layers, 2 dropout layers, 1 fully connected (dense) layer and 1 output (softmax) layer. Apart from these, it also has a flatten layer whose purpose is just to \u2018flatten\u2019 the output, i.e. convert a 2-D output to a 1-D output (which is then fed to the dense layer).<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img width=\"783\" height=\"418\" src=\"https:\/\/blog.cloudxlab.com\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-15.01.43.png\" alt=\"CNN Model Architecture for Fashion-MNIST\" class=\"wp-image-2570\" srcset=\"https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-15.01.43.png 783w, https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-15.01.43-300x160.png 300w, https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-15.01.43-768x410.png 768w\" sizes=\"(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><figcaption>CNN Model Architecture for Fashion-MNIST<\/figcaption><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code>new_model = models.Sequential()\n\nnew_model.add(conv1)\n\n# No Pooling Layer and Dropout layer for first Convolutional layer 'conv1'\n\nnew_model.add(conv2)\nnew_model.add(max_pool_2)\nnew_model.add(drop_2)\nnew_model.add(conv3)\nnew_model.add(max_pool_3)\nnew_model.add(drop_3)\nnew_model.add(flat_layer)\nnew_model.add(fc)\nnew_model.add(output)<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img width=\"536\" height=\"454\" src=\"https:\/\/blog.cloudxlab.com\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-16.43.25.png\" alt=\"CNN Model Summary\" class=\"wp-image-2575\" srcset=\"https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-16.43.25.png 536w, https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-16.43.25-300x254.png 300w\" sizes=\"(max-width: 536px) 85vw, 536px\" \/><figcaption>CNN Model Summary<\/figcaption><\/figure>\n\n\n\n<h2><strong>Training, Validation and Test Results<\/strong><\/h2>\n\n\n\n<p>During the training phase itself the cross validation (validation dataset = 10% of training dataset) and hyperparameter tuning were performed on the training dataset.<br><\/p>\n\n\n\n<p>First, I tried with a CNN model without any regularization technique applied to it, below table shows the results of training and cross validation (validation) for the same. <\/p>\n\n\n\n<p>Deep learning models have a high tendency to overfit (perform well on training dataset than on the validation\/test dataset), the same can be seen in the below results.<\/p>\n\n\n\n<p><strong>Results of CNN model without applying Regularization<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img width=\"581\" height=\"166\" src=\"https:\/\/blog.cloudxlab.com\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-18.12.21.png\" alt=\"Results for CNN Model without applying regularization\" class=\"wp-image-2578\" srcset=\"https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-18.12.21.png 581w, https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-18.12.21-300x86.png 300w\" sizes=\"(max-width: 581px) 85vw, 581px\" \/><figcaption>Results for CNN Model without applying regularization<\/figcaption><\/figure>\n\n\n\n<p>A training accuracy of 99% and test accuracy of 92% confirms that model is overfitting.<br><\/p>\n\n\n\n<p>To solve the model overfitting issue, I applied regularization technique called \u2018Dropout\u2019 and also introduced a few more max. pool layers. The architecture diagram for this CNN model is shown above (under section &#8211; CNN Model Architecture). Below are the results for the same.<\/p>\n\n\n\n<p><strong>Results of the CNN model with regularization (dropout) applied<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img width=\"578\" height=\"232\" src=\"https:\/\/blog.cloudxlab.com\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-18.15.06.png\" alt=\"Results for CNN Model with regularization(dropout) applied\" class=\"wp-image-2581\" srcset=\"https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-18.15.06.png 578w, https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-18.15.06-300x120.png 300w\" sizes=\"(max-width: 578px) 85vw, 578px\" \/><figcaption>Results for CNN Model with regularization(dropout) applied<\/figcaption><\/figure>\n\n\n\n<p>A training accuracy value of 94% and test accuracy of 93% confirms that model is performing fine and there is <strong>no overfitting<\/strong>. Thus, this is our final CNN model.<br><\/p>\n\n\n\n<p>Please note that \u2018Dropout\u2019 should only be applied during the training phase and not during the test phase. For the test phase, TensorFlow Keras API (evaluate() method) automatically takes care of this internally, we needn\u2019t specify any parameter for this (to not apply Dropout).<br><\/p>\n\n\n\n<p>Below are the plots for &#8216;Accuracy&#8217; and &#8216;Loss&#8217; for training and validation(test) phases for this final CNN model.<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img width=\"390\" height=\"259\" src=\"https:\/\/blog.cloudxlab.com\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-16.16.26.png\" alt=\"'Accuracy' plot for CNN Model for training and validation(test) dataset \" class=\"wp-image-2586\" srcset=\"https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-16.16.26.png 390w, https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-16.16.26-300x199.png 300w\" sizes=\"(max-width: 390px) 85vw, 390px\" \/><figcaption>&#8216;Accuracy&#8217; plot for CNN Model for training and validation(test) dataset <\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img width=\"365\" height=\"252\" src=\"https:\/\/blog.cloudxlab.com\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-16.16.48.png\" alt=\"'Loss' plot for CNN Model for training and validation(test) dataset\" class=\"wp-image-2589\" srcset=\"https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-16.16.48.png 365w, https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-16.16.48-300x207.png 300w\" sizes=\"(max-width: 365px) 85vw, 365px\" \/><figcaption>&#8216;Loss&#8217; plot for CNN Model for training and validation(test) dataset<\/figcaption><\/figure>\n\n\n\n<p>Let us make a prediction for one of the instances\/images (say instance no. 88) using our final CNN model (new_model).<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Making predictions on Test dataset\n\npredicted_test_labels = new_model.predict(test_images_norm)\n\npredicted_test_labels.shape\n\n(10000, 10)\n\npredicted_test_labels[88]\n\narray([9.9878651e-01, 1.5129776e-09, 1.0235499e-04, 1.5311174e-05, 6.6746189e-08, 5.6005112e-10, 1.0947105e-03, 1.0985579e-12,\n9.4132378e-07, 1.5505348e-10], dtype=float32)\n\npredicted_test_labels_index = np.argmax(predicted_test_labels[88])\n\npredicted_test_labels_index\n\n0\n\ntest_labels[88]\n\n0\n\nplt.figure()\n\nplt.imshow(np.squeeze(test_images[88]))\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img width=\"236\" height=\"225\" src=\"https:\/\/blog.cloudxlab.com\/wp-content\/uploads\/2019\/06\/Screenshot-2019-06-17-at-18.24.58.png\" alt=\"\" class=\"wp-image-2592\"\/><\/figure>\n\n\n\n<p>Thus, we see that, our CNN model has predicted it right, actual instance (image) at instance no. 88 is a T-shirt and our predicted value also confirms the same (test labels[88] = 0; test_images[88] &#8211; T-shirt).<\/p>\n\n\n\n<h2><strong>Conclusion<\/strong><br><\/h2>\n\n\n\n<p>With our final CNN model, we could achieve a training accuracy of 94% and <strong>test accuracy of 93%<\/strong> confirming that model is fine <strong>with no overfitting<\/strong>. <br><\/p>\n\n\n\n<p>If you remember, with <strong>Machine Learning<\/strong> model (XGBoost) I had achieved a test accuracy of <strong>84.72 %<\/strong>, and with <strong>Deep Learning <\/strong>model (CNN) here I could achieve a test accuracy of<strong> 93 %<\/strong>. Thus, we got around <em>8% improvement in accuracy<\/em> by using Deep Learning.<\/p>\n\n\n\n<p>Though, in this case, we got a good improvement in accuracy score (8%), still there may be a chance to improve performance further, by say, increasing the number of convolutional layers (and neurons\/filters) or trying out different combinations of different layers.<\/p>\n\n\n\n<p>The complete code for this project you can find here :<a href=\"https:\/\/github.com\/cloudxlab\/ml\/tree\/master\/projects\/Fashion-MNIST\"> https:\/\/github.com\/cloudxlab\/ml\/tree\/master\/projects\/Fashion-MNIST<\/a><br><\/p>\n\n\n\n<p>For the complete course on Machine Learning, please visit <a href=\"https:\/\/cloudxlab.com\/course\/specialization\/1\/machine-learning-specialization\">Specialization Course on Machine Learning &amp; Deep Learning<\/a><br><\/p>\n\n\n\n<p><br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A few months back, I had presented results of my experiments with Fashion-MNIST using Machine Learning algorithms which you can find in the below mentioned blog: https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-machine-learning\/ In the current article, I am presenting the results of my experiments with Fashion-MNIST using Deep Learning (Convolutional Neural Network &#8211; CNN) which I have implemented using &nbsp;TensorFlow &hellip; <a href=\"https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-deep-learning-with-tensorflow-keras\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Fashion-MNIST using Deep Learning with TensorFlow Keras&#8221;<\/span><\/a><\/p>\n","protected":false},"author":21,"featured_media":2645,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[29,30],"tags":[19,17],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v16.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Fashion-MNIST using Deep Learning with TensorFlow Keras | CloudxLab Blog<\/title>\n<meta name=\"description\" content=\"This blog involves my experiments with Fashion-MNIST dataset using Deep Learning (Convolutional Neural Network - CNN) using TensorFlow Keras API.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-deep-learning-with-tensorflow-keras\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Fashion-MNIST using Deep Learning with TensorFlow Keras | CloudxLab Blog\" \/>\n<meta property=\"og:description\" content=\"This blog involves my experiments with Fashion-MNIST dataset using Deep Learning (Convolutional Neural Network - CNN) using TensorFlow Keras API.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-deep-learning-with-tensorflow-keras\/\" \/>\n<meta property=\"og:site_name\" content=\"CloudxLab Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/cloudxlab\" \/>\n<meta property=\"article:published_time\" content=\"2019-06-18T13:06:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-06-27T16:23:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.cloudxlab.com\/wp-content\/uploads\/2019\/06\/Tensorflow_Keras.png\" \/>\n\t<meta property=\"og:image:width\" content=\"512\" \/>\n\t<meta property=\"og:image:height\" content=\"512\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@CloudxLab\" \/>\n<meta name=\"twitter:site\" content=\"@CloudxLab\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\">\n\t<meta name=\"twitter:data1\" content=\"6 minutes\">\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cloudxlab.com\/blog\/#website\",\"url\":\"https:\/\/cloudxlab.com\/blog\/\",\"name\":\"CloudxLab Blog\",\"description\":\"Learn AI, Machine Learning, Deep Learning, Devops &amp; Big Data\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/cloudxlab.com\/blog\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-deep-learning-with-tensorflow-keras\/#primaryimage\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Tensorflow_Keras.png\",\"contentUrl\":\"https:\/\/cloudxlab.com\/blog\/wp-content\/uploads\/2019\/06\/Tensorflow_Keras.png\",\"width\":512,\"height\":512,\"caption\":\"Fashion MNIST using Deep Learning with TensorFlow Keras\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-deep-learning-with-tensorflow-keras\/#webpage\",\"url\":\"https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-deep-learning-with-tensorflow-keras\/\",\"name\":\"Fashion-MNIST using Deep Learning with TensorFlow Keras | CloudxLab Blog\",\"isPartOf\":{\"@id\":\"https:\/\/cloudxlab.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-deep-learning-with-tensorflow-keras\/#primaryimage\"},\"datePublished\":\"2019-06-18T13:06:43+00:00\",\"dateModified\":\"2019-06-27T16:23:10+00:00\",\"author\":{\"@id\":\"https:\/\/cloudxlab.com\/blog\/#\/schema\/person\/cb0503c4e740565d85cd28a1b167f48b\"},\"description\":\"This blog involves my experiments with Fashion-MNIST dataset using Deep Learning (Convolutional Neural Network - CNN) using TensorFlow Keras API.\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-deep-learning-with-tensorflow-keras\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-deep-learning-with-tensorflow-keras\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-deep-learning-with-tensorflow-keras\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudxlab.com\/blog\/\",\"url\":\"https:\/\/cloudxlab.com\/blog\/\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"position\":2,\"item\":{\"@id\":\"https:\/\/cloudxlab.com\/blog\/fashion-mnist-using-deep-learning-with-tensorflow-keras\/#webpage\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/cloudxlab.com\/blog\/#\/schema\/person\/cb0503c4e740565d85cd28a1b167f48b\",\"name\":\"Deepak Singh\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/cloudxlab.com\/blog\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/93f963a3a3600e7852f1a3677966d5c4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/93f963a3a3600e7852f1a3677966d5c4?s=96&d=mm&r=g\",\"caption\":\"Deepak Singh\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","_links":{"self":[{"href":"https:\/\/cloudxlab.com\/blog\/wp-json\/wp\/v2\/posts\/2548"}],"collection":[{"href":"https:\/\/cloudxlab.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudxlab.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudxlab.com\/blog\/wp-json\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudxlab.com\/blog\/wp-json\/wp\/v2\/comments?post=2548"}],"version-history":[{"count":107,"href":"https:\/\/cloudxlab.com\/blog\/wp-json\/wp\/v2\/posts\/2548\/revisions"}],"predecessor-version":[{"id":2676,"href":"https:\/\/cloudxlab.com\/blog\/wp-json\/wp\/v2\/posts\/2548\/revisions\/2676"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudxlab.com\/blog\/wp-json\/wp\/v2\/media\/2645"}],"wp:attachment":[{"href":"https:\/\/cloudxlab.com\/blog\/wp-json\/wp\/v2\/media?parent=2548"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudxlab.com\/blog\/wp-json\/wp\/v2\/categories?post=2548"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudxlab.com\/blog\/wp-json\/wp\/v2\/tags?post=2548"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}