Pelajari AI dengan Python · Pelajaran

Projek Pengelasan Imej

Membina model CNN asas.

Pelajaran 4 daripada 510 langkah

Projek Pengelasan Imej ialah pelajaran Pelajari AI dengan Python percuma di CoddyKit. Ini ialah pelajaran 4 daripada 5. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Pelajari AI dengan Python, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Pelajari AI dengan Python merangkumi sejumlah 5 pelajaran.

Projek Pengelasan Imej

Dalam projek ini, kita akan membina CNN mudah untuk mengelaskan imej mengikut kategori. Pengelasan imej melibatkan peramalan kategori atau label bagi imej masukan.

Projek Pengelasan Imej — ilustrasi 1

Set Data untuk Pengelasan

Kita akan menggunakan set data CIFAR-10, yang terdiri daripada 60,000 imej dalam 10 kategori seperti kapal terbang, kereta, burung dan kucing. Setiap imej berukuran 32×32 piksel dan mempunyai 3 saluran warna (RGB).

Memuatkan Set Data

Kita akan memuatkan set 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)

Membina Model CNN

Kita akan mentakrifkan seni bina CNN dengan lapisan konvolusi, pengumpulan dan bersambung 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')
])

Melakukan compile pada Model

Kami compile model dengan:

  • Fungsi Kehilangan: Silang entropi kategori untuk pengelasan berbilang kelas.
  • Pengoptimum: Pengoptimum Adam untuk pembelajaran yang cekap.
  • Metrik: Ketepatan untuk menilai prestasi.
# Compile the model
model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])

Melatih Model

Kita melatih model menggunakan data latihan selama 10 epok. Semasa latihan, model belajar mengelaskan imej mengikut kategori.

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

Menilai Model

Selepas latihan, kami menilai model pada data ujian untuk menyemak ketepatannya:

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

Membuat Ramalan

Kami boleh menggunakan model yang telah dilatih untuk membuat ramalan pada imej baharu:

# 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]}")

Cabaran dalam Pengelasan Imej

Cabaran yang lazim termasuk:

  • Padanan Berlebihan: Model berprestasi baik pada data latihan tetapi lemah pada data baharu.
  • Ketidakseimbangan Kelas: Perwakilan kategori yang tidak seimbang dalam set data.
  • Kos Pengiraan: Latihan rangkaian mendalam memerlukan sumber yang banyak.

Ringkasan dan Langkah Seterusnya

Dalam projek ini, kami:

  • Membina dan melatih CNN untuk pengelasan imej menggunakan set data CIFAR-10.
  • Mempelajari cara memuatkan, memproses awal dan menilai set data.
  • Membincangkan cabaran dalam tugasan pengelasan imej.

Seterusnya, kami akan meneroka teknik pengayaan data untuk meningkatkan prestasi model dengan menjana variasi imej latihan.

Projek Pengelasan Imej — ilustrasi 10
Percuma untuk bermula

Pelajari Python dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
53
Pelajaran
225

Soalan Lazim

Adakah pelajaran “Projek Pengelasan Imej” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Pelajari AI dengan Python, termasuk “Projek Pengelasan Imej”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Pelajari AI dengan Python merangkumi sejumlah 5 pelajaran.

Apakah yang akan saya pelajari dalam “Projek Pengelasan Imej”?

Membina model CNN asas. Anda berlatih Pelajari AI dengan Python menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Pelajari AI dengan Python?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Pelajari AI dengan Python di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 4 daripada 5.

Berapa lamakah pelajaran “Projek Pengelasan Imej” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Pelajari AI dengan Python ini?

Ya. Setiap pelajaran Pelajari AI dengan Python menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Apakah Data Imej?
  2. Pemprosesan Imej dengan OpenCV
  3. Rangkaian Neural Konvolusi (CNN)
  4. Projek Pengelasan Imej
  5. Teknik Penambahan Data
← Kembali ke Pelajari AI dengan Python