{% extends "layouts/admin_base.html" %} {% block title %} Dataset ANN - Inventori ANN {% endblock %} {% block page_title %} Dataset ANN {% endblock %} {% block content %}

Dataset Artificial Neural Network

Dataset input ANN Prediksi Barang Keluar yang digunakan pada proses training dan testing.

Dataset telah disinkronkan dengan model ANN. Data harian dibentuk dari histori Barang Masuk dan Barang Keluar untuk merekonstruksi stok. ANN menggunakan 7 fitur histori Barang Keluar, sedangkan target (Y) adalah Barang Keluar pada tanggal target.
Record ANN
{{ jumlah_record }}
Record setelah pembentukan lag 7 hari
Data Training
{{ jumlah_training }}
Bagian awal data secara kronologis
Data Testing
{{ jumlah_testing }}
Bagian akhir data secara kronologis
Barang dalam Dataset
{{ jumlah_barang_dataset }}
Berdasarkan filter yang aktif
Informasi Metodologi ANN
Periode Histori
{% if tanggal_data_awal and tanggal_data_akhir %} {{ tanggal_data_awal.strftime('%d/%m/%Y') }} s.d. {{ tanggal_data_akhir.strftime('%d/%m/%Y') }} {% else %} Belum tersedia {% endif %}
Pembagian Data
80% Training : 20% Testing
Split kronologis, bukan random.
Arsitektur ANN
7 Input → 32 → 16 → 1 Output
ReLU · Adam · StandardScaler
Filter Dataset
Reset
Dataset Input dan Target ANN
{{ dataset|length }} record sesuai filter.
Export Dataset Excel
{% if dataset %} {% for item in dataset %} {% endfor %} {% else %} {% endif %}
No Tanggal Target Kode Nama Barang Stok Awal Masuk Keluar Stok Akhir X1
Lag-1
X2
Lag-2
X3
Lag-3
X4
Lag-7
X5
Rata 3
X6
Rata 7
X7
Hari
Y
Target Keluar
Data
{{ loop.index }} {{ item.tanggal.strftime('%d/%m/%Y') }} {{ item.kode_barang }} {{ item.nama_barang }} {{ item.stok_awal }} {{ item.barang_masuk }} {{ item.barang_keluar }} {{ item.stok_akhir }} {{ item.keluar_lag_1 }} {{ item.keluar_lag_2 }} {{ item.keluar_lag_3 }} {{ item.keluar_lag_7 }} {{ "%.2f"|format(item.rata_keluar_3_hari) }} {{ "%.2f"|format(item.rata_keluar_7_hari) }} {{ item.hari_index }}
{{ item.hari_nama }}
{{ item.target_barang_keluar }} {{ item.satuan_kecil }} {% if item.jenis_data == "Training" %} Training {% else %} Testing {% endif %}
Tidak ada dataset ANN sesuai filter.
{% if contoh_perhitungan %}
Contoh Perhitungan ANN untuk BAB III
Contoh satu record yang dibentuk dengan metode yang sama seperti proses training sistem.
{{ contoh_perhitungan.kode_barang }} - {{ contoh_perhitungan.nama_barang }} · Tanggal target {{ contoh_perhitungan.tanggal.strftime('%d/%m/%Y') }} · Data {{ contoh_perhitungan.jenis_data }}
1. Nilai Input (X) dan Target (Y)
{% for fitur in contoh_perhitungan.fitur %} {% endfor %}
Variabel Keterangan Nilai
{{ fitur.kode }} {{ fitur.nama }} {{ fitur.nilai }}
Y Target Barang Keluar {{ contoh_perhitungan.target_barang_keluar }} {{ contoh_perhitungan.satuan_kecil }}
Rumus StandardScaler: z = (x - mean) / standar deviasi
{% if contoh_perhitungan.model_tersedia %}
2. Normalisasi Input Menggunakan StandardScaler
{% for fitur in contoh_perhitungan.fitur_normalisasi %} {% endfor %}
Variabel Nilai Asli Mean Training Std Training Nilai Normalisasi
{{ fitur.kode }} {{ "%.4f"|format(fitur.nilai_asli) }} {{ "%.4f"|format(fitur.mean) }} {{ "%.4f"|format(fitur.std) }} {{ "%.6f"|format(fitur.nilai_normalisasi) }}
3. Arsitektur Jaringan
7 Input → Hidden Layer 1 (32 neuron) → Hidden Layer 2 (16 neuron) → 1 Output. Aktivasi hidden layer menggunakan ReLU dan proses optimasi menggunakan Adam.
Target Aktual (Y)
{{ contoh_perhitungan.target_barang_keluar }} {{ contoh_perhitungan.satuan_kecil }}
Output Prediksi Model
{{ "%.4f"|format(contoh_perhitungan.prediksi_model) }} {{ contoh_perhitungan.satuan_kecil }}
{% if contoh_perhitungan.hidden1_neuron1 %}
Detail Forward Propagation untuk Perhitungan Manual BAB III
Angka bobot, bias, hasil normalisasi, dan output di bawah diambil langsung dari model ANN hasil training. Rumus dasar setiap neuron adalah Z = Σ(input × bobot) + bias, kemudian hidden layer menggunakan ReLU = max(0, Z).
4. Hidden Layer 1 — Contoh Neuron H1-1
{% for item in contoh_perhitungan.hidden1_neuron1.kontribusi %} {% endfor %}
Input Nilai Normalisasi Bobot ke H1-1 Input × Bobot
{{ item.kode }} {{ "%.6f"|format(item.input) }} {{ "%.6f"|format(item.bobot) }} {{ "%.6f"|format(item.hasil_kali) }}
Bias H1-1 = {{ "%.6f"|format(contoh_perhitungan.hidden1_neuron1.bias) }}
Z H1-1 = Σ(Input × Bobot) + Bias = {{ "%.6f"|format(contoh_perhitungan.hidden1_neuron1.z) }}
ReLU(Z) = {{ "%.6f"|format(contoh_perhitungan.hidden1_neuron1.aktivasi) }}
Lihat ringkasan seluruh 32 neuron Hidden Layer 1
{% for item in contoh_perhitungan.hidden1_ringkas %} {% endfor %}
NeuronZReLU(Z)
H1-{{ item.neuron }}{{ "%.6f"|format(item.z) }}{{ "%.6f"|format(item.aktivasi) }}
5. Hidden Layer 2 — Contoh Neuron H2-1

H2-1 menerima 32 nilai aktivasi dari Hidden Layer 1. Tabel rinci dapat dibuka untuk melihat substitusi lengkap.

Lihat 32 kontribusi H1 → H2-1
{% for item in contoh_perhitungan.hidden2_neuron1.kontribusi %} {% endfor %}
InputAktivasi H1BobotHasil Kali
{{ item.kode }}{{ "%.6f"|format(item.input) }}{{ "%.6f"|format(item.bobot) }}{{ "%.6f"|format(item.hasil_kali) }}
Bias H2-1 = {{ "%.6f"|format(contoh_perhitungan.hidden2_neuron1.bias) }}
Z H2-1 = {{ "%.6f"|format(contoh_perhitungan.hidden2_neuron1.z) }}
ReLU(Z) = {{ "%.6f"|format(contoh_perhitungan.hidden2_neuron1.aktivasi) }}
Lihat ringkasan seluruh 16 neuron Hidden Layer 2
{% for item in contoh_perhitungan.hidden2_ringkas %} {% endfor %}
NeuronZReLU(Z)
H2-{{ item.neuron }}{{ "%.6f"|format(item.z) }}{{ "%.6f"|format(item.aktivasi) }}
6. Perhitungan Output ANN
{% for item in contoh_perhitungan.output_manual.kontribusi %} {% endfor %}
Input OutputAktivasi H2Bobot OutputHasil Kali
{{ item.kode }}{{ "%.6f"|format(item.input) }}{{ "%.6f"|format(item.bobot) }}{{ "%.6f"|format(item.hasil_kali) }}
Bias output = {{ "%.6f"|format(contoh_perhitungan.output_manual.bias) }}
Output normalisasi = Σ(H2 × Bobot) + Bias = {{ "%.6f"|format(contoh_perhitungan.output_manual.output_scaled) }}
Denormalisasi Y = (Output × Std Y) + Mean Y
= ({{ "%.6f"|format(contoh_perhitungan.output_manual.output_scaled) }} × {{ "%.6f"|format(contoh_perhitungan.output_manual.std_y) }}) + {{ "%.6f"|format(contoh_perhitungan.output_manual.mean_y) }}
= {{ "%.4f"|format(contoh_perhitungan.output_manual.output_asli) }} {{ contoh_perhitungan.satuan_kecil }}
7. Perbandingan Hasil Prediksi dengan Target Aktual
Target Aktual (Y)
{{ contoh_perhitungan.target_barang_keluar }} {{ contoh_perhitungan.satuan_kecil }}
Prediksi ANN
{{ "%.4f"|format(contoh_perhitungan.output_manual.output_asli) }} {{ contoh_perhitungan.satuan_kecil }}
Absolute Error |Y - Ŷ|
{{ "%.4f"|format(contoh_perhitungan.error_absolut) }} {{ contoh_perhitungan.satuan_kecil }}
Kesimpulan contoh: proses di atas menunjukkan alur satu record dari normalisasi X1–X7, forward propagation pada dua hidden layer, output terstandardisasi, denormalisasi, hingga perbandingan prediksi dengan target aktual. Nilai ini dapat dijadikan contoh perhitungan implementasi ANN pada BAB III.
{% endif %} {% else %}
Model ANN belum tersedia atau belum dapat dibaca. Lakukan Training ANN agar nilai mean, standar deviasi, hasil normalisasi, dan output model dapat ditampilkan.
{% endif %}
{% endif %}
Catatan metodologi: Barang Masuk dan stok historis digunakan untuk membentuk kondisi persediaan yang konsisten. Namun target ANN pada implementasi ini adalah Barang Keluar. Prediksi stok masa depan kemudian dihitung dari stok aktual dikurangi akumulasi prediksi Barang Keluar, tanpa mengasumsikan restock yang belum tercatat.
{% endblock %}