Siamese Neural Network
Neural Network (Jaringan syaraf tiruan) beberapa tahun belakangan, telah muncul sebagai salah satu arsitektur AI yang paling revolusioner. Terinspirasi dari struktur dan fungsi otak manusia, neural network adalah model komputasi yang dirancang untuk mengenali pola dalam data yang kompleks. Secara fundamental, neural network terdiri dari lapisan-lapisan neuron (node) yang saling terhubung, di mana setiap koneksi memiliki "bobot" yang dapat disesuaikan selama proses pelatihan. Informasi masuk melalui lapisan input, diproses melalui satu atau lebih lapisan tersembunyi, dan menghasilkan output pada lapisan terakhir. Kemampuan neural network untuk "belajar" dari data, mengidentifikasi hubungan non-linear, dan membuat prediksi atau klasifikasi dengan akurasi tinggi telah menjadikannya poin penting bagi berbagai aplikasi mutakhir, mulai dari pengenalan gambar dan suara, pemrosesan bahasa alami, hingga sistem rekomendasi dan kendaraan otonom. Keberhasilan ini tidak terlepas dari evolusi algoritma pembelajaran, peningkatan daya komputasi, dan ketersediaan dataset yang masif.
Meskipun neural network konvensional unggul dalam tugas klasifikasi dan regresi dengan jumlah data yang cukup, tantangan muncul ketika berhadapan dengan permasalahan data yang tersedia terbatas untuk setiap kelas, atau ketika tugas melibatkan perbandingan dan pemahaman kesamaan antar-sampel. Siamese Neural Network menawarkan solusi yang elegan dan efektif. Berbeda dengan arsitektur tradisional yang fokus pada klasifikasi absolut, Siamese Neural Network dirancang khusus untuk mengukur kesamaan (similarity) atau "jarak" antara dua input. Arsitektur ini terdiri dari dua atau lebih sub jaringan identik yang berbagi bobot yang sama, sehingga setiap input diproses dengan transformasi yang setara. Output dari masing-masing sub jaringan kemudian digunakan untuk menghitung metrik kesamaan, yang memungkinkan model untuk mempelajari representasi yang diskriminatif dan membandingkan pasangan data secara efektif. Dengan kemampuannya untuk melakukan one shot learning atau few shot learning yaitu, belajar dari sangat sedikit contoh Siamese Neural Network telah menjadi alat yang sangat berharga dalam aplikasi seperti verifikasi tanda tangan, pengenalan wajah, pencarian gambar berdasarkan kemiripan, dan banyak lagi, membuka peluang baru dalam domain di mana data berlabel sulit diperoleh atau ketika hubungan relatif antar-sampel lebih penting daripada klasifikasi tunggal.
Pembelajaran kesamaan (similarity learning) adalah sebuah teknik dalam pembelajaran mesin terbimbing (supervised machine learning) yang bertujuan untuk melatih model agar dapat mempelajari sebuah fungsi kesamaan. Fungsi ini bertugas mengukur seberapa mirip dua objek dan mengembalikan nilai kesamaan. Nilai tinggi akan dihasilkan ketika objek-obnjek tersebut serupa, sementara nilai rendah akan diberikan saat gambar atau objek-objek tersebut berbeda. Sekarang, mari kita bahas beberapa kasus penggunaan di mana pembelajaran kesamaan, seperti klasifikasi one-shot yang memanfaatkan jaringan Siamese, diterapkan.
Asumsikan kita ingin membangun sebuah sistem presensi untuk organisasi berskala kecil dengan hanya 20 karyawan (jumlah yang sedikit ini bertujuan untuk menyederhanakan penjelasan), di mana sistem tersebut harus mampu mengenali wajah setiap karyawan.
Masalah pertama yang muncul adalah terkait dengan data pelatihan gambar. Kita memerlukan banyak gambar yang berbeda dari setiap karyawan dalam organisasi untuk melatih model secara tradisional. Ketika ada karyawan baru bergabung atau karyawan lama meninggalkan organisasi, kita perlu melalui proses yang merepotkan lagi untuk mengumpulkan data dan melatih ulang seluruh model. Hal ini tentu tidak efisien untuk sistem yang bersifat skalabel, terutama bagi organisasi besar di mana penerimaan karyawan baru dan pengunduran diri sering terjadi.
Solusi yang bisa digunakan untuk mengatasi masalah ini adalah dengan menggunakan Siamese Network, yaitu sejenis jaringan kecerdasan buatan yang cocok untuk kebutuhan sistem yang harus bisa digunakan dalam skala besar. Berbeda dengan model tradisional yang harus memilih satu dari 20 orang dalam organisasi, metode ini cukup membandingkan dua gambar secara langsung. Sistem akan menerima satu gambar orang yang ingin dikenali dan satu gambar pembanding, lalu menghitung seberapa mirip kedua gambar itu. Jika tingkat kemiripannya tinggi, berarti kemungkinan besar itu adalah orang yang sama. Skor kesamaan ini berada di antara 0 dan 1, yang dihasilkan menggunakan fungsi sigmoid. Di mana skor kesamaan 0 menunjukkan tidak ada kesamaan sama sekali, dan skor kesamaan 1 menunjukkan kesamaan penuh. Setiap angka di antara 0 dan 1 diinterpretasikan sesuai dengan tingkat kesamaannya.
Berbeda dengan sistem kecerdasan buatan tradisional yang membutuhkan banyak contoh data dari setiap orang atau kategori, jaringan Siamese tidak memerlukan data sebanyak itu. Bahkan, hanya dengan beberapa contoh saja, sistem ini sudah bisa belajar dengan baik.
Keunggulan terbesar dari jaringan Siamese terlihat jelas dalam aplikasi seperti sistem absensi wajah. Misalnya, jika ada karyawan baru yang harus dikenali sistem, kita cukup memberikan satu foto wajahnya saja. Foto ini digunakan sebagai acuan. Ketika ada gambar baru yang masuk, sistem akan membandingkannya dengan foto acuan tadi dan menghitung seberapa mirip keduanya. Jika mirip, maka sistem menganggap itu adalah orang yang sama.
Karena hanya butuh satu contoh untuk bisa mengenali seseorang, metode ini disebut sebagai one-shot learning atau pembelajaran satu kali.
