0Pricing
Learn AI with Python · Pelajaran

Proyek Klasifikasi Gambar

Membangun model CNN dasar

Proyek Klasifikasi Gambar adalah pelajaran Learn AI with Python gratis di CoddyKit. Ini adalah pelajaran 4 dari 5. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Learn AI with Python, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Learn AI with Python mencakup 5 pelajaran total.

Proyek Klasifikasi Gambar

Proyek Klasifikasi Gambar

Dalam proyek ini, kita akan membuat CNN sederhana untuk mengklasifikasikan gambar ke dalam beberapa kategori. Klasifikasi gambar melibatkan prediksi kategori atau label dari sebuah gambar input.

Proyek Klasifikasi Gambar — ilustrasi 1

Kumpulan Data untuk Klasifikasi

Kumpulan Data untuk Klasifikasi

Kita akan menggunakan kumpulan data CIFAR-10, yang terdiri atas 60.000 gambar dalam 10 kategori, seperti pesawat, mobil, burung, dan kucing. Setiap gambar berukuran 32×32 piksel dan memiliki 3 kanal warna (RGB).

Memuat Kumpulan Data

Memuat Kumpulan Data

Kita akan memuat kumpulan data CIFAR-10 menggunakan TensorFlow:

import tensorflow as tf
from tensorflow.keras.datasets import cifar10

# Load dataset
(x_train, y_train), (x_test, y_test) = cifar10.load_data()

# Normalize the pixel values to [0, 1]
x_train = x_train / 255.0
x_test = x_test / 255.0

print("Training data shape:", x_train.shape)

Membangun Model CNN

Membangun Model CNN

Kita akan menentukan arsitektur CNN dengan lapisan konvolusi, penyatuan, dan terhubung penuh:

from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense

# Define the CNN model
model = Sequential([
    Conv2D(32, (3, 3), activation='relu', input_shape=(32, 32, 3)),
    MaxPooling2D((2, 2)),
    Conv2D(64, (3, 3), activation='relu'),
    MaxPooling2D((2, 2)),
    Flatten(),
    Dense(128, activation='relu'),
    Dense(10, activation='softmax')
])

Mengompilasi Model

Mengompilasi Model

Kita mengompilasi model dengan:

  • Fungsi Kerugian: Entropi silang kategoris untuk klasifikasi multikelas.
  • Pengoptimal: Pengoptimal Adam untuk pembelajaran yang efisien.
  • Metrik: Akurasi untuk mengevaluasi kinerja.
# Compile the model
model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])

Melatih Model

Melatih Model

Kita melatih model menggunakan data pelatihan selama 10 putaran. Selama pelatihan, model belajar mengklasifikasikan gambar ke dalam beberapa kategori.

# Train the model
model.fit(x_train, y_train, epochs=10, validation_data=(x_test, y_test))

Mengevaluasi Model

Mengevaluasi Model

Setelah pelatihan, kita mengevaluasi model menggunakan data pengujian untuk memeriksa akurasinya:

# Evaluate the model
loss, accuracy = model.evaluate(x_test, y_test)
print(f"Test Accuracy: {accuracy * 100:.2f}%")

Membuat Prediksi

Membuat Prediksi

Kita dapat menggunakan model yang telah dilatih untuk membuat prediksi pada gambar baru:

# Predict the category of a test image
import numpy as np

sample_image = x_test[0]
sample_label = y_test[0]

prediction = np.argmax(model.predict(sample_image[np.newaxis, ...]))
print(f"Predicted Label: {prediction}, Actual Label: {sample_label[0]}")

Tantangan dalam Klasifikasi Gambar

Tantangan dalam Klasifikasi Gambar

Tantangan yang umum meliputi:

  • Penyesuaian Berlebihan: Model bekerja dengan baik pada data pelatihan, tetapi buruk pada data baru.
  • Ketidakseimbangan Kelas: Representasi kategori yang tidak seimbang dalam kumpulan data.
  • Biaya Komputasi: Melatih jaringan dalam memerlukan sumber daya yang besar.

Ringkasan dan Langkah Berikutnya

Ringkasan dan Langkah Berikutnya

Dalam proyek ini, kita:

  • Membuat dan melatih CNN untuk klasifikasi gambar menggunakan kumpulan data CIFAR-10.
  • Mempelajari cara memuat, melakukan prapemrosesan, dan mengevaluasi kumpulan data.
  • Membahas tantangan dalam tugas klasifikasi gambar.

Selanjutnya, kita akan mempelajari teknik augmentasi data untuk meningkatkan kinerja model dengan menghasilkan variasi gambar pelatihan.

Proyek Klasifikasi Gambar — ilustrasi 10

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Proyek Klasifikasi Gambar” gratis?

Ya — teks lengkap “Proyek Klasifikasi Gambar” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Learn AI with Python, upgrade ke CoddyKit PRO. Kursus Learn AI with Python mencakup 5 pelajaran total.

Apa yang akan aku pelajari di “Proyek Klasifikasi Gambar”?

Membangun model CNN dasar Kamu berlatih Learn AI with Python dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Learn AI with Python?

Tidak diperlukan pengalaman sebelumnya. Learn AI with Python di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 5.

Berapa lama pelajaran “Proyek Klasifikasi Gambar” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Learn AI with Python ini?

Ya. Setiap pelajaran Learn AI with Python menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Apa Itu Data Gambar?
  2. Pemrosesan Gambar dengan OpenCV
  3. Jaringan Saraf Konvolusional (CNN)
  4. Proyek Klasifikasi Gambar
  5. Teknik Augmentasi Data
← Kembali ke Learn AI with Python