0% found this document useful (0 votes)
96 views2 pages

8 Image Classification With Transfer Learning - Ipynb - Colab

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
96 views2 pages

8 Image Classification With Transfer Learning - Ipynb - Colab

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

10/23/24, 8:52 PM 8 Image Classification with Transfer Learning.

ipynb - Colab

import tensorflow as tf
from tensorflow import keras
from [Link] import cifar10
from [Link] import VGG16
from [Link] import Dense, Flatten
from [Link] import Model
from [Link] import SGD
from [Link] import to_categorical

# Load and preprocess the CIFAR-10 dataset


(X_train, y_train), (X_test, y_test) = cifar10.load_data()
X_train = X_train / 255.0
X_test = X_test / 255.0
y_train = to_categorical(y_train, num_classes=10)
y_test = to_categorical(y_test, num_classes=10)

# Load a pre-trained model (VGG16 in this example)


base_model = VGG16(weights='imagenet', include_top=False, input_shape=(32, 32, 3))

# Freeze the pre-trained model layers


for layer in base_model.layers:
[Link] = False

# Add custom classification layers on top of the pre-trained model


x = Flatten()(base_model.output)
x = Dense(256, activation='relu')(x)
x = Dense(128, activation='relu')(x)
output = Dense(10, activation='softmax')(x)

# Create the final model


model = Model(inputs=base_model.input, outputs=output)

# Compile the model


[Link](optimizer=SGD(learning_rate=0.001, momentum=0.9), loss='categorical_crossentropy', metrics=['accuracy'])

# Train the model


[Link](X_train, y_train, batch_size=32, epochs=10, validation_data=(X_test, y_test))

Epoch 1/10
1563/1563 ━━━━━━━━━━━━━━━━━━━━ 793s 507ms/step - accuracy: 0.3306 - loss: 1.9110 - val_accuracy: 0.4659 - val_loss: 1.4934
Epoch 2/10
1563/1563 ━━━━━━━━━━━━━━━━━━━━ 777s 491ms/step - accuracy: 0.5031 - loss: 1.4125 - val_accuracy: 0.5211 - val_loss: 1.3653
Epoch 3/10
1563/1563 ━━━━━━━━━━━━━━━━━━━━ 822s 504ms/step - accuracy: 0.5366 - loss: 1.3269 - val_accuracy: 0.5367 - val_loss: 1.3182
Epoch 4/10
1563/1563 ━━━━━━━━━━━━━━━━━━━━ 802s 504ms/step - accuracy: 0.5514 - loss: 1.2837 - val_accuracy: 0.5591 - val_loss: 1.2663
Epoch 5/10
1563/1563 ━━━━━━━━━━━━━━━━━━━━ 797s 500ms/step - accuracy: 0.5649 - loss: 1.2406 - val_accuracy: 0.5511 - val_loss: 1.2794
Epoch 6/10
1563/1563 ━━━━━━━━━━━━━━━━━━━━ 765s 489ms/step - accuracy: 0.5718 - loss: 1.2217 - val_accuracy: 0.5587 - val_loss: 1.2577
Epoch 7/10
1563/1563 ━━━━━━━━━━━━━━━━━━━━ 765s 490ms/step - accuracy: 0.5813 - loss: 1.1975 - val_accuracy: 0.5784 - val_loss: 1.2089
Epoch 8/10
1563/1563 ━━━━━━━━━━━━━━━━━━━━ 767s 491ms/step - accuracy: 0.5881 - loss: 1.1750 - val_accuracy: 0.5731 - val_loss: 1.2154
Epoch 9/10
1563/1563 ━━━━━━━━━━━━━━━━━━━━ 808s 494ms/step - accuracy: 0.5925 - loss: 1.1640 - val_accuracy: 0.5782 - val_loss: 1.1967
Epoch 10/10
1563/1563 ━━━━━━━━━━━━━━━━━━━━ 821s 506ms/step - accuracy: 0.5948 - loss: 1.1520 - val_accuracy: 0.5810 - val_loss: 1.1976
<[Link] at 0x7fc4da507400>

# Evaluate the model


loss, accuracy = [Link](X_test, y_test)
print("Test Loss:", loss)
print("Test Accuracy:", accuracy)

313/313 ━━━━━━━━━━━━━━━━━━━━ 129s 411ms/step - accuracy: 0.5847 - loss: 1.1934


Test Loss: 1.1976414918899536
Test Accuracy: 0.5809999704360962

import numpy as np

# Make Predictions on New Data


# Predict class for a single test image
img = X_test[1] # Take one image from the test set
img = np.expand_dims(img, axis=0) # Expand dimensions to fit the model input shape

[Link] 1/2
10/23/24, 8:52 PM 8 Image Classification with Transfer [Link] - Colab
# Get prediction
pred = [Link](img)
predicted_class = [Link](pred, axis=1)

1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 295ms/step

# Map predicted class index to the class label


class_labels = ['airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck']
print(f"Predicted class: {class_labels[predicted_class[0]]}")

Predicted class: ship

import [Link] as plt


img = X_test[1]
#img = [Link](axis=0)
[Link](img)
[Link]()

Start coding or generate with AI.

[Link] 2/2

You might also like