Spaces:
Configuration error
Download README.md from TA-Bundle-Reranking-Faiz/README: direct link, hf CLI and curl.
- Browser
- Download file 16.5 kB
-
https://huggingface.co/spaces/TA-Bundle-Reranking-Faiz/README/resolve/main/README.md
- Command line
-
hf download hf://spaces/TA-Bundle-Reranking-Faiz/README/README.md
-
curl -L -o README.md https://huggingface.co/spaces/TA-Bundle-Reranking-Faiz/README/resolve/main/README.md
language:
- id
- en
tags:
- recommender-system
- bundle-recommendation
- popularity-bias
- long-tail-exposure
- controlled-reranking
- collaborative-filtering
- co-occurrence-graph
title: Analisis Eksperimen TA
Pemerataan Eksposur Produk Long-Tail pada Sistem Rekomendasi Bundle melalui Simplified Two-Stage Recommendation dan Controlled Reranking Layer
Repositori ini memuat implementasi penuh, catatan log eksekusi (logs/), pengujian unit otomatis (tests/), serta artefak hasil evaluasi (data/processed/) untuk penelitian Tugas Akhir mengenai Sistem Rekomendasi Paket (Bundle Recommendation) Dua Tahap yang Disederhanakan (Simplified Two-Stage Recommendation) dengan Lapisan Pengurutan Ulang Terkontrol (Controlled Reranking Layer).
Eksperimen dilakukan secara komprehensif pada dua dataset rilis Amazon Review Data (2018) yang memiliki karakteristik skala, kepadatan relasi graf (also_buy dan also_view), serta tingkat ketimpangan popularitas (popularity bias) yang kontras:
- Amazon
2018_Toys_and_Games(Skala Menengah – Katalog Spesifik/Ceruk dengan Distribusi Relasi Graf Merata) - Amazon
2018_Movies_and_TV(Skala Masif – Katalog Blockbuster dengan Dominasi Bias Popularitas Ekstrem)
1. Analisis Eksperimen 1: Dataset 2018_Toys_and_Games
1.1. Karakteristik Data, Sparsity, dan Distribusi Popularitas Awal (Hari 1)
- Penyaringan Skala Menengah: Dari 8.201.231 baris interaksi mentah dan 633.883 metadata produk, proses deduplikasi dan Iterative K-Core Filtering menghasilkan 1.025 pengguna aktif ($|U|$), 3.399 produk ($|I|$), dan 48.318 interaksi bersih (rata-rata $47,14$ transaksi per pengguna).
- Kekayaan Relasi Graf & Kategori Asli: Terdapat 287 kategori unik (yang membentuk 3.434 unit kategori/ceruk evaluasi pada matriks evaluasi akhir). Setelah pembersihan dangling edges, tersisa 12.531 sisi
also_buydan 3.375 sisialso_viewvalid. - Protokol Masking & Sparsity: Pemisahan 80:20 mengunci 39.040 interaksi latih ($80,80%$) dan menyembunyikan 9.278 interaksi uji/masking ($19,20%$) dengan 0 kebocoran data (Zero Leakage). Matriks latih berukuran $1.025 \times 3.399$ memiliki tingkat Sparsity sebesar 98,8794%.
- Karakteristik Kurva Long-Tail: Berdasarkan pembagian Pareto 20:30:50 pada Train Set (680 HEAD : 1.020 MID : 1.699 TAIL), 20% produk HEAD menguasai 33,70% dari total interaksi (dengan rentang frekuensi $[0, 77]$). Angka $33,70%$ ini menunjukkan bahwa meskipun terdapat bias popularitas, minat pengguna pada domain mainan dan permainan cukup tersebar ke berbagai produk spesifik/ceruk.
1.2. Performa Stage 1 (UBCF) & Stage 2 (Co-occurrence Graph) (Hari 2)
- Stage 1 (Modified UBCF): Rata-rata ambang kepuasan pengguna ($\bar{r}_u$) adalah 4,2153 (rentang $[2.61, 5.00]$). Matriks kemiripan pengguna ($1.025 \times 1.025$) mencatat 303.852 pasangan kemiripan aktif, menghasilkan 3.444.935 prediksi valid dengan Seen-Item Leakage = 0. Rata-rata setiap pengguna memiliki 15,13 item Low-Rated ($L_u$) dan 23,11 item High-Rated ($H_u$) (dengan 52 pengguna ditangani melalui Uniform Rating Fallback).
- Stage 2 (Co-occurrence Graph): Graf berarah memiliki 3.399 simpul dan 27.850 sisi aktif (
buy= 12.531,view= 3.375,reverse= 12.684), dengan rata-rata kemiripan kategori antar-item sebesar 0,3403. - Temuan Skenario 1 (Baseline Top-10): Berkat padatnya jalur graf
also_buy/also_viewyang menghubungkan item Low-Rated langsung menuju item alternatif yang spesifik, model Baseline Two-Stage secara alami telah menghasilkan distribusi eksposur yang cukup seimbang yaitu 22,63% HEAD : 25,02% MID : 52,34% TAIL, dengan Recall@10 = 0.0340, NDCG@10 = 0.0494, dan Category Coverage@10 = 53,93%.
1.3. Hasil Evaluasi Controlled Reranking Layer pada 2018_Toys_and_Games (Hari 3)
Audit Fairness Guardrails pada Langkah 6.1 mengonfirmasi 0 pelanggaran filter histori (Seen-Item Violations = 0) dan 100% ketersediaan opsi kandidat HEAD maupun TAIL (1.025/1.025 pengguna).
Gambar 1. Komparasi Hasil Eksperimen Antar-Skenario pada 2018_Toys_and_Games
Gambar 2. Sensitivitas Grid Search $(\alpha, \beta)$ Skenario 3 pada 2018_Toys_and_Games
Temuan Kunci pada 2018_Toys_and_Games:
- Keunggulan Kualitas Posisi pada Skenario 2 (Top-k Balancing): Penempatan 30% kuota Head di posisi atas, 40% prediksi personalisasi di tengah, dan 30% Tail di akhir berhasil meraih NDCG@10 tertinggi (0.0497) sekaligus menaikkan Long-Tail Exposure@10 menjadi 56,10% tanpa menurunkan Category Coverage (53,93%).
- Fenomena Over-Penalization pada Skenario 3 Deterministik: Karena daftar kandidat Baseline pada Toys_and_Games sejak awal sudah memiliki proporsi Head yang rendah (22,63%), pemberian penalti deterministik $-\beta \cdot Pop(b)$ secara kaku mendorong daftar rekomendasi terlalu ekstrem ke arah item Tail (mencapai 88,12% hingga 95,05%). Akibatnya, item Head dan Mid yang relevan tereliminasi dan cakupan kategori menyempit dari 53,93% menjadi 43,59%.
- Kemenangan Mutlak Skenario 4 (Full Controlled Reranking / Roulette Wheel): Mekanisme probabilistik berbobot terbukti menjadi solusi paling unggul pada dataset ini. Skenario 4 berhasil meningkatkan akurasi tebakan masking melampaui Baseline (Recall@10 naik menjadi rata-rata 0.0360, mencapai puncak 0.0381 pada Trial 2, dibandingkan Baseline 0.0340) sekaligus melonjakkan Category Coverage@10 sebesar +14,83% (dari 53,93% menjadi 68,76%) dan menjaga Long-Tail Exposure@10 di 55,47%.
2. Analisis Eksperimen 2: Dataset 2018_Movies_and_TV
2.1. Karakteristik Data Skala Masif, Extreme Sparsity, dan Efek Blockbuster (Hari 1)
- Penyaringan Skala Raksasa: Dari 8.765.568 baris interaksi mentah dan 203.766 metadata produk, tahap pembersihan dan Iterative K-Core Filtering menghasilkan 24.786 pengguna aktif ($|U|$), 37.280 produk ($|I|$), dan 1.109.238 interaksi bersih (rata-rata $44,75$ transaksi per pengguna). Ukuran ruang matriks interaksi mencapai 924.022.080 sel (~924 juta sel).
- Kepadatan Graf & Kategori Asli: Terdapat 422 kategori unik (membentuk 8.709 unit kategori/ceruk evaluasi pada tahap evaluasi akhir) serta jaringan relasi asli yang sangat masif: 358.819 sisi
also_buydan 173.447 sisialso_viewvalid. - Protokol Masking & Extreme Sparsity: Pemisahan 80:20 mengisolasi 896.430 interaksi latih ($80,81%$) dan menyembunyikan 212.808 interaksi uji/masking ($19,19%$) dengan Zero Leakage. Matriks latih memiliki tingkat kekosongan yang sangat ekstrem yaitu Sparsity = 99,9030%.
- Bukti Empiris Dominasi Blockbuster (Popularity Bias Berat): Pembagian Pareto 20:30:50 membagi katalog menjadi 7.456 HEAD : 11.184 MID : 18.640 TAIL. Analisis distribusi pada Train Set membuktikan ketimpangan yang sangat tajam: 20% produk HEAD memonopoli 66,89% dari seluruh interaksi pengguna (dengan frekuensi mencapai $1.120$ interaksi per produk).
2.2. Skalabilitas Vektorisasi Stage 1–2 & Bias Popularitas pada Baseline (Hari 2)
- Efisiensi Vektorisasi Stage 1 (UBCF): Dengan rata-rata ambang kepuasan pengguna $\bar{r}_u = \mathbf{4,1156}$, algoritma Top-K Pruned Sparse Matrix Multiplication (
scipy.sparse) berhasil menyelesaikan perhitungan matriks kemiripan $24.786 \times 24.786$ (4.944.639 pasangan kemiripan tersimpan dari 69,95 juta pasangan aktif) dan menghasilkan 923.125.650 prediksi valid hanya dalam waktu ~21 detik dengan Seen-Item Leakage = 0. Rata-rata pengguna memiliki 12,88 item $L_u$ dan 23,60 item $H_u$ (2.591 pengguna ditangani oleh Uniform Fallback). - Stage 2 (Co-occurrence Graph): Graf berarah memuat 37.280 simpul dan 626.500 sisi aktif (
buy= 358.819,view= 173.447,reverse= 252.130). Perakitan 50 kandidat bundle ($B=3$) untuk seluruh 24.786 pengguna diselesaikan menggunakan Sparse Category Vectors dalam waktu ~5 menit. - Bukti Popularity Bias pada Skenario 1 (Baseline Top-10): Tanpa intervensi reranking, rekomendasi Baseline terjebak dalam bias popularitas yang parah: 73,85% slot rekomendasi dikuasai oleh item HEAD, 18,00% MID, dan hanya menyisakan 8,16% untuk item TAIL, dengan capaian Recall@10 = 0.0466, NDCG@10 = 0.0703, dan Category Coverage@10 = 69,40%.
2.3. Hasil Evaluasi Controlled Reranking Layer pada 2018_Movies_and_TV (Hari 3)
Audit Fairness Guardrails memastikan 0 pelanggaran histori (Seen-Item Violations = 0) dan 100% ketersediaan kandidat HEAD serta TAIL untuk seluruh 24.786 pengguna.
Gambar 3. Komparasi Hasil Eksperimen Antar-Skenario pada 2018_Movies_and_TV
Gambar 4. Sensitivitas Grid Search $(\alpha, \beta)$ Skenario 3 pada 2018_Movies_and_TV
Temuan Kunci pada 2018_Movies_and_TV:
- Efektivitas Skenario 2 (Top-k Balancing) dalam Menekan Monopoli Head: Pembagian kuota 30:40:30 berhasil meningkatkan Long-Tail Exposure@10 hampir 2,5 kali lipat (dari 8,16% menjadi 20,24%) dan menaikkan Category Coverage@10 sebesar +4,66% (menjadi 74,06%), sembari mempertahankan 97,85% kemampuan Recall@10 Baseline (0.0456 vs 0.0466).
- Peningkatan NDCG@10 & Keseimbangan Ideal pada Skenario 3 (Popularity-Aware):
- Pada bobot penalti ringan $(\alpha=0.9, \beta=0.1)$, pengurangan skor terhadap film blockbuster yang terlalu generik terbukti menggeser item Mid/Tail yang lebih sesuai dengan konteks pengguna ke peringkat atas, sehingga NDCG@10 meningkat melampaui Baseline (0.0712 vs 0.0703) sembari melipatgandakan Long-Tail Exposure@10 menjadi 16,85%.
- Pada titik optimal $(\alpha=0.8, \beta=0.2)$, sistem mencapai keseimbangan proporsi katalog yang sangat ideal yaitu 35,54% HEAD : 31,95% MID : 32,51% TAIL (Long-Tail Exposure naik 4x lipat dan Category Coverage naik +8,32% menjadi 77,72%).
- Rekor Cakupan Kategori Tertinggi pada Skenario 4 (Roulette Wheel): Pendekatan sampling probabilistik Skenario 4 mencatatkan Category Coverage@10 tertinggi di antara seluruh metode yaitu 81,02% (naik +11,62% dari Baseline), meningkatkan Long-Tail Exposure@10 lebih dari 3,3x lipat (27,57%), serta menunjukkan stabilitas antar-trial yang sangat kokoh (standar deviasi Recall dan NDCG hanya $\pm 0.0002$).
3. Analisis Komparatif Karakteristik Kedua Dataset (2018_Toys_and_Games vs. 2018_Movies_and_TV)
Pengujian lintas domain pada dua dataset dengan skala dan struktur distribusi yang berbeda memberikan pembuktian ilmiah mengenai bagaimana masing-masing mekanisme di dalam Controlled Reranking Layer beradaptasi terhadap karakteristik intrinsik data:
Tabel 1. Matriks Komparatif Karakteristik & Perilaku Model Lintas Dataset
| Dimensi Perbandingan | Dataset 1: 2018_Toys_and_Games |
Dataset 2: 2018_Movies_and_TV |
Implikasi & Analisis Ilmiah |
|---|---|---|---|
| 1. Skala Katalog & Pengguna | Menengah: $1.025$ pengguna $\times 3.399$ produk ($48.318$ interaksi; $\sim 3,48$ juta sel matriks) | Masif: $24.786$ pengguna $\times 37.280$ produk ($1.109.238$ interaksi; $\sim 924$ juta sel matriks) | Membuktikan skalabilitas komputasi arsitektur Vectorized Two-Stage + Reranking dari jutaan hingga hampir 1 miliar sel matriks. |
| 2. Tingkat Sparsity & Konsentrasi Popularitas Awal | Sparsity 98,88% | 20% produk HEAD menguasai 33,70% interaksi (Moderately Skewed). | Sparsity 99,90% | 20% produk HEAD memonopoli 66,89% interaksi (Heavily Skewed / Blockbuster Effect). | Industri film/TV memiliki konsentrasi popularity bias dua kali lipat lebih tajam dibanding mainan/permainan yang lebih terfragmentasi berdasarkan usia/hobi. |
| 3. Struktur Graf & Ruang Kategori | 27.850 sisi berarah | 287 kategori unik (3.434 ceruk evaluasi). | 626.500 sisi berarah | 422 kategori unik (8.709 ceruk evaluasi). | Keduanya memiliki graf asli yang padat, namun pada Movies_and_TV simpul film populer menjadi hub raksasa yang menarik jalur pencarian graf ke arah item Head. |
| 4. Perilaku Model Baseline (Skenario 1) | Distribusi awal sudah cukup merata (22,63% HEAD : 25,02% MID : 52,34% TAIL); Recall@10 = 0.0340, Cov@10 = 53,93%. | Mengalami Popularity Bias ekstrem (73,85% HEAD : 18,00% MID : 8,16% TAIL); Recall@10 = 0.0466, Cov@10 = 69,40%. | Ketika Train Set didominasi 66,89% oleh item Head (Movies_and_TV), UBCF dan Co-occurrence Graph secara alami memperkuat bias tersebut menjadi 73,85% di rekomendasi akhir. |
| 5. Efektivitas Skenario 2 (Top-k Balancing 30:40:30) | Unggul dalam memaksimalkan NDCG@10 (0.0497) dan menaikkan Tail ke 56,10%. | Sangat efektif sebagai penyeimbang cepat (2,6 detik): menaikkan Tail 2,5x lipat (20,24%) dan Coverage +4,66% dengan loss akurasi hampir nol. | Skema kuota kaku 30:40:30 berfungsi sebagai safety net yang menjamin batas minimum eksposur Tail sekaligus menjaga ketepatan posisi puncak lewat 40% slot prediksi. |
| 6. Perilaku Skenario 3 (Popularity-Aware $\alpha, \beta$) | Memicu over-penalization menuju Tail ekstrem (hingga 95,05%) karena Baseline sudah rendah Head. | Sangat Efektif & Adaptif: Pada $(0.9, 0.1)$ meningkatkan NDCG@10 di atas Baseline (0.0712); pada $(0.8, 0.2)$ menciptakan proporsi sempurna 35,5% : 32,0% : 32,5%. | Penalti linear $-\beta \cdot Pop(b)$ sangat krusial pada dataset berbias berat (Movies_and_TV) untuk meruntuhkan monopoli item Head, tetapi harus diatur ringan ($\beta \le 0.1$) pada dataset yang sudah seimbang. |
| 7. Perilaku Skenario 4 (Roulette Wheel Selection) | Arsitektur Terbaik Mutlak: Meningkatkan Recall@10 di atas Baseline (0.0360 vs 0.0340) dan melonjakkan Coverage +14,83% (ke 68,76%). | Meraih Category Coverage@10 Tertinggi (81,02%, naik +11,62%) dan meningkatkan Tail 3,4x lipat (27,57%) dengan variansi sangat stabil ($\pm 0.0002$). | Eksplorasi stokastik terbobot (Roulette Wheel) secara konsisten menjadi juara dalam memperluas cakupan kategori (Category Coverage) di kedua dataset tanpa terjebak pada penyempitan deterministik. |
Kesimpulan Umum Penelitian
- Validasi Arsitektur Heuristik Dua Tahap: Kombinasi Modified User-Based CF (dengan Seen-Item Masking $-\infty$) dan Co-occurrence Graph (
also_buy/also_view) terbukti mampu merakit kandidat bundle yang relevan secara efisien dan stabil hingga skala hampir 1 miliar sel matriks tanpa membutuhkan deep learning. - Panduan Pemilihan Strategi Reranking Berdasarkan Karakteristik Katalog:
- Untuk katalog dengan dominasi popularitas ekstrem (Blockbuster-Heavy seperti
Movies_and_TV), Skenario 3 (Popularity-Aware Reranking pada $\alpha=0.9, \beta=0.1$ atau $\alpha=0.8, \beta=0.2$) dan Skenario 2 (Top-k Balancing) adalah pilihan terbaik untuk merombak monopoli item Head (dari 73,85% menjadi ~35,54%), meningkatkan eksposur long-tail hingga 4 kali lipat, serta mendongkrak kualitas urutan (NDCG@10). - Untuk katalog dengan preferensi ceruk yang tersebar (Niche-Rich seperti
Toys_and_Games) atau ketika tujuan utama sistem adalah memaksimalkan keberagaman lintas kategori (Category Coverage), Skenario 4 (Full Controlled Reranking dengan Roulette Wheel Selection) merupakan metode paling superior karena mampu memperluas cakupan kategori sebesar +11,62% hingga +14,83% sekaligus meningkatkan peluang ditemukannya kembali item keranjang pengguna yang tersembunyi (Recall@10 melampaui Baseline).
- Untuk katalog dengan dominasi popularitas ekstrem (Blockbuster-Heavy seperti





