Konsep Jaringan Saraf Tiruan (JST)
Peta lengkap konsep dalam Neural Network — dari dasar hingga arsitektur mutakhir
Alur Lengkap Convolutional Neural Network
Klik setiap tahap untuk melihat detail proses, tujuan, dan rumus matematikanya
Konvolusi (Convolution)
Proses: Sebuah Filter (Kernel) berukuran kecil (misalnya 3×3) bergeser di atas gambar input. Di setiap posisi, dilakukan perkalian elemen demi elemen antara filter dan area input, lalu hasilnya dijumlahkan menjadi satu nilai pada Feature Map.
Tujuan: Mengekstrak fitur lokal dari gambar seperti sudut, garis horizontal, garis vertikal, dan pola tekstur. Setiap filter belajar mendeteksi satu jenis pola.
Aktivasi ReLU (Rectified Linear Unit)
Proses: Setelah konvolusi menghasilkan Feature Map, setiap nilai pada Feature Map dilewatkan melalui fungsi ReLU. Semua nilai negatif diubah menjadi nol, sedangkan nilai positif tetap tidak berubah.
Tujuan: Menambahkan sifat non-linear pada jaringan agar bisa mempelajari pola yang lebih kompleks. Tanpa fungsi aktivasi, seluruh jaringan hanya akan bertindak seperti transformasi linear sederhana.
Pooling (Subsampling)
Proses: Sebuah jendela (misalnya 2×2) bergeser di atas Feature Map. Di setiap posisi, diambil nilai representatif dari area tersebut. Pada Max Pooling, diambil nilai terbesar. Pada Average Pooling, diambil nilai rata-rata.
Tujuan: Mengurangi dimensi spasial Feature Map sehingga beban komputasi berkurang drastis, mempercepat proses pelatihan, dan membuat model lebih tahan terhadap pergeseran posisi objek (translational invariance).
Flattening (Reshape 2D → 1D)
Proses: Seluruh nilai pada matriks 2D hasil pooling "diluruskan" menjadi satu vektor panjang satu dimensi (1D). Ini dilakukan dengan membaca nilai baris demi baris dari matriks tersebut.
Tujuan: Menyiapkan data agar bisa masuk ke Fully Connected Layer (Dense Layer). FC Layer hanya menerima input berupa vektor 1D, sehingga representasi spasial 2D harus diubah terlebih dahulu.
Fully Connected Layer (Dense Layer)
Proses: Vektor 1D hasil flattening dihubungkan ke setiap neuron pada lapisan berikutnya. Setiap koneksi memiliki bobot (weight) yang dapat dipelajari. Neuron menghitung jumlah berbobot dari semua input, lalu menerapkan fungsi aktivasi.
Tujuan: Melakukan klasifikasi akhir dengan menggabungkan semua fitur yang telah diekstrak oleh lapisan konvolusi dan pooling sebelumnya. Di sinilah jaringan "memutuskan" kategori dari input (misalnya: "ini adalah angka 7" atau "ini adalah kucing").
Softmax / Output Layer (Probabilitas)
Proses: Nilai-nilai mentah (logits) dari lapisan terakhir dimasukkan ke fungsi Softmax. Fungsi ini mengubah logits menjadi distribusi probabilitas: semua nilai menjadi positif dan jumlah totalnya selalu sama dengan 1 (100%).
Tujuan: Memberikan jawaban akhir model dalam bentuk probabilitas yang dapat diinterpretasikan. Model memilih kelas dengan probabilitas tertinggi sebagai prediksi akhir (misalnya: 92% yakin ini adalah kucing).
Dasar Neural Network
▾Neuron (Perceptron)
Unit komputasi dasar yang menerima input, mengalikan dengan bobot (weight), menjumlahkan, menambahkan bias, lalu menerapkan fungsi aktivasi.
Bobot & Bias (Weight & Bias)
Parameter yang dipelajari jaringan. Bobot mengatur kepentingan setiap input, bias menggeser fungsi aktivasi. Diperbarui selama pelatihan.
Layer (Lapisan)
Kumpulan neuron yang beroperasi bersama. Terdiri dari: Input Layer (menerima data), Hidden Layer (transformasi), Output Layer (prediksi).
Forward Propagation
Proses data mengalir dari input ke output melalui semua lapisan. Setiap layer menghitung aktivasi berdasarkan input dari layer sebelumnya.
Backpropagation
Algoritma utama pelatihan. Menghitung gradien loss terhadap setiap parameter menggunakan aturan rantai (chain rule), lalu memperbarui bobot.
Fungsi Aktivasi
Menambahkan non-linearitas agar jaringan dapat mempelajari pola kompleks. Tanpa aktivasi, jaringan hanya linier.
Fungsi Aktivasi Detail
▾Convolutional Neural Network (CNN)
▾Convolution Layer
Inti CNN. Filter (kernel) bergeser di atas input, melakukan perkalian elemen dan penjumlahan untuk mengekstrak fitur lokal seperti tepi, tekstur, dan pola.
Pooling Layer
Mengurangi dimensi spasial. Max Pooling mengambil nilai maksimum dalam region. Average Pooling mengambil rata-rata. Menambah translational invariance.
Padding
Menambahkan piksel nol di sekitar input. Valid = tanpa padding. Same = output sama besar dengan input. Mempertahankan informasi tepi.
Stride
Langkah geser filter. Stride=1: geser satu piksel. Stride=2: geser dua piksel (output lebih kecil). Mengontrol resolusi output.
Feature Map
Output dari convolution layer. Setiap filter menghasilkan satu feature map yang mendeteksi pola tertentu di seluruh input.
Flatten & FC Layer
Feature map di-flatten menjadi vektor 1D, lalu diteruskan ke Fully Connected Layer untuk klasifikasi akhir.
Batch Normalization
Menormalisasi aktivasi pada setiap mini-batch. Mempercepat pelatihan, mengurangi sensitivitas terhadap inisialisasi bobot, berfungsi sebagai regularizer.
Depthwise Separable Conv
Memisahkan konvolusi spasial per channel (depthwise) dan antar channel (pointwise). Lebih efisien secara komputasi. Dipakai di MobileNet.
Loss Function & Optimizer
▾Loss Function
Mengukur seberapa jauh prediksi dari target. Jaringan belajar dengan meminimalkan loss ini.
Gradient Descent
Algoritma optimasi paling dasar. Memperbarui bobot berlawanan arah gradien loss.
Adam Optimizer
Menggabungkan Momentum dan RMSProp. Menggunakan estimasi momen pertama dan kedua dari gradien. Sangat populer di praktik.
Learning Rate
Seberapa besar langkah pembaruan bobot. Terlalu besar → tidak konvergen. Terlalu kecil → lambat. Dikelola dengan LR Scheduler.
Regularisasi
Mencegah overfitting. L1 mendorong sparsity. L2 (Weight Decay) menghukum bobot besar. Dropout mematikan neuron secara acak.
Dropout
Selama pelatihan, secara acak mematikan neuron dengan probabilitas p. Memaksa jaringan tidak bergantung pada neuron tertentu. Efek ensemble learning.
RNN, LSTM & GRU
▾Recurrent Neural Network (RNN)
Jaringan dengan loop internal. Memproses data sekuensial dengan meneruskan hidden state ke langkah berikutnya. Cocok untuk teks, audio, time series.
LSTM (Long Short-Term Memory)
Mengatasi vanishing gradient RNN dengan menggunakan cell state dan tiga gate: Forget Gate, Input Gate, Output Gate.
GRU (Gated Recurrent Unit)
Versi LSTM yang lebih sederhana. Hanya dua gate: Reset Gate dan Update Gate. Lebih efisien, performa serupa LSTM di banyak tugas.
Bidirectional RNN
Memproses sekuens dari dua arah (kiri-kanan dan kanan-kiri), menggabungkan konteks masa lalu dan masa depan. Dipakai di NLP.
Transformer & Arsitektur Modern
▾Attention Mechanism
Memungkinkan model fokus pada bagian input yang relevan. Menghitung skor relevansi antara query, key, dan value.
Multi-Head Attention
Menjalankan attention beberapa kali secara paralel (head) dengan dimensi berbeda, menangkap berbagai aspek relasi dalam data.
Transformer
Arsitektur revolusioner (2017) berbasis sepenuhnya pada attention. Tidak ada recurrence. Encoder-Decoder architecture. Dasar GPT, BERT, T5, dll.
Vision Transformer (ViT)
Menerapkan Transformer pada gambar. Gambar dibagi menjadi patch kecil, di-flatten, dan diperlakukan seperti token teks.
Residual Network (ResNet)
Menggunakan skip connection untuk meneruskan input langsung melewati beberapa layer. Memungkinkan pelatihan jaringan sangat dalam (100+ layer).
Generative Adversarial Network (GAN)
Dua jaringan bersaing: Generator membuat data palsu, Discriminator membedakan asli vs palsu. Menghasilkan gambar/data realistis.
Transfer Learning & Teknik Praktis
▾Transfer Learning
Menggunakan model yang sudah dilatih di dataset besar (misal ImageNet) sebagai titik awal. Menghemat waktu dan data pelatihan drastis.
Data Augmentation
Memperbesar dataset dengan transformasi: rotasi, flip, crop, perubahan brightness, dll. Meningkatkan generalisasi dan mengurangi overfitting.
Hyperparameter Tuning
Proses mencari nilai optimal untuk learning rate, batch size, jumlah layer, ukuran filter, dll. Metode: Grid Search, Random Search, Bayesian Optimization.
Early Stopping
Menghentikan pelatihan ketika performa di validation set tidak meningkat lagi. Mencegah overfitting tanpa perlu menentukan jumlah epoch secara manual.
Ensemble Learning
Menggabungkan prediksi beberapa model. Bagging (data berbeda), Boosting (fokus error), Stacking (meta-learner). Meningkatkan akurasi.
Embedding
Representasi data dalam ruang vektor berdimensi rendah yang bermakna. Word Embedding (Word2Vec), Image Embedding, Graph Embedding. Menangkap relasi semantik.
Fitur Interaktif Segera Hadir
Kalkulator interaktif untuk RNN, LSTM, Backpropagation visual, dan Perceptron sedang dalam pengembangan.