Bagikan :
clip icon

Mengupas Deep Learning: Building Neural Networks from Scratch untuk Pemula hingga Mahir

AI Morfo
foto : Morfogenesis Teknologi Indonesia Creative Team
Deep Learning telah menjadi kata kunci di era transformasi digital, tetapi bagaimana jika kita ingin membangun jaringan sarasan (neural networks) dari nol tanpa bantuan pustaka tingkat tinggi? Proses ini memungkinkan praktisi untuk memahami secara terperinci bagaimana data mengalir, bagaimana bobot diperbarui, serta bagaimana fungsi aktivasi memengaruhi prediksi. Dengan pendekatan build from scratch, kita bukan hanya menjadi pengguna alat, melainkan juga arsitek teknologi.


Landasan pertama adalah konfigurasi dasar neural network. Struktur terdiri atas input layer, hidden layer, dan output layer. Input layer menerima data mentah, misalnya nilai piksel gambar atau fitur tabular. Hidden layer berfungsi sebagai ruang transformasi dimana pola tersembunyi diekstrak. Terakhir, output layer menghasilkan keputusan akhir, seperti probabilitas kelas pada klasifikasi. Menentukan jumlah neuron di setiap lapisan sangat penting karena terlalu sedikit menimbulkan under-fitting, sementara terlalu banyak berisiko over-fitting.


Setelah arsitektur ditentukan, langkah berikutnya adalah inisialisasi parameter. Bobot (weights) dan bias (bias) diatur secara acak menggunakan distribusi tertentu, misalnya Xavier atau He, yang disesuaikan dengan fungsi aktivasi agar perubahan gradien tetap stabil. Inisialisasi yang buruk dapat menyebabkan vanishing atau exploding gradients, membuat model mandek. Di sinilah pemahaman matematika bermanfaat: varansi dari distribusi inisialisasi harus mempertimbangkan jumlah neuron masukan dan keluaran agar sinyal tidak membesar atau mengecil secara eksponensial selama forward propagation.


Proses pembelajaran terdiri dari dua fase utama, yaitu forward propagation dan backward propagation. Pada forward propagation, data mengalir dari input ke output untuk menghasilkan prediksi. Setiap neuron menghitung kombinasi linear dari input, kemudian menerapkan fungsi aktivasi seperti ReLU, sigmoid, atau tanh. ReLU sangat populer karena menghindari vanishing gradient, namun rentan terhadap dying ReLU. Sigmoid cocok untuk output probabilitas tetapi bisa jenuh di ekor. Setelah prediksi dihasilkan, loss function membandingkannya dengan label aktual. Kategori tugas memilih loss yang tepat: CrossEntropy untuk multi-class, Binary CrossEntopy untuk biner, MSE untuk regresi.


Mengurangi loss membutuhkan optimasi parameter melalui backward propagation. Algoritma kunci di sini adalah chain rule dari kalkulus multivariabel. Gradien loss terhadap setiap parameter dihitung dengan cara melakukan perkalian parsial dari layer output hingga input. Setelah gradien diperoleh, parameter diperbarui menggunakan metode optimasi seperti Stochastic Gradient Descent atau variantnya (Momentum, Adam, RMSProp). Misalnya, dengan learning rate 0,01 dan momentum 0,9, perubahan bobot tidak hanya tergantung gradien saat ini tapi juga gradien sebelumnya, mempercepat konvergensi di area berlereng landai.


Menyusun semua elemen menjadi kode dari scratch membutralkan pemahaman. Contoh sederhana adalah klasifikasi dataset iris menggunakan Python plain. Pertama, buat fungsi inisialisasi weight dengan np.random.randn. Kedua, definisikan activations seperti ReLU dan softmax. Ketiga, implementasikan forward pass untuk menghitung output. Keempat, buat fungsi compute_loss. Kelima, implementasikan backprop untuk menghitung gradient. Keenam, lakukan iterasi training dan cetak loss tiap epoch. Pada eksperimen, dengan 1 hidden layer berisi 10 neuron, learning rate 0,1, dan 1000 epoch, bisa diperoleh akurasi sekitar 95% pada data uji. Tantangannya adalah membalikkan rumus turunan secara manual karena kesalahan kecil bisa menyebabkan prediksi meleset drastis.


Langkah lanjutan adalah menambah kompleksitas seperti regularisasi dan batch normalization. L2 regularization dengan lambda 0,001 menambah penalti pada bobot besar, mencegah overfitting. Dropout dengan tingkat 0,5 secara acak menonaktifkan neuron, memaksa model membangun representasi redundan. Batch normalization menormalkan output tiap lapisan sebelum aktivasi, meredam internal covariate shift sehingga training lebih stabil. Kombinasi teknik ini membuat network lebih tahan terhadap distribusi data yang berubah. Evaluasi menggunakan confusion matrix, precision, recall, dan F1-score memberikan gambaran menyeluruh performa, bukan sekadar akurasi agregat. Morfotech.id menyediakan layanan end-to-end untuk membangun aplikasi berbasis Deep Learning maupun solusi enterprise lainnya diskusikan kebutuhan Anda di WhatsApp +62 811-2288-8001 atau kunjungi https://morfotech.id.
Sumber:
AI Morfotech - Morfogenesis Teknologi Indonesia AI Team
Senin, Oktober 6, 2025 2:04 AM
Logo Mogi