Sebuah foto tidak memberi tahu model mana yang merupakan tepi, tekstur, bentuk, atau objek. Bagi komputer, foto itu mula-mula hanya kumpulan nilai piksel. Deep learning membantu model menemukan pola tersebut secara bertahap dari banyak contoh.
Deep learning merupakan cabang dari machine learning yang memakai neural network dengan banyak layer. Kata "deep" merujuk pada kedalaman jaringan. Semakin banyak layer yang digunakan, semakin panjang pula rangkaian transformasi yang dilalui data sebelum menjadi prediksi.
Neural network sebagai fondasinya
Neural network tersusun dari unit perhitungan yang biasa disebut neuron. Setiap neuron menerima input, mengalikannya dengan bobot, menambahkan bias, lalu meneruskan hasilnya ke fungsi aktivasi. Output dari satu layer menjadi input untuk layer berikutnya.
z = Wx + ba = activation(z)Bobot W dan bias b adalah parameter yang dipelajari. Fungsi aktivasi membantu jaringan memodelkan hubungan non-linear.Input layer menerima data awal. Hidden layer mengubahnya menjadi representasi baru. Output layer menghasilkan prediksi akhir. Pada klasifikasi gambar, output dapat berupa probabilitas untuk setiap kelas. Pada regresi, output biasanya berupa satu angka.
Bagaimana deep learning belajar?
Training dimulai dengan forward pass. Data masuk ke input layer, melewati setiap layer, kemudian menghasilkan prediksi. Prediksi itu dibandingkan dengan target melalui fungsi loss. Jika jarak antara prediksi dan target masih besar, nilai loss juga besar.
Berikutnya, backpropagation menghitung seberapa besar setiap bobot berkontribusi terhadap kesalahan. Optimizer seperti gradient descent memakai informasi itu untuk mengubah bobot sedikit demi sedikit. Empat langkah ini terus berulang sampai model melihat seluruh data beberapa kali atau disebut beberapa epoch.
Misalnya kita melatih model untuk membedakan foto kucing dan anjing. Pada awal training, bobot masih belum menemukan pola yang berguna sehingga prediksinya sering keliru. Setelah banyak putaran, model dapat memakai kombinasi tekstur, bentuk, dan susunan piksel yang lebih relevan. Ia tetap tidak memahami kucing seperti manusia. Ia hanya belajar hubungan antara pola pada input dan label yang tersedia.
Perbedaan machine learning dan deep learning
Perbedaan paling mudah terlihat dari cara fitur diperoleh. Pada machine learning klasik, kita sering menyiapkan fitur lebih dulu. Untuk mendeteksi spam, misalnya, kita dapat menghitung jumlah tautan, panjang pesan, atau kemunculan kata tertentu. Logistic Regression, SVM, dan Random Forest kemudian belajar dari fitur tersebut.
Deep learning mempelajari fitur sekaligus keputusan dalam satu jaringan. CNN dapat menemukan pola lokal dari piksel, sedangkan Transformer dapat mempelajari hubungan antartoken pada teks. Pendekatan ini berguna ketika data mentah memiliki struktur yang sulit diringkas menjadi beberapa kolom.
| Aspek | Machine learning klasik | Deep learning |
|---|---|---|
| Fitur | Sering dirancang secara manual | Dipelajari bertahap oleh layer |
| Kebutuhan data | Dapat bekerja pada data kecil hingga menengah | Biasanya membutuhkan data lebih banyak |
| Komputasi | Relatif ringan | Training dapat membutuhkan GPU |
| Interpretasi | Sering lebih mudah dijelaskan | Lebih sulit ditelusuri secara langsung |
| Data utama | Tabular dan fitur terstruktur | Citra, audio, teks, video, serta data kompleks |
Tabel ini adalah panduan awal, bukan aturan mutlak. Neural network kecil dapat bekerja pada data tabular, dan metode klasik tetap dapat menangani citra jika fitur yang tepat tersedia. Kita memilih metode berdasarkan bentuk data, jumlah contoh, kebutuhan interpretasi, waktu training, dan sumber daya komputasi.
Arsitektur deep learning yang umum
Multilayer Perceptron atau MLP adalah jaringan feedforward yang cocok untuk memahami konsep dasar seperti bobot, aktivasi, loss, dan backpropagation. Data bergerak dari input menuju output tanpa melewati koneksi berulang. Karena bentuknya sederhana, MLP sering menjadi titik awal untuk membaca proses training.
Convolutional Neural Network atau CNN menggunakan kernel untuk membaca pola lokal. Layer awal dapat merespons tepi atau tekstur. Layer berikutnya menggabungkan pola tersebut menjadi bentuk yang lebih kompleks. CNN banyak digunakan untuk klasifikasi, deteksi, dan segmentasi citra.
Transformer menggunakan attention untuk menimbang bagian input yang paling berkaitan dengan konteks. Arsitektur ini banyak dipakai pada model bahasa, tetapi juga dapat digunakan pada citra, audio, dan data multimodal.
Contoh penggunaan deep learning
Pada citra medis, model dapat mengklasifikasikan gambar atau menandai area yang perlu ditinjau. Pada gambar mikroskop, object detection dapat menghitung sel dan menampilkan posisi setiap objek. Pada video kendaraan, model dapat mendeteksi marka jalan, kendaraan lain, dan pejalan kaki.
Pada bahasa, deep learning digunakan untuk penerjemahan, rangkuman, pencarian semantik, dan model generatif. Pada audio, model dapat mengenali ucapan atau menemukan pola suara mesin. Hasilnya tetap perlu dibaca bersama konteks dan kualitas data. Kesalahan pada aplikasi kesehatan, keselamatan, atau keputusan penting tidak boleh disembunyikan di balik angka akurasi.
Kapan deep learning layak digunakan?
Deep learning layak dipertimbangkan ketika data berjumlah cukup, polanya kompleks, dan fitur sulit dirancang secara manual. Citra, teks, audio, dan video termasuk contoh yang umum. Model pretrained juga memungkinkan kita memakai representasi yang sudah dipelajari tanpa memulai training dari nol.
Model yang lebih besar bukan otomatis lebih baik. Untuk dataset tabular yang kecil, Logistic Regression atau Random Forest sering lebih cepat, lebih mudah dijelaskan, dan sudah cukup untuk kebutuhan project. Deep learning juga membawa biaya tambahan dalam bentuk komputasi, pengujian, pemantauan, dan waktu untuk memahami kegagalannya.
Mulai dari baseline sederhana. Tambahkan kompleksitas setelah kita tahu bagian mana yang belum mampu ditangani oleh baseline.
Mencoba konsepnya secara visual
Neural network lebih mudah dipahami ketika perubahan bobot dan decision surface dapat dilihat langsung. Mulailah dari lab ANN untuk mengikuti proses training. Setelah itu buka lab CNN dan lihat bagaimana kernel menghasilkan feature map. Terakhir, gunakan lab Transformer untuk membaca attention pada sebuah kalimat.
Urutan ini membantu kita membaca deep learning sebagai rangkaian operasi. Input berubah menjadi representasi, model membuat prediksi, loss mengukur kesalahan, lalu optimizer memperbarui parameter. Kita tidak perlu menghafal semua arsitektur sebelum memahami alur tersebut.
Lihat bobot neural network berubah saat training
Atur hidden layer, jalankan training, lalu ikuti aktivasi, loss, dan decision surface secara langsung.
Buka Lab ANN →