Kelompok 2 Deeplearning
Kelompok 2 Deeplearning
Kelas : 4IA13 Jurusan : Teknik Informatika Dosen : Rosny Gonindjaya, S.Kom, MMSI
Menghubungkan Google Colab dengan Google Drive untuk mengakses dataset yang disimpan di
sana.
import tensorflow as tf
from tensorflow.keras.preprocessing.image import ImageDataGenerator
1 of 6 23/01/2025, 18:08
FishClassificationKelompok2.ipynb - Colab https://colab.research.google.com/drive/156dUlXMO-TZPD5eDprQ66...
validation_dir = '/content/drive/MyDrive/path/to/validation'
# Load dataset
train_generator = train_datagen.flow_from_directory(
train_dir,
target_size=(150, 150),
batch_size=32,
class_mode='categorical' # Menggunakan 'categorical' untuk multi-class
)
validation_generator = validation_datagen.flow_from_directory(
validation_dir,
target_size=(150, 150),
batch_size=32,
class_mode='categorical'
)
2 of 6 23/01/2025, 18:08
FishClassificationKelompok2.ipynb - Colab https://colab.research.google.com/drive/156dUlXMO-TZPD5eDprQ66...
layers.Dense(1024, activation='relu'),
layers.Dropout(0.5),
layers.Dense(3, activation='softmax') # Sesuaikan dengan jumlah kelas
])
# Kompilasi model
model.compile(optimizer='adam',
loss='categorical_crossentropy',
metrics=['accuracy'])
# Latih model
history = model.fit(
train_generator,
epochs=10,
validation_data=validation_generator
)
Epoch 1/10
/usr/local/lib/python3.11/dist-packages/keras/src/trainers/data_adapters/py_dataset_adapter.
self._warn_if_super_not_called()
7/7 ━━━━━━━━━━━━━━━━━━━━ 137s 4s/step - accuracy: 0.4482 - loss: 2.4124 - val_accuracy: 0.73
Epoch 2/10
7/7 ━━━━━━━━━━━━━━━━━━━━ 10s 659ms/step - accuracy: 0.8649 - loss: 0.4975 - val_accuracy: 0.
Epoch 3/10
7/7 ━━━━━━━━━━━━━━━━━━━━ 11s 687ms/step - accuracy: 0.9050 - loss: 0.2467 - val_accuracy: 0.
Epoch 4/10
7/7 ━━━━━━━━━━━━━━━━━━━━ 21s 1s/step - accuracy: 0.9353 - loss: 0.1643 - val_accuracy: 0.961
Epoch 5/10
7/7 ━━━━━━━━━━━━━━━━━━━━ 19s 667ms/step - accuracy: 0.9825 - loss: 0.0655 - val_accuracy: 0.
Epoch 6/10
7/7 ━━━━━━━━━━━━━━━━━━━━ 12s 1s/step - accuracy: 0.9488 - loss: 0.1220 - val_accuracy: 0.923
Epoch 7/10
7/7 ━━━━━━━━━━━━━━━━━━━━ 19s 682ms/step - accuracy: 0.9784 - loss: 0.0506 - val_accuracy: 0.
Epoch 8/10
7/7 ━━━━━━━━━━━━━━━━━━━━ 21s 951ms/step - accuracy: 0.9572 - loss: 0.0821 - val_accuracy: 0.
Epoch 9/10
7/7 ━━━━━━━━━━━━━━━━━━━━ 10s 676ms/step - accuracy: 0.9624 - loss: 0.0986 - val_accuracy: 0.
Epoch 10/10
7/7 ━━━━━━━━━━━━━━━━━━━━ 22s 837ms/step - accuracy: 0.9560 - loss: 0.2121 - val_accuracy: 0.
3 of 6 23/01/2025, 18:08
FishClassificationKelompok2.ipynb - Colab https://colab.research.google.com/drive/156dUlXMO-TZPD5eDprQ66...
epochs_range = range(len(acc))
plt.figure(figsize=(8, 8))
plt.subplot(1, 2, 1)
plt.plot(epochs_range, acc, label='Training Accuracy')
plt.plot(epochs_range, val_acc, label='Validation Accuracy')
plt.legend(loc='lower right')
plt.title('Training and Validation Accuracy')
plt.subplot(1, 2, 2)
plt.plot(epochs_range, loss, label='Training Loss')
plt.plot(epochs_range, val_loss, label='Validation Loss')
plt.legend(loc='upper right')
plt.title('Training and Validation Loss')
plt.show()
4 of 6 23/01/2025, 18:08
FishClassificationKelompok2.ipynb - Colab https://colab.research.google.com/drive/156dUlXMO-TZPD5eDprQ66...
# Prediksi
predictions = [model.predict(img) for img in images]
predicted_classes = [np.argmax(pred) for pred in predictions]
# Visualisasi
plt.figure(figsize=(12, 4))
for i in range(3):
plt.subplot(1, 3, i + 1)
plt.imshow(image.load_img(img_paths[i], target_size=(150, 150)))
plt.title(f"Prediksi: {class_names[predicted_classes[i]]}\nAsli: {true_labels[i]}")
plt.axis('off')
5 of 6 23/01/2025, 18:08
FishClassificationKelompok2.ipynb - Colab https://colab.research.google.com/drive/156dUlXMO-TZPD5eDprQ66...
plt.axis( )
plt.tight_layout()
plt.show()
6 of 6 23/01/2025, 18:08