Langkah Kerja Klasifikasi Data Otomotif...

12
DATA MINING LANJUT Langkah Kerja Klasifikasi Data Otomotif Menggunakan SVM Light Proyek Disusun Oleh: FITRA RIYANDA 1208107010079 JURUSAN INFORMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SYIAH KUALA DARUSSALAM, BANDA ACEH JUNI, 2013

Transcript of Langkah Kerja Klasifikasi Data Otomotif...

Page 1: Langkah Kerja Klasifikasi Data Otomotif …cs.unsyiah.ac.id/.../kuliah/dml/Fitra_Riyanda_1208107010079_tugas.pdf · DATA MINING LANJUT . Langkah Kerja . Klasifikasi Data Otomotif

DATA MINING LANJUT

Langkah Kerja Klasifikasi Data Otomotif Menggunakan SVM Light

Proyek

Disusun Oleh:

FITRA RIYANDA

1208107010079

JURUSAN INFORMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SYIAH KUALA DARUSSALAM, BANDA ACEH

JUNI, 2013

Page 2: Langkah Kerja Klasifikasi Data Otomotif …cs.unsyiah.ac.id/.../kuliah/dml/Fitra_Riyanda_1208107010079_tugas.pdf · DATA MINING LANJUT . Langkah Kerja . Klasifikasi Data Otomotif

Langkah Kerja Dalam prosedur penelitian dari tahapan melakukan klasifkasi dataset

menggunakan SMV Light tampak pada chart berikut:

crawling cleaning

SVM Learn

SVM Classify SVM Classify

Dataset

Web

Dataset Positif

Dataset Negatif

Testing Set (+)

Training Set (+)

Training Set (-)

Testing Set (-)

Kamus (+)

Fitur

Model

Hasil

Kamus (-)

Page 3: Langkah Kerja Klasifikasi Data Otomotif …cs.unsyiah.ac.id/.../kuliah/dml/Fitra_Riyanda_1208107010079_tugas.pdf · DATA MINING LANJUT . Langkah Kerja . Klasifikasi Data Otomotif

3.1 Pengambilan Data Sample

Pengambilan data sample masing-masing data untuk melakukan fitur baik

dataset positif maupun dataset negatif dilakukan dengan mengcrawling data

dokumen menggunakan Swish-E. Dari metode crawling data menggunakan Swish-e

perlu dilakukan beberapa tahapan seperti melakukan installasi pada linux dan

kemudian membangun beberapa program untuk melakukan eksekusi perintah,

didalam program ini dapat diberikan berupa alamat url yang dituju juga memfilter

jenis data yang ingin di crawled. Dari program itu penulis memfilter beberapa file

umum yang berhubungan dengan html web seperti gambar dan sebagainya yang

termuat dalam web tersebut. Setelah filtrasi dilakukan, kemudian ditentukan berapa

banyak file yang ingin dicraw, misalkan kita memberikan batasan sebanyak 1000 file.

Maka proses ini aku dilakukan dengan mengcrawling 1000 file apabila dalam

direktori dari web tersebut memiliki file lebih dari 1000 file. Tetapi apabila lebih

sedikit dari 1000 file, maka data akan tercrawled sebanyak yang di miliki dalam

direktori tersebut.

Setelah program selesai dibuat, maka proses crawling dimulai dengan

menggunakan script swish-e -S prog -c crawling_web.conf dan kemudian secara

otomatis dari program crawling_web.conf yang memberikan pengalamatan kepada

file spider.pl yang terdapat pada direktori Swish-e. Proses crawling dengan

menggunakan metode ini membutuhkan waktu yang sangat lama tergantung

banyaknya permintaan crawling data maupun kecepatan koneksi. Setelah dilakukan

crawling data dari berbagai situs yang membahas topik untuk data positif dan data

negatif masing-masing sebanyak 12 ribu untuk data dokumen positif dan 10 ribu

untuk data dokumen kemudian dipisahkan masing-masing direktori positif dan

direktori negatif.

3.2 Membersihkan Data Dokumen

Setelah seluruh file yang diinginkan selesai di crawling, tahap selajutnya

yaitu melakukan cleaning data menggunakan script extraccontent.pl. Data crawling

yang telah diletakan dalam masing-masing direktori positif dan negatif kemudian

Page 4: Langkah Kerja Klasifikasi Data Otomotif …cs.unsyiah.ac.id/.../kuliah/dml/Fitra_Riyanda_1208107010079_tugas.pdf · DATA MINING LANJUT . Langkah Kerja . Klasifikasi Data Otomotif

dijalankan script extrac content. Berikut potongan program untuk melakukan proses

cleaning dokumen: #Mengambil Judul Dokumen if( $html =~ /<title.*?>(.*?)<\/title>/){ my $title = $1; $title = clean_str($title); print "<title>$title\t$fileout</title>\n"; print OUT "<title>$title</title>\n"; } #Mengambil isi conten Dokumen $extractor->extract($html); my $content = $extractor->as_text; $content = clean_str($content); print OUT "<content>$content</content>\n"; close OUT;

Data yang telah di-clean dalam program tersebut dimasukkan dalam sebuah

folder yang berisikan semua file yang telah dibersihkan untuk masing-masing data

cleaned dari dataset positif dan negatif. Dari seluruh script html yang terdapat dalam

file tersebut hanya mengambil title dan isi dari content saja.

3.3 Membagi Dataset Menjadi Data Training dan Testing

Dari hasil cleaned untuk masing-masing dataset positif dan negatif tersebut,

barulah dipisahkan menjadi data trainingset sebanyak 75% ( ± 10 ribu file) dan

selebihnya dimasukkan ke data testingset sebanyak 25% dari ± 12 ribu file dataset

positif dan juga untuk dataset negatif sebanyak ± 10 ribu file dipisahkan menjadi

data trainingset sebanyak 75% ( ± 7500 file) dan selebihnya dimasukkan ke data

testingset sebanyak 25%.

3.4 Membangun Kamus Bigrams dan Threshold

Setelah seluruh data selesai di bersihkan dan dipisahkan menjadi data

trainingset dan data testingset untuk masing-masing dataset positif dan negatif,

barulah dilakukan proses penggabungan seluruh file data trainingset untuk masing-

masing dataset positif dan negatif menjadi kedalam satu file. Apabila seluruh file

yang telah dibersihkan tetapi tidak dilakukan penggabungan terhadap keseluruhan,

maka dalam proses pembangunan kamus 1 kata, 2 kata dan 3 kata tiap masing-masing

Page 5: Langkah Kerja Klasifikasi Data Otomotif …cs.unsyiah.ac.id/.../kuliah/dml/Fitra_Riyanda_1208107010079_tugas.pdf · DATA MINING LANJUT . Langkah Kerja . Klasifikasi Data Otomotif

dataset akan tersimpan dan tertimpa oleh data file yang terakhir. Oleh karena itu

seluruh data yang telah dibersihkan kemudian digabungkan kedalam satu file untuk

masing-masing data training positif dan negatif. Setelah dilakukan penggabungan

masing-masing dataset, barulah dilakukan proses pembangunan kamus untuk data

trainingset positif dan negatif. Dalam proses ini dibangun kamus yang sering muncul

dengan frekuensi tertentu dan tidak termasuk stopword yang merupakan kata-kata

pendukung yang tidak dapat dipakai untuk membangun kamus. Stopword ini

berfungsi memfilter kata-kata yang sering muncul dalam conten dan tidak ikut

dimasukkan kedalam kamus menggunakan program perl one-grams.pl, two-grams.pl

dan tree-grams.pl. Dengan menggunakan paket Lingua∷En∷Bigram dapat dilakukan

perintah tersebut untuk melakukan proses pembangunan kamus dan

membandingkannya dengan kata-kata yang terdapat dalam stopword.txt. Apabila

kata-kata yang didapat dan terdapat juga dalam stopword.txt, maka kata-kata tersebut

tidak akan diambil dan tidak dimasukkan kedalam sebuah penampung dan tertulis

dalam sebuah file out tersebut. Langkah tersebut dilakukan terhadap kedua dataset

yaitu data trainingset positif dan data trainingset negatif.

Hasil Dari Kamus Training Set

Berikut hasil dari 1 kata :

Page 6: Langkah Kerja Klasifikasi Data Otomotif …cs.unsyiah.ac.id/.../kuliah/dml/Fitra_Riyanda_1208107010079_tugas.pdf · DATA MINING LANJUT . Langkah Kerja . Klasifikasi Data Otomotif

Berikut hasil dari 2 kata :

Berikut hasil dari 3 kata :

Setelah pembangunan kamus yang memiliki jumlah banyak kata yang

muncul dari masing-masing kelompok kamus bigrams, kemudian dilakukan

perhitungan nilai frekuensi tiap-tiap kamus dimana frekuensi didapatkan dari jumlah

kata dibagi dengan jumlah kata yang paling banyak muncul. Dari ini dapat diperoleh

data dengan nilai antara 0 sampai 1 untuk tiap frekuensinya. Dari nilai frekkuensi

masing-masing kamus bigrams positif dan negatif dilakukan normalisasi dengan

membandingkan dan melakukan eliminasi observasi untuk rasio. Banyaknya rasio

Page 7: Langkah Kerja Klasifikasi Data Otomotif …cs.unsyiah.ac.id/.../kuliah/dml/Fitra_Riyanda_1208107010079_tugas.pdf · DATA MINING LANJUT . Langkah Kerja . Klasifikasi Data Otomotif

dengan threshold dilakukan dengan dua jenis sebagai perbandingan yaitu sebesar 45%

dan 50%. Untuk melakukan hal tersebut, data trainingset kamus negatif dibutuhkan

sebagai pembanding untuk data trainingset pada kamus positif.

Untuk melakukan normalisasi, tahapan untuk diteliti menggunakan dua

metode yaitu melakukan eliminasi observasi langsung dari kelompok bigrams (satu

kata, dua kata dan tiga kata) untuk masing-masing kamus positif dan kamus negatif.

Metode kedua yaitu dengan melakukan penggabungan kamus masing-masing

kelompok bigrams (satu kata, dua kata dan tiga kata) sehingga terbentuk masing-

masing kamus positif dan negatif yang sudah digabungkan untuk masing-masing

rasio 45% dan 50%. Berikut merupakan potongan program dari proses melakukan

normalisasi: foreach $key (keys %minus) { if(defined $plus{$key}){ if($plus{$key}>$minus{$key}){ $score = $minus{$key}/$plus{$key}; if($score>0.5){ delete $plus{$key}; delete $minus{$key}; } elsif($score<0.5){ delete $minus{$key}; } } elsif($$plus{$key}<$minus{$key}){ $score = $plus{$key}/$minus{$key}; if($score>0.5){ delete $plus{$key}; delete $minus{$key}; } elsif($score<0.5){ delete $plus{$key}; } } } }

Teknik dalam eliminasi observasi untuk kamus positif dan negatif dalam

metode kelompok bigrams (satu kata, dua kata dan tiga kata) dengan rasio 45%

dilakukan dengan cara eliminasi kata dimana antara salah satu atau kedua kelompok

kamus positif dan negatif saat dibagi menghasilkan frekuensi lebih besar dari 0.45

atau 45%, maka kedua kata dari masing-masing kelompok pada kamus positif

Page 8: Langkah Kerja Klasifikasi Data Otomotif …cs.unsyiah.ac.id/.../kuliah/dml/Fitra_Riyanda_1208107010079_tugas.pdf · DATA MINING LANJUT . Langkah Kerja . Klasifikasi Data Otomotif

maupun negatif akan dihapus. Dalam kasus lain, apabila salah satu frekuensi pada

kata pada masing-masing kamus positif dan negatif bernilai lebih sedikit atau lebih

kecil dari 0.45 atau 45%, maka salah satu yang memiliki frekuensi yang terkecil akan

di eliminasi.

Dari hasil normalisasi kedua kata memiliki frekuensi yang lebih besar dari 0.45 atau 45% dari hasil bagi uji=0.005967/0.05783=0.103181, sehingga kata “uji” pada kamus positif di eliminasi.

Page 9: Langkah Kerja Klasifikasi Data Otomotif …cs.unsyiah.ac.id/.../kuliah/dml/Fitra_Riyanda_1208107010079_tugas.pdf · DATA MINING LANJUT . Langkah Kerja . Klasifikasi Data Otomotif

Teknik dalam eliminasi observasi untuk kamus positif dan negatif dalam metode kelompok bigrams (satu kata, dua kata dan tiga kata) dengan rasio 50% dilakukan dengan cara eliminasi kata dimana antara salah satu atau kedua kelompok kamus positif dan negatif saat dibagi menghasilkan frekuensi lebih besar dari 0.5 atau 50%, maka kedua kata dari masing-masing kelompok pada kamus positif maupun negatif akan dihapus. Dalam kasus lain, apabila salah satu frekuensi pada kata pada masing-masing kamus positif dan negatif bernilai lebih sedikit atau lebih kecil dari 0.5 atau 50%, maka salah satu yang memiliki frekuensi yang terkecil akan di eliminasi.

Page 10: Langkah Kerja Klasifikasi Data Otomotif …cs.unsyiah.ac.id/.../kuliah/dml/Fitra_Riyanda_1208107010079_tugas.pdf · DATA MINING LANJUT . Langkah Kerja . Klasifikasi Data Otomotif

Dalam kasus ini, kedua kata memiliki frekuensi yang lebih besar dari 0.5 atau 50% dari hasil bagi calon=0.005967/0.01107=0.5388869, sehingga nilai “calon” pada kedua kamus di eliminasi.

3.5 Membangun Fitur, Model dan Pengujian

Untuk tahapan pembangunan fitur, diperlukan kamus akhir positif dan

negatif dari masing-masing kamus yang telah dinormalisasi dan diperlukan juga data

trainingset positif juga data trainingset negatif.

Page 11: Langkah Kerja Klasifikasi Data Otomotif …cs.unsyiah.ac.id/.../kuliah/dml/Fitra_Riyanda_1208107010079_tugas.pdf · DATA MINING LANJUT . Langkah Kerja . Klasifikasi Data Otomotif

Setelah proses pembangunan selesai, maka dengan menggunakan SVM

Learning dan dengan fitur yang telah dibangun, dapat dilakukan pembangunan model

dari fitur tersebut.

Setelah model telah dibangun, tahapan selanjutnya dengan mengklasifikasi

data testingset dari dataset positif dan dataset negatif dengan menggunakan SVM

Classify sehingga menghasilkan output dugaan dari model yang telah dibangun.

Page 12: Langkah Kerja Klasifikasi Data Otomotif …cs.unsyiah.ac.id/.../kuliah/dml/Fitra_Riyanda_1208107010079_tugas.pdf · DATA MINING LANJUT . Langkah Kerja . Klasifikasi Data Otomotif

Dari output tersebut dapat diketahui dugaan dari klasifikasi dataset tersebut,

apabila bernilai ≥ 0, maka dataset dugaan bernilai positif, apabila sebaliknya maka

dataset diduga bernilai negative.