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-endedOpen-ended
Jawaban benarSedikit, jelasRibuan variasi, ada "lebih baik/lebih buruk"
Contoh tugasKlasifikasi sentimen, NLI, extractive QAMenulis cerita, ringkasan, dialog, chatbot
Cara menilaiOtomatis (accuracy, F1, exact match)Sulit: metrik overlap, model, atau manusia
Berpikir kritisJika semua orang mengejar skor benchmark, apa yang terjadi bila benchmark itu cacat? Model bisa tampak hebat padahal hanya pandai "menjawab soal itu". Inilah tema besar seluruh materi ini (hukum Goodhart: ketika ukuran dijadikan target, ia berhenti menjadi ukuran yang baik).

2. Benchmark closed-ended

Karena jawabannya terbatas, evaluasi bisa otomatis, mirip evaluasi machine learning biasa.

Single-task

TugasDatasetIsi
SentimenSST, IMDBKalimat/ulasan → positif atau negatif
Entailment (NLI)SNLI, MultiNLIPremis + hipotesis → entailment, neutral, atau contradiction
QASQuAD, NaturalQuestionsPertanyaan + dokumen → bagian dokumen yang menjadi jawaban
Contoh NLI: premis "A soccer game with multiple males playing" dan hipotesis "Some men are playing a sport" → entailment. Premis "A man inspects the uniform..." dan hipotesis "The man is sleeping" → contradiction.

Multi-task: SuperGLUE

Mencoba mengukur "kemampuan bahasa umum" lewat banyak tugas sekaligus, lalu skornya dirata-rata.

TugasYang diukurContoh singkat
BoolQ, MultiRCMembaca teks"Is barq's root beer a pepsi product?" → No
CB, RTEEntailmentApakah hipotesis mengikuti teks?
COPASebab-akibat"Tubuhku membuat bayangan di rumput." Sebabnya: matahari terbit atau rumput dipotong?
ReCoRDQA + penalaranMengisi entitas yang hilang dari berita
WiCMakna kataApakah "board" di dua kalimat bermakna sama?
WSCKoreferensi"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%.

Berpikir kritisMMLU hanya pilihan ganda. Skor tinggi belum tentu berarti model bisa menjelaskan jawaban bebas (lihat bagian 7 tentang consistency).

3. Apa yang membuat benchmark bagus?

KriteriaArtinya
Seleksi contohCukup banyak (skala) dan beragam; fenomena rumit butuh banyak sampel
KesulitanBisa dikerjakan manusia, tapi sulit bagi baseline saat itu (ada headroom)
Kualitas anotasiPerilaku yang "benar" harus jelas

Contoh sukses: SQuAD

Berpikir kritisHeadroom adalah pedang bermata dua. Begitu model melewati manusia, benchmark itu "jenuh" (saturated) dan tidak lagi membedakan model. Karena itu benchmark baru terus dibuat.

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:

HeuristikAnggapan keliruContoh
Lexical overlapPremis memuat semua hipotesis yang katanya ada di premis"The doctor was paid by the actor" ⇒ "The doctor paid the actor" (SALAH)
SubsequencePremis memuat semua subsequence berurutan"The doctor near the actor danced" ⇒ "The actor danced" (SALAH)
ConstituentPremis memuat semua subtree parse"If the artist slept, the actor ran" ⇒ "The artist slept" (SALAH)

Hasilnya (4 model kuat MNLI, termasuk BERT), sketsa kasarnya:

Heuristik berhasil (entailed)~95-100%
Heuristik gagal (non-entailed)~0-15%

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.

Berpikir kritisPelajaran inti: model sering belajar dataset, bukan belajar task. Akurasi tinggi di test in-domain tidak menjamin model bagus pada contoh "wajar" di luar domain. Saat membaca paper, selalu tanya: apakah ada tes di luar distribusi?

5. Evaluasi open-ended text generation

Di sini jawaban benar bisa ribuan. Anotator tidak mungkin mendaftar semuanya. Ada tiga keluarga metode:

Content overlapBLEU, ROUGE Model-basedBERTScore, BLEURT Human evalgold standard murah, cepat, dangkalmahal, lambat, paling dipercaya

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.

Referensi: "They walked to the grocery store." Hasil model: "The woman went to the hardware store." Kata yang sama ("to the", "store") dihitung, tetapi artinya berbeda (grocery vs hardware).

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 modelSkorMasalah
Yes!0,61Wajar
You know it!0,25Makna benar, skor rendah
Yup.0False negative: benar tetapi tidak ada kata sama
Heck no!0,67False positive: salah tetapi kata "Heck" sama

Penyebab: n-gram tidak punya konsep kemiripan makna.

Semantic overlap (dengan struktur makna)

5b. Model-based metrics

Teks diubah menjadi embedding (vektor makna) dari model pretrained, lalu dihitung kedekatannya. Tidak lagi terikat "bottleneck n-gram".

MetrikCara kerja
Embedding Average, Vector ExtremaRata-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
BERTScoreMencocokkan tiap kata kandidat dengan kata referensi terdekat memakai embedding kontekstual BERT, lalu mengambil kesamaan maksimum
Sentence Mover's SimilaritySeperti WMD tetapi pada level kalimat
BLEURTModel regresi berbasis BERT yang dilatih meniru nilai manusia (gramatikal dan sesuai makna)
MAUVEMengukur 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.

Berpikir kritisPertanyaan yang harus selalu diajukan: siapa yang membuat referensinya dan apakah ia benar-benar kualitas emas? Dan: bagaimana kita mengevaluasi metrik evaluasi itu sendiri? Jawabannya: hitung korelasi metrik dengan penilaian manusia (Liu dkk., 2016: BLEU-2 dan embedding average pada dialog Twitter/Ubuntu hampir tidak berkorelasi dengan skor manusia, padahal dua kelompok manusia saling berkorelasi tinggi).

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.

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

PendekatanContohKelebihanKelemahan
Side-by-side oleh manusiaChatbot 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 evaluatorMT-Bench, AlpacaEval, GPT-as-judgeMurah, cepat, korelasi tinggi dengan manusiaBias panjang, posisi, dan self-bias GPT-4
Breadth (banyak benchmark otomatis)HELM, HuggingFace Open LLM LeaderboardCakupan luasCampuran 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

Berpikir kritisLM-as-judge itu murah, tetapi ia membawa bias yang sama seperti manusia (menyukai jawaban panjang dan berdaftar). Jika model dilatih agar disukai juri, model belajar menyenangkan juri, bukan menjadi benar. Posisi bisa diacak, tetapi bias panjang dan self-bias butuh kontrol tambahan.

7. Masalah terbuka: consistency dan contamination

Consistency (kekonsistenan)

Contamination (kebocoran data test)

Data pretraining (mis. The Pile) berasal dari seluruh internet, jadi test set mungkin sudah pernah "dilihat" model. Bukti kasus:

Pada model tertutup, sulit memastikan benchmark benar-benar "baru". Dua detektor:

MetodeIdeKelemahan
Min-k-probAmbil k% token berprobabilitas terendah, hitung rata-rata log-likelihood. Teks yang pernah dilihat punya angka tinggiHeuristik: berapa batas "terlalu tinggi"?
Exchangeability testBandingkan probabilitas urutan asli dataset vs urutan teracak. Jika urutan asli jauh lebih mungkin, model pernah melihat datasetButuh 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.

Berpikir kritisKetika sebuah model mengklaim SOTA, tanyakan: apakah data test dipastikan tidak ikut terlatih? Apakah hasil tetap sama bila prompt diubah? Untuk proyek akhirmu, kedua pertanyaan ini bisa dijadikan bagian analisis.

8. Ringkasan (takeaways)

Daftar singkat "kapan metrik ini gagal?"

Metrik/benchmarkGagal ketika
Accuracy benchmarkAda spurious correlation atau contamination
BLEU/ROUGETugas open-ended, parafrase, dan referensi buruk
BERTScore/BLEURTReferensi buruk, dan bias dari model pembentuknya
Human evalTidak konsisten, mahal, tidak bisa dibandingkan antar studi
LM-as-judgeBias panjang, posisi, self-bias
Chatbot ArenaPertanyaan tidak representatif, rating dangkal

9. Kuis latihan

Klik jawaban yang menurutmu benar. Penjelasan muncul setelah menjawab.

Skor: 0/0 dijawab