• Tidak ada hasil yang ditemukan

Penulis dilahirkan di Ponorogo pada tanggal 19 Juli 1991. Penulis merupakan anak kedua dari pasangan Markus Katirin dan Sutini. Pada tahun 2010, penulis menamatkan pendidikan di SMA Negeri 1 Ponorogo. Penulis berkesempatan melanjutkan studi di Institut Pertanian Bogor melalui jalur Undangan Seleksi Masuk IPB (USMI) di Program Sarjana Ilmu Komputer Depertemen Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam.

Penulis aktif di organisasi kemahasiswaan seperti Persekutuan Mahasiswa Kristen dan menjadi koordinator divisi serta anggota berbagai kegiatan seperti KATA (2012), MSP (2013), Retreat (2012, 2014). Penulis juga menjadi asisten praktikum pada Mata Kuliah Rangkaian Digital dan Penerapan Komputer (2012-2013) dan asisten pengajar responsi Mata Kuliah Pendidikan Agama Kristen Protestan (2011, 2013). Selain itu, penulis melaksanakan kegiatan Praktik Kerja Lapangan di PT PLN (Persero) Udiklat Bogor pada tahun 2013.

10

HASIL DAN PEMBAHASAN

Pengumpulan Dokumen

Tahapan awal yang dilakukan dalam penelitian adalah mengolah dokumen XML yang akan menjadi korpus. Terdapat 21578 dokumen berita yang terdiri atas 135 topik. Seluruh dokumen tersimpan dalam 22 file berformat XML dengan rincian terdapat pada Tabel 5.

Tabel 5 Deskripsi data penelitian Nama file Ukuran file

(kB) Jumlah dokumen Rata-rata (kB) reut2-000.xml 1287 1000 1.287 reut2-001.xml 1219 1000 1.219 reut2-002.xml 1183 1000 1.183 reut2-003.xml 1262 1000 1.262 reut2-004.xml 1285 1000 1.285 reut2-005.xml 1350 1000 1.350 reut2-006.xml 1219 1000 1.219 reut2-007.xml 1221 1000 1.221 reut2-008.xml 1371 1000 1.371 reut2-009.xml 1302 1000 1.302 reut2-010.xml 1333 1000 1.333 reut2-011.xml 1268 1000 1.268 reut2-012.xml 1287 1000 1.287 reut2-013.xml 1099 1000 1.099 reut2-014.xml 1098 1000 1.098 reut2-015.xml 1223 1000 1.223 reut2-016.xml 1280 1000 1.280 reut2-017.xml 1505 1000 1.505 reut2-018.xml 1223 1000 1.223 reut2-019.xml 1226 1000 1.226 reut2-020.xml 1020 1000 1.020 reut2-021.xml 604 578 1.045

Contoh dokumen Reuters-21578 dapat dilihat pada Lampiran 1. Ada beberapa tag di dalam setiap dokumen, namun beberapa tag yang penting untuk diperhatikan untuk proses selanjutnya yaitu:

<TOPICS></TOPICS>, tag ini menunjukkan topik bahasan dari dokumen, yang akan dijadikan nama kelas dari setiap dokumen.

<TITLE></TITLE>, menunjukkan judul dari dokumen berita.

<BODY></BODY>, merupakan isi berita dari dokumen.

Dokumen yang memiliki topik earn, trade, ship, crude, grain, dan interest berjumlah 4362 dokumen. Seluruh dokumen tersebut dibagi menjadi 2 kelompok, yakni 3110 dokumen latih dan 1252 dokumen uji. Dokumen latih dan dokumen uji yang telah terkumpul disimpan pada basis data yang terdiri atas 2 tabel berbeda, yaitu tabel training dan testing. Proses penyimpanan dokumen ke dalam basis data

11 dilakukan dengan membuat program menggunakan bahasa pemrograman PHP dan MySQL. Secara sederhana, yang dilakukan program ini yaitu membaca setiap file, dan mengambil string yang diapit oleh tag <TOPICS></TOPICS> disimpan sebagai topik dokumen, tag <TITLE></TITLE> disimpan sebagai judul dokumen, serta tag <BODY></BODY> disimpan sebagai isi dokumen untuk setiap dokumen. Struktur tabel pada basis data disajikan dalam Tabel 6.

Tabel 6 Struktur tabel dokumen latih dan dokumen uji

Tabel Field Tipe data

training testing id topic title body id topic title body integer varchar varchar text integer varchar varchar text

Tokenisasi dan Pembuangan Stopword

Tokenisasi dan pembuangan stopword dilakukan dengan membuat program menggunakan bahasa pemrograman PHP dan MySQL. Proses diawali dengan mengambil dokumen latih pada basis data. Lalu dilanjutkan dengan penghapusan tanda baca dan karakter numerik serta pengubahan huruf kapital menjadi huruf kecil. Token yang didefinisikan sebagai suatu kata didapatkan dengan memisahkan dokumen berdasarkan karakter spasi putih (white space) kemudian dihitung frekuensinya. Dalam tahap ini diperoleh 160320 kata hasil tokenisasi terhadap dokumen latih.

Seluruh kata tersebut disaring dengan membuang kata-kata tidak penting atau stopword, seperti “the”, “and”, “but”, dan lain-lain. Pendefinisian stopword dilakukan berdasarkan kata hasil tokenisasi dengan frekuensi kemunculan sangat tinggi dan sangat rendah, dari sini dipilih kata-kata yang dianggap tidak penting. Stopword berbahasa Inggris yang telah didefinisikan berjumlah 143 kata (Lampiran 2), dan tersimpan dalam basis data. Sampai pada tahap ini, diperoleh 7279 kata unik.

Pemilihan Fitur Ciri

Seluruh kata yang diperoleh dari proses sebelumnya kemudian diproses kembali untuk menentukan apakah kata tersebut cocok dijadikan penciri dalam pembuatan model klasifikasi. Pemilihan fitur dilakukan dengan memodifikasi program yang telah dibuat oleh Putri (2013) menggunakan bahasa pemrograman PHP dan MySQL. Modifikasi dilakukan dengan menambahkan fungsi tokenisasi untuk masing-masing kelas. Proses ini menghasilkan 615 kata unik yang dapat dijadikan penciri dokumen kelas earn dan 1101 kata unik untuk kelas ¬earn

12

(Tabel 7). Hal ini membuktikan proses ini mampu mengurangi jumlah kata yang akan diproses. Selanjutnya hanya kata-kata ini yang akan diproses.

Tabel 7 Hasil tahap pemilihan fitur ciri dengan taraf nyata 0.001

Kelas Jumlah kata unik earn 615 ¬earn 1101 Total 1716 Pembobotan Kata

Seluruh kata yang diperoleh dari tahap pemilihan fitur akan dihitung bobotnya pada masing-masing dokumen. Pada tahap ini menghasilkan matriks vektor yang digunakan sebagai data latih dan data uji, yang masing-masing tersimpan pada file berformat CSV. Kedua file ini dibuat dari pembangunan program menggunakan bahasa pemrograman PHP dan MySQL. Matriks data latih berukuran 3110 × 1716, jumlah baris menunjukkan jumlah dokumen latih yaitu 3110 dan jumlah kolom menunjukkan jumlah kata penciri yaitu 1716. Matriks data uji berukuran 1252 × 1716, jumlah baris menunjukkan jumlah dokumen uji yaitu 1252 dan jumlah kolom menunjukkan jumlah kata penciri yaitu 1716.

Penelitian ini akan membandingkan 2 metode pembobotan, yaitu tf dan tf-idf. Penghitungan bobot kata dengan metode pembobotan tf hanya memerhatikan frekuensi kemunculan kata pada masing-masing dokumen, karena adanya asumsi bahwa semakin sering suatu kata muncul dalam suatu dokumen, kata tersebut semakin penting. Nilai bobotnya diperoleh dari jumlah kemunculan kata di dalam sebuah dokumen tertentu. Apabila suatu kata tertentu tidak muncul dalam sebuah dokumen, maka bobotnya bernilai nol. Di samping itu, pada metode pembobotan tf-idf selain memerhatikan frekuensi kemunculan sebuah kata di dalam sebuah dokumen tertentu, juga memperhitungkan jumlah dokumen yang mengandung kata tersebut. Keduanya memberikan nilai bobot yang berbeda untuk matriks data latih dan data uji. Artinya, untuk proses klasifikasi selanjutnya juga dihasilkan 2 buah model SVM.

Klasifikasi Dokumen

Dalam klasifikasi dokumen, data latih dari proses sebelumnya diperlukan untuk membuat model SVM. Model SVM adalah model klasifikasi berbasis ruang vektor. Seluruh vektor dokumen dipetakan kemudian dicari fungsi pemisah kedua kelas. Proses ini dilakukan menggunakan LIBSVM pada Matlab R2008b. Proses pemodelan SVM oleh Matlab dapat dilihat pada Lampiran 3.

Proses diawali dengan pembacaan file data latih berformat CSV, dilakukan dengan fungsi csvread(). Data ini merupakan data matriks, kolom pertama menyatakan label kelas dari dokumen. Kolom kedua dan seterusnya sampai kolom terakhir menyatakan fitur dari masing-masing dokumen. Penggunaan fungsi

13 untuk proses selanjutnya. Selanjutnya, proses yang sama dilakukan pada file data uji.

Pemodelan SVM memerlukan parameter sesuai dengan fungsi kernel yang digunakan. Menurut Hsu et al. (2003), akurasi model yang dihasikan dari proses pelatihan dengan SVM sangat bergantung pada fungsi kernel serta parameter yang digunakan. Oleh karena itu performansinya dapat dioptimasi dengan mencari (mengestimasi) parameter terbaik. Parameter yang diperlukan untuk kernel RBF yaitu c (cost) dan γ (gamma). Untuk menentukan nilai terbaik dari kedua parameter ini dilakukan proses grid search. Akurasi diperoleh dari persentase data yang diklasifikasikan dengan benar.

Proses grid search pada Matlab dilakukan dengan memanggil fungsi

test_grid_rbf(). Proses ini dilakukan untuk mendapatkan nilai c (cost) terbaik pada rentang 2-5c ≤ 215

dan parameter γ (gamma) terbaik pada rentang 2-15γ ≤ 23

. Parameter dikatakan terbaik jika mencapai nilai akurasi tertinggi dalam proses ini. Tabel 8 menyajikan parameter terbaik untuk masing-masing model SVM.

Tabel 8 Hasil akurasi parameter terbaik Metode pembobotan Parameter Akurasi с (cost) γ (gamma) tf 27 1.22070 × 10-4 93.8907% tf-idf 27 2.44141 × 10-4 93.6013%

Selanjutnya, pemodelan SVM dilakukan dengan memanggil fungsi

svmtrain ( training_label_vector, training_instance_matrix, '-t 2 -c 128 -g 0.00012207') untuk pembobotan tf. Parameter dalam fungsi tersebut dijelaskan sebagai berikut:

training_label_vector, merupakan vektor label kelas dari data latih.

training_instance_matrix, merupakan matriks fitur dari data latih.

'-t 2 -c 128 -g 0.00012207', merupakan parameter untuk LIBSVM. Nilai yang mengikuti string -t menyatakan jenis fungsi kernel yang digunakan,

2 berarti kernel RBF. Nilai yang mengikuti string -c menyatakan nilai parameter c (cost) yang digunakan, yaitu 128. Nilai yang mengikuti string -g menyatakan nilai parameter γ (gamma) yang digunakan, yaitu 0.00012207. Untuk pembobotan tf-idf, fungsi yang dipanggil yaitu svmtrain ( training_label_vector, training_instance_ matrix, '-t 2 -c 128 -g 0.000244141').

Pengujian

Pada tahapan sebelumnya, telah dihasilkan 2 buah model SVM yang siap digunakan untuk melakukan proses pengujian. Kedua model ini akan diujikan terhadap dokumen latih yang dimiliki. Matriks data uji yang digunakan berukuran 1252 × 1716 (jumlah baris menyatakan banyak dokumen dan jumlah kolom menyatakan jumlah kata hasil pemilihan fitur). Dengan menggunakan confusion matrix, akan dihitung tingkat akurasi dari masing-masing model SVM, dengan

14

cara jumlah dokumen yang diklasifikasikan dengan benar dibagi jumlah keseluruhan dokumen uji.

Pada data uji yang menggunakan metode pembobotan tf, jumlah dokumen kelas earn yang diklasifikasikan dengan benar adalah 941 dan yang salah berjumlah 85. Jumlah dokumen kelas ¬earn yang diklasifikasikan dengan benar adalah 226 dan yang salah berjumlah 0 (Tabel 9). Di samping itu, pada data uji yang menggunakan metode pembobotan tf-idf, jumlah dokumen kelas earn yang diklasifikasikan dengan benar adalah 940 dan yang salah berjumlah 87. Jumlah dokumen kelas ¬earn yang diklasifikasikan dengan benar adalah 224 dan yang salah berjumlah 1 (Tabel 10). Hasil akurasi dari model SVM dengan metode pembobotan tf dan tf-idf yang dihitung dengan menggunakan rumus pada persamaan 2 berturut-turut sebesar 93.2109% dan 92.9712%. Proses pengujian oleh Matlab dilakukan dengan memanggil fungsi svmpredict (testing_label_vector, testing_instance_matrix, modelsvm)

(Lampiran 3). Parameter dalam fungsi tersebut dijelaskan sebagai berikut:

testing_label_vector, merupakan vektor label kelas dari data uji.

testing_instance_matrix, merupakan matriks fitur dari data uji.

modelsvm, merupakan model yang dihasilkan dari proses pemodelan SVM. Tabel 9 Confusion matrix klasifikasi SVM dengan pembobotan tf

Prediksi Observasi

earn ¬ earn

earn 941 85

¬ earn 0 226

Tabel 10 Confusion matrix klasifikasi SVM dengan pembobotan tf-idf

Prediksi Observasi

earn ¬ earn

earn 940 87

¬ earn 1 224

Dilihat dari hasil akurasi klasifikasi dokumen kedua model SVM, terdapat perbedaan tingkat akurasi yang dihasilkan. Model dengan pembobotan tf terbukti lebih baik daripada pembobotan tf-idf yaitu menghasilkan akurasi sebesar 93.2109%. Pembobotan tf-idf melibatkan penghitungan nilai idf yang merupakan ukuran kepentingan suatu kata, sedangkan setiap kata yang terpilih dari proses pemilihan fitur semuanya adalah kata-kata yang penting. Kata-kata yang tidak penting telah terseleksi dan tidak diikutkan pada proses pembobotan. Ditambah lagi dengan telah dibuangnya stopword, yaitu kata-kata tidak penting, yang memiliki frekuensi kemunculan tinggi di hampir keseluruhan dokumen. Hal ini senada dengan apa yang dilakukan pada pembobotan tf-idf, yang memberikan nilai idf semakin kecil untuk kata yang semakin sering muncul di banyak dokumen. Dalam hal ini, pembobotan tf sudah cukup dalam memboboti kata yang terseleksi dari proses pemilihan fitur chi-square, sedangkan penggunaan pembobotan tf-idf dinilai lebih rumit dan terjadi ketimpangan proses yang dilakukan beberapa kali.

15 Hal lain yang mempengaruhi kinerja klasifikasi SVM yaitu pemilihan fitur ciri dari kedua kelas dan pemilihan parameter terbaik dalam pembangunan model SVM. Proses pemilihan fitur terbukti dapat meminimalkan jumlah kata penciri yang akan digunakan pada proses selanjutnya. Proses pemilihan parameter yang menghasilkan akurasi paling tinggi dapat memberikan akurasi yang tinggi juga pada proses pengujian. Ketepatan dalam menggunakan metode-metode tersebut di atas dapat membuat metode SVM semakin baik dalam mengklasifikasikan dokumen ke dalam 2 kelas.

SIMPULAN DAN SARAN

Simpulan

Setelah melakukan penelitian ini, diperoleh simpulan bahwa metode SVM mampu melakukan klasifikasi dokumen berita berbahasa Inggris dengan jumlah data yang besar (3110 × 1716 data latih dan 1252 × 1716 data uji). Kernel RBF dapat diterapkan pada SVM untuk melakukan klasifikasi. Metode ini menghasilkan akurasi yang baik yaitu sebesar 93.21% dengan menggunakan chi-square sebagai metode pemilihan fitur serta tf sebagai metode pembobotan. Hasil tersebut menjadi pembanding penggunaan metode pemilihan fitur chi-square dan pembobotan tf-idf yang menghasilkan akurasi sebesar 92.97%. Dengan demikian, pembobotan tf lebih baik daripada pembobotan tf-idf dalam melakukan klasifikasi dokumen.

Saran

Pengembangan lebih lanjut dari penelitian ini adalah klasifikasi dokumen multikelas dengan menggunakan dokumen yang sama dengan yang digunakan pada penelitian ini. Dapat pula dicobakan metode pembobotan lain yang memperbaiki pembobotan tf, misalnya dengan menggunakan pembobotan system for the mechanical analysis and retrieval of text (SMART) atau yang lebih sering disebut SMART notation. Dengan demikian, dapat diketahui metode pembobotan mana yang lebih baik dalam melakukan klasifikasi dokumen.

DAFTAR PUSTAKA

Borovikov EA. 2005. An Evaluation of Support Vector Machines as a Pattern Recognition Tool. Maryland (US): University of Maryland Pr.

Chang CC, Lin CJ. 2001. LIBSVM: a library for support vector machines. ACM Transactions on Intelligent Systems and Technology [Internet]. [diunduh 2014 Apr 1]; 2(3):1-10.doi: 10.1145/1961189.1961199. Tersedia pada: http//www.csie.ntu.edu.tw/~cjlin/libsvm.

17 Lampiran 1 Contoh dokumen Reuter-21578

<REUTERS TOPICS="YES" LEWISSPLIT="TRAIN" CGISPLIT="TRAINING-SET" OLDID="5552" NEWID="9"> <DATE>26-FEB-1987 15:17:11.20</DATE> <TOPICS><D>earn</D></TOPICS> <PLACES><D>usa</D></PLACES> <PEOPLE></PEOPLE> <ORGS></ORGS> <EXCHANGES></EXCHANGES> <COMPANIES></COMPANIES> <UNKNOWN>&#5;&#5;&#5;F &#22;&#22;&#1;f0762&#31;reute r f BC-CHAMPION-PRODUCTS-&lt;CH 02-26 0067</UNKNOWN> <TEXT>&#2;

<TITLE>CHAMPION PRODUCTS &lt;CH> APPROVES STOCK SPLIT</TITLE> <DATELINE> ROCHESTER, N.Y., Feb 26 - </DATELINE>

<BODY>Champion Products Inc said its

board of directors approved a two-for-one stock split of its common shares for shareholders of record as of April 1, 1987. The company also said its board voted to recommend to

shareholders at the annual meeting April 23 an increase in the authorized capital stock from five mln to 25 mln shares.

Reuter &#3;</BODY> </TEXT> </REUTERS>

18

Lampiran 2 Daftar stopword a about above after again ago all also am among an and another any april are be because been before began begin between but by can could december did dlrs do does eight end even feb february first five for four friday from going got had has have her here him his how however i into its january july june last later made make many mar march may me more much nine no not november now now october of on one only other over probably reuter reuters said say says see september seven she should since six some soon started still talks than that the their them then there these they this those three to told too two until very want was wednesday well were what when where whether which while who will with within would year years yet you your

19 Lampiran 3 Instruksi Matlab pada pemodelan dan pengujian

1. Pembobotan tf

datatrain = csvread('training_tf.csv'); labels = datatrain(:,1);

features = datatrain(:,2:end); features_sparse = sparse(features);

libsvmwrite('datatrainlibsvm_tf.train', labels, features_sparse); [label_vector,instance_matrix]=libsvmread('datatrainlibsvm_tf. train');

test_grid_rbf(label_vector, instance_matrix); %grid search

[training_label_vector, training_instance_matrix]=libsvmread('data trainlibsvm_tf.train'); datatest = csvread('testing_tf.csv'); labels = datatest(:,1); features = datatest(:,2:end); features_sparse = sparse(features);

libsvmwrite('datatestlibsvm_tf.test', labels, features_sparse); [testing_label_vector, testing_instance_matrix]=libsvmread('data testlibsvm_tf.test');

model_tf = svmtrain(training_label_vector,training_instance_matrix, '-t 2 -c 128 -g 0.00012207');

[predict_label_tf, accuracy_tf, dec_values_tf] = svmpredict (testing_label_vector, testing_instance_matrix, model_tf); Accuracy = 93.2109% (1167/1252) (classification) 2. Pembobotan tf-idf datatrain = csvread('training_tfidf.csv'); labels = datatrain(:,1); features = datatrain(:,2:end); features_sparse = sparse(features); libsvmwrite('datatrainlibsvm_tfidf.train',labels,features_sparse); [label_vector,instance_matrix]=libsvmread('datatrainlibsvm_tfidf. train');

test_grid_rbf(label_vector, instance_matrix); %grid search

[training_label_vector, training_instance_matrix]=libsvmread('data trainlibsvm_tfidf.train'); datatest = csvread('testing_tfidf.csv'); labels = datatest(:,1); features = datatest(:,2:end); features_sparse = sparse(features);

libsvmwrite('datatestlibsvm_tfidf.test', labels, features_sparse); [testing_label_vector, testing_instance_matrix]=libsvmread('data testlibsvm_tfidf.test');

model_tfidf = svmtrain(training_label_vector, training_instance_ matrix, '-t 2 -c 128 -g 0.000244141');

[predict_label_tfidf, accuracy_tfidf, dec_values_tfidf] = svmpredict(testing_label_vector, testing_instance_matrix, model_tfidf);

2

Perumusan Masalah Perumusan masalah pada penelitian ini adalah:

1 Apakah SVM dengan kernel RBF mampu melakukan klasifikasi dokumen berita berbahasa Inggris?

2 Apakah pembobotan tf cukup baik dalam klasifikasi dokumen? Tujuan Penelitian

Tujuan penelitian ini adalah:

1 Melakukan klasifikasi dokumen berita berbahasa Inggris menggunakan metode SVM dengan kernel RBF.

2 Membandingkan pembobotan tf dan tf-idf dalam klasifikasi dokumen. Manfaat Penelitian

Penelitian ini diharapkan dapat membantu dalam mengelompokkan dokumen berita berdasarkan kategori yang telah ditentukan secara otomatis.

Ruang Lingkup Penelitian Ruang lingkup penelitian ini meliputi:

1 Penelitian difokuskan kepada klasifikasi dokumen berbahasa Inggris dalam 2 kelas menggunakan metode SVM dengan kernel RBF.

2 Penelitian juga berfokus pada pembandingan metode pembobotan tf dan tf-idf dalam klasifikasi dokumen.

3 Penelitian dibatasi pada percobaan metode dalam klasifikasi, tanpa membangun sebuah sistem pengklasifikasi otomatis.

METODE

Garis besar alur pengerjaan penelitian ini disajikan dalam Gambar 1. Beberapa tahapan dari sistem meliputi pengumpulan dokumen, praproses, pembagian data, pemodelan, dan pengujian.

Koleksi dokumen yang ada pada korpus dibagi menjadi 2 kelompok yaitu data latih dan data uji. Dalam tahapan praproses, dilakukan tokenisasi, pembuangan stopword, pemilihan fitur ciri, dan pembobotan terhadap data latih dan data uji. Tahap selanjutnya adalah pemodelan dengan menggunakan metode klasifikasi SVM pada data latih dan hasilnya digunakan sebagai pembuatan model SVM. Setelah itu dokumen uji yang telah diketahui kelasnya diuji dan dihitung hasil klasifikasinya.

3 .

Gambar 1 Tahapan penelitian Pengumpulan Dokumen

Dokumen yang digunakan dalam penelitian ini adalah koleksi dokumen Reuters-21578, yang merupakan dokumen berita berbahasa Inggris yang muncul pada Reuter’s newswire tahun 1987. Dokumen Reuters-21578 tersedia pada http://www.daviddlewis.com/resources/testcollections/reuters21578/. Dokumen ini disimpan dalam format XML (extensible markup language). XML adalah bahasa yang mampu menyimpan data secara ringkas dan mudah diatur, serta banyak digunakan untuk pertukaran informasi di internet.

Secara keseluruhan, koleksi dokumen berjumlah 21578 dokumen yang terdiri atas 135 topik. Penelitian ini hanya menggunakan dokumen dengan 6 topik yang selanjutnya ditentukan menjadi 2 kelas, yakni earn dan ¬earn (not earn). Kelas earn adalah dokumen yang memiliki topik earn. Kelas ¬earn adalah dokumen yang memiliki topik trade, ship, crude, grain, dan interest. Pemilihan topik didasarkan pada jumlah dokumen terbanyak dalam koleksi

Dokumen dibagi menjadi dokumen latih dan dokumen uji masing-masing dengan proporsi 70% dan 30%. Data latih akan digunakan untuk melatih sistem sehingga dihasilkan model klasifikasi SVM. Data uji digunakan untuk pengujian hasil klasifikasi.

Tokenisasi dan Pembuangan Stopword

Tahap praproses dimulai dengan tokenisasi, yaitu membagi dokumen menjadi unit-unit kecil yang disebut dengan token (Manning et al. 2008). Token didefinisikan sebagai sebuah kata. Tokenisasi diawali dengan penghapusan karakter-karakter yang tidak diperlukan, meliputi tanda baca seperti titik, koma, petik, dan lain-lain serta angka numerik. Kemudian dilanjutkan dengan pengubahan huruf kapital menjadi huruf kecil dan pemisahan isi dokumen berdasarkan karakter spasi. Dengan demikian, diperoleh token-token berupa suatu kata.

4

Tahap selanjutnya adalah pembuangan kata yang dianggap tidak penting, biasa disebut stopword. Pada umumnya, kata-kata yang sering muncul di banyak dokumen juga dibuang. Kata ini tidak sesuai untuk dijadikan penciri suatu dokumen. Kata-kata yang termasuk dalam stopword ini kemudian dibuang dan tidak diikutsertakan dalam proses selanjutnya.

Pemilihan Fitur Ciri

Menurut Manning et al. (2008), pemilihan fitur merupakan suatu proses memilih subset dari setiap kata unik yang ada di dalam himpunan dokumen latih yang akan digunakan sebagai fitur di dalam klasifikasi dokumen. Pemilihan fitur memiliki 2 tujuan utama. Pertama, membuat proses pelatihan dan penggunaan fungsi klasifikasi lebih efisien dengan mengurangi jumlah kata yang digunakan. Kedua, hal ini dapat meningkatkan akurasi hasil klasifikasi.

Ada beberapa metode pemilihan fitur yang baik untuk diterapkan dalam masalah klasifikasi dokumen, yaitu pemilihan fitur berbasis frekuensi, information gain, dan chi-square (2

). Pemilihan fitur berbasis frekuensi dapat bekerja dengan baik ketika fitur yang dipilih berjumlah ribuan. Metode lainnya, yaitu mutual information (MI) yang mengukur berapa banyak informasi kemunculan sebuah term berpengaruh dalam mengklasifikasi ke kelas tertentu. Namun, MI memberikan nilai peluang yang tidak signifikan dan tidak ada batas pasti nilai MI yang baik, sehingga harus memperkirakannya. Chi-square memperbaiki kedua metode tersebut. Penelitian ini menggunakan metode chi-square sebagai pemilihan fitur.

Chi-square merupakan pengujian hipotesis mengenai perbandingan antara frekuensi contoh yang benar-benar terjadi dengan frekuensi harapan yang didasarkan atas hipotesis tertentu pada setiap kasus atau data. Secara umum, perhitungan nilai chi-square ditunjukkan pada persamaan (Walpole 1982):

2

=

( )2

=1 (1)

= ×

(2)

dengan oi adalah frekuensi observasi, dan ei adalah frekuensi harapan. Perhitungan nilai ei ditunjukkan pada Persamaan 2, dengan adalah jumlah

Dokumen terkait