Build - CIFAR - 10 - Dataset - Classifier - Ipynb - Colaboratory
Build - CIFAR - 10 - Dataset - Classifier - Ipynb - Colaboratory
ipynb - Colaboratory
1- Import Libraries
import tensorflow as tf
from keras import datasets,layers,models
import matplotlib.pyplot as plt
import numpy as np
!wget https://raw.githubusercontent.com/mrdbourke/tensorflow-deep-learning/main/extras/helper_
(X_train,y_train),(X_test,y_test)=datasets.cifar10.load_data()
X_train.shape
https://colab.research.google.com/drive/1cNoTzQfSU9LMJoQ-lMRqohaVv1HeyOTi 1/8
7/28/22, 11:15 AM Build_CIFAR_10_Dataset_classifier.ipynb - Colaboratory
X_test.shape
y_train.shape
(50000, 1)
(4, 2, 4, 2)
AS we Have Seen Our y_train and y_test is 2D but for Classification, We want 1D.So we convert
it into 1D Array
y_train=y_train.reshape(-1,)
y_train[:5]
y_test=y_test.reshape(-1,)
y_train.ndim, y_test.ndim
(1, 1)
classes=['airplane','automobile','bird','cat','deer','dog','frog','horse','ship','truck']
def plot_sample_images(X,y,index):
plt.figure(figsize=(15,2))
plt.imshow(X[index])
plt.xlabel(classes[y[index]])
plot_sample_images(X_train,y_train, 3)
https://colab.research.google.com/drive/1cNoTzQfSU9LMJoQ-lMRqohaVv1HeyOTi 2/8
7/28/22, 11:15 AM Build_CIFAR_10_Dataset_classifier.ipynb - Colaboratory
plot_sample_images(X_train,y_train, 7)
plot_sample_images(X_train,y_train, 9)
X_train=X_train/255.0
X_test=X_test/255.0
X_train[:5]
[0.07058824, 0.03137255, 0. ],
...,
[0.48235294, 0.34509804, 0.21568627],
[0.46666667, 0.3254902 , 0.19607843],
[0.47843137, 0.34117647, 0.22352941]],
...,
cnn_model = models.Sequential([
layers.Conv2D(filters=128, kernel_size=(3, 3), activation='relu', input_shape=(32, 32, 3)
layers.MaxPooling2D((2, 2)),
https://colab.research.google.com/drive/1cNoTzQfSU9LMJoQ-lMRqohaVv1HeyOTi 4/8
7/28/22, 11:15 AM Build_CIFAR_10_Dataset_classifier.ipynb - Colaboratory
layers.Flatten(),
layers.Dense(1024, activation='relu'),
layers.Dense(512, activation='relu'),
layers.Dense(10, activation='softmax')
])
cnn_model.summary()
Model: "sequential"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d (Conv2D) (None, 30, 30, 128) 3584
=================================================================
Total params: 4,107,018
Trainable params: 4,107,018
Non-trainable params: 0
_________________________________________________________________
cnn_model.compile(optimizer='adam',loss='sparse_categorical_crossentropy',metrics=['accuracy'
https://colab.research.google.com/drive/1cNoTzQfSU9LMJoQ-lMRqohaVv1HeyOTi 5/8
7/28/22, 11:15 AM Build_CIFAR_10_Dataset_classifier.ipynb - Colaboratory
Epoch 1/10
1563/1563 [==============================] - 23s 8ms/step - loss: 1.4946 - accuracy: 0.4
Epoch 2/10
1563/1563 [==============================] - 12s 8ms/step - loss: 1.0395 - accuracy: 0.6
Epoch 3/10
1563/1563 [==============================] - 12s 8ms/step - loss: 0.8336 - accuracy: 0.7
Epoch 4/10
1563/1563 [==============================] - 12s 8ms/step - loss: 0.6993 - accuracy: 0.7
Epoch 5/10
1563/1563 [==============================] - 12s 8ms/step - loss: 0.5811 - accuracy: 0.7
Epoch 6/10
1563/1563 [==============================] - 13s 8ms/step - loss: 0.4820 - accuracy: 0.8
Epoch 7/10
1563/1563 [==============================] - 12s 8ms/step - loss: 0.3897 - accuracy: 0.8
Epoch 8/10
1563/1563 [==============================] - 12s 8ms/step - loss: 0.3220 - accuracy: 0.8
Epoch 9/10
1563/1563 [==============================] - 12s 8ms/step - loss: 0.2576 - accuracy: 0.9
Epoch 10/10
1563/1563 [==============================] - 12s 8ms/step - loss: 0.2217 - accuracy: 0.9
y_pred = cnn_model.predict(X_test)
y_pred[:5]
https://colab.research.google.com/drive/1cNoTzQfSU9LMJoQ-lMRqohaVv1HeyOTi 6/8
7/28/22, 11:15 AM Build_CIFAR_10_Dataset_classifier.ipynb - Colaboratory
cnn_model.save('cifer_10_using_cnn.hdf5')
https://colab.research.google.com/drive/1cNoTzQfSU9LMJoQ-lMRqohaVv1HeyOTi 7/8
7/28/22, 11:15 AM Build_CIFAR_10_Dataset_classifier.ipynb - Colaboratory
cnn_model.save('cifer_10_using_cnn.h5')
Code Text
loaded_model =tf.keras.models.load_model("/content/cifer_10_using_cnn.hdf5")
loaded_model.evaluate(X_test, y_test)
https://colab.research.google.com/drive/1cNoTzQfSU9LMJoQ-lMRqohaVv1HeyOTi 8/8