Lewati ke konten utama
seratusribu.com
Semua artikel
Data Analyst

Analisis Sentimen Media Sosial dari Data Kecil untuk UMKM dan Skripsi

Oleh Anang H. Darmawan

3 menit baca
Laporkan
Analisis Sentimen Media Sosial dari Data Kecil untuk UMKM dan Skripsi

Foto: Domingo Alvarez E / Unsplash

Banyak proyek analisis sentimen berhenti sebelum mulai karena pemiliknya merasa harus punya puluhan ribu komentar dulu. Padahal untuk toko online yang ingin tahu kenapa rating turun, atau mahasiswa yang menyusun skripsi, beberapa ratus komentar yang dilabeli dengan teliti sering lebih berguna daripada puluhan ribu komentar yang tidak pernah dibaca siapa pun.

Labeling: bagian yang paling menentukan

Mulailah dengan 300 sampai 500 komentar dari satu sumber yang jelas, misalnya ulasan produk tokomu di satu marketplace selama tiga bulan terakhir. Tentukan kategori sejak awal: positif, negatif, netral. Lalu tulis aturan labeling di satu halaman. Apakah "barang oke, pengiriman lama" masuk negatif atau netral? Keputusan seperti ini harus tertulis, bukan diputuskan ulang tiap kali ketemu.

Kalau bisa, minta dua orang melabeli data yang sama secara terpisah, lalu bandingkan. Bagian yang sering berbeda menunjukkan aturanmu belum jelas. Untuk skripsi, proses ini juga menjadi bahan yang kuat di bab metodologi karena menunjukkan label tidak dibuat asal.

Bahasa gaul, singkatan, dan sarkasme

Komentar media sosial berbahasa Indonesia penuh singkatan dan variasi ejaan: gak, ga, nggak, gk semuanya berarti tidak. Normalisasi kata-kata ini dengan kamus kecil buatanmu sendiri, yang diisi dari data yang benar-benar kamu punya. Kamus dari internet sering tidak cocok dengan gaya bahasa pelanggan di kategori produkmu.

Hati-hati saat membuang stopword. Daftar stopword umum sering memuat kata seperti "tidak" dan "belum". Kalau kata itu dibuang, "tidak bagus" berubah jadi "bagus", dan modelmu belajar kebalikannya. Emoji juga jangan dibuang begitu saja. Emoji marah atau menangis sering jadi penanda sentimen paling jujur di komentar yang pendek.

Sarkasme adalah batas yang perlu kamu terima. Komentar seperti "mantap, paket dua minggu belum sampai" memakai kata positif untuk keluhan. Model otomatis akan sering salah di kasus seperti ini, dan manusia pun kadang berbeda pendapat. Catat contoh-contohnya sebagai temuan, jangan disembunyikan.

Akurasi yang realistis

Jangan berharap angka akurasi mendekati sempurna. Kalau dua pelabel manusia saja tidak selalu sepakat, model tidak mungkin melampaui kesepakatan itu dengan jujur. Angka yang terlalu tinggi pada data informal justru patut dicurigai: mungkin ada data duplikat yang bocor antara data latih dan data uji.

Lihat juga sebaran kelasnya. Kalau 80 persen ulasan positif, model yang selalu menjawab "positif" pun sudah mendapat akurasi 80 persen tanpa belajar apa pun. Pakai confusion matrix dan F1 per kelas, lalu perhatikan terutama kelas negatif, karena itu yang biasanya ingin ditindaklanjuti.

Etika dan izin mengambil data

Sebelum mengambil komentar dari platform mana pun, baca ketentuan layanannya dan utamakan jalur resmi, misalnya ekspor dari akun tokomu sendiri atau API yang disediakan platform. Hapus atau samarkan nama akun sebelum data dianalisis atau dilampirkan di laporan. Indonesia sudah punya UU Pelindungan Data Pribadi. Untuk skripsi, diskusikan sumber data dengan pembimbing sejak awal, dan untuk pemakaian bisnis berskala besar, tanyakan ke pihak yang paham hukum.

Dari CSV kecil ke laporan yang bisa dipakai

Setelah data berlabel dan alurnya jelas, sisanya soal alat. Tool Analisis Sentimen Media Sosial seharga Rp225.000 membaca komentar dari file CSV, mengklasifikasikannya menjadi positif, negatif, atau netral dengan model sentimen Bahasa Indonesia, lalu merangkum sebarannya dan mengambil kata kunci yang paling sering muncul di komentar negatif. Tool ini jalan di Python 3.9 ke atas dengan CPU biasa, tanpa GPU.

Kalau komentarmu tersebar di beberapa sumber dan harus digabung dulu setiap minggu, Starter Kit Data Pipeline ETL Sederhana membantu menarik, membersihkan, dan menyimpan data ke SQLite atau PostgreSQL secara terjadwal. Tahap analisis sentimen tinggal membaca dari database itu.

Langkah pertama yang bisa kamu kerjakan hari ini: ekspor 300 ulasan terakhir, labeli 50 di antaranya sendiri, dan catat setiap kasus yang membuatmu ragu. Daftar keraguan itu akan menjadi aturan labeling versi pertamamu.