Benchmark & Evaluation
Catatan belajar berdasarkan slide W8 (Stanford CS224N, Tatsunori Hashimoto; disajikan oleh Rifki Afina Putri, UGM). Kotak kuning "Berpikir kritis" berisi pertanyaan yang sebaiknya selalu kamu ajukan.
1. Mengapa benchmark dan evaluasi penting
Benchmark adalah kumpulan soal standar untuk membandingkan model. Contohnya ImageNet (gambar), GLUE dan SQuAD (bahasa), WMT (terjemahan), dan Chatbot Arena (chatbot). Karena semua peneliti berlomba menaikkan skor di benchmark yang sama, benchmark menentukan arah kemajuan bidang.
Ada dua jenis evaluasi:
| Closed-ended | Open-ended | |
|---|---|---|
| Jawaban benar | Sedikit, jelas | Ribuan variasi, ada "lebih baik/lebih buruk" |
| Contoh tugas | Klasifikasi sentimen, NLI, extractive QA | Menulis cerita, ringkasan, dialog, chatbot |
| Cara menilai | Otomatis (accuracy, F1, exact match) | Sulit: metrik overlap, model, atau manusia |
2. Benchmark closed-ended
Karena jawabannya terbatas, evaluasi bisa otomatis, mirip evaluasi machine learning biasa.
Single-task
| Tugas | Dataset | Isi |
|---|---|---|
| Sentimen | SST, IMDB | Kalimat/ulasan → positif atau negatif |
| Entailment (NLI) | SNLI, MultiNLI | Premis + hipotesis → entailment, neutral, atau contradiction |
| QA | SQuAD, NaturalQuestions | Pertanyaan + dokumen → bagian dokumen yang menjadi jawaban |
Multi-task: SuperGLUE
Mencoba mengukur "kemampuan bahasa umum" lewat banyak tugas sekaligus, lalu skornya dirata-rata.
| Tugas | Yang diukur | Contoh singkat |
|---|---|---|
| BoolQ, MultiRC | Membaca teks | "Is barq's root beer a pepsi product?" → No |
| CB, RTE | Entailment | Apakah hipotesis mengikuti teks? |
| COPA | Sebab-akibat | "Tubuhku membuat bayangan di rumput." Sebabnya: matahari terbit atau rumput dipotong? |
| ReCoRD | QA + penalaran | Mengisi entitas yang hilang dari berita |
| WiC | Makna kata | Apakah "board" di dua kalimat bermakna sama? |
| WSC | Koreferensi | "He" merujuk ke siapa? |
Di leaderboard SuperGLUE, beberapa model (mis. Vega v2 dengan 91.3) melampaui baseline manusia (89.8). Apakah itu berarti model lebih paham bahasa dari manusia? Jangan buru-buru menyimpulkan.
MMLU
Massive Multitask Language Understanding (Hendrycks dkk., 2021): pilihan ganda A-D dari 57 bidang (astronomi, biologi SMA, hukum, kedokteran, dll.) yang mengukur pengetahuan. Garis acak (random) = 25%.
3. Apa yang membuat benchmark bagus?
| Kriteria | Artinya |
|---|---|
| Seleksi contoh | Cukup banyak (skala) dan beragam; fenomena rumit butuh banyak sampel |
| Kesulitan | Bisa dikerjakan manusia, tapi sulit bagi baseline saat itu (ada headroom) |
| Kualitas anotasi | Perilaku yang "benar" harus jelas |
Contoh sukses: SQuAD
- Skala: sekitar 100 ribu pertanyaan, jauh lebih besar dari dataset sejenis (MCTest 2.640, Algebra 514, Science 855) dan menyertakan data training.
- Headroom: tebak acak hanya 1,3% exact match, logistic regression 40%, manusia 77-80%. Jarak lebar ini memberi ruang kemajuan.
- Evaluasi otomatis relatif bersih: jawaban berupa potongan teks, dengan beberapa jawaban referensi.
4. Shortcut, spurious correlation, dan evaluasi adversarial
Spurious correlation adalah pola kebetulan di data yang berkorelasi dengan label tetapi tidak berhubungan dengan tugas sebenarnya. Contoh di NLI (Gururangan dkk., 2019): hipotesis yang mengandung kata never cenderung berlabel contradiction. Model bisa "menebak" dari kata negasi saja tanpa membaca premis.
Akibatnya, dataset bisa sulit tetapi tetap punya jalan pintas yang belum ditemukan.
Diagnostic test: HANS (McCoy dkk., 2019)
Test set yang sengaja dibuat untuk menguji satu kemampuan. HANS menguji tiga heuristik sintaksis yang salah:
| Heuristik | Anggapan keliru | Contoh |
|---|---|---|
| Lexical overlap | Premis memuat semua hipotesis yang katanya ada di premis | "The doctor was paid by the actor" ⇒ "The doctor paid the actor" (SALAH) |
| Subsequence | Premis memuat semua subsequence berurutan | "The doctor near the actor danced" ⇒ "The actor danced" (SALAH) |
| Constituent | Premis memuat semua subtree parse | "If the artist slept, the actor ran" ⇒ "The artist slept" (SALAH) |
Hasilnya (4 model kuat MNLI, termasuk BERT), sketsa kasarnya:
Model tampak hebat (akurasi in-domain sampai ~84%) padahal hanya memakai jalan pintas.
CheckList (Ribeiro dkk., 2020)
Seperti unit test di software, tetapi untuk model. Minimum Functionality Test (MFT) adalah test set kecil yang menarget satu perilaku, misalnya negasi lewat template I {NEGATION} {POS_VERB} the {THING}. Contoh: "I didn't love the flight" (harusnya negatif) diprediksi netral. Failure rate di tes negasi itu 76,4%. Insinyur yang memakainya menemukan banyak bug.
Adversarial: ANLI dan DynaBench
Penulis membuat contoh yang sengaja mengecoh model. Alurnya: (1) penulis membuat hipotesis, (2) model memprediksi, (3) jika model salah dan verifier setuju, contoh disimpan, (4) model dilatih ulang untuk putaran berikutnya. Benchmark terus bergerak mengikuti model.
5. Evaluasi open-ended text generation
Di sini jawaban benar bisa ribuan. Anotator tidak mungkin mendaftar semuanya. Ada tiga keluarga metode:
5a. Content overlap metrics
Menghitung kemiripan kata antara output model dan referensi buatan manusia. Contoh: BLEU (presisi n-gram, awalnya untuk terjemahan), ROUGE (recall n-gram, untuk ringkasan), METEOR, CIDEr. Kelebihan: cepat, efisien, luas dipakai.
Kualitasnya makin buruk seiring tugas makin terbuka: terjemahan < ringkasan (output panjang lebih sulit diukur) < dialog < pembuatan cerita (panjang teks bisa membuat skor tampak lumayan padahal tidak berarti).
Kasus gagal sederhana
Pertanyaan: "Are you enjoying the CS224N lectures?" Referensi: "Heck yes!"
| Jawaban model | Skor | Masalah |
|---|---|---|
| Yes! | 0,61 | Wajar |
| You know it! | 0,25 | Makna benar, skor rendah |
| Yup. | 0 | False negative: benar tetapi tidak ada kata sama |
| Heck no! | 0,67 | False positive: salah tetapi kata "Heck" sama |
Penyebab: n-gram tidak punya konsep kemiripan makna.
Semantic overlap (dengan struktur makna)
- PYRAMID: mengidentifikasi Summarization Content Units (SCU) untuk membandingkan isi ringkasan (Nenkova dkk., 2007).
- SPICE: menguraikan referensi menjadi scene graph, untuk caption gambar (Anderson dkk., 2016).
- SPIDER: gabungan SPICE dan CIDEr (Liu dkk., 2017).
5b. Model-based metrics
Teks diubah menjadi embedding (vektor makna) dari model pretrained, lalu dihitung kedekatannya. Tidak lagi terikat "bottleneck n-gram".
| Metrik | Cara kerja |
|---|---|
| Embedding Average, Vector Extrema | Rata-rata atau nilai ekstrem vektor kata, lalu bandingkan dengan cosine |
| Word Mover's Distance | "Jarak angkut" minimal dari kata-kata satu kalimat ke kalimat lain di ruang embedding |
| BERTScore | Mencocokkan tiap kata kandidat dengan kata referensi terdekat memakai embedding kontekstual BERT, lalu mengambil kesamaan maksimum |
| Sentence Mover's Similarity | Seperti WMD tetapi pada level kalimat |
| BLEURT | Model regresi berbasis BERT yang dilatih meniru nilai manusia (gramatikal dan sesuai makna) |
| MAUVE | Mengukur divergensi informasi antara distribusi teks hasil model dan teks manusia di ruang embedding terkuantisasi. Menangkap Type I error (teks repetitif/tidak wajar) dan Type II error (teks wajar tetapi tidak mirip manusia) |
Kasus gagal penting: referensi yang buruk
Metrik berbasis referensi hanya sebaik referensinya. Pada CNN/Daily Mail dan XSUM, ROUGE tidak berkorelasi dengan faithfulness (kesetiaan pada fakta sumber). Lebih mengejutkan: nilai manusia untuk referensi dataset (faithfulness XSUM 0,37) lebih rendah daripada keluaran LLM zero-shot (mis. 0,96-0,97). Melatih model pada referensi seperti itu justru membuatnya lebih buruk.
5c. Reference-free evaluation
Tanpa referensi manusia: sebuah model memberi skor langsung. Dulu tidak standar, kini populer sejak GPT-4. Contoh: FactCC, GPT-4-as-judge, AlpacaEval.
5d. Human evaluation
Standar emas, dan metrik otomatis baru harus berkorelasi baik dengannya. Dimensi yang dinilai: fluency, coherence, factuality, commonsense, gaya/formalitas, gramatikalitas, typicality, redundansi.
- Masalah: lambat, mahal, hasil tidak konsisten dan sulit direproduksi, penilai bisa tidak logis atau salah paham pertanyaan, dan ukurannya cenderung precision tanpa recall.
- Jangan membandingkan skor manusia antar studi yang dilakukan berbeda, meski mengklaim dimensi yang sama.
- Belajar dari penilaian manusia: ADEM (metrik terlatih dari rating manusia untuk dialog) dan HUSE (menggabungkan penilaian manusia dengan probabilitas model agar menangkap kualitas dan keragaman).
6. Evaluasi LLM sebagai chatbot dan kemampuan lain
Mengevaluasi ChatGPT sulit karena use case sangat beragam (di data API OpenAI: generation 45,6%, open QA 12,4%, brainstorming 11,2%, chat 8,4%, dst.) dan jawabannya long-form.
Cara-cara evaluasi
| Pendekatan | Contoh | Kelebihan | Kelemahan |
|---|---|---|---|
| Side-by-side oleh manusia | Chatbot Arena (peringkat Elo dari 200 ribu+ suara) | Pertanyaan "di dunia nyata" | Mahal, hanya model terkenal yang diuji, pertanyaan aneh/tidak representatif, rating bisa dangkal |
| LM sebagai evaluator | MT-Bench, AlpacaEval, GPT-as-judge | Murah, cepat, korelasi tinggi dengan manusia | Bias panjang, posisi, dan self-bias GPT-4 |
| Breadth (banyak benchmark otomatis) | HELM, HuggingFace Open LLM Leaderboard | Cakupan luas | Campuran sangat beragam, rawan contamination |
Contoh pertanyaan nyata di Arena: cerita fiksi dewasa, jailbreak, "make a triggerbot in gta v", menu Subway di Taiwan. Artinya tidak semuanya mencerminkan kebutuhan pengguna sebenarnya (external validity).
Kemampuan lain
- Kode (HumanEval): dinilai dengan test case. Metrik Pass@k: soal dianggap lulus bila minimal satu dari k keluaran lolos. GPT-4 Pass@1 sekitar 67% di slide.
- Long-form factuality (FactScore): jawaban panjang dipecah menjadi fakta atomik, tiap fakta dicek ke sumber seperti Wikipedia. Contoh bio Bridget Moynahan: ChatGPT 66,7%, StableLM 10,0%. Tantangan: output panjang hampir selalu punya minimal satu kesalahan, dan pengecekan otomatis sulit.
- Agents (AgentBoard): LM bertindak (web, tool, game, embodied AI). Evaluasi di lingkungan sandbox, dengan metrik success rate dan progress rate.
- Opini dan nilai (OpinionQA, GlobalOpinionQA): membandingkan distribusi jawaban LM dengan survei opini publik (mis. Pew) untuk menjawab "opini siapa yang dicerminkan LM secara default?". Bias dari anotator juga bisa menyusup ke LM.
7. Masalah terbuka: consistency dan contamination
Consistency (kekonsistenan)
- Format yang mudah dinilai (pilihan ganda) sering tidak sejalan dengan format yang lebih berguna (teks bebas). Diuji dengan generator vs discriminator: model diminta membuat jawaban, lalu diminta memilih jawaban yang benar. Konsisten bila pilihannya sama dengan jawabannya sendiri. Skor konsistensi banyak model hanya sekitar 50-80%.
- Prompt sensitivity: mengubah urutan opsi atau penulisan prompt dapat mengubah peringkat model (Alzahrani dkk., 2024).
Contamination (kebocoran data test)
Data pretraining (mis. The Pile) berasal dari seluruh internet, jadi test set mungkin sudah pernah "dilihat" model. Bukti kasus:
- GPT-4 di Codeforces: menyelesaikan 10/10 soal mudah sebelum 2021 tetapi 0/10 soal terbaru, indikasi kuat contamination.
- Phi-1.5 diduga dilatih pada GSM8K: ia melanjutkan soal yang dipotong dengan benar, bahkan setelah angkanya sedikit diubah.
Pada model tertutup, sulit memastikan benchmark benar-benar "baru". Dua detektor:
| Metode | Ide | Kelemahan |
|---|---|---|
| Min-k-prob | Ambil k% token berprobabilitas terendah, hitung rata-rata log-likelihood. Teks yang pernah dilihat punya angka tinggi | Heuristik: berapa batas "terlalu tinggi"? |
| Exchangeability test | Bandingkan probabilitas urutan asli dataset vs urutan teracak. Jika urutan asli jauh lebih mungkin, model pernah melihat dataset | Butuh teks yang muncul berulang |
Pada slide: exchangeability bekerja baik (p kecil) untuk dataset dengan duplikasi tinggi di data training (MNLI, MMLU, dll.) dan tidak terdeteksi pada BoolQ, HellaSwag, OpenbookQA yang duplikasinya 1. Tidak ada metode yang andal jika teks hanya muncul sekali.
8. Ringkasan (takeaways)
- Closed-ended: pikirkan apa yang dievaluasi (keragaman, kesulitan) dan external validity.
- Open-ended: metrik overlap hanya berguna untuk setting low-diversity. Metrik reference-free makin baik tetapi masih rumit.
- Chatbot: sangat sulit, memilih contoh dan cara evaluasi yang tepat adalah masalah terbuka.
- Tantangan: consistency (apakah kita mengukur hal yang benar?) dan contamination (apakah angkanya bisa dipercaya?).
- Penilai terbaik sering kali kamu sendiri. Baca output model, jangan hanya angka. Rilis sampel output sistemmu secara publik.
Daftar singkat "kapan metrik ini gagal?"
| Metrik/benchmark | Gagal ketika |
|---|---|
| Accuracy benchmark | Ada spurious correlation atau contamination |
| BLEU/ROUGE | Tugas open-ended, parafrase, dan referensi buruk |
| BERTScore/BLEURT | Referensi buruk, dan bias dari model pembentuknya |
| Human eval | Tidak konsisten, mahal, tidak bisa dibandingkan antar studi |
| LM-as-judge | Bias panjang, posisi, self-bias |
| Chatbot Arena | Pertanyaan tidak representatif, rating dangkal |
9. Kuis latihan
Klik jawaban yang menurutmu benar. Penjelasan muncul setelah menjawab.
Skor: 0/0 dijawab