Catatan Riset

Saat Mesin Belajar Membaca Berita Siapa yang Paling Paham Bahasa Indonesia?

Didin Maulana 22 Juni 2026 57 kali dilihat
Saat Mesin Belajar Membaca Berita Siapa yang Paling Paham Bahasa Indonesia?

Coba bayangkan ini sebentar. Setiap hari, ribuan artikel berita lahir di Kompas, Detik, Antara, dan portal-portal lain. Dalam sebulan, jumlahnya bisa menembus puluhan ribu. Pertanyaannya: kalau Anda diminta mengelompokkan semua artikel itu ke dalam tema-temanya tanpa membacanya satu per satu bisakah Anda melakukannya?

Manusia jelas menyerah. Tapi mesin? Nah, di sinilah cerita ini dimulai.

Beberapa waktu terakhir saya mengerjakan sebuah penelitian kecil-kecilan (oke, tidak sekecil itu juga) tentang topic modeling untuk teks berita berbahasa Indonesia. Intinya, saya ingin tahu: dari sekian banyak teknik yang ada, mana sih yang paling jago "membaca" dan memahami berita kita? Dan jawabannya ternyata cukup mengejutkan bahkan untuk saya sendiri.

Apa Itu Topic Modeling, dan Kenapa Kita Harus Peduli?

Sederhananya, topic modeling adalah cara komputer menemukan tema tersembunyi di dalam tumpukan dokumen, tanpa diberi tahu temanya apa saja. Bayangkan Anda menumpahkan seribu artikel ke atas meja, lalu meminta mesin: "Tolong kelompokkan ini berdasarkan kemiripan isinya." Mesin lalu mengamati pola kata, lalu berkata: "Yang ini soal politik, yang itu soal sepak bola, yang sana soal ekonomi." Semua tanpa label, tanpa instruksi. Ini yang disebut pembelajaran unsupervised mesin belajar sendiri.

Selama hampir dua dekade, raja dari teknik ini adalah algoritma bernama LDA (Latent Dirichlet Allocation). LDA hebat di zamannya. Tapi ia punya satu kelemahan mendasar yang cukup fatal: ia memperlakukan kata sebagai sekadar simbol terpisah, tanpa memahami maknanya.

Buat LDA, kata "presiden" dan "kepala negara" adalah dua makhluk asing yang tak saling kenal. Ia tidak tahu keduanya merujuk pada hal yang sama. Cara berpikir seperti ini disebut Bag-of-Words anggap saja kata-kata dilempar ke dalam tas, diaduk, lalu dihitung jumlahnya. Urutan hilang, konteks hilang, makna pun ikut menguap.

Pertanyaan saya: bisakah teknik yang lebih modern, yang benar-benar memahami makna kata, mengalahkan sang raja lama ini?

Tiga Penantang di Atas Ring

Untuk menjawabnya, saya mempertemukan tiga konfigurasi dalam sebuah "pertandingan" yang adil data yang sama, perlakuan yang sama, ukuran penilaian yang sama:

Petarung 1 LDA Bag-of-Words. Ini sang juara bertahan, sekaligus garis dasar (baseline) pembanding. Mewakili cara lama yang menghitung kata tanpa memahami maknanya.

Petarung 2 LDA + Word2Vec. Versi LDA yang "dibekali" sedikit pemahaman makna lewat Word2Vec, sebuah teknik yang memetakan kata ke dalam vektor angka. Idenya: kata yang maknanya mirip akan berdekatan posisinya. Inilah yang membuat keajaiban kecil seperti raja − pria + wanita ≈ ratu bisa terjadi.

Petarung 3 BERTopic + IndoBERT. Ini sang pendatang baru, dan jujur saja, jagoan masa kini. IndoBERT adalah model bahasa berbasis Transformer yang dilatih khusus pada 23 GB lebih teks Bahasa Indonesia. Ia tidak cuma tahu arti kata ia memahami makna kata berdasarkan konteks kalimatnya. Bagi IndoBERT, kata "bank" di kalimat soal keuangan dan "bank" di kalimat soal pinggir sungai adalah dua hal berbeda. Itulah yang disebut contextual embedding, dan itu lompatan besar.

Mengumpulkan Amunisi: 1.500 Artikel dan Drama Cloudflare

Sebelum bertanding, saya butuh data. Targetnya 1.500 artikel berita 250 per kategori, dengan enam kategori: Politik, Olahraga, Ekonomi, Sosial, Agama, dan Pendidikan. Semuanya saya kumpulkan lewat web scraping dari tiga portal nasional.

Awalnya saya berencana memakai CNN Indonesia dan Tempo.co. Tapi keduanya memasang penjaga gerbang berbasis Cloudflare yang dengan tegas menolak semua percobaan saya disambut kode HTTP 403 yang dingin. Pelajaran kecil di lapangan: tidak semua portal mau "dikunjungi robot". Antara News akhirnya jadi penyelamat karena ramah dan kategorinya lengkap.

Setelah data terkumpul, datang tahap yang sering diremehkan tapi justru krusial: preprocessing. Di sinilah Bahasa Indonesia menunjukkan keunikannya.

Sisi Menyebalkan (sekaligus Menakjubkan) dari Bahasa Indonesia

Bahasa kita itu aglutinatif satu kata dasar bisa beranak-pinak jadi puluhan bentuk lewat imbuhan. Ambil contoh kata dasar "pilih". Dari sana lahir: memilih, dipilih, terpilih, pemilihan, pemilih, pilihan... dan seterusnya. Bagi mesin yang naif, semua bentuk itu dianggap kata yang berbeda-beda. Akibatnya? Kosakata membengkak, dan makna jadi terpecah-pecah.

Solusinya adalah stemming mengembalikan setiap kata ke bentuk dasarnya. Saya pakai algoritma Nazief-Adriani lewat pustaka PySastrawi, algoritma yang memang dirancang khusus untuk morfologi Bahasa Indonesia. Hasilnya bikin saya tersenyum lebar:

Kosakata menyusut 65,1% dari 52.847 kata unik menjadi 18.423 kata.

Ribuan bentuk kata berimbuhan berhasil dirapikan menjadi kata dasar yang representatif. Tanpa langkah ini, mesin akan tenggelam dalam lautan variasi kata yang sebenarnya bermakna sama. Ini bukti nyata bahwa memproses Bahasa Indonesia butuh perlakuan khusus, bukan sekadar menyalin resep dari riset berbahasa Inggris.

Hasilnya: Sang Pendatang Baru Menang Telak

Penilaian kualitas topik saya ukur pakai metrik koherensi bernama C_V dan C_NPMI angka yang menunjukkan seberapa "nyambung" dan masuk akal kata-kata dalam satu topik. Makin tinggi, makin bagus. Setiap petarung diuji pada tiga jumlah topik: K = 5, 10, dan 15.

Inilah hasil akhirnya, diurutkan dari yang terbaik:

Konfigurasi

K Terbaik

Skor C_V

Predikat

BERTopic + IndoBERT

15

0,7893

Baik

LDA Bag-of-Words

10

0,5773

Sedang

LDA + Word2Vec

10

0,5773

Sedang

Angkanya bicara sendiri. BERTopic + IndoBERT menang telak dengan keunggulan 36,7% di atas LDA. Bahkan skor terburuk IndoBERT (0,7179 di K=5) masih lebih tinggi daripada skor terbaik kedua lawannya. Ini bukan kemenangan tipis hasil keberuntungan ini dominasi yang konsisten.

Bedanya terasa juga saat melihat kata-kata yang dihasilkan. Untuk topik politik, LDA cuma memberi kata umum seperti partai, calon, suara. Sementara IndoBERT langsung menyebut nama: pilpres, koalisi, prabowo, ganjar, pdip. Jauh lebih tajam, jauh lebih kontekstual.

Plot Twist: Word2Vec Ternyata Tidak Membantu

Nah, ini bagian yang paling membuat saya berpikir keras. Saya berhipotesis bahwa membekali LDA dengan Word2Vec (Petarung 2) akan membuatnya lebih pintar dari LDA polos (Petarung 1). Logikanya masuk akal, kan? Tambahkan pemahaman makna, hasil pasti membaik.

Ternyata tidak. Skor keduanya identik persis di K=10 (0,5773), dan Word2Vec bahkan sedikit lebih buruk di K=5.

Setelah saya telusuri, ada beberapa alasan. Cara saya menyuntikkan Word2Vec ke LDA lewat satu nilai skalar sebagai inisialisasi awal ternyata terlalu menyederhanakan informasi yang kaya itu menjadi satu angka tunggal. Ibaratnya, saya punya peta semantik yang detail, tapi saya peras jadi satu titik koordinat saja. Ditambah lagi, LDA dengan 20 iterasi cenderung "melupakan" nilai awal itu dan kembali ke pola lamanya.

Awalnya hasil ini bikin saya sempat kecewa. Tapi kemudian saya sadar: temuan negatif tetaplah temuan yang berharga. Ini justru menunjukkan bahwa kalau mau benar-benar memanfaatkan Word2Vec, dibutuhkan integrasi yang lebih dalam misalnya lewat Embedded Topic Model (ETM) yang menanamkan makna langsung ke jantung modelnya, bukan sekadar dititipkan di pintu masuk. Itu jadi pekerjaan rumah yang menarik untuk lain waktu.

Apa Artinya Semua Ini?

Buat saya, kesimpulan utamanya jelas: investasi membangun model bahasa khusus Indonesia itu sepadan. Selama ini riset NLP kita sering tertinggal karena bersandar pada model multibahasa yang generik. IndoBERT membuktikan bahwa model yang benar-benar "lahir dan besar" di korpus Bahasa Indonesia memberikan lompatan kualitas yang nyata.

Secara praktis, kalau ada portal berita yang ingin membangun sistem kategorisasi otomatis, pendekatan berbasis BERTopic-IndoBERT layak jadi pilihan utama dan jangan ragu memakai jumlah topik yang lebih banyak, karena IndoBERT justru makin tajam saat diminta lebih granular.

Tentu saja penelitian ini punya batas. Datanya cuma dari tiga portal dengan gaya bahasa formal, IndoBERT belum saya fine-tune khusus domain berita, dan saya belum sempat melakukan validasi lewat penilaian manusia langsung. Semuanya jadi daftar tugas untuk versi berikutnya.

Penutup

Kalau saya boleh menarik satu benang merah dari semua ini: memahami bahasa baik oleh manusia maupun mesin bukan soal menghitung kata, tapi soal menangkap makna di balik kata. Selama dua dekade kita mengandalkan mesin yang sekadar menghitung. Sekarang, kita punya mesin yang mulai benar-benar mengerti. Dan untuk Bahasa Indonesia, perjalanan itu baru saja dimulai.

Kalau Anda kebetulan juga sedang menggeluti NLP Bahasa Indonesia, atau punya ide soal cara lebih baik mengintegrasikan word embedding, saya senang sekali kalau kita bisa berdiskusi. Sampai jumpa di tulisan berikutnya!

Bagikan:

Artikel Terkait