BAB II TINJAUAN PUSTAKA 2.1. Data Mining Dengan perkembangan pesat teknologi informasi termasuk diantaranya teknologi pengelolaan data, penyimpanan data, pengambilan data disertai kebutuhan pengambilan keputusan yang komprehensif, cepat, dan akurat menjadikan data ada dimana-mana disekitar kita. Data terstruktur dikelola oleh database, termasuk bagaimana me-retrieve datanya. Query yang kompleks yang dibutuhkan analis, dan pengambilan keputusan ditangani oleh OLAP (Online Analytical Processing) dengan didukung data warehouse. Data mining merupakan sebuah analisis dari observasi data dalam jumlah besar untuk menemukan hubungan yang tidak diketahui sebelumnya dan metode baru untuk meringkas data agar mudah dipahami serta kegunaannya untuk pemilik data (Hand,2001). Dengan kecanggihan teknologi yang semakin meningkat, kini database mampu untuk menyimpan data berkapasitas terabytes. Dalam kumpulan data yang sangat banyak ini, tersimpan informasi tersembunyi yang merupakan strategi penting. Data mining sesunggunghnya merupakan salah satu rangkaian dari proses pencarian pengetahuan pada database (Knowledge Discovery in Database/KDD). KDD berhubungan dengan teknik integrasi dan penemuan ilmiah, interprestasi dan visualisasi dari pola-pola sejumlah kumpulan data. KDD adalah keseluruhan proses non-trivial untuk mencari dan mengidentifikasi pola (pattern) dalam data, dimana pola yang ditemukan bersifat sah, baru, dapat bermanfaat dan dapat dimengerti. Serangkaian proses tersebut yang memiliki tahap sebagai berikut (Tan,2004): Universitas Sumatera Utara 1. Pembersihan data dan integrasi data (cleaning and integration) Proses ini digunakan untuk membuang data yang tidak konsisten dan bersifat noise dari data yang terdapat diberbagai basisdata yang mungkin berbeda format maupun platform yang kemudian diintegrasikan dalam satu database data warehouse. 2. Seleksi dan transformasi data (selection and transformation) Data yang terdapat dalam database data warehouse kemudian direduksi dengan berbagai teknik. Proses reduksi diperlukan untuk mendapatkan hasil yang lebih akurat dan mengurangi waktu komputasi terutama untuk masalah dengan skala besar (large scale problem). Beberapa cara seleksi, antara lain: a. Sampling, adalah seleksi subset representatif dari populasi data yang besar. b. Denoising, adalah proses menghilangkan noise dari data yang akan ditransformasikan c. Feature extraction, adalah proses membuka spesifikasi data yang signifikan dalam konteks tertentu. Transformasi data diperlukan sebagai tahap pre-procecing, dimana data yang diolah siap untuk ditambang. Beberapa cara transformasi, antara lain (Santosa,2007): 1. Centering, mengurangi setiap data dengan rata-rata dari setiap atribut yang ada. 2. Normalization, membagi setiap data yang dicentering dengan standar deviasi dari atribut bersangkutan. 3. Scaling, mengubah data sehingga berada dalam skala tertentu. Universitas Sumatera Utara Gambar 2.1: Tahap-tahap Knowledge Discovery in Database 3. Penambangan data (data mining) Data yang telah diseleksi dan ditransformasi ditambang dengan berbagai teknik. Proses data mining adalah proses mencari pola atau informasi menarik dalam data terpilih dengan menggunakan fungsi-fungsi tertentu. Fungsi atau algoritma dalam data mining sangat bervariasi. Pemilihan fungsi atau algoritma yang tepat sangat bergantung pada tujuan dan proses pencarian pengetahuan secara keseluruhan. 4. Evaluasi pola dan presentasi pengetahuan Tahap ini merupakan bagian dari proses pencarian pengetahuan yang mencakup pemeriksaan apakah pola atau informasi yang ditemukan bertentangan dengan fakta atau hipotesa yang ada sebelumnya. Langkah terakhir KDD adalah mempresentasikan pengetahuan dalam bentuk yang mudah dipahami oleh pengguna. Universitas Sumatera Utara 2.2. Teknik Data Mining Beberapa teknik Data Mining yang sering digunakan antara lain (Dunham,2002) : 1. Clustering Analisis cluster merupakan salah satu teknik data mining yang bertujuan untuk mengidentifikasi sekelompok obyek yang mempunyai kemiripan karakteristik tertentu yang dapat dipisahkan dengan kelompok obyek lainnya, sehingga obyek yang berada dalam kelompok yang sama relatif lebih homogen daripada obyek yang berada pada kelompok yang berbeda. Clustering adalah salah satu teknik unsupervised learning dimana kita tidak perlu melatih metode tersebut atau dengan kata lain, tidak ada fase learning. Tujuan dari metode clustering adalah untuk mengelompokkan sejumlah data atau objek kedalam klaster sehingga setiap klaster akan terisi data yang semirip mungkin (Santosa,2007). 2. Association Rule (Market Basket Analysis) Association Rule adalah teknik data mining yang digunakan untuk menemukan aturan associative antara suatu kombinasi item. Salah satu contoh penerapan Association Rule adalah Market Basket Analysis. 3. Classification Klasifikasi merupakan proses untuk menemukan sekumpulan model yang menjelaskan dan membedakan kelas-kelas data, sehingga model tersebut dapat digunakan untuk memprediksi nilai suatu kelas yang belum diketahui pada sebuah objek. 4. Regression (Predictive) Analisis regresi merupakan teknik untuk membantu menganalisis hubungan antara suatu peristiwa atau keadaan yang terjadi akibat peristiwa yang lain. Universitas Sumatera Utara 2.3. Pohon Keputusan Pohon Keputusan (Decision tree) adalah salah satu metode yang sangat populer dan banyak digunakan secara praktis. Metode ini merupakan metode yang berusaha menemukan fungsi-fungsi pendekatan yang bernilai diskrit dan tahan terhadap data yang terdapat kesalahan (noisy data) serta mampu mempelajari ekspresi-ekspresi disjunctive (ekspresi OR). Decision tree adalah struktur flowchart yang mempunyai tree (pohon), dimana setiap simpul internal menandakan suatu tes atribut, setiap cabang merepresentasikan hasil tes, dan simpul daun merepresentasikan kelas atau distribusi kelas (Neymark,2007). Decision tree (pohon keputusan) adalah sebuah diagram alir yang mirip dengan struktur pohon, dimana setiap internal node menotasikan atribut yang diuji, setiap cabangnya mempresentasikan hasil dari atribut tes tersebut dan leaf node mepresentasikan kelas-kelas tertentu atau distribusi dari kelas-kelas (Han,2001). Alur pada decision tree ditelusuri dari simpul ke akar ke simpul daun yang memegang prediksi kelas untuk contoh tersebut. decision tree mudah untuk dikonversi ke aturan klasifikasi (classification rule). Konsep data dalam decision tree dinyatakan dalam bentuk tabel dengan atribut dan record. Manfaat utama dari penggunaan pohon keputusan adalah kemampuannya untuk mem-break down proses pengambilan keputusan yang kompleks menjadi lebih simpel sehingga pengambil keputusan akan lebih menginterpretasikan solusi dari permasalahan. Pohon Keputusan juga berguna untuk mengeksplorasi data, menemukan hubungan tersembunyi antara sejumlah calon variabel input dengan sebuah variabel target. Pohon keputusan memadukan antara eksplorasi data dan pemodelan, sehingga sangat bagus sebagai langkah awal dalam proses pemodelan bahkan ketika dijadikan sebagai model akhir dari beberapa teknik lain. Sering terjadi tawar menawar antara keakuratan model dengan transparansi model. Dalam beberapa aplikasi, akurasi dari sebuah klasifikasi atau prediksi adalah satusatunya hal yang ditonjolkan, misalnya sebuah perusahaan direct mail membuat sebuah model yang akurat untuk memprediksi anggota mana yang berpotensi Universitas Sumatera Utara untuk merespon permintaan, tanpa memperhatikan bagaimana atau mengapa model tersebut bekerja. Kelebihan dari metode pohon keputusan adalah: 1. Daerah pengambilan keputusan yang sebelumnya kompleks dan sangat global, dapat diubah menjadi lebih simpel dan spesifik. 2. Eliminasi perhitungan-perhitungan yang tidak diperlukan, karena ketika menggunakan metode pohon keputusan maka sample diuji hanya berdasarkan kriteria atau kelas tertentu. 3. Fleksibel untuk memilih fitur dari internal node yang berbeda, fitur yang terpilih akan membedakan suatu kriteria dibandingkan kriteria yang lain dalam node yang sama. Kefleksibelan metode pohon keputusan ini meningkatkan kualitas keputusan yang dihasilkan jika dibandingkan ketika menggunakan metode penghitungan satu tahap yang lebih konvensional 4. Dalam analisis multivariant, dengan kriteria dan kelas yang jumlahnya sangat banyak, seorang penguji biasanya perlu untuk mengestimasikan baik itu distribusi dimensi tinggi ataupun parameter tertentu dari distribusi kelas tersebut. Metode pohon keputusan dapat menghindari munculnya permasalahan ini dengan menggunakan kriteria yang jumlahnya lebih sedikit pada setiap node internal tanpa banyak mengurangi kualitas keputusan yang dihasilkan. Sedangkan kekurangan dari pohon keputusan adalah : 1. Terjadi overlap terutama ketika kelas-kelas dan kriteria yang digunakan jumlahnya sangat banyak. Hal tersebut juga dapat menyebabkan meningkatnya waktu pengambilan keputusan dan jumlah memori yang diperlukan. 2. Pengakumulasian jumlah error dari setiap tingkat dalam sebuah pohon keputusan yang besar. 3. Kesulitan dalam mendesain pohon keputusan yang optimal. 4. Hasil kualitas keputusan yang didapatkan dari metode pohon keputusan sangat tergantung pada bagaimana pohon tersebut didesain. Universitas Sumatera Utara Bagian awal dari pohon keputusan ini adalah titik akar (root), sedangkan setiap cabang dari decision tree merupakan pembagian berdasarkan hasil uji, dan titik akhir (leaf) merupakan pembagian kelas yang dihasilkan. Pada umumnya proses dari sistem decision tree adalah mengadopsi strategi pencarian top-down untuk solusi ruang pencariannya. Pada proses mengklasifikasikan sampel yang tidak diketahui, nilai atribut akan diuji pada decision tree dengan cara melacak jalur dari titik akar sampai titik akhir, kemudian akan diprediksikan kelas yang ditempati sampel baru tersebut. Decision tree mempunyai 3 tipe simpul yaitu: 1. Simpul akar dimana tidak memiliki cabang yang masuk dan memiliki cabang lebih dari satu, terkadang tidak memiliki cabang sama sekali. 2. Simpul internal dimana hanya memiliki 1 cabang yang masuk, dan memiliki lebih dari 1 cabang yang keluar. 3. Simpul daun atau simpul akhir dimana hanya memiliki 1 cabang yang masuk, dan tidak memiliki cabang sama sekali dan menandai bahwa simpul tersebut merupakan label kelas. Gambar 2.2: Model Pohon Keputusan Disini setiap percabangan menyatakan kondisi yang harus dipenuhi dan tiap ujung pohon menyatakan kelas data. Setelah sebuah pohon keputusan dibangun maka dapat digunakan untuk mengklasifikasikan record yang belum ada kelasnya. Dimulai dari node root, menggunakan tes terhadap atribut dari record yang belum ada kelasnya tersebut lalu mengikuti cabang yang sesuai dengan hasil Universitas Sumatera Utara dari tes tersebut, yang akan membawa kepada internal node (node yang memiliki satu cabang masuk dan dua atau lebih cabang yang keluar), dengan cara harus melakukan tes lagi terhadap atribut atau node daun. Record yang kelasnya tidak diketahui kemudian diberikan kelas yang sesuai dengan kelas yang ada pada node daun. Pada pohon keputusan setiap simpul daun menandai label kelas. Proses dalam pohon keputusan yaitu mengubah bentuk data (tabel) menjadi model pohon (tree) kemudian mengubah model pohon tersebut menjadi aturan (rule). 2.4. Algoritma Iterative Dichotomizes versi 3 (ID3) Iterative Dichotomizes 3 (ID3) adalah algoritma decision tree learning (algoritma pembelajaran pohon keputusan) yang paling dasar. Algoritma ini melakukan pencarian secara rakus /menyeluruh (greedy) pada semua kemungkinan pohon keputusan. Salah satu algoritma induksi pohon keputusan yaitu ID3 (Iterative Dichotomizes 3). ID3 dikembangkan oleh J. Ross Quinlan. Algoritma ID3 dapat diimplementasikan menggunakan fungsi rekursif (fungsi yang memanggil dirinya sendiri). Algoritma ID3 berusaha membangun decision tree (pohon keputusan) secara top-down (dari atas ke bawah), mulai dengan pertanyaan : “atribut mana yang pertama kali harus dicek dan diletakkan pada root?” pertanyaan ini dijawab dengan mengevaluasi semua atribut yang ada dengan menggunakan suatu ukuran statistic (yang banyak digunakan adalah information gain) untuk mengukur efektivitas suatu atribut dalam mengklasifikasikan kumpulan sampel data (David,2004) Decision Tree adalah sebuah struktur pohon, dimana setiap node pohon merepresentasikan atribut yang telah diuji, setiap cabang merupakan suatu pembagian hasil uji, dan node daun (leaf) merepresentasikan kelompok kelas tertentu. Level node teratas dari sebuah decision tree adalah node akar (root) yang biasanya berupa atribut yang paling memiliki pengaruh terbesar pada suatu kelas tertentu. Universitas Sumatera Utara Function ID3 (kumpulanSampel, AtributTarget, KumpulanAtribut) 1. Buat simpul root 2. If semua sampel adalah kelas I, maka return pohon satu simpul root dengan label i 3. If kumpulanAtribut = = 0, return pohon satu simpul Root dengan label = nilai atribut target yang paling sering muncul Else Hitung Information gain tiap atribut A adalah Information gain terbesar. Jadikan A sebagai Root For V i (setiap nilai pada atribut A) - Tambahkan cabang untuk tiap nilai V i - Buat suatu variabel, misal sampel V i , Sebagai himpunan bagian dari kumpulan sampel yang bernilai V i pada atribut A - If sampel V i kosong, maka tambahkan simpul daun dengan label = nilai atribut yang paling sering muncul. Else Dibawah cabang tambahkan subtree dengan memanggil fungsi ID3 (Sampel Vi , AtributTarget, Atribut-[A]) Rekursif. End End End 4. Return Root Gambar 2.3: Algoritma ID3 2.5. Entropy Sebuah obyek yang diklasifikasikan dalam pohon harus dites nilai entropy-nya. Entropy adalah ukuran dari teori informasi yang dapat mengetahui karakteristik dari impurity dan homogeneity dari kumpulan data. Dari nilai entropy tersebut kemudian dihitung nilai information gain (IG) masing-masing atribut.(Gambetta,2003). Universitas Sumatera Utara Gambar 2.4: Entropy Entropy(S) = - P+2 logP + -P-2logPdimana : S adalah ruang (data) sample yang digunakan untuk training. P+ adalah jumlah yang bersolusi positif (mendukung) pada data sample untuk kriteria tertentu. P+ adalah jumlah yang bersolusi negatif (tidak mendukung) pada data sample untuk kriteria tertentu. Dari rumus entropy diatas dapat disimpulkan bahwa definisi entropy (S) adalah jumlah bit yang diperkirakan dibutuhkan untuk dapat mengekstrak suatu kelas (+ atau -) dari sejumlah data acak pada suatu ruang sampel S. Entropy bisa dikatakan sebagai kebutuhan bit untuk menyatakan suatu kelas. Semakin kecil nilai entropy maka semakin baik digunakan dalam mengekstraksi suatu kelas. Panjang kode untuk menyatakan informasi secara optimal adalah –2logP bits untuk messages yang mempunyai probabilitas P. Sehingga jumlah bit yang diperkirakan untuk mengekstraksi S ke dalam kelas adalah : - P+2log P+ - P- 2log P-. Universitas Sumatera Utara 2.6. Information Gain Setelah mendapat nilai entropy untuk suatu kumpulan data, maka kita dapat mengukur efektivitas suatu atribut dalam mengklasifikasikan data. Ukuran efektifitas ini disebut information gain. Secara matematis, information gain dari suatu atribut A, dituliskan sebagai berikut: (Gambetta,2003) Gain (S,A)=Entropy(S) - v Values (A) | Sv | Entropy(S v ) |S | dimana : A : atribut V : suatu nilai yang mungkin untuk atribut A Values (A) : himpunan yang mungkin untuk atribut A |Sv| : jumlah sampel untuk nilai v |S| : jumlah seluruh sampel data Entropy(Sv): Entropy untuk sampel-sampel yang memilki nilai v Universitas Sumatera Utara 2.7. Riset-riset Terkait Terdapat beberapa riset yang telah dilakukan oleh banyak peneliti berkaitan dengan Decision Tree dengan Algoritma ID3 seperti yang akan dijelaskan di bawah ini. Nugroho (2007), dalam risetnya menjelaskan bahwa untuk suatu perusahaan yang secara khusus yang bergerak dibidang jasa, permasalahan yang dihadapi adalah ketika pihak perusahaan mengirimkan barang dengan tujuan alamat yang diperoleh dari pihak pelanggan, seringkali pihak pelanggan tidak memberikan alamat pengiriman secara tepat sehingga pihak perusahaan harus memprediksi alamat tersebut secara manual. Dalam melakukan hal ini, membutuhkan waktu yang tidak sedikit sehingga mengurangi kualitas pelayanan terhadap pelanggan. Dari permasalahan ini, diperlukan suatu solusi yang dapat membantu perusahaan dalam melakukan prediksi suatu alamat yang benar. Salah satu solusi memprediksi validitas alamat adalah dengan membuat suatu sistem yang dianggap mampu melakukan prediksi suatu alamat secara tepat. Metode decision tree dengan algoritma ID3 merupakan salah satu metode dari data mining yang digunakan untuk mengklasifikasikan data sampel kedalam kelas-kelas tertentu. Berdasarkan kemampuan dari metode ini, kemudian dilakukan penelitian untuk menganalisis keefektifitasan metode ini dalam melakukan prediksi alamat menggunakan kelas yang terbentuk dari metode ini. Bentuk penelitian yang dilakukan adalah dengan melihat tingkat kebenaran yang dihasilkan oleh metode ini dalam melakukan validitas prediksi suatu alamat pada sekumpulan data uji yang diteliti. Wahyudin (2009) dalam risetnya juga menjelaskan Konsep pohon merupakan salah satu konsep teori graf yang paling penting. Pemanfaatan struktur pohon dalam kehidupan sehari-hari adalah untuk menggambarkan hierarki dan memodelkan persoalan, contohnya pohon keputusan (decision tree). Iterative dichotomizes 3 ( ID3 ) merupakan suatu metode dalam learning yang akan membangun sebuah pohon keputusan untuk pemodelan dalam mencari solusi dari persoalan. Dalam jurnal ini akan dibahas pemakaian pohon keputusan dalam bidang pendidikan , yaitu dalam hal penerimaan mahasiswa baru. Kegiatan Universitas Sumatera Utara analisis kemahasiswaan diperlukan untuk mendapatkan keputusan yang bersifat menguntungkan demi maju dan berkembangnya suatu universitas dan analisis penerimaan mahasiswa baru tersebut dapat dilakukan melalui berbagai metode, salah satunya dengan decision tree menggunakan ID3 (Iterative Dichotomizes 3). Sofi Defiyanti dan D. L. Crispina Pardede (2009) dalam risetnya menyampaikan tentang klasifikasi spam mail digunakan untuk memisahkan spammail dari non spam mail (legitimate mail). Klasifikasi spam mail berguna untuk menghemat waktu dan biaya yang digunakan untuk menghapus spam mail dari inbox. Untuk itu diperlukan metode yang paling baik untuk melakukan klasifikasi spam mail. Algoritma decision tree merupakan salah satu metode untuk klasifikasi spam mail. Algoritma decision tree telah banyak mengalami pengembangan. Algoritma ID3 dan C4.5 adalah salah satu pengembangan dari algoritma decision tree. Penelitian ini membandingkan kinerja dari dua algoritma tersebut dalam melakukan klasifikasi spam mail. Pengukuran dilakukan menggunakan sekelompok data uji untuk mengetahui persentase precision, recall dan accuracy. Hasil pengukuran menunjukkan algoritma ID3 memiliki kinerja yang lebih baik dibandingkan algoritma C4.5. Universitas Sumatera Utara