BAB II STUDI PUSTAKA Bab ini berisi penjelasan mengenai studi pustaka yang dilakukan berkaitan dengan pelaksanaan tugas akhir, antara lain mengenai Short Messaging Service (SMS), bahasa SMS, pohon keputusan dan pohon keputusan dengan menggunakan perangkat lunak C4.5. 2.1
Pengertian Short Message Service (SMS)
Short Messaging Service atau lebih dikenal dengan SMS adalah suatu layanan yang ada dalam jaringan GSM (Global System for Mobile) yang memungkinkan pengguna layanan untuk mengirimkan dan menerima pesan pendek sepanjang 160 karakter melalui telepon seluler atau melalui internet menggunakan situs yang memiliki SMS Gateway [TON07]. SMS merupakan salah satu fitur dari GSM yang dikembangkan dan distandardisasi oleh ETSI. 2.2
Bahasa SMS
Bahasa SMS atau dikenal dengan Texting Language adalah suatu jenis bahasa yang merupakan modifikasi dari bahasa standar yang ada, sehingga akhirnya memiliki format yang berbeda. Jenis modfikasi yang dilakukan pun bermacam-macam, yang paling umum dikenal yaitu menyingkat suatu kata dengan menghilangkan beberapa huruf dari kata tersebut, misalnya “pesan” disingkat menjadi “psn”. Munculnya bahasa SMS ini tidak lepas dari dua faktor penting, yaitu: 1. Keterbatasan panjang pesan pendek yang dapat dikirimkan melalui SMS Panjang pesan pendek yang dapat dikirimkan oleh sebuah SMS hanya berjumlah 160 karakter. Untuk beberapa telepon seluler yang baru saat ini, mampu mengirimkan 500 karakter SMS sekali kirim, atau setara dengan tiga SMS biasa. Namun, tentunya biaya yang harus dikeluarkan juga sejumlah tiga kali lipat. 2. Kerumitan menggunakan keyboard numerik pada telepon seluler Keyboard telepon seluler adalah keyboard numerik, yang terdiri dari 12 tombol utama, yang kegunaan utamanya adalah untuk menuliskan karakter angka, karakter bintang (*) II-1
II-2 dan karakter pagar (#). Karakter huruf diwakili oleh tombol angka. Setiap tombol angka, mulai dari tombol 2 sampai dengan 9 mewakili lebih dari satu karakter huruf, misalnya tombol angka 2 mewakili karakter huruf A, B dan C, baik huruf kapital ataupun huruf kecil. Untuk menuliskan huruf A, tombol angka 2 harus ditekan satu kali. Dan untuk menuliskan huruf B dan C masing-masing harus menekan tombol 2 sebanyak dua kali dan tiga kali. Jika akan mengganti penulisan menjadi huruf kecil atau huruf besar, diharuskan untuk menekan tombol karakter (*) atau tombol karakter pagar (#), hal ini tergantung merek telepon selulernya. 2.3
Pohon Keputusan
Pembelajaran pohon keputusan adalah metode untuk mengaproksimasi fungsi target yang bernilai diskrit, yang mana fungsi pembelajaran yang dihasilkan direpresentasikan dalam pohon keputusan[MIT97]. Fungsi pembelajaran ini juga dapat di representasikan dalam sekumpulan aturan if-then-else untuk memudahkan pembacaan oleh manusia. Metode ini adalah algoritma inferensi induktif paling popular. 2.3.1 Representasi Pohon Keputusan Pohon keputusan mengklasifikasikan instans dengan cara mengurutkan instans tersebut ke bawah pohon keputusan dari akar sampai daun, setiap daun mewakili klasifikasi dari instans tersebut. Setiap simpul pada pohon melakukan tes dari beberapa atribut yang dimiliki oleh instans, dan setiap cabang yang turun dari simpul tersebut berhubungan dengan sebuah nilai yang mungkin dari atribut tersebut. Sebuah instans diklasifikasikan dengan memulai dari simpul akar dari pohon, mengetes atribut yang dispesifikasikan oleh simpul tersebut, dan kemudian bergerak ke bawah cabang pohon yang berhubungan dengan nilai dari atribut yang diberikan di contoh. Proses ini kemudian diulangi di setiap simpul.
Pembelajaran pohon keputusan secara umum sangat cocok untuk permasalahan yang memiliki karakteristik berikut ini[MIT97]: •
Instans direpresentasikan oleh pasangan-pasangan atribut dan nilai atributnya
•
Fungsi target memiliki keluaran yangdiskrit
II-3 •
Data pelatihan boleh mengandung data yang error
•
Data pelatihan boleh mengandung atribut yang nilainya tidak ada
2.3.2 Inferensi Pohon Keputusan Dengan data pelatihan weather yang digunakan pada lampiran C, didapatkan sebuah pohon keputusan yang dapat dilihat pada gambar II-1.
Gambar II-1 Pohon Keputusan Weather[MIT97]
Proses inferensi/penelusuran pohon keputusan dimulai dari simpul akar yang berupa evaluasi nilai outlook. Jika nilai atribut outlook bernilai overcast, maka instans tersebut akan digolongkan sebagai kelas yes. Jika nilai overcast bernilai sunny, evaluasi akan diteruskan ke simpul sebelah kiri, yang akan mengevaluasi nilai atribut humidity, selanjutnya jika nilai atribut humidity bernilai high, maka instans akan digolongkan sebagai kelas no, sedangkan jika nilai atribut humidity bernilai normal, maka instans akan digolongkan sebagai kelas yes. Sebaliknya jika nilai overcast bernilai rain, evaluasi akan diteruskan ke simpul sebelah kanan, yang akan mengevaluasi nilai atribut wind, selanjutnya jika nilai atribut wind bernilai strong, maka instans akan digolongkan sebagai kelas no, sedangkan jika nilai atribut wind bernilai weak, maka instans akan digolongkan sebagai kelas yes.
II-4 2.4
Pohon Keputusan di C4.5
Subbab ini akan membahas mengenai salah satu perangkat lunak yang telah mengimplementasikan algoritma pohon keputusan C4.5. C4.5 adalah algoritma yang dikembangkan dari algoritma ID3, yang menghilangkan beberapa kelemahan ID3. Keunggulan C4.5 dibandingkan ID3 adalah: •
Mampu menangani data yang bersifat kontinu ataupun diskrit
•
Mampu menangani data yang kehilangan nilai atributnya
•
Mampu melakukan pruning pohon secara langsung
2.4.1 Deklarasi Kelas dan Atribut Data Untuk menggunakan perangkat lunak C4.5, perlu dilakukan beberapa hal terlebih dahulu, yaitu: •
Deklarasi kelas data. Hal ini sangat penting, mengingat fungsi pohon keputusan adalah untuk mengklasifikasikan data.
•
Deklarasi atribut data. Hal ini diperlukan untuk menentukan apa saja atribut data yang digunakan, dan nilai-nilai yang mungkin dari atribut tersebut.
Deklarasi kelas dan atribut data ini dilakukan dalam suatu file berekstensi *.names. Format penulisan deklarasi kelas dan atribut data dapat dilihat pada contoh di gambar di bawah ini: Yes, No.
Outlook: Sunny, Overcast, Rain. Temperature: Hot, Mild, Cool. Humidity: High, Normal. Wind: Weak, Strong.
Gambar II-2 Representasi deklarasi kelas dan atribut data
Contoh diatas merupakan deklarasi kelas dan atribut data untuk data Play Tennis. Terdapat dua kelas untuk data Play Tennis yaitu yes dan no. Atribut-atribut untuk data Play Tennis adalah Outlook, dengan kemungkinan nilai-nilainya yaitu Sunny, Overcast, Rain. Kemudian Temperature, dengan kemungkinan nilai-nilainya yaitu Hot, Mild, Cool.
II-5 Lalu ada Humidity dengan kemungkinan nilai-nilainya High dan Normal. Dan terakhir Wind, dengan kemungkinan nilai-nilainya Weak dan Strong. 2.4.2 Data Pelatihan Untuk dapat membentuk pohon keputusan, selain deklarasi kelas dan atribut data, diperlukan juga data pelatihan. Dengan perangkat lunak C4.5 ini, data-data pelatihan disimpan di dalam file berekstensi *.data. Format penulisan data dapat dilihat pada contoh di gambar berikut ini: Sunny,Hot,High,Weak,No Sunny,Hot,High,Strong,No Overcast,Hot,High,Weak,Yes Rain,Mild,High,Weak,Yes Rain,Cool,Normal,Weak,Yes Rain,Cool,Normal,Strong,No Overcast,Cool,Normal,Strong,Yes Sunny,Mild,High,Weak,No Sunny,Cool,Normal,Weak,Yes Rain,Mild,Normal,Weak,Yes Sunny,Mild,Normal,Strong,Yes Overcast,Mild,High,Strong,Yes Overcast,Hot,Normal,Weak,Yes Rain,Mild,High,Strong,No
Gambar II-3 Representasi data pelatihan
Data pelatihan tersebut terdiri dari 14 instans dan kelas dari masing-masing instans tersebut. Penulisan nilai atribut posisinya harus bersesuaian dengan posisi atribut ketika dideklarasikan. Sebagai contoh, instans {Sunny, Hot, High, Weak}. Sunny adalah nilai untuk atribut Outlook, Hot adalah nilai untuk atribut Temperature, High adalah nilai untuk atribut Humidity, dan Weak adalah nilai untuk atribut Wind. 2.4.3 Pembentukan Pohon Keputusan Pembentukan pohon keputusan dilakukan dengan mengeksekusi program C4.5. Untuk dapat menggunakan program ini, digunakan command prompt atau DOS di Windows, dan pindahkan area kerja ke direktori tempat program berada. Data pelatihan harus berada di direktori yang sama dengan direktori program. Untuk pembentukan pohon
II-6 keputusan dengan program ini, panggil program c4.5 dengan menggunakan argumen –f dan identifier data pelatihan. Sebagai contohnya, dapat dilihat di bawah: >> C4.5
–f
tennis
Command tersebut menandakan bahwa data pelatihan dispesifikasikan oleh tennis.data dan tennis.names. Keluaran program dapat dilihat pada lampiran B. Keluaran program memperlihatkan hirarki pohon keputusan yang dibentuk dari data pelatihan. Selain itu, keluaran program juga memperlihatkan jumlah data yang error atau tidak konsisten dengan data yang lain sebelum dan sesudah pruning pohon. 2.4.4 Pembentukan Aturan Produksi Pembentukan aturan produksi dari pohon keputusan dilakukan dengan mengeksekusi program C4.5rules. Untuk dapat menggunakan program ini, digunakan command prompt atau DOS di Windows, dan pindahkan area kerja ke direktori tempat program berada. Data pelatihan harus berada di direktori yang sama dengan direktori program. Untuk mengeksekusi program C4.5rules, sebelumnya telah dibentuk pohon keputusan dengan mengeksekusi program C4.5 terlebih dahulu. Selanjutnya panggil program c4.5rules dengan menggunakan argumen –f dan identifier data pelatihan yang telah dibentuk pohon keputusannya. Contohnya dapat dilihat sebagai berikut: >> C4.5rules
-f
tennis
Command tersebut menandakan bahwa pohon keputusan yang akan dibuat aturan produksinya adalah pohon keputusan yang data pelatihannya dispesifikasikan oleh tennis.data dan tennis.names. Keluaran program dapat dilihat pada lampiran B. Keluaran program memperlihatkan aturan produksi yang dibangkitkan dari pohon keputusan, beserta perhitungan nilai kebenaran aturan tersebut secara statistik. Selain itu, keluaran program tersebut memperlihatkan hasil evaluasi dari masing-masing aturan produksi yang dibentuk.