Abstrak
Laporan ini memaparkan penerapan konsep jaringan syaraf tiruan (feedforward dan backpropagation) untuk studi kasus prediksi jumlah panen padi. Disertakan penjabaran langkah perhitungan numerik (tabel forward dan backpropagation), rumus inti, serta informasi lampiran program implementasi.

1. Tujuan
Menjelaskan tahapan feedforward dan backpropagation secara matematis dan numerik pada jaringan sederhana (arsitektur 3-4-1) yang memprediksi hasil panen berdasar tiga fitur input.

2. Arsitektur model dan notasi
- Input x ∈ R^3 = [x1, x2, x3] (mis. curah hujan, suhu, dosis pupuk) — telah dinormalisasi.
- Layer tersembunyi: 4 neuron, aktivasi σ(z)=1/(1+e^{-z}) (sigmoid).
- Output: 1 neuron (linear).
- Bobot/bias:
  - W1 ∈ R^{4×3}, b1 ∈ R^{4}
  - W2 ∈ R^{1×4}, b2 ∈ R
- Fungsi loss: MSE L = 1/2 (y_true − y_pred)^2
- Learning rate: η = 0.1

3. Rumus inti
- Forward:
  - z^{(1)} = W1 x + b1
  - a^{(1)} = σ(z^{(1)})
  - z^{(2)} = W2 a^{(1)} + b2
  - y_pred = z^{(2)} (linear)
- Backpropagation (gradien):
  - δ^{(2)} = y_pred − y_true
  - ∂L/∂W2 = δ^{(2)} (a^{(1)})^T
  - ∂L/∂b2 = δ^{(2)}
  - δ^{(1)} = (W2^T · δ^{(2)}) * σ'(z^{(1)}), where σ'(z)=σ(z)(1−σ(z))
  - ∂L/∂W1 = δ^{(1)} x^T
  - ∂L/∂b1 = δ^{(1)}
- Update bobot:
  - W ← W − η ∂L/∂W
  - b ← b − η ∂L/∂b

4. Contoh numerik (satu sampel)
Set awal dan data contoh:
- x = [0.5, 0.2, 0.1] (normalisasi)
- y_true = 0.6
- Inisialisasi:
  - W1 = [[0.1, -0.2, 0.3],
          [0.4, 0.1, -0.1],
          [-0.3, 0.2, 0.2],
          [0.2, -0.1, 0.05]]
  - b1 = [0,0,0,0]
  - W2 = [0.2, -0.1, 0.05, 0.1]
  - b2 = 0

Langkah numerik (iterasi 1 — forward & backprop; disederhanakan ke 4 desimal):
- Forward (iterasi 1):
  - z^{(1)} ≈ [0.0400, 0.2100, −0.0900, 0.0850]
  - a^{(1)} ≈ [0.5100, 0.5520, 0.4775, 0.5212]
  - y_pred ≈ 0.1228
  - Loss ≈ 0.1139
- Backprop (iterasi 1): dihitung δ dan gradien → pembaruan bobot menghasilkan W2 ≈ [0.2243, −0.0736, 0.0728, 0.1249], b2 ≈ 0.0477; W1 dan b1 juga diperbarui (nilai numerik lengkap di lampiran kode).

TABEL A — Forward propagation (ringkasan iterasi)
| Iterasi | y_pred  | Loss (MSE/2) |
|---------|---------|--------------|
| 1       | 0.1228  | 0.1139       |
| 2       | 0.2215  | 0.0717       |
| 3       | 0.3000  | 0.0450       |

TABEL B — Ringkasan pembaruan bobot W2 dan bias b2 per iterasi
| Iterasi | W2 (4 nilai)                                  | b2     |
|---------|------------------------------------------------|--------|
| 0 (awal)| [0.2000, −0.1000, 0.0500, 0.1000]             | 0.0000 |
| 1       | [0.2243, −0.0736, 0.0728, 0.1249]             | 0.0477 |
| 2       | [0.2437, −0.0528, 0.0909, 0.1446]             | 0.0856 |
| 3       | (lanjutan; konvergen menuju prediksi lebih tinggi) | 0.0856→0.??? |

Catatan: Tabel B menunjukkan arah dan magnitudo pembaruan. Nilai lengkap untuk W1, b1, W2, b2 pada setiap iterasi tersedia dalam implementasi program (lampiran) untuk verifikasi numerik langkah demi langkah.

5. Interpretasi hasil
- Dari contoh numerik, loss menurun dari ≈0.1139 → ≈0.0717 → ≈0.0450 dalam tiga iterasi, menandakan model belajar menurunkan kesalahan.
- Pembaruan bobot menunjukkan kontribusi fitur melalui gradien; bobot W2 meningkat pada komponen yang membantu meningkatkan prediksi mendekati y_true.
- Untuk dataset nyata, diperlukan pembagian data (train/validation), normalisasi fitur, pengaturan hyperparameter (ukuran hidden, η, jumlah epoch), dan regularisasi bila perlu.

6. Evaluasi dan metrik (yang dianjurkan pada laporan akhir)
- RMSE, MAE, MAPE, dan R² untuk menilai performa regresi.
- Visualisasi kurva loss terhadap epoch (konvergensi).
- Analisis residual untuk mendeteksi bias model.

7. Langkah implementasi praktis (ringkas)
- Kumpulkan data historis panen + fitur cuaca & manajemen (minimal 50–200 sampel untuk eksperimen).
- Normalisasi fitur.
- Implementasi model seperti yang dijelaskan; jalankan training dan monitoring loss.
- Validasi menggunakan data terpisah; tuning hyperparameter bila perlu.

Lampiran program
File implementasi lengkap (Python) disertakan sebagai lampiran program: neural_network_implementation.py — berisi kelas jaringan, fungsi forward/backward, loop training, normalisasi data contoh, dan perhitungan metrik evaluasi. Lampiran ini dapat dijalankan untuk mereproduksi angka tabel dan menghasilkan grafik konvergensi.

Lampiran laporan
Format laporan terlampir berisi struktur pengisian (pendahuluan, tinjauan pustaka singkat, metodologi, hasil perhitungan numerik lengkap, diskusi, kesimpulan). Gunakan lampiran program untuk menyalin tabel per-iterasi yang terperinci.

Kesimpulan singkat
Penjabaran matematis dan numerik ini menunjukkan secara jelas bagaimana feedforward menghasilkan prediksi awal, dan bagaimana backpropagation menggunakan aturan rantai untuk menghitung gradien yang dipakai memperbarui bobot sehingga loss menurun. Lampiran program memberikan verifikasi numerik lengkap dan dapat dijalankan untuk menghasilkan tabel lengkap serta grafik konvergensi yang dapat dimasukkan ke dalam laporan akhir.

Lampiran yang diserahkan:
- Program implementasi: neural_network_implementation.py (kode dan cara menjalankan)
- File panduan format laporan dan contoh tabel untuk disalin ke berkas PDF laporan.

(catatan: seluruh perhitungan numerik ringkasan tercantum dalam isi; perhitungan lengkap per-parameter dan script untuk reproduksi tersedia di lampiran program.)