• Tidak ada hasil yang ditemukan

Penelitian ini mencoba menganalisis emosi yang terkandung dalam sebuah tweet berbahasa Indonesia.

Dengan cara manual, analisis emosi atau analisis sentimen bisa saja dilakukan. Misalnya memonitor berita-berita di media massa. Akan tetapi untuk data tweet, cara manual tidak mungkin bisa dilakukan karena jumlah datanya yang sangat besar dan terus mengalir. Disinilah peranan Information Retrieval, yang secara otomatis dapat mengolah kata.

Information Retrieval merupakan sekumpulan algoritma dan teknologi untuk melakukan pemrosesan, penyimpanan, dan menemukan kembali informasi (terstruktur) pada suatu koleksi data yang besar (Manning,Raghavan,dan Schutze, 2009).

Berikut proses-proses Information Retrieval : a. Tokenizing

Tokenizing merupakan langkah untuk memotong dokumen menjadi potongan-potongan kecil yang disebut token dan terkadang disertai langkah untuk membuang karakter tertentu seperti tanda baca (Manning,Raghavan,dan Schutze, 2009).

Contoh proses tokenizing : Kalimat asal :

Disaat sedih jangan lupakan kamu juga pernah bahagia, sedih itu membuatMu dewasa Hasil dari tokenizing :

Disaat Juga MembuatMu

Sedih Pernah Dewasa Jangan Bahagia

Lupakan Sedih Kamu itu

b. Stopwords Removal

Stopword merupakan kosakata yang bukan ciri(kata) unik dari suatu dokumen (Dragut et all, 2009). Contoh stopword adalah dia, mereka , saya, pada, di, kenapa, apa, dan lain sebagainya. Sebelum proses stopword removal dilakukan, harus dibuat daftar stopword (stoplist) dimana stoplist ini berisi kata – kata umum,kata-kata penghubung, kata ganti orang dan bukan kata unik. Jika suatu kata termasuk di dalam stoplist maka kata – kata tersebut akan dihapus dari deskripsi sehingga kata – kata yang tersisa di dalam deskripsi dianggap sebagai kata-kata yang mencirikan isi dari suatu dokumen. Daftar stoplist dipenelitian ini bersumber dari Tala (2003).

Hasil dari tokenizing :

Disaat Juga MembuatMu

Sedih Pernah Dewasa Jangan

Bahagia Lupakan Sedih Kamu itu

Hasil dari Stopword Disaat Membuat

Sedih Pernah Dewasa Jangan Bahagia

Lupakan Sedih

c. Stemming

Stemming merupakan tahap menghilangkan kata berimbuhan menjadi kata dasar (root) dari tiap kata hasil stopword dengan menggunakan aturan – aturan tertentu. Contoh Proses Stemming :

Hasil dari Stopwords : Disaat Membuat

Sedih Pernah Dewasa Jangan Bahagia

Lupakan Sedih Hasil dari Stemming :

Sedih Pernah Jangan Bahagia Lupa Sedih

1) Rule Stemming

Algoritma Stemming untuk menghilangkan kata berimbuhan memiliki tahap – tahap sebagai berikut (Nazief dan Adriani, 2007) :

1. Pertama cari kata yang akan distem dalam kamus kata dasar. Jika ditemukan maka diasumsikan kata adalah root word. Maka algoritma berhenti. Jika tidak ditemukan maka lakukan langkah 2.

2. Hilangkan Inflection Suffixes bila ada. Dimulai dari Inflectional Particle(“-lah”, “-kah”, “-ku”, “-mu”, atau “-nya”) ,kemudian Possesive Pronouns (“-ku”, “-mu”, atau “-nya”). Cari kata pada kamus kata dasar jika ditemukan maka algoritma berhenti, jika tidak ditemukan maka lakukan langkah 3.

3. Hapus Derivation Suffixes (“-i”, “-an”, atau “-kan”).

Jika kata ditemukan di kamus, maka algoritma berhenti. Jika tidak maka ke langkah 3a

a. Jika “-an” telah dihapus dan huruf terakhir dari kata tersebut adalah “-k”, maka “-k” juga ikut dihapus. Jika tidak ditemukan maka lakukan langkah 3b.

b. Akhiran yang dihapus (“-i”, “-an”, atau “-kan”) dikembalikan, lanjut ke langkah 4.

4. Pada langkah 4 terdapat tiga iterasi: a. Iterasi berhenti jika :

1. Ditemukannya kombinasi akhiran yang tidak diizinkan berdasarkan awalan Tabel 2. 2 Tabel awalan-akhiran

be- -i

di- -an

ke- -i , -kan

me- -an

se- -i, -kan

2. Awalan yang dideteksi sama dengan awalan yang dihilangkan sebelumnnya.

3. Tiga awalan telah dihilangkan

b. Identifikasi tipe awalan dan hilangkan. Awalan terdiri dari dua tipe : 1. Standar(“di-”, “ke-”, “se-”) yang dapat langsung dihilangkan dari kata 2. Kompleks (“me-”, “be”, “pe”, “te”) adalah tipe awalan yang dapat berubah

sesuai kata dasar yang mengikutinya. Oleh karena itu dibutuhkan aturan pada tabel berikut untuk mendapakan hasil pemenggalan yang tepat. Tabel 2. 3 Aturan peluruhan kata dasar

Aturan Bentuk awalan Peluruhan

1 berV Ber-V… | be-rV….

2 Belajar Bel-ajar

3 beC1erC2 Be-C1erC2.. dimana C!={‘r’|1}

4 terV Ter-V | te-rV

5 teCer Te-Cer… dimana C !=’r’

6 teC1erC2….. Te-C1erC2… dimana C!=’r’

7 me{l|r|w|y}V… Me-{l|r|w|y}V…

8 mem{b|f|v}… Mem-{b|f|v}…

9 Mempe… Mem-pe

10 Mem{rV|V}… Me-m{rV|V}…|

Me-p{rV|V}… 11 Men{c|d|j|z}…. Men-{c|d|j|z}….

13 Meng{g|h|q|k}….. Meng-{g|h|q|k}….. 14 mengV….. Meng-V…|meng-kV 15 mengeC Menge-C 16 menyV Me-ny…|meny-sV… 17 mempV Mem-pV… 18 Pe{w|y}V… Pe-{w|y}V…. 19 perV Per-V….|pe-rV 20 Pem{b|f|v}… Pe-m{b|f|v}… 21 Pem{rV|V} Pe-m{rV|V}…|pe-p{rV|V} 22 Pen{c|d|j|z}…. Pen- { c|d|j|z}…. 23 penV Pe-nV..|pe..tV 24 Peng{g|h|q} Peng-{g|h|q}

25 pengV Peng-V | peng-kV

26 penyV Pe-nya |peny-sV

27 pelV Pe-IV..;kecuali untuk kata

“pelajar” menjadi ajar

28 peCP Pe-CP…dimana

C!={r|w|y|l|m|n} dan P!=’er’

29 perCerV Per-CerV dimana

C!={r|w|y|l|m|n}

Pada tabel 2.3 dapat dilihat aturan – aturan peluruhan kata dasar yang apabila dilekati oleh awalan “me-”, “be-”, “te-”, “pe-”. Dimana pada kolom kedua dari tabel tersebut menjelaskan bentuk – bentuk kata dasar yang dilekati awalan “me-”, “be-”, “te-”, “pe-” , sedangkan pada kolom ketiga menjelaskan perubahan – perubahan karakter pada kata dasar yang mungkin terjadi apabila algoritma telah menghilangkan awalan yang telah melekati kata dasar tersebut. Huruf “V” pada tabel tersebut menunjukkan huruf hidup atau huruf vocal, huruf “C” menunjukkan huruf mati atau konsonan, dan huruf “P” menunjukkan pecahan “er”. Sebagai contoh, jika algoritma

menerima kata “menyusun”, maka proses Stemming pada kata tersebut mengikuti aturan ke-16 yaitu “menyV..” dan perubahannya menjadi “me-ny” atau “meny-sV..”. Berdasarkan aturan tersebut maka algoritma akan menghilangkan awalan “me-” maka akan didapatkan kata “nyusun”, selanjutnya kata “nyusun” akan diperiksa ke dalam database kata dasar karena kata “nyusun” bukan kata dasar maja tahap selanjutnya algoritma akan menghilangkan kata “meny-” dan kemudian algoritma akan menambahkan huruf “s” diddepan huruf “u”, maka akan didapatkan kata “susun”, selanjutnya kata “susun” akan diperiksa kedalam database kata dasar. Karena kata “susun” merupakan kata dasar maka kata tersebut akan diidentifikasikan sebagai kata dasar.

c. Cari kata yang telah dihilangkan awalannya. Apabila tidak ditemukan maka langkah diulang kembali. Jika ditemukan maka algoritma berhenti.

5. Apabila setelah langkah 4 kata dasar masih belum ditemukan, maka proses recording dilakukan dengan mengacu pada aturan tabel 2.3. Recording dilakukan dengan menambahkan karakter recording di awal kata yang dipenggal. Pada tabel 2.3 , karakter recording adalah huruf kecil setelah tanda hubung (‘-‘) dan terkadang berada sebelum tanda kurung. Sebagai contoh, kata “menangkap” (aturan 15) pada tabel 2.3 , setelah dipenggal menjadi “nangkap”. Karena tidak valid, maka recording dilakukan dan menghasilkan kata “tangkap”.

6. Jika semua langkah selesai tetapi tidak juga berhasil maka kata awal diasumsikan sebagai rootword. Algoritma berhenti..

Untuk mengatasi keterbatasan pada algoritma di atas, maka ditambahkan aturan – aturan dibawah ini (Agusta, 2009) :

1. Aturan untuk reduplikasi

➢ Jika kedua kata yang dihubungkan oleh kata penghubung adalah kata yang sama maka root word adalah bentuk tunggalnya, contoh : “buku - buku” root wordnya adalah “buku”.

➢ Kata lain, misalnya “bolak-balik”, “berbalas-balasan”, dan “seolah-olah”. Untuk mendapatkan root wordnya, kedua kata diartikan secara terpisah. Jika keduanya memiliki root word yang sama maka diubah menjad bentuk tunggal, contoh : kata “berbalas-balasan”, “berbalas” dan “balasan” memiliki root word yang sama yaitu “balas”. Maka root word “berbalas-balasan” adalah “balas”. Sebaliknya, pada kata “bolak-balik” , “bolak ” dan “balik” memiliki root word yang berbeda, maka root wordnya adalah “bolak- balik”.

2. Tambahan bentuk awalan dan akhiran serta aturannya

➢ Untuk tipe awalan “mem-”, kata yang diawali dengan awalan “memp” memiliki tipe awalan “mem-”.

➢ Tipe awalan “meng-”, kata yang diawali dengan awalan “mengk-” memiliki tipe awalan “meng-”

d. Penggabungan Kata Berdasarkan Sinonim

Menurut Kamus Besar Bahasa Indonesia (KBBI) sinonim adalah bentuk bahasa yang maknanya mirip atau sama dengan bahasa lain. Proses sinonim akan dilakukan ketika ada kata berbeda namun memiliki makna yang sama, untuk me-minimal-kan jumlah kata yang terdapat pada sistem, tanpa menghilangkan jumlah frekuensi (Rarasati,2015).

e. Pembobotan Kata

Setelah melalui preprocessing text dihasilkan berbentuk token yang terpisah dari kata yang lain dan sudah dalam bentuk dasar. Pada langkah selanjutnya kata-kata atau term akan dirubah kedalam bentuk numerik untuk diketahui bobot setiap kata dari satu dokumen ke dokumen lainya. Metode TF-IDF merupakan metode pembobotan dalam bentuk sebuah metode yang merupakan integrasi antar term frequency (tf), dan inverse document frequency (idf) (Yan dan Liu,1999).

Berikut rumus yang digunakan untuk mencari bobot kata dengan metode Term Frequency (TF) - Inverse Document Frequency (IDF) :

𝑖𝑑𝑓 = log⁡(𝐷/𝑑𝑓) (2.1)

Keterangan :

D : Jumlah semua dokumen dalam koleksi df : Jumlah dokumen yang mengandung term t 𝑊𝑖𝑗 = 𝑡𝑓𝑖𝑗⁡𝑥⁡𝑖𝑑𝑓

𝑊𝑖𝑗 = 𝑡𝑓𝑖𝑗⁡𝑥 log(𝐷/𝑑𝑓𝑗) (2.2)

Keterangan :

𝑊𝑖𝑗 : bobot term 𝑡𝑗 terhadap dokumen 𝑑𝑖

𝑡𝑓𝑖𝑗⁡ : jumlah kemunculan term 𝑡𝑗 dalam dokumen 𝑑𝑖 𝐷 : jumlah semua dokumen yang ada dalam database 𝑑𝑓𝑗 : jumlah dokumen yang mengandung term 𝑡𝑗

f. Normalisasi 1. Z-Score

Normalisasi Z-Score umumnya digunakan jika nilai minimum dan maksimum sebuah atribut tidak diketahui (Mustaffa dan Yusof,2011). Normalisasi Z-Score dirumuskan sebagai berikut :

𝑣= (𝑣−𝐴̅

𝜎𝐴) (2.3)

Keterangan

𝑣 : nilai yang baru 𝑣 : nilai yang lama

𝐴̅ : rata - rata dari atribut A

𝜎𝐴 : nilai standar deviasi dari Atribut A

2. Min-max

Normalisasi min – max dirumuskan sebagai berikut (Mustaffa dan Yusof, 2011) : 𝑋𝑛 = ⁡ 𝑋0−⁡𝑋𝑚𝑖𝑛

𝑋𝑚𝑎𝑥−𝑋𝑚𝑖𝑛 (2.4)

Keterangan :

𝑋𝑛 : nilai baru untuk variable X 𝑋0 : nilai lama untuk variable X 𝑋𝑚𝑖𝑛 : nilai minimum dalam data set 𝑋𝑚𝑖𝑛 : nilai maksimum dalam data set

Dokumen terkait