Praktikum ML: Klasifikasi Gambar

Memperkenalkan Jaringan Neural Konvolusional

Terobosan dalam membuat model untuk klasifikasi gambar hadir dengan penemuan bahwa jaringan neural konvolusif (CNN) dapat digunakan secara bertahap untuk mengekstrak representasi yang lebih tinggi dan lebih tinggi dari konten gambar. Alih-alih memproses data terlebih dahulu untuk memperoleh fitur seperti tekstur dan bentuk, CNN hanya mengambil data piksel mentah gambar sebagai input dan mempelajari 'cara mengekstrak fitur ini', dan pada akhirnya menyimpulkan objek apa yang menyusunnya.

Untuk memulai, CNN akan menerima peta fitur input: matriks tiga dimensi yang ukuran dua dimensi pertamanya sesuai dengan panjang dan lebar gambar dalam piksel. Ukuran dimensi ketiga adalah 3 (sesuai dengan 3 saluran gambar warna: merah, hijau, dan biru). CNN terdiri dari tumpukan modul, yang masing-masing menjalankan tiga operasi.

1. Konvolusi

Convolution mengekstrak ubin peta fitur input, dan menerapkan filter padanya untuk menghitung fitur baru, menghasilkan peta fitur output, atau fitur konvolusi (yang mungkin memiliki ukuran dan kedalaman yang berbeda dari peta fitur input). Konvolusi ditentukan oleh dua parameter:

  • Ukuran ubin yang diekstrak (biasanya 3x3 atau 5x5 piksel).
  • Kedalaman peta fitur output, yang sesuai dengan jumlah filter yang diterapkan.

Selama konvolusi, filter (matriks dengan ukuran yang sama dengan ukuran ubin) secara efektif menggeser petak peta fitur input secara horizontal dan vertikal, satu piksel dalam satu waktu, sehingga mengekstrak setiap ubin yang sesuai (lihat Gambar 3).

Konvolusi 3x3 atas peta fitur 4x4 Gambar 3. Konvolusi 3x3 dengan kedalaman 1 ditampilkan di atas peta fitur input 5x5, dan juga kedalaman 1. Ada sembilan kemungkinan lokasi 3x3 untuk mengekstrak ubin dari peta fitur 5x5, sehingga konvolusi ini menghasilkan peta fitur output 3x3.

Untuk setiap pasangan filter-filter, CNN melakukan perkalian berbasis elemen dari matriks filter dan matriks kartu, lalu menjumlahkan semua elemen matriks yang dihasilkan untuk mendapatkan satu nilai. Setiap nilai yang dihasilkan untuk setiap pasangan ubin filter kemudian dikeluarkan dalam matriks fitur yang dikonvolusi (lihat Gambar 4a dan 4b).

Peta fitur 5x5 dan konvolusi 3x3 Gambar 4a. Kiri: Peta fitur input 5x5 (kedalaman 1). Kanan: konvolusi 3x3 (kedalaman 1).

Gambar 4b. Kiri: Konvolusi 3x3 dilakukan pada peta fitur input 5x5. Kanan: fitur yang dihasilkan. Klik nilai pada peta fitur output untuk melihat cara penghitungannya.

Selama pelatihan, CNN "learns" nilai optimal untuk matriks filter yang memungkinkannya mengekstrak fitur yang bermakna (tekstur, tepi, bentuk) dari peta fitur input. Seiring bertambahnya jumlah filter (kedalaman peta fitur output) pada input, demikian pula jumlah fitur yang dapat diekstrak oleh CNN. Namun, konsekuensinya adalah filter memfilter sebagian besar resource yang dihabiskan oleh CNN, sehingga waktu pelatihan juga meningkat seiring dengan semakin banyaknya filter yang ditambahkan. Selain itu, setiap filter yang ditambahkan ke jaringan memberikan nilai inkremental yang lebih sedikit daripada filter sebelumnya, sehingga engineer bertujuan untuk membuat jaringan yang menggunakan jumlah filter minimum yang diperlukan untuk mengekstrak fitur yang diperlukan untuk klasifikasi gambar yang akurat.

2. ULT

Setelah setiap operasi konvolusi, CNN menerapkan transformasi Unit Linear Terarah (ULT) ke fitur konvolusi, untuk memperkenalkan nonlinearitas ke dalam model. Fungsi ULT, \(F(x)=max(0,x)\), menampilkan x untuk semua nilai x > 0, dan menampilkan 0 untuk semua nilai x ≤ 0.

3. Penggabungan

Setelah ULT melakukan langkah penggabungan, di mana CNN menurunkan sampel fitur yang telah dikomposisi (untuk menghemat waktu pemrosesan), mengurangi jumlah dimensi peta fitur, sambil tetap mempertahankan informasi fitur yang paling penting. Algoritme umum yang digunakan untuk proses ini disebut penggabungan maks..

Penggabungan maks beroperasi dengan cara yang sama seperti konvolusi. Kita menggeser peta fitur dan mengekstrak ubin dengan ukuran yang ditentukan. Untuk setiap kartu, nilai maksimum adalah output ke peta fitur baru, dan semua nilai lainnya akan dihapus. Operasi kumpulan maksimum mengambil dua parameter:

  • Ukuran filter kumpulan maks (biasanya 2x2 piksel)
  • Langkah: jarak dalam piksel untuk memisahkan setiap ubin yang diekstrak. Tidak seperti konvolusi, dengan filter bergeser di atas piksel peta fitur berdasarkan piksel, dalam kumpulan maks, langkah menentukan lokasi setiap ubin diekstraksi. Untuk filter 2x2, langkah 2 menentukan bahwa operasi penggabungan maksimum akan mengekstrak semua ubin 2x2 yang tidak tumpang tindih dari peta fitur (lihat Gambar 5).

Animasi penggabungan maksimum di atas peta fitur 4x4 dengan filter 2x2 dan langkah 2

Gambar 5. Kiri: Maksimal penggabungan yang dilakukan melalui peta fitur 4x4 dengan filter 2x2 dan langkah 2. Kanan: output operasi penggabungan maks. Perhatikan bahwa peta fitur yang dihasilkan sekarang adalah 2x2, dan hanya mempertahankan nilai maksimum dari setiap ubin.

Lapisan yang Terhubung Sepenuhnya

Di bagian akhir jaringan neural konvolusional adalah satu atau beberapa lapisan yang saling terhubung sepenuhnya (saat dua lapisan "terhubung sepenuhnya," setiap node di lapisan pertama terhubung ke setiap node di lapisan kedua). Tugas mereka adalah melakukan klasifikasi berdasarkan fitur yang diekstrak oleh konvolusi. Biasanya, lapisan akhir yang terhubung sepenuhnya berisi fungsi aktivasi softmax, yang menghasilkan nilai probabilitas dari 0 hingga 1 untuk setiap label klasifikasi yang coba diprediksi oleh model.

Gambar 6 mengilustrasikan struktur menyeluruh dari jaringan neural konvolusional.

Diagram end-to-end dari jaringan neural konvolusi, menunjukkan input,
dua modul konvolusi, dan dua lapisan yang terhubung sepenuhnya untuk klasifikasi

Gambar 6. CNN yang ditampilkan di sini berisi dua modul konvolusi (konvolusi + ReLU + penggabungan) untuk ekstraksi fitur, dan dua lapisan yang sepenuhnya terhubung untuk klasifikasi. CNN lainnya mungkin berisi modul modul konvolusi dalam jumlah yang lebih besar atau lebih kecil, dan lapisan yang sepenuhnya terhubung atau lebih kecil. Teknisi sering bereksperimen untuk mengetahui konfigurasi yang memberikan hasil terbaik untuk model mereka.