15 Metode Meyelesaikan Data Mining,Sistem Pakar Dan SPK

196
85 Sistem Pakar KATA PENGANTAR Puji dan syukur kehadirat Tuhan Yang Maha Esa atas segala berkat dan lindunganNya sehingga buku yang berjudul 15 Metode Menyelesaikan Data Mining, Sistem Pakar dan Sistem Pendukung Keputusan ini dapat saya selesaikan dengan tuntas setelah melewati masa-masa yang cukup melelahkan kurang lebih 14 bulan dengan menelusuri beberapa referensi dari jurnal, internet, buku dan artikel-artikel lainnya. Buku 15 Metode Menyelesaikan Data Mining, Sistem Pakar dan Sistem Pendukung Keputusan ini ditujukan khusus untuk mahasiswa dan tidak tertutup kemungkinan juga para masyarakat awam yang ingin memahami cara membangun system berbasis artificial intelligence. Karena memang sengaja disusun lengkap dengan contoh-contoh dan latihan sehingga benar-benar para pembaca mudah memahami dan mampu mengimplementasikannya. Kalangan mahasiswa sering terkendala dengan metode-metode yang berhubungan dengan Data Mining, Sistem Pakar dan Sistem Pendukung Keputusan, dalam buku ini penulis membahas 15 metode sehingga antar metode dapat diimplementasikan ke dalam Data Mining, Sistem Pakar dan Sistem Pendukung Keputusan. Melalui kata pengantar ini, penulis ingin mengucapkan trimakasih yang sebesar- besarnya kepada Yayasan Teknologi Informasi Mutiara dan STMIK Kaputama serta seluruh civitas akademika STMIK KAPUTAMA Binjai yang turut serta membantu dari segi doa dan motivasi hingga selesainya buku ini, dan persembahan khusus buku ini kepada Triple-R Buaton Junior (Randhy, Richard, Rachel) dan istri tercinta Dewi Sartika. Akhir kata semoga buku ini bermanfaat bagi kita semua Medan 2014

description

Data Mining

Transcript of 15 Metode Meyelesaikan Data Mining,Sistem Pakar Dan SPK

  • 85Sistem Pakar

    KATA PENGANTAR

    Puji dan syukur kehadirat Tuhan Yang Maha Esa atas segala berkat danlindunganNya sehingga buku yang berjudul 15 Metode Menyelesaikan DataMining, Sistem Pakar dan Sistem Pendukung Keputusan ini dapat sayaselesaikan dengan tuntas setelah melewati masa-masa yang cukup melelahkankurang lebih 14 bulan dengan menelusuri beberapa referensi dari jurnal, internet,buku dan artikel-artikel lainnya.

    Buku 15 Metode Menyelesaikan Data Mining, Sistem Pakar dan SistemPendukung Keputusan ini ditujukan khusus untuk mahasiswa dan tidak tertutupkemungkinan juga para masyarakat awam yang ingin memahami caramembangun system berbasis artificial intelligence. Karena memang sengajadisusun lengkap dengan contoh-contoh dan latihan sehingga benar-benar parapembaca mudah memahami dan mampu mengimplementasikannya.

    Kalangan mahasiswa sering terkendala dengan metode-metode yang berhubungandengan Data Mining, Sistem Pakar dan Sistem Pendukung Keputusan, dalambuku ini penulis membahas 15 metode sehingga antar metode dapatdiimplementasikan ke dalam Data Mining, Sistem Pakar dan Sistem PendukungKeputusan.

    Melalui kata pengantar ini, penulis ingin mengucapkan trimakasih yang sebesar-besarnya kepada Yayasan Teknologi Informasi Mutiara dan STMIK Kaputamaserta seluruh civitas akademika STMIK KAPUTAMA Binjai yang turut sertamembantu dari segi doa dan motivasi hingga selesainya buku ini, danpersembahan khusus buku ini kepada Triple-R Buaton Junior (Randhy, Richard,Rachel) dan istri tercinta Dewi Sartika. Akhir kata semoga buku ini bermanfaatbagi kita semua

    Medan 2014

  • 86Sistem Pakar

    Penulis

    DAFTAR ISI

    Kata PengantarDaftar IsiBAB 1 : PendahuluanBAB 2 : DATA MINING

    2.1. Pengertian Data Mining2.2.1. Data Warehouse2.2.2. Proses Data Mining2.2.3. Teknik Data Mining

    2.2. Metode Rough Set2.2.1. Pengantar Rough Set2.2.2. Discernibility Matrix2.2.3. Discernibility Matrix Modulo D2.2.4. Reduct2.2.5. Generating Rules

    2.3. Metode Association Rules2.3.1. Pengantar Association Rules2.3.2. Terminologi Association Rule2.3.3. Langkah-Langkah Algoritma PadaAssociation Rule

    2.4.Metode Clustering2.4.1. Pengantar Clustering2.4.2. Algoritma K-Means

    2.5. Artificial Neural Networ(ANN)2.5.1. Pengantar Jaringan syaraf Tiruan2.5.2. Perceptron2.5.3. BACK PROPAGATION(Perambatan Galat Mundur)

    2.5.3.1. Pengantar Back Propagation2.6. Decision Tree(Pohon Keputusan)

    2.6.1. Pengantar Decision Tree2.6.2.AlgoritmaID3

    BAB 3 : SISTEM PAKAR3.1. Sekilar Tentang Artificial Inteligence

    3.1.1. Pengertian Sistem Pakar3.1.2. Konsep Dasar Sistem Pakar3.1.3. Ciri-Ciri Sistem Pakar3.1.4. Struktur Sistem Pakar3.1.5. Keuntungan Sistem Pakar3.1.6. Representasi pengetahuan3.1.7. Model Representasi Pengetahuan3.1.8. Inferensi

    3.2. Metode Bayes

  • 87Sistem Pakar

    3.2.1. Prior3.2.1. Posterior3.2.3. Penerapan Metode Bayes

    3.3. Fuzzy Sistem3.3.1 Fuzziness dan Probabilitas3.3.2 Fuzzy Set3.3.3 Fuzzy logic

    3.4. Certainty Factor3.4.1.Pengertian Faktor Kepastian ( Certainty Factor )3.4.2.Perhitungan Certainty Factor

    BAB 4: SISTEM PENDUKUNG KEPUTUSAN4.1. Fuzzy Multiple Attribute Decision Making (FMADM)

    4.1.1. Sistem Pendukung Keputusan4.1.2. Ciri-ciri Decision Support System (DSS)4.1.3. Karakteristik, Kemampuan dan Keterbatasan SPK4.1.4. Komponen - Komponen Sistem Pendukung Keputusan4.1.5. Tahapan Proses Pengambilan Keputusan

    4.2. Metode Analytical Hierarchy Process (AHP)4.2.1 Kelebihan AHP4.2.2 Prinsip - Prinsip Analytical Hierarchy Process4.2.3 Langkah-Langkah Analytical Hierarchy Process4.2.4. Contoh Kasus Dengan Metode AHP

    4.3.Metode TOPSIS( Technique For Order Preference by Similarity to4.3.1. Langkah-langkah metode TOPSIS4.3.2. Contoh Penerapan Metode Topsis

    4.4.Metode Weighted Product (WP)4.4.1.Contoh Kasus Dengan Metode WP

    4.5. Metode Simple Additive Weighting (SAW)4.5.1. Analisis Pemecahan Masalah dengan Metode SAW4.5.2.Studi Kasus

    Daftar Pustaka

  • 88Sistem Pakar

    MOTTO

    Jangan Pernah Berhenti Untuk Belajar

  • 89Sistem Pakar

    Tentang Penulis

    Relita Buaton, ST, M. Kom, lahir pada tahun 1979yang selalu mendapat prestasi baik sejak SD, SMP,SMA hingg jenjang Perguruan Tinggi. Gelar ST diraihdi ISTP(Institut Sains dan Teknologi TD. Pardede) padatahun 2004 di Medan, Gelar M. Kom diraih di UPI(Universitas Putra Indonesia) di Padang tahun 2010.

    Berbagai pengalaman dan pekerjaan telah didapatsebagai EDP Staff, IT Manager di beberapa perusahaan swasta di Kota Medan,Sejak tahun 2006 mengabdi sebagai dosen di beberapa PTS Medan, dan tahun2009 sebagai dosen tetap di STMIK Kaputama Binjai sampai saat ini

    Penulis gemar pada beberapa cabang ilmu computer diantaranya,pemrograman(desktop maupun web base), Artificial Inteligence, Expert Systemdan Data Mining. Kontak dengan penulis dapat [email protected]

  • 90Sistem Pakar

    BAB I

    PENGANTAR

    Buku ini terdiri dari 4 bab, yang terdiri dari Data Mining, Sistem Pakar danSistem Pendukung Keputusan, berikut akan dijelaskan gambaran bab demi bab

    Bab I pengantar

    Bab II tentang data mining mencakupa. Konsep data miningb. Metode Rough Setc. Apriori

    d. Clusteringe. Perceptro

    f. Back Propagation

    g. Decision Tree

    Data mining merupakan serangkaian proses untuk menggali nilai tambah darisuatu kumpulan data berupa pengetahuan yang selama ini tidak diketahui secaramanual dari suatu kumpulan data. Defenisi lain data mining adalah sebagai prosesuntuk mendapatkan informasi yang berguna dari gudang basis data yang besar.Data mining juga diartikan sebagai pengekstrakan informasi baru yang diambildari bongkahan data besar yang membantu dalam pengambilan keputusan. Istilahdata mining kadang disebut juga knowledge discovery. Istilah data mining danKnowledge Discovery in Database (KDD) sering kali digunakan secara bergantianuntuk menjelaskan proses penggalian informasi tersembunyi dalam suatu basisdata yang besar. Sebenarnya kedua istilah tersebut memiliki konsep yang berbeda,

  • 91Sistem Pakar

    tetapi berkaitan satu sama lain. KDD adalah kegiatan yang meliputi pengumpulan,pemakaian data, historis untuk menemukan keteraturan, pola atau hubungandalam set data yang berukuran besar

    Data mining didefinisikan sebagai proses menemukan pola-pola dalam data. Polayang ditemukan harus penuh arti dan pola tersebut memberikan keuntungan.Karakteristik data mining sebagai berikut

    1. Data mining berhubungan dengan penemuan sesuatu yang tersembunyidan pola data tertentu yang tidak diketahui sebelumnya.

    2. Data mining biasa menggunakan data yang sangat besar. Biasanya datayang besar digunakan untuk membuat hasil lebih dipercaya.

    3. Association rule mining adalah teknik mining untuk menemukan aturanassosiatif antara suatu kombinasi item. Contoh dari aturan assosiatif darianalisa pembelian di suatu pasar swalayan adalah bisa diketahui berapabesar kemungkinan seorang pelanggan membeli roti bersamaan dengansusu. Dengan pengetahuan tersebut, pemilik pasar swalayan dapatmengatur penempatan barangnya atau merancang kampanye pemasarandengan memakai kupon diskon untuk kombinasi barang tertentu. Pentingtidaknya suatu aturan assosiatif dapat diketahui dengan dua parameter,support yaitu persentase kombinasi item tersebut dalam database danconfidence yaitu kuatnya hubungan antar item dalam aturan assosiatif.

    4. Classification adalah proses untuk menemukan model atau fungsi yangmenjelaskan atau membedakan konsep atau kelas data, dengan tujuanuntuk dapat memperkirakan kelas dari suatu objek yang labelnya tidakdiketahui.

    5. Decision tree adalah salah satu metode classification yang paling populerkarena mudah untuk diinterpretasi oleh manusia. Setiap percabanganmenyatakan kondisi yang harus dipenuhi dan tiap ujung pohonmenyatakan kelas data. Algoritma decision tree yang paling terkenaladalah C4.5, tetapi akhir-akhir ini telah dikembangkan algoritma yang

  • 92Sistem Pakar

    mampu menangani data skala besar yang tidak dapat ditampung di mainmemory seperti RainForest.

    6. ClusteringBerbeda dengan association rule dan classification dimana kelas data telahditentukan sebelumnya, clustering melakukan pengelompokan data tanpaberdasarkan kelas data tertentu. Bahkan clustering dapat dipakai untukmemberikan label pada kelas data yang belum diketahui itu. Karena ituclustering sering digolongkan sebagai metode unsupervised learning.Prinsip clustering adalah memaksimalkan kesamaan antar anggota satukelas dan meminimumkan kesamaan antar kelas/cluster. Clustering dapatdilakukan pada data yang memiliki beberapa atribut yang dipetakansebagai ruang multidimensi.

    7. Neural Network

    Merupakan pendekatan perhitungan yang melibatkan pengembanganstruktur secara matematis dengan kemampuan untukbelajar dan mampumenurunkan pengertian dari data yang kompleks dan tidak jelas dan dapatdigunakan pula untuk mengekstrak pola dan mendeteksi trend-trend yangsangat kompleks untuk dibicarakan baik oleh manusia maupun teknikkomputer lainnya. Jaringan syaraf buatan yang terlatih dapat dianggapsebagai pakar dalam kategori informasi yang akan dianalisis. Pakar inidapatbdigunakan untuk memproyeksi situasi baru dari ketertarikaninformasi

    Dengan memahami bab 2, maka dapat memecahkah masalah yang berhubungandengan tumpukan data, sehingga mampu mendapatkan informasi ataupengetahuan baru sekumpulan atau tumpukan data. Untuk memahami metode-metode yang terdapat dalam data mining, penulis membuat beberapa contoh untukmemahami perhitungan secara matematis

    Kalangan mahasiswa terkadang mengalami kesulitan dalam memilihi metodeuntuk penelitian, pada bab 2 penulis juga menjelaskan saat kapan metode terdebutdigunakan sesuai data.

  • 93Sistem Pakar

    Bab III tentang Sistem pakar, mencakupa. Konsep system pakar

    b. Backward Chainingc. Forward Chainingd. Metode Fuzzy Logice. Certainty factorf. Metode Bayes

    Sistem Pakar ( Expert System ) adalah sistem yang berusaha mengadopsipengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalahseperti biasa yang dilakukan para ahli Sistem pakar (expert system) mulaidikembangkan pada pertengahan tahun 1960-an oleh Artificial IntelligenceCorporation. Sistem pakar yang muncul pertama kali adalah General-purposeProblem Solver (GPS) yang merupakan sebuah predecessor untuk menyusunlangkah-langkah yang dibutuhkan untuk mengubah situasi awal menjadi statetujuan yang telah ditentukan sebelumnya dengan menggunakan domain masalahyang kompleks. Sistem pakar dapat diterapkan untuk persoalan di bidang industri,pertanian, bisni, kedokteran, militer, komunikasi dan transportasi, pariwisata,pendidikan, dan lain sebagainya. Permasalahan tersebut bersifat cukup kompleksdan terkadang tidak memiliki algoritma yang jelas di dalam pemecahannya,sehingga dibutuhkan kemampuan seorang atau beberapa ahli untuk mencarisistematika penyelesaiannya secara evolutif.

    Sistem pakar disusun oleh dua bagian utama, yaitu: lingkunganpengembangan (development environment) dan lingkungan konsultasi(consultation environment) (Muhammad Arhami, 2005). Lingkunganpengembangan sistem pakar digunakan untuk memasukkan pengetahuan pakarkedalam lingkungan sistem pakar, sedangkan lingkungan konsultasi digunakanoleh pengguna yang bukan pakar guna memperoleh pengetahuan pakar.

  • 94Sistem Pakar

    Komponen-komponen yang terdapat dalam sistem pakar antara lain adalahsebagai berikut :

    1. Antarmuka pengguna (user interface)User interface merupakan mekanisme yang digunakan oleh pengguna dansistem pakr untuk berkomunikasi. Antarmuka menerima informasi daripemakai dan mengubahnya kedalam bentuk yang dapat diterima olehsistem. Pada bagian ini terjadi dialog antara program dan pemakai, yangmemungkinkan sistem pakar menerima instruksi dan informasi (input) daripemakai, juga memberikan informasi (output) kepada pemakai.

    1. Basis Pengetahuan

    Basis pengetahuan berisi pengetahuan-pengetahuan dalam penyelesaianmasalah dalam domain tertentu.Ada dua bentuk pendekatan basispengetahuan yang sangat umum digunakan, yaitu :

    a) Penalaran berbasis aturan (Rule-Based Reasoning)Pengetahuan direpresentasikan dengan menggunakan aturan berbentuk : IF-THEN. Bentuk ini digunakan apabila memiliki sejumlah pengetahuan pakarpada suatu permasalahan tertentu, dan pakar dapat menyelesaikan masalahtersebut secara berurutan.

    b) Penalaran berbasis kasus (Case-Based Reasoning)Basis pengetahuan berisi solusi-solusi yang telah dicapai sebelumnya,kemudian akan diturunkan suatu solusi untuk keadaan yang terjadi sekarang.

    3. Akuisisi Pengetahuan (knowledge acquisition)Akuisisi pengetahuan adalah akumulasi, transfer, dan transformasi keahliandalam menyelesaikan masalah dari sumber pengetahuan kedalam programkomputer. Dalam tahap ini knowledge engineer berusaha menyerappengetahuan untuk selanjutnya di transfer ke dalam basispengetahuan.Terdapat empat metode utama dalam akuisisi pengetahuan, yaitu:wawancara, analisis protocol, observasi pada pekerjaan pakar dan induksiaturan dari contoh.

  • 95Sistem Pakar

    4. Mesin inferensi

    Mesin inferensi merupakan perangkat lunak yang melakukan penalaran denganmenggunakan pengetahuan yang ada untuk menghasilkan suatu kesimpulanatau hasil akhir. Dalam komponen ini dilakukan permodelan proses berfikirmanusia.

    5. WorkplaceWorkplace merupakan area dari sekumpulan memori kerja yang digunakanuntuk merekam hasil-hasil dan kesimpulan yang dicapai. Ada tiga tipekeputusan yang direkam, yaitu :a) Rencana : Bagaimana menghadapi masalah.b) Agenda : Aksi-aksi yang potensial yang sedang menunggu untuk eksekusi.c) Solusi : calon aksi yang akan dibangkitkan.

    6. Fasilitas penjelasanFasilitas penjelasan adalah komponen tambahan yang akan meningkatkankemampuan sistem pakar. Komponen ini menggambarkan penalaran sistemkepada pemakai dengan cara menjawab pertanyaan-pertanyaan.

    7. Perbaikan pengetahuanPakar memiliki kemampuan untuk menganalisis dan meningkatkan kinerjanyaserta kemampuan untuk belajar dan kinerjanyaSistem pakar merupakan program yang dapat menggantikan keberadaan seorangpakar. Alasan mendasar mengapa sistem pakar dikembangkan menggantikanseorang pakar adalah sebagai berikut :

    1. Dapat menyediakan kepakaran setiap waktu dan di berbagai lokasi.2. Secara otomatis mengerjakan tugas-tugas rutin yang membutuhkan

    seorang pakar.

    3. Seorang pakar akan pensiun atau pergi.

    4. Menghadirkan atau menggunkan jasa seorang pakar memerlukan biayayang mahal.

    5. Kepakaran dibutuhkan juga pada lingkungan yang tidak bersahabat(hostile environment).

  • 96Sistem Pakar

    Dengan memahami bab 3 yaitu tentang system pakar, para pembaca diharapkanmampu menerapkan metode-metode tersebut untuk membangun system pakarmaupun memahami perhitungan secara matematis

    Bab IV tentang Sistem Pendukung Keputusan, mencakupa. Konsep system pendukung keputusanb. MADMc. AHP

    d. SAWe. WP

    f. TOPSIS

    Fuzzy Multiple Attribute Decision Making (FMADM) adalah suatu metode yangdigunakan untuk mencari alternatif optimal dari sejumlah alternatif dengankriteria tertentu. Inti dari FMADM adalah menentukan nilai bobot untuk setiapatribut, kemudian dilanjutkan dengan proses perankingan yang akan menyeleksialternatif yang sudah diberikan. Pada dasarnya, ada tiga pendekatan untukmencari nilai bobot atribut, yaitu pendekatan subyektif, pendekatan obyektif danpendekatan integrasi antara subyektif & obyektif. Masing-masing pendekatanmemiliki kelebihan dan kelemahan. Pada pendekatan subyektif, nilai bobotditentukan berdasarkan subyektifitas dari para pengambil keputusan, sehinggabeberapa faktor dalam proses perankingan alternatif bisa ditentukan secara bebas.Sedangkan pada pendekatan obyektif, nilai bobot dihitung secara matematissehingga mengabaikan subyektifitas dari pengambil keputusan

    Sistem Pendukung Keputusan adalah suatu sistem informasi bebasis komputeryang menghasilkan berbagai alternatif keputusan untuk membantu manajemendalam menangani berbagai permasalahan yang terstruktur ataupun tidakterstruktur dengan menggunakan data dan model. Kata berbasis komputermerupakan kata kunci, karena hampir tidak mungkin membangun SPK tanpa

  • 97Sistem Pakar

    memanfaatkan komputer sebagai alat bantu, terutama untuk menyimpan data sertamengelola model

    a. Karakteristik DSS

    1. Mendukung seluruh kegiatan organisasi

    2. Mendukung beberapa keputusan yang saling berinteraksi

    3. Dapat digunakan berulang kali dan bersifat konstan

    4. Terdapat dua komponen utama, yaitu data dan model

    5. Menggunakan baik data eksternal dan internal

    6. Memiliki kemampuan what-if analysis dan goal seeking analysis

    7. Menggunakan beberapa model kuantitatif

    b. Kemampuan DSS

    1. Menunjang pembuatan keputusan manajemen dalam menangani masalahsemi terstruktur dan tidak terstruktur

    2. Membantu manajer pada berbagai tingkatan manajemen, mulai darimanajemen tingkat atas sampai manajemen tingkat bawah

    3. Menunjang pembuatan keputusan secara kelompok maupun perorangan4. Menunjang pembuatan keputusan yang saling bergantung dan berurutan5. Menunjang tahap-tahap pembuatan keputusan antara lain intelligensi,

    desain, choice, dan implementation6. Menunjang berbagai bentuk proses pembuatan keputusan dan jenis

    keputusan

    7. Kemampuan untuk melakukan adaptasi setiap saat dan bersifat fleksibel8. Kemudahan melakukan interaksi system

  • 98Sistem Pakar

    9. Meningkatkan efektivitas dalam pembuatan keputusan daripada efisiensi10. Mudah dikembangkan oleh pemakai akhi11. Kemampuan pemodelan dan analisis pembuatan keputusan12. Kemudahan melakukan pengaksesan berbagai sumber dan format data

    Di samping berbagai Karakteristik dan Kemampuan seperti dikemukakandi atas, SPK juga memiliki beberapa keterbatasan, diantaranya adalah

    1. Ada beberapa kemampuan manajemen dan bakat manusia yang tidak dapatdimodelkan, sehingga model yang ada dalam sistem tidak semuanyamencerminkan persoalan sebenarnya.

    2. Kemampuan suatu SPK terbatas pada pembendaharaan pengetahuan yangdimilikinya (pengetahuan dasar serta model dasar).

    3. Proses-proses yang dapat dilakukan oleh SPK biasanya tergantung jugapada kemampuan perangkat lunak yang digunakannya.

    4. SPK tidak memiliki kemampuan intuisi seperti yang dimiliki olehmanusia. Karena walau bagaimana pun canggihnya suatu SPK, hanyalahsautu kumpulan perangkat keras, perangakat lunak dan sistem operasiyang tidak dilengkapi dengan kemampuan berpikir.

    Dengan membaca bab 4 yakni tentang system pendukung keputusan, pembacamampu membangun system pendukung keputusan, yan tentu konsepnya berbedadengan data mining dan system pendukung keputusan

    Buku ini juga disertai dengan beberapa contoh kasus, dimana kasus tersebutdiambil dari pengalaman penulis dalam beberap jurnal yang penulis buatdan sedang proses penerbitan

  • 99Sistem Pakar

    BAB II

    DATA MINING

    2.1. Pengertian Data Mining

    Sebelum membahas lebih jauh tentang data mining, mari kita simakterlebih dahulu pengalaman 2 orang mahasiswa pasca sarjana di Curtin Universityof Tecnology berikut ini(Yudho, 2003)

    Ketika saya mengikuti program orientasi mahasiswa baru pasca sarjanadi Curtin University of Technology, saya berkenalan dengan seorangmahasiswi asal Australia. Dia mengambil program Master di bidangJaringan Komputer dan telah menyandang gelar MCSE (MicrosoftCertified Systems Engineer), lalu dia bertanya pada saya, Apa topik

    penelitian Anda?, saya menjawab Data Mining. Dia kemudian

    memberi komentar kepada saya, Oh. itu bagus sekali. Anda tepat

    sekali mengambil topik itu disini, karena kita punya pertambangan emasyang besar sekali di Kalgoorlie (Kalgoorlie berada 600 km di sebelah timurPerth dan Curtin University mempunyai cabang kampus disana). Data

    Mining memang salah satu cabang ilmu komputer yang relatif baru. Dansampai sekarang orang masih memperdebatkan untuk menempatkan datamining di bidang ilmu mana, karena data mining menyangkut database,kecerdasan buatan (artificial intelligence), statistik, dsb. Ada pihak yangberpendapat bahwa data mining tidak lebih dari machine learning atauanalisa statistik yang berjalan di atas database. Namun pihak lainberpendapat bahwa database berperanan penting di data mining karenadata mining mengakses data yang ukurannya besar (bisa sampai terabyte)dan disini terlihat peran penting database terutama dalam optimisasi query-nya. Lalu apakah data mining itu? Apakah memang berhubungan erat

  • 100Sistem Pakar

    dengan dunia pertambangan, tambang emas, tambang timah, dsb. Definisisederhana dari data mining adalah ekstraksi informasi atau pola yangpenting atau menarik dari data yang ada di database yang besar. Dalamjurnal ilmiah, data mining juga dikenal dengan nama Knowledge Discoveryin Databases (KDD)

    Kutipan di atas menceritakan 2 orang mahasiswa yang memiliki perbedaanpersfektif dan pemahaman terkait dengan data mining, ketika dia mengatakantopik penelitiannya tentang data mining, dan temannya beranggapan bahwa datamining itu berarti penggalian atau penambangan(emas, timah, dll), sehingga diamengatakan , oh itu bagus sekali karena kita punya pertambangan emas yangbesar sekali di Kalgoorlie, mungkin kata mining diasumsikan sama denganpenambangan atau penggalian emas atau timah.

    Setiap hari, bulan atau tahun data transaksi di perusahaan, perguruantinggi, swalayan atau instansi lainnya terakumulasi dalam jumlah yang besar. Jikadalam satu hari ada 200 transaksi, maka dalam setahun kurang lebih sekitar72.000 transaksi. Kemudian berapa transaksi jika data itu diakumulasikan untuk10 tahun. Pertanyaannya setelah data itu selesai digunakan setiap bulannya,

    untuk apa data itu disimpan?apakah dibuang, atau disimpan begitu saja hingga menjadi gunung data?

    Kalau disimpan terus menerus tentu membutuhkan biaya untuk penambahankapasitas memori penyimpanan dan biaya perawatan. Solusi terbaik adalahdengan membuang data, tetapi sebelum data itu dimusnahkan maka data tersebutdigali terlebih dahulu untuk mendapatkan pengetahuan baru, informasi baru yangsangat berarti dengan menggunakan teknik data mining.

    Data mining merupakan serangkaian proses untuk menggali nilai tambahdari suatu kumpulan data berupa pengetahuan yang selama ini tidak diketahuisecara manual dari suatu kumpulan data. Defenisi lain data mining adalah sebagaiproses untuk mendapatkan informasi yang berguna dari gudang basis data yangbesar. Data mining juga diartikan sebagai pengekstrakan informasi baru yangdiambil dari bongkahan data besar yang membantu dalam pengambilan

  • 101Sistem Pakar

    keputusan. Istilah data mining kadang disebut juga knowledge discovery (EkoPrasetyo, 2012). Istilah data mining dan Knowledge Discovery in Database(KDD) sering kali digunakan secara bergantian untuk menjelaskan prosespenggalian informasi tersembunyi dalam suatu basis data yang besar. Sebenarnyakedua istilah tersebut memiliki konsep yang berbeda, tetapi berkaitan satu samalain. KDD adalah kegiatan yang meliputi pengumpulan, pemakaian data, historisuntuk menemukan keteraturan, pola atau hubungan dalam set data yang berukuranbesar (Budi Santoso , 2007a).

    Data mining didefinisikan sebagai proses menemukan pola-pola dalamdata. Pola yang ditemukan harus penuh arti dan pola tersebut memberikankeuntungan. Karakteristik data mining sebagai berikut

    8. Data mining berhubungan dengan penemuan sesuatu yang tersembunyidan pola data tertentu yang tidak diketahui sebelumnya.

    9. Data mining biasa menggunakan data yang sangat besar. Biasanya datayang besar digunakan untuk membuat hasil lebih dipercaya.

    Data mining berguna untuk membuat keputusan yang kritis, terutamadalam strategi (Davies, 2004), juga dapat digunakan untuk pengambilankeputusan di masa depan berdasarkan informasi yang diperoleh dari data masalalu. Tergantung pada aplikasinya, data bisa berupa data mahasiswa, data pasien,data nasabah atau penjualan. Banyak kasus dalam kehidupan sehari-hari yangtanpa disadari bisa diselesaikan dengan data mining, diantaranya adalah

    1. Memprediksi harga saham dalam beberapa bulan ke depan berdasarkanperformansi perusahaan dan data-data ekonomi

    2. Memprediksi berapa jumlah mahasiswa baru di perguruan tinggiberdasarkan data pendaftar pada tahun-tahun sebelumnya

    3. Memprediksi nilai indeks prestasi mahasiswa berdasarkan nilai IPsetiap semester sebelumnya

    4. Produk apa yang akan dibeli pelanggan secara bersamaan jika membeliproduk di swalayan

  • 102Sistem Pakar

    5. Bagaimana mengetahui karakteristik nasabah yang kredit lancar ataumacet dalam suatu perbankan atau finance

    6. Mengelompokan customer berdasarkan minat, atau pola kebiasaansehingga mempermudah menentukan target pemasaran

    7. Dll.

    Tentu masih banyak lagi contoh-contoh dalam bidang lain atau kasuslain yang kaitannnya dengan penggalian data sehingga bisa menghasilkanpengetahuan baru dan informasi baru menjadi strategi dalam mengembangkansuatu bidang uasaha.

    9.1.1. Data WarehouseData warehouse merupakan kumpulan data dari berbagai sumber yang

    disimpan dalam suatu gudang data (repository) dalam kapasitas besar dandigunakan untuk proses pengambilan keputusan (Prabhu, 2007). Data warehousemenyatukan dan menggabungkan data dalam bentuk multidimensi. Pembangunandata warehouse meliputi pembersihan data, penyatuan data dan transformasi datadan dapat dilihat sebagai praproses yang penting untuk digunakan dalam datamining. Selain itu data warehouse mendukung On-line Analitycal Processing(OLAP), sebuah kakas yang digunakan untuk menganalisis secara interaktif daribentuk multidimensi yang mempunyai data yang rinci. Sehingga dapatmemfasilitasi secara efektif data generalization dan data mining. Banyak metode-metode data mining yang lain seperti asosiasi, klasifikasi, prediksi, dan clustering,dapat diintegrasikan dengan operasi OLAP untuk meningkatkan proses miningyang interaktif dari beberapa level dari abstraksi. Oleh karena itu data warehousemenjadi platform yang penting untuk data analisis dan OLAP untuk dapatmenyediakan platform yang efektif untuk proses data mining.

    Menurut William Inmon, karakteristik dari data warehouse adalah sebagaiberikut :

    1. Subject oriented.

  • 103Sistem Pakar

    Pada sistem operasional, data disimpan berdasarkan aplikasi. Set datahanya terdiri dari data yang dibutuhkan oleh fungsi yang terkait danaplikasinya. Sedangkan pada data warehouse, data disimpan bukanberdasarkan aplikasi, melainkan berdasarkan subjeknya. Misalnya untuksebuah perusahaan manufaktur subjek bisnis yang penting, yaitupenjualan, pengangkutan, dan penyimpanan barang.

    2. Integrated.Data yang tersimpan dalam data warehouse terdiri dari berbagai systemoperasional. Oleh sebab itu terdapat kemungkinan bahwa terjadi beberapaperbedaan, yaitu dalam konvensi penamaan, representasi kode, atribut datadan pengukuran data. Keempat perbedaan tersebut harus disamakanterlebih dahulu sesuai dengan standar tertentu agar data yang nantinyatersimpan dalam data warehouse dapat terintegrasi.

    3. Time variant.

    Pada data warehouse, data yang tersimpan adalah data historis dalamkurun waktu tertentu, bukan data terkini. Oleh karena itu data yangtersimpan mengandung keterangan waktu, misalnya tanggal, minggu,bulan, catur wulan,dan sebagainya. Karakteristik time variant pada datawarehouse memiliki karakteristik sebagai berikut:

    a. Melakukan analisa terhadap hal di masa lalu.b. Mencari hubungan antara informasi dengan keadaan saat ini.c. Melakukan prediksi hal yang akan datang.

    4. Non-volatile.Data dalam sistem operasional dapat di update sesuai transaksi

    bisnis. Setiap kali terjadi transaksi bisnis. Namun dalam data warehouse,data tidak dapat diubah karena bersifat read only.Arsitektur data warehouse (gambar 2.1) mencakup proses ETL

    (Extraction,Transformation, Loading) untuk memindahkan data dari operationaldata source dan sumber data eksternal lainnya ke dalam data warehouse . Datawarehouse dapat dibagi menjadi beberapa data mart, berdasarkan fungsibisnisnya (contoh: data mart untuk penjualan, pemasaran, dan keuangan). Data

  • 104Sistem Pakar

    dalam data warehouse dan data mart diatur oleh satu atau lebih server yangmewakili multidimensional view dari data terhadap berbagai front end tool, sepertiquerytools, analysis tools, report writers, dan data mining tools.

    Gambar 2.1 Arsitektur Data Warehouse (Prabhu, 2007)

    2.1.2. Proses Data Mining

    Data mining merupakan rangkaian proses, data mining dapat dibagimenjadi beberapa tahap yang diilustrasikan di Gambar 2.2. Tahap-tahap tersebutbersifat interaktif, pemakai terlibat langsung atau dengan perantaraan knowledgebase.

  • 105Sistem Pakar

    Gambar 2.2. Tahapan Data Mining

    Karena data mining adalah suatu rangkaian proses, maka data miningdapat dibagi menjadi beberapa tahap seperti yang diilustrasikan pada gambar 2.2

    1. Pembersihan data (membuang data yang tidak konsisten atau noise)Pembersihan data merupakan proses menghilangkan noise dan data yangtidak konsisten atau data tidak relevan. Pada umumnya data yangdiperoleh, baik dari database suatu perusahaan maupun hasil eksperimen,memiliki isian-isian yang tidak sempurna seperti data yang hilang, datayang tidak valid atau juga hanya sekedar salah ketik

    2. Integrasi data (penggabungan data dari beberapa sumber)Integrasi data merupakan penggabungan data dari berbagai database kedalam satu database baru. Tidak jarang data yang diperlukan untuk datamining tidak hanya berasal dari satu database tetapi juga berasal daribeberapa database atau file teks. Integrasi data dilakukan pada atribut-aribut yang mengidentifikasikan entitas-entitas

    3. Transformasi data (mengubah data menjadi bentuk lain)Data diubah atau digabung ke dalam format yang sesuai untuk diprosesdalam data mining. Beberapa metode data mining membutuhkan formatdata yang khusus sebelum bisa diaplikasikan. Sebagai contoh beberapametode standar seperti analisis asosiasi dan clustering hanya bisamenerima input data kategorikal. Oleh sebab itu data berupa angka/numerik perlu dibagi-bagi menjadi beberapa interval. Proses ini seringdisebut transformasi data

    4. Aplikasi teknik data miningMerupakan suatu proses utama saat metode diterapkan untuk menemukanpengetahuan berharga dan tersembunyi dari data.

  • 106Sistem Pakar

    5. Evaluasi dan Presentasi pengetahuan (dengan teknik visualisasi)Menyajikan pengetahuan mengenai metode yang digunakan untukmemperoleh pengetahuan yang diperoleh pengguna. Tahap terakhir dariproses data mining adalah bagaimana memformulasikan keputusan atauaksi dari hasil analisis yang didapat. Ada kalanya hal ini harus melibatkanorang-orang yang tidak memahami data mining. Karenanya presentasihasil data mining dalam bentuk pengetahuan yang bisa dipahami semuaorang adalah satu tahapan yang diperlukan dalam proses data mining

    2.1.3. Teknik Data Mining

    Data mining berkaitan dengan bidang ilmu ilmu lain, seperti databasesystem, data warehousing, statistik, machine learning, information retrieval, dankomputasi tingkat tinggi. Selain itu, data mining didukung oleh ilmu lain sepertineural network, pengenalan pola, spatial data analysis, image database, signalprocessing. Pada dasarnya penggalian data dibedakan menjadi dua fungsionalitas,yaitu

    1. Deskripsi

    memperoleh pola (correlation, trend,cluster, trajectory, anomaly) untukmenyimpulkan hubungan di dalam data

    2. Prediksimemprediksikan nilai dari atribut tertentu berdasarkan nilai dari atributlainnya. Atribut yang diprediksi dikenal sebagai target atau dependentvariable, sedangkan atribut yang digunakan untuk membuat prediksidisebut penjelas atau independent variable

    Beberapa teknik yang sering terdapat dalam literatur data mining antaralain yaitu association rule mining, clustering, klasifikasi, neural network dan lain-lain.

  • 107Sistem Pakar

    a. Association rule mining adalah teknik mining untuk menemukan aturanassosiatif antara suatu kombinasi item. Contoh dari aturan assosiatif darianalisa pembelian di suatu pasar swalayan adalah bisa diketahui berapabesar kemungkinan seorang pelanggan membeli roti bersamaan dengansusu. Dengan pengetahuan tersebut, pemilik pasar swalayan dapatmengatur penempatan barangnya atau merancang kampanye pemasarandengan memakai kupon diskon untuk kombinasi barang tertentu. Pentingtidaknya suatu aturan assosiatif dapat diketahui dengan dua parameter,support yaitu persentase kombinasi item tersebut dalam database danconfidence yaitu kuatnya hubungan antar item dalam aturan assosiatif.

    b. Classification adalah proses untuk menemukan model atau fungsi yangmenjelaskan atau membedakan konsep atau kelas data, dengan tujuanuntuk dapat memperkirakan kelas dari suatu objek yang labelnya tidakdiketahui.

    c. Decision tree adalah salah satu metode classification yang paling populerkarena mudah untuk diinterpretasi oleh manusia. Setiap percabanganmenyatakan kondisi yang harus dipenuhi dan tiap ujung pohonmenyatakan kelas data. Algoritma decision tree yang paling terkenaladalah C4.5, tetapi akhir-akhir ini telah dikembangkan algoritma yangmampu menangani data skala besar yang tidak dapat ditampung di mainmemory seperti RainForest.

    d. ClusteringBerbeda dengan association rule dan classification dimana kelas data telahditentukan sebelumnya, clustering melakukan pengelompokan data tanpaberdasarkan kelas data tertentu. Bahkan clustering dapat dipakai untukmemberikan label pada kelas data yang belum diketahui itu. Karena ituclustering sering digolongkan sebagai metode unsupervised learning.Prinsip clustering adalah memaksimalkan kesamaan antar anggota satukelas dan meminimumkan kesamaan antar kelas/cluster. Clustering dapatdilakukan pada data yang memiliki beberapa atribut yang dipetakansebagai ruang multidimensi.

  • 108Sistem Pakar

    e. Neural Network

    Merupakan pendekatan perhitungan yang melibatkan pengembanganstruktur secara matematis dengan kemampuan untukbelajar dan mampumenurunkan pengertian dari data yang kompleks dan tidak jelas dan dapatdigunakan pula untuk mengekstrak pola dan mendeteksi trend-trend yangsangat kompleks untuk dibicarakan baik oleh manusia maupun teknikkomputer lainnya. Jaringan syaraf buatan yang terlatih dapat dianggapsebagai pakar dalam kategori informasi yang akan dianalisis. Pakar inidapatbdigunakan untuk memproyeksi situasi baru dari ketertarikaninformasi

    2.2. Metode Rough Set2.2.1. Pengantar Rough Set

    Teori rough set adalah sebuah teknik matematik yang dikembangkan olehPawlack pada tahun 1980 (Chouchoulas, 1999). Rough Set salah satu teknik datamining yang digunakan untuk menangani masalah Uncertainty, Imprecision danVagueness dalam aplikasi Artificial Intelligence (AI). Rouh set merupakan teknikyang efisien untuk Knowledge Discovery in Database (KDD) dalam tahapanproses dan Data Mining.

    Secara umum, teori rough set telah digunakan dalam banyak aplikasiseperti medicine, pharmacology, business, banking, engineering design, imageprocessing dan decision analysis.

    1. Representasi Data Dalam Rough Set

    Rough set direpresentasikan dalam 2 elemen yakni Information Systems (IS) danDecision Systems (DS).

    Information Systems (IS) adalah pasangan IS={U,A}, dimana

  • 109Sistem Pakar

    U={e1, e2,, em} dan A={a1, a2, , an} merupakan sekumpulan exampledan attribute kondisi secara berurutan.

    Definisi di atas memperlihatkan bahwa sebuah Information Systems terdiri darisekumpulan example, seperti {e1, e2, , em} dan attribute kondisi, seperti {a1, a2,, an}. Sebuah Information Systems yang sederhana diberikan dalam tabel 2.1.

    Tabel 2.1. Information Systems

    Example Studies Education .. Works1 Poor SMU .. Poor

    2 Poor SMU .. Good

    3 Moderate Diploma .. Poor

    4 Moderate MSc .. Poor

    5 Poor Diploma .. Good

    6 Good SMU .. Poor

    7 Moderate Diploma .. Poor

    ..

    ..

    100 Good MSc .. Good

    Data di atas merupakan kumpulan data 100 orang dengan melihat tingkatpendapatan berdasarkan kriteria studies, education dan works . Dalam InformationSystem, tiap-tiap baris merepresentasikan objek sedangkan columnmerepresentasikan attribute yang terdiri dari m objek,

    U={e1, e2,, em}: Example 1,2,3

    A={a1, a2, , an}: Studies, EducationWorks

    Dalam banyak aplikasi, sebuah outcome / keputusan dari pengklasifikasiandiketahui yang direpresentasikan dengan sebuah Decision Attribute, C={C1, C2,, Cp}. Maka Information Systems (IS) menjadi IS=(U,{A,C}). DecisionSystems (DS) yang sederhana diperlihatkan pada table 2.2.

  • 110Sistem Pakar

    Table 2.2. Sistem Informasi dan Keputusan

    Example Studies Education .. Works Income(D)

    1 Poor SMU .. Poor None

    2 Poor SMU .. Good Low

    3 Moderate Diploma .. Poor Low

    4 Moderate MSc .. Poor Medium

    5 Poor Diploma .. Good Medium

    6 Good SMU .. Poor Low

    7 Moderate Diploma .. Poor Medium

    ..

    ..

    100 Good MSc .. Good High

    Tabel 2.2. memperlihatkan sebuah Decision Systems yang sederhana,terdiri dari m objek, seperti E1, E2, , Em, dan n attribute, seperti Studies,Education, , Works dan Income (D). Dalam tabel ini, n-1 attribute, Studies,Education, , Works, adalah attribute kondisi, sedangkan Income adalah decisionattribute.

    2. Equivalence ClassEquivalence class adalah mengelompokan objek-objek yang sama untuk attributeA (U, A). Diberikan Decision Systems pada table 2.2, dapat memperolehequivalence class (EC1-EC5) seperti digambarkan pada tabel-2.3

    Tabel 2.3. Equivalen ClassClass Studies Education Works Income Jumlah

    EC1 Poor SMU Poor None 50

    EC2 Poor SMU Good Low 5

    EC3 Moderate SMU Poor Low 30

    EC4 Moderate Diploma Poor Low 10

    EC5,1 Good MSc Good Medium 4

    EC5,2 Good MSc Good High 1

  • 111Sistem Pakar

    Class EC5 adalah sebuah indeterminacy yang memberikan 2 (dua) keputusan yangberbeda. Situasi ini dapat ditangani dengan teknik data cleaning karena kelasEC5,2 hanya memiliki 1objek. Kolom yang paling kanan mengindikasikan jumlahobjek yang ada dalam Decision System untuk class yang sama.Contoh dalam table2.4 disederhanakan kedalam numerical representation untuk mempermudahpengolahan datanya, dengan transformasi atribut sebagai berikut.

    Tabel 2.4 memperlihatkan numerical representation dari equivalence class daritable 2.3

    Tabel 2.4. Equivalen Class(Transformasi)

    Class Studies Education Works Income JumlahEC1 1 2 3 1 50

    EC2 1 2 1 2 5

    EC3 2 2 3 2 30

    EC4 2 3 3 2 10

    EC5,1 3 5 1 3 4

    EC5,2 3 5 1 4 1

    2.2.4. Discernibility Matrix

    S t u d i e s :

    P o o r : 1

    M o d e r a t e : 2

    G o o d : 3

    E d u c a t i o n :

    S M U : 2

    D i p l o m a : 3

    M S c : 5

  • 112Sistem Pakar

    Diberikan sebuah IS A=(U,A) and B A, discernibility matrix dari A adalahMB, dimana tiap-tiap entry MB(I,j) tediri dari sekumpulan attribute yang berbedaantara objek Xi dan Xj. Bandingkan setiap class, bila ada perbedaan pada atributclass kemudian tuliskan pada table discerdibility matrix, sedangkan jika semuaatribut sama maka tuliskan dengan tanda kali (X). Atribut dimodelkan dengan:

    Studies : AEducation : BWorks : C

    Contoh: EC1 dengan EC1, semua atribut sama sehingga hasilnya X(Baris 2 kolom2), EC1 dengan EC2, terdapat perbedaan yaitu atribut works, sehingga pada table2.5 baris 2 kolom 3 hasilnya C, begitu selanjutnya. Tabel 2.5 memperlihatkandiscerniblity matrix dari table 2.4.

    Table 2.5. Discernibility Matrix

    EC1 EC2 EC3 EC4 EC5EC1 X C A AB ABC

    EC2 C X AC ABC AB

    EC3 A AC X B ABC

    EC4 AB ABC B X ABC

    EC5 ABC AB ABC ABC X

    2.2.5. Discernibility Matrix Modulo D

    Diberikan sebuah DS A=(U,A{d{) dan subset dari attribute B A, discernibilitymatrix modulo D dari A, MBd, didefinisikan seperti berikut dimana MB(I,j)

  • 113Sistem Pakar

    adalah sekumpulan attribute yan berbeda antara objek Xi dan Xj dan juga berbedaattribute keputusan. Berdasarkan table 2.5, bandingkan setiap class berdasarkandecision/keputusan, jika keputusan(income) sama maka tuliskan tanda kali(X),jika income berbeda tuliskan perbedaan atributnya berdasarkan table 2.5. ContohEC3 dengan EC2 income sama sehingga hasilnya : X (baris 4 kolom 3)

    Table 2.6. Discernibility Matrix Modulo D

    EC1 EC2 EC3 EC4 EC5EC1 X C A AB ABC

    EC2 C X X X AB

    EC3 A X X X ABC

    EC4 AB X X X ABC

    EC5 ABC AB ABC ABC X

    2.2.6. Reduct

    Reduct adalah penyeleksian attribut minimal (interesting attribute) darisekumpulan attribut kondisi dengan menggunakan Prime Implicant fungsiBoolean. Kumpulan dari semua Prime Implicant mendeterminasikan sets ofreduct. Discernibility matrix modulo D pada table 2.6 dapat ditulis sebagaiformula CNF seperti diperlihatkan pada table 2.7. Gunakan aljabar Boolean untukmencari prime implicant

    A+1=1+A=1

    AA=A

    Class EC1 terdiri dari X,C,A,AB,ABC menjadi C^A^(AvB)^(AvBvC)

    =C^A^(AvB)^(AvBvC)

    =C^(AA+AB) ^(AvBvC)

    =C^(A+AB)^(AvBvC)

  • 114Sistem Pakar

    =C^(A(1+B))^(AvBvC)

    =C^A^(AvBvC)

    =C^AA+AB+AC

    =C^A(1+B)+AC

    =C^A+AC

    =C^A(1+C)

    =C^A=A^C=AC

    Class EC2 terdiri dari C,X,X,X,AB menjadi C^(AvB)

    =AC+BC

    =AC,BC

    Class EC3 terdiri dari A,X,X,X,ABC menjadi A^(AvBvC)

    =AA+AB+AC

    =A(1+B)+AC

    =A+AC

    =A(1+C)

    =A

    Class EC4 terdiri dari AB,X,X,X,ABC menjadi (AvB)^(AvBvC)

    =AA+AB+AC+AB+BB+BC

    =A(1+B)+AC+AB+BB+BC

    =A+AC+AB+BB+BC

    =A(1+C)+AB+BB+BC

  • 115Sistem Pakar

    =A+AB+BB+BC

    =A(1+B)+BB+BC

    =A+B(1+C)

    =A+B

    =A,B

    Calss EC5 terdiri dari ABC,AB,ABC,ABC,X menjadi(AvBvC)^(AvB)^(AvBvC)^(AvBvC)

    =(AvBvC)^(AvB)^(AvBvC)^(AvBvC)

    =AA+AB+AB+BB+AC+BC^(AvBvC)^(AvBvC)

    =A(1+B)+AB+BB+AC+BC^(AvBvC)^(AvBvC)

    =A+AB+BB+AC+BC^(AvBvC)^(AvBvC)

    =A(1+B)+BB+AC+BC^(AvBvC)^(AvBvC)

    =A+AC+BB+BC^(AvBvC)^(AvBvC)

    =A(1+C)+BB+BC^(AvBvC)^(AvBvC)

    =A+B(1+C)^(AvBvC)^(AvBvC)

    =A+B^(AvBvC)^(AvBvC)

    =B+A^(AvBvC)^(AvBvC)

    =B+AA+AB+AC^(AvBvC)

    =B+A(1+B)+AC^(AvBvC)

    =B+A+AC^(AvBvC)

    =B+A(1+C)^(AvBvC)

  • 116Sistem Pakar

    =B+A^(AvBvC)

    =B+AA+AB+AC

    =B+A(1+B)+AC

    =B+A+AC

    =B+A(1+C)

    =B+A=A,B

    Tabel 2.7. Reduce

    Class CNF of Function Boolean Prime Implicant ReduceEC1 C^A^(AvB)^(AvBvC) A^C {A,C}EC2 C^(AvB) C(AvB) {A,C},{B,C}EC3 A^(AvBvC) A {A}EC4 (AvB)^(AvBvC) AvB {A},{B}EC5 (AvBvC)^(AvB) AvB {A},{B}

    2.2.7. Generating Rules

    Setelah mendapatkan reduce, maka dapat ditarik kesimpulan atauditentukan rule dengan menyesuaikan reduce setiap equivalen class terhadap table2.3(Equivalen Class). Contoh untuk EC1 reduce={A,C}. Pada table discerdibilitymatrix Studies dimodelkan dengan A, Education : B dan Works : C, sehinggarulenya adalah Jika studies=poor dan work=poor maka income=none.

    Berikut akan ditarik kesimpulan untuk semua kelas

    a. Class EC1 menghasilkan prime implicant {A,C}, Rulenya adalah

    1. Jika studies=poor dan work=poor maka income=none

    b. Class EC2 menghasilkan prime implicant {AC},{BC}, Rulenya adalah

  • 117Sistem Pakar

    2. Jika studies=poor dan work=good maka income=low3. Jika education=SMU dan work=good maka income=low

    c. Class EC3 menghasilkan prime implicant {A}, Rulenya adalah

    4. Jika studies=moderate maka income low

    d. Class EC4 menghasilkan prime implicant {A},{B}, Rulenya adalah

    5. Jika studies=moderate maka income=low6. Jika education=Diploma maka income=low

    e. Class EC5 menghasilkan prime implicant {A},{B}, Rulenya adalah

    7. Jika studies=good maka income=moderate8. Jika education=MSc maka income=moderate

    Dari 8 rule diatas dapat disimpulkan dengan menggunakan logika OR, menjadi

    1. Jika studies=poor dan work=poor maka income=none2. Jika (studies=poor dan work=good) atau(education=SMU dan

    work=good) atau studies=moderate ataueducation=Diploma makaincome=low

    3. Jika studies=good atau education=MSc maka income=moderate

    2.3. Metode Association Rules

    2.3.1. Pengantar Association Rules

    Analisis asosiasi atau association rule adalah teknik data mining untukmenemukan aturan assosiatif antara suatu kombinasi item. Aturan asosiasimerupakan pernyataan implikasi bentuk XY, dimana X dan Y adalah itemsetyang lepas(disjoint)dan memenuhi persyaratan X Y={}(Eko Prasetyo, 2012),

  • 118Sistem Pakar

    Contoh aturan assosiatif dari analisa pembelian di suatu pasar swalayan adalahdapat diketahuinya berapa besar kemungkinan seorang pelanggan membeli gulabersamaan dengan susu. Dengan pengetahuan tersebut pemilik pasar swalayandapat mengatur tata letak atau penempatan barangdagangannya(Kantardzic,2003).

    Algoritma A Priori termasuk jenis aturan asosiasi pada data mining. Selaina priori, yang termasuk pada golongan ini adalah metode generalized ruleinduction dan algoritma hash based. Aturan yang menyatakan asosiasi antarabeberapa atribut sering disebut affinity analysis atau market basket analysis.Analisis asosiasi menjadi terkenal karena aplikasinya untuk menganalisa isikeranjang belanja di pasar swalayan. Analisis asosiasi juga sering disebut denganistilah market basket analysis. Analisis asosiasi dikenal juga sebagai salah satuteknik data mining yang menjadi dasar dari berbagai teknikdata mining lainnya.Khususnya salah satu tahap dari analisis asosiasi yang disebut analisis polafrequensi tinggi (frequent pattern mining) menarik perhatian banyak peneliti untukmenghasilkan algoritma yang efisien (Kantardzic, 2003).

    Penting tidaknya suatu aturan assosiatif dapat diketahui dengan duaparameter, support (nilai penunjang)yaitu persentase kombinasi item tersebutdalam database dan confidence (nilai kepastian) yaitu kuatnya hubungan antaritem dalam aturan assosiatif.

    Nilai support untuk 2 item diperoleh dengan rumusSupport(a b) = Jumlah transaksi mengandung a dan bTotal transaksi x 100%Nilai confidence untuk 2 item diperoleh dengan rumus

    Conidence = p(b|a) = Jumlah transaksi mengandung a dan bTotal transaksi a x 100%Aturan assosiatif biasanya dinyatakan dalam bentuk :{gula, kopi}{susu} (support = 60%, confidence = 50%)Yang artinya : "50% dari transaksi di database yang memuat item gula dan kopijuga memuat item susu. Sedangkan 60% dari seluruh transaksi yang ada di

  • 119Sistem Pakar

    database memuat ketiga item itu." Dapat juga diartikan : "Seorang konsumen yangmembeli gula dan susu mempunyai kemungkinan 50% untuk juga membeli susu.Aturan ini cukup signifikan karena mewakili 60% dari catatan transaksi selamaini."

    Analisis asosiasi didefinisikan suatu proses untuk menemukan semuaaturan assosiatif yang memenuhi syarat minimum untuk support (minimumsupport) dan syarat minimum untuk confidence (minimumconfidence).

    2.3.2. Terminologi Association Rule1. I adalah himpunan yang tengah dibicarakan.

    Contoh:{Gula,Kopi,Susu, ,Mentega}

    2. D adalah Himpunan seluruh transaksi yang tengah dibicarakanContoh:{Transaksi 1, transaksi 2, , transaksi n}

    3. Proper Subset adalah Himpunan Bagian murniContoh:- Ada suatu himpunan A={a,b,c,}- Himpunan Kosong = {}- Himpunan 1 Unsur = {a},{b},{c}- Himpunan 2 Unsur = {a,b},{a,c},{b,c}- Himpunan 3 Unsur = {a,b,c,}Proper subset nya adalah Himpunan 1 Unsur dan Himpunan 2 Unsur

    4. Item set adalah Himpunan item atau item-item pada IContoh:Ada suatu himpunan A={a,b,c,}Item set nya adalah{a};{b}:{c};{a,b};{a,c};{b,c}

    5. K- item set adalah Item set yang terdiri dari K buah item yang ada pada I atau Kadalah jumlah unsur yang terdapat pada suatu Himpunan

    Contoh:3-item set adalah yang bersifat 3 unsur6. Item set Frekuensi adalah Jumlah transaksi di I yang mengandung jumlah item

    set tertentu. Intinya jumlah transaksi yang membeli suatu item set.Contoh:

  • 120Sistem Pakar

    - frekuensi Item set yang sekaligus membeli susu dan roti adalah 3- frekuensi item set yang membeli sekaligus membeli roti,susu dan kopi

    adalah 27. Frekuen Item Set adalah item set yang muncul sekurang-kurangnya sekian kali

    di D. Kata sekian biasanya di simbolkan dengan . merupakan batas

    minimum dalam suatu transaksi8. Fk adalah Himpunan semua frekuen Item Set yang terdiri dari K item.

    2.3.3. Langkah-Langkah Algoritma PadaAssociation Rule1. Tentukan

    2. Tentukan semua Frekuen Item set

    3. Untuk setiap Frekuen Item set lakukan hal sbb:1. Ambil sebuah unsur, namakanlah s2. Untuk sisanya namakanlah ss-s

    3. Masukkan unsur-unsur yang telah di umpamakan ke dalam rule If(ss-s) then s

    Untuk langkah ke 3 lakukan untuk semua unsur.

    Contoh:

    Data PenjualanTransaksi Item

    1 Gula,Susu,Kopi

    2 Roti,Susu,Mentega

    3 Gula,Roti,Susu,Mentega

    4 Roti,Mentega

    Langkah 1: Pisahkan semua item

    Gula,Kopi,Susu,Roti, MentegaLangkah 2: Lakukan Transformasi

    Misalkan A:Gula, B:Roti, C:Susu, D:Kopi, E:Mentega, sehingga table datapenjualan menjadi sbb

    Transaksi Item

    1 A,C,D

  • 121Sistem Pakar

    2 B,C,E

    3 A,B,C,E

    4 B,E

    Langkah 3: Buat dalam matrix untuk menentukan jumlah item muncul dalamdatabase

    Transaksi A B C D E1 1 0 1 1 0

    2 0 1 1 0 1

    3 1 1 1 0 1

    4 0 1 0 0 1

    Jumlah 2 3 3 1 3

    Langkah 4: Tentukan frekuen item set(), misalkan =2 atau 50%Sesuai dengan frekuen item set yang telah ditentukan, maka item yang memenuhiadalah A,B,C,E, sedangkan D tidak termasuk karena hanya 1 kali muncul dalamdatabase.Langkah 5: Tentukan item set

    a. 2 item set, merupakan kombinasi dari item yang memenuhi frekuenitem set yaitu AB,AC,AE,BC,BE,CE

    b. Lakukan pengujian untuk calon 2 item set untuk mengetahui 2 item setyang memenuhi syarat sesuai frekuen item set yang telah ditentukansebelumnyaItem set AB

    Transaksi A B Hasil

    1 1 0 0

    2 0 1 0

    3 1 1 1

    4 0 1 0

    Total 1

    Item set AC

    Transaksi A C Hasil

  • 122Sistem Pakar

    1 1 1 1

    2 0 1 0

    3 1 1 1

    4 0 0 0

    Total 2

    Item set AE

    Transaksi A E Hasil

    1 1 0 0

    2 0 1 0

    3 1 1 1

    4 0 1 0

    Total 1

    Item set BC

    Transaksi B C Hasil1 0 1 0

    2 1 1 1

    3 1 1 1

    4 1 0 0

    Total 2

    Item set BE

    Transaksi B E Hasil

    1 0 0 0

    2 1 1 1

    3 1 1 1

    4 1 1 1

    Total 3

    Item set CE

    Transaksi C E Hasil1 1 0 0

    2 1 1 1

  • 123Sistem Pakar

    3 1 1 1

    4 0 1 0

    Total 2

    Dari ke 6 calon 2 item set yang memenuhi syarat sesuai denganfrekuen item yaitu minimal 2 adalah AC,BC,BE,CE

    c. Tentukan 3 item set(bila diperlukan)Untuk menentukan calon 3 item set, merupakan kombinasi dari 2 itemset yaitu dengan 2 item yang bersamaan, maka calon 3 item set adalahAC dengan BC: ABCAC dengan EC: AECBC dengan EC: BCE

    d. Lakukan pengujian untuk calon 3 item set untuk mengetahui 3 item setyang memenuhi syarat sesuai frekuen item set yang telah ditentukansebelumnyaItem set ABC

    Transaksi A B C Hasil1 1 0 1 0

    2 0 1 1 0

    3 1 1 1 1

    4 0 1 0 0

    Total 1

    Item set AEC

    Transaksi A E C Hasil1 1 0 1 0

    2 0 1 1 0

    3 1 1 1 1

    4 0 1 0 0

    Total 1

    Item set BCE

    Transaksi B C E Hasil

  • 124Sistem Pakar

    1 0 1 0 0

    2 1 1 1 1

    3 1 1 1 1

    4 1 0 1 0

    Total 2

    Dari ke 3 calon 3 item set yang memenuhi syarat sesuai denganfrekuen item yaitu minimal 2 adalah BCE

    Langkah 6: Membuat ruleRule yang dipakai adalah if x then y, dimana x adalah antecendent dan y adalahconsequent. Berdasarkanrule tersebut, maka dibutuhkan 2 buah item yang manasalah satunya sebagai antecedent dan sisanya sebagai consequent. Untukantecedent boleh lebih dari 1 unsur, sedangkan untuk consequent terdiri dari1unsur.

    a. Rule 2 item set (AC,BC,BE,CE)1. If buy A then buy C2. If buy C then buy A3. If buy B then buy C4. If buy C then buy B5. If buy B then buy E6. If buy E then buy B7. If buy C then buy E8. If buy E then buy C

    b. Rule 2 item set (BCE)1. If buy B and C then buy E2. If buy B and E then buy C3. If buy C and E then Buy B

    Langkah 7: hitung support dan confidencec. Kandidat association rule 2 item set

    Rule Support Confidence

  • 125Sistem Pakar

    1. If buy A then buy C 2/4x100%=50%2/2x100%=100%

    2. If buy C then buy A 2/4x100%=50%2/3x100%=75%

    3. If buy B then buy C 2/4x100%=50%2/3x100%=75%

    4. If buy C then buy B 2/4x100%=50%2/3x100%=75%

    5. If buy B then buy E 3/4x100%=75%3/3x100%=100%

    6. If buy E then buy B 3/4x100%=75%3/3x100%=100%

    7. If buy C then buy E 2/4x100%=50%2/3x100%=75%

    8. If buy E then buy C 2/4x100%=50%2/3x100%=75%

    d. Kandidat association rule 3 item setRule Support Confidence1. If buy B and C then buy E 2/4x100%=50%

    2/2x100%=100%

    2. If buy B and E then buy C 2/4x100%=50%2/3x100%=68%

    3. If buy C and E then Buy B 2/4x100%=50%2/2x100%=100%

    Langkah 8: Lakukan perkalian support dan confidence, nilai paling tinggi itulahrule of the best sebagai rule association

    e. Untuk 2 item set, nilai paling tinggi adalahRule Support Confidence

    1. If buy B then buy E 3/4x100%=75%3/3x100%=100%

  • 126Sistem Pakar

    2. If buy E then buy B 3/4x100%=75%3/3x100%=100%

    Jika membeli roti maka membeli mentegaJika membeli mentega maka memebeli roti

    f. Kandidat association rule 3 item setRule Support Confidence4. If buy B and C then buy E 2/4x100%=50%

    2/2x100%=100%

    5. If buy C and E then Buy B 2/4x100%=50%2/2x100%=100%

    2.4.Metode Clustering2.4.1. Pengantar Clustering

    Kesamaan adalah dasar untuk mendefinisikan cluster , ukuran kesamaanantara dua pola yang diambil dari ruang fitur yang sama sangat penting di dalamalgoritma clustering. Penentuan kesamaan sangat hati-hati karena kualitas proses

    pengelompokan tergantung pada keputusan ini(Kantardzic,2003).

    Custering menganalisis objek datayang digunakan untuk menghasilkan grup, grup tersebut didapatkan berdasarkanprinsip memaksimalkan kesamaan dalam kelas dan meminimalkan kesamaanantar kelas, artinya bahwa kelompok terbentuk sehingga objek dalam clustermemiliki kemiripan yang tinggi dibandingkan dengan yang lain, tetapi sangatberbeda dengan objek dalam cluster lain(Jiawei,2000).

    Salah satu metode yang diterapkan dalam KDD adalah clustering.

    Clustering adalah membagi data ke dalam grupgrup yang mempunyai obyekdengan karakteristiknya sama. Clustering memegang peranan penting dalamaplikasi data mining,misalnya eksplorasi data ilmu pengetahuan, pengaksesaninformasi dan textmining, aplikasi basis data spasial, dan analisis web. Clusteringditerapkan dalam mesin pencari di Internet. Web mesin pencari akan mencari

  • 127Sistem Pakar

    ratusan dokumen yang cocok dengan kata kunci yang dimasukkan. Dokumendokumen tersebut dikelompokkan dalam clustercluster sesuai dengan kata-katayang digunakan(Sri Andayani, 2007). Pada dasarnya metode pengelompokan ada2 yakni Hierarchical clustering method dan Non Hierarchical clustering method.Metode Hirarki digunakan jika jumlah kelompok tidak diketahui sebelumnya,sedangkan non hirarki digunakan jika jumlah kelompok sudah diketahui darisejumlah objek. Salah satu algoritma yang termasuk dalam non hirarki adalahalgoritma K-Means.

    Metode Hirarki memulai pengelompokan dengan dua atau lebih obyekyang mempunyai kesamaan paling dekat. Kemudian diteruskan pada obyek yanglain dan seterusnya hingga cluster akan membentuk semacam pohon dimanaterdapat tingkatan (hirarki) yang jelas antar obyek, dari yang paling mirip hinggayang paling tidak mirip. Non Hirarki dimulai dengan menentukan terlebih dahulujumlah cluster yang diinginkan (dua,tiga, atau yang lain). Setelah jumlah clusterditentukan, maka proses cluster dilakukan dengan tanpa mengikuti proses hirarki

    2.4.3. Algoritma K-MeansAlgoritma KMeans adalah algoritma clustering yang popular dan banyak

    digunakan dalam dunia industri. Algoritma ini disusun atas dasar ide yangsederhana. Pada awalnya ditentukan berapa cluster yang akan dibentuk. Sebarangobyek atau elemen pertama dalam cluster dapat dipilih untuk dijadikan sebagaititik tengah (centroid point) cluster. Algoritma KMeans selanjutnya akanmelakukan pengulangan langkahlangkah berikut sampai terjadi kestabilan (tidakada obyek yang dapat dipindahkan).

    Konsep kesamaan adalah hal yang fundamental dalam analisis cluster.Kesamaan antar objek merupakan ukuran korespondensi antar objek. Ada tigametode yang dapat diterapkan, yaitu ukuran korelasi, ukuran jarak, dan ukuranasosiasi. Dengan menggunakan ukuran jarak, ukuran kemiripan yang dapatdigunakan adalah jarak dEeculidean dan dManhattan City. Jika objek pertamayang diamati adalah X=[X1,X2..Xp] dan Y=[Y1,Y2Yp] antara 2 objek dari p

    dimensi maka

  • 128Sistem Pakar

    dEculidean: , = ( )dManhattan: , = | |

    Adapun pun langkah-langkahnya dengan menggunakan algoritma K-Meanssebagai berikut

    1. Tentukan jumlah cluster2. Menentukan centroid(koordinat titik tengah setiap cluster), untuk iterasi

    pertama diambil secara random3. Menghitung jarak obyek ke centroid dengan menggunakan rumus

    jarakEuclidean atau Manhattan.4. Menentukan jarak setiap obyek terhadap koordinat titik tengah,5. mengelompokkan obyekobyek tersebut berdasarkan pada jarak

    terdekat

    Berikut ditampilkan diagram alir dari algoritma KMeans.

  • 129Sistem Pakar

    Gambar 2.4. Algoritma K-Means

    Contoh:

    Mahasiswa IPK Alamat

    Paijo 3,5 SiantarSarinem 2,9 Berastagi

    Karsono 1,0 Tj. MorawaTukiman 1,8 Medan

    ITERASI:I

  • 130Sistem Pakar

    Langkah 1: lakukan transformasi, karena data harus dalam bentuk numeric sesuaidengan rumus kedekatan yang digunakan Distance Euqlidean

    IPK ALAMAT

    Mahasiswa IPK Alamat

    Paijo 5 4Sarinem 4 3

    Karsono 1 1

    Tukiman 2 1

    Langkah 2: tentukan grup(misalkan k=2)

    Langkah 3: Tentukan centroid, misalkan (C1:5,4|C2:4,3)

    Langkah 4: hitung objek terhadap centroid

    P(1,1)= (5 5) + (4 4) =0P(1,1)= (5 4) + (4 3) =1,4S(1,1)= (4 5) + (3 4) =1,4S(1,1)= (4 4) + (3 3) =0K(1,1)= (1 5) + (1 4) =5

  • 131Sistem Pakar

    K(1,1)= (1 4) + (1 3) =3,6T(1,1)= (2 5) + (1 4) =4,2T(1,1)= (2 4) + (1 3) =2,8Langkah 5: grupkan berdasarkan jarak terdekat

    Objek IPK Alamat Jarak C1 Jarak C2 GrupPaijo 5 4 0 1,4 1Sarinem 4 3 1,4 0 2

    Karsono 1 1 5 3,6 2

    Tukiman 2 1 4,2 2,8 2

    Grup baru : 1 2 2 2, iterasi pertama dianggap berpindah grup sehingga dilanjutkanke iterasi ke 2, iterasi pertama belum ada grup karena centroid diambil secara acak

    ITERASI II

    Langkah 1 dan 2 sama dengan itetarsi ke 2

    Langkah 3: Tentukan centroid

    Centroid I: 5|4

    Centroid II: diambil dari grup 2 yaitu Sarinem, Karsono dan

    Tukiman=( ))=2,3|=( ))=1,6Langkah 4: hitung objek terhadap centroid

    P(1,1)= (5 5) + (4 4) =0P(1,1)= (5 2,3) + (4 1,6) =3,6S(1,1)= (4 5) + (3 4) =1,4

  • 132Sistem Pakar

    S(1,1)= (4 2,3) + (3 1,6) =2,2K(1,1)= (1 5) + (1 4) =5K(1,1)= (1 2,3) + (1 1,6) =1,4T(1,1)= (2 5) + (1 4) =4,2T(1,1)= (2 2,3) + (1 1,6) =0,6Langkah 5: grupkan berdasarkan jarak terdekat

    Objek IPK Alamat Jarak C1 Jarak C2 GrupPaijo 5 4 0 3,6 1Sarinem 4 3 1,4 2,2 1

    Karsono 1 1 5 1,4 2

    Tukiman 2 1 4,2 0,6 2

    Grup lama : 1 2 2 2 dan Grup baru : 1 1 2 2, terjadi perpindahan grup makadilanjutkan iterasi berikutnya yaitu iterasi ke 3

    ITERASI III

    Langkah 1 dan 2 sama dengan itetarsi ke 3

    Langkah 3: Tentukan centroid

    Centroid I: diambil dari grup 1 yaitu Paijo dan Sarinem=( ))=4,5|=( ))=3,5Centroid II: diambil dari grup 2 yaitu Karsono dan Tukiman=( ))=1,5|=( ))=1Langkah 4: hitung objek terhadap centroid

    P(1,1)= (5 4,5) + (4 3,5) =0,7P(1,1)= (5 1,5) + (4 1) =4,6

  • 133Sistem Pakar

    SP(1,1)= (4 4,5) + (3 3,5) =0,7S(1,1)= (4 1,5) + (3 1) =3,2KP(1,1)= (1 4,5) + (1 3,5) =4,3K(1,1)= (1 1,5) + (1 1) =0,5T(1,1)= (2 4,5) + (1 3,5) =3,5T(1,1)= (2 1,5) + (1 1) =0,5Langkah 5: grupkan berdasarkan jarak terdekat

    Objek IPK Alamat Jarak C1 Jarak C2 GrupPaijo 5 4 0,7 4,6 1Sarinem 4 3 0,7 3,2 1

    Karsono 1 1 4,3 0,5 2

    Tukiman 2 1 3,5 0,5 2

    Grup lama : 1 1 2 2 dan Grup baru : 1 1 2 2, tidak terjadi perpindahan grup makastop dengan

    Centroid I: diambil dari grup 1 yaitu Paijo dan Sarinem=( ))=4,5|=( ))=3,5Centroid II: diambil dari grup 2 yaitu Karsono dan Tukiman=( ))=1,5|=( ))=1Secara grafik dapat digambarkan sebagai berikut

  • 134Sistem Pakar

    Gambar 2.5. Hasil Clustering

    Dari gfarik di atas dapat ditarik kesimpulan

    Goup 1: IPK tinggi dan alamat jauh dari kampus

    Group 2: IPK rendah dan alamat dekat dengan kampus

    Sehingga disimpulkan mahasiswa yang rumahnya jauh dengan kampus akanmemperoleh IPK tinggi

    2.5. Artificial Neural Networ(ANN)

    2.5.1. Pengantar Jaringan syaraf Tiruan

    Jaringan saraf tiruan (Artificial Nueral Network) atau disingkat JST adalahsistem komputasi dimana arsitektur dan operasi diilhami dari pengetahuan tentangsel saraf biologis di dalam otak manusia, yang merupakan salah satu representasi

    00,51

    1,52

    2,53

    3,54

    4,5

    0 1 2 3 4 5 6

    IPK

    Alamat

    Grup 2

    Grup 1

  • 135Sistem Pakar

    buatan dari otak manusia yang selalu mencoba menstimulasi proses pembelajaranpada otak manusia tersebut. Model saraf ditunjukkan dengan kemampuannyadalam emulasi, analisis, prediksi dan asosiasi. Kemampuan yang dimiliki JSTdapat digunakan untuk belajar dan menghasilkan aturan atau operasi dari beberapacontoh atau input yang dimasukkan dan membuat prediksi tentang kemungkinanoutput yang akan muncul atau menyimpan karaktristik dari input yang disimpankepadanya.

    Valluru B.Rao dan Hayagriva V.Rao (1993) mendefenisi jaringan sarafsebagai sebuah kelompok pengolahan elemen dalam suatu kelompok yang khususmembuat perhitungan sendiri dan memberikan hasilnya kepada kelompok keduaatau berikutnya. Setiap sub kelompok menurut gilirannya harus membuatperhitungan sendiri dan memberikan hasilnya untuk subgrup atau kelompok yangbelum melakukan perhitungan. Pada akhirnya sebuah kelompok dari satu ataubeberapa pengolahan elemen tersebut menghasilkan keluaran (output) darijaringan.

    Setiap pengolahan elemen membuat perhitungan berdasarkan pada jumlahmasukan (input). Sebuah kelompok pengolahan elemen disebut layer atau lapisandalam jaringan. Lapisan pertama adalah input dan yang terakhir adalah output.Lapisan di antara lapisan input dan output disebut dengan lapisan tersembunyi(hidden layer). Jaringan saraf tiruan merupakan suatu bentuk arsitektur yangterdistribusi paralel dengan sejumlah besar node dan hubungan antar nodetersebut. Tiap titik hubungan dari satu node ke node yang lain mempunyai hargayang diasosiasikan dengan bobot. Setiap node memiliki suatu nilai yangdiasosiasikan sebagai nilai aktivasi node.

    Salah satu organisasi yang dikenal dan sering digunakan dalam paradigmajaringan saraf buatan adalah perambatan Galat Mundur (back-propagation).Sebelum dikenal adanya jaringan saraf perambatan Galat Mundur pada tahun1950-1960-an,dikenal dua paradigma penting yang nantinya akan menjadi dasardari saraf Perambatan Galat Mundur, yakni perceptron dan Adaline/Madaline

  • 136Sistem Pakar

    (adaptive linier neuron/multilayer adaline). Dalam buku ini akan dibahasPerceptron dan Back Propagation( Arif Hermawan, 2006).

    2.5.2. Perceptron

    Arsitektur pembelajaran perceptron yakni dengan mengenali pola denganmetode belajar terbimbing. Pola yang diklasifikasikan biasanya berupa bilanganbiner (kombinasi 1 dan 0) dan kategori pengklasifikasian juga di wujudkan dalambilangan biner. Perceptron dibatasi untuk dua lapisan pengolah dengan satulapisan bobot yang dapat beradabtasi.

    Gambar 2.6. Arsitektur Perceptron

    Elemen pada Gambar 2.6 adalah unit pengolah dasar dari perceptron. Unitpengolah ini mendapat masukan dari unit pengolah lain yang masing-masingdihubungkan melalui bobot interkoneksi Wi. Unit pengolah melakukanpenjumlahan berbobot untuk masukannya, dengan rumus berikut ini.

    n

    iiiwxX

    1

    Dengan:

    Wi=bobot sambungan dari unit input ke output

    Xi=masukan yang berasal dari unit input

    Threshold

    Inputs

    x1

    x2

    OutputY

    HardLimiter

    w2

    w1

    LinearCombiner

  • 137Sistem Pakar

    Sebuah nilai prasikap(fungsi aktivasi) diberikan sebagai tambahan masukankepada unit pengolah. Nilai fungsi aktivasi ini pada umumnya menggunakanFA(Fungsi Aktivasi)Ystep yaitu 1 atau 0, dan dihubungkan dengan unit pegolahoutput melalui pembobot yang nilainya selalu beradaptasi selama jaringanmengalami pelatihan.

    Fungsi Aktivasi YStep

    XX

    Yif,1if,1

    Gambar 2.7. Jenis-Jenis Fungsi Aktivasi

    Perceptron dilatih dengan menggunakan sekumpulan pola yang diberikankepadanya secara berulang-ulang selama latihan. Setiap pola yang diberikanmerupakan pasangan pola masukan dan pola yang diinginkan. Perceptronmelakukan penjumlahan berbobot terhadap tiap-tiap masukannya danmenggunakan fungsi ambang untuk menghitung keluaraannya. Keluaran inikemudian dibandingkan dengan hasil yang diinginkan dengan rumus

    )()()( pYpYpe d

    Dimana

  • 138Sistem Pakar

    E=eror

    Yd=output destination(diharapkan)

    Yp=output actual

    Perbedaan yang dihasilkan dari perbandingan ini digunakan untuk merubah bobot-bobot yang ada dalam jaringan. Demikian dilakukan berulang-ulang sehinggadihasilkan keluaran yang sesuai dengan hasil yang diinginkan.

    Langkah-langkah Penyelesaian Perceptron

    1. Inisiali

    Tentukan input, bobot awal, output yang diharapkan, threshold dantraining rate

    2. Hitung keluaran(output actual) dengan rumus

    n

    iii pwpxsteppY

    1)()()(

    Gunakan fungsi aktivasi Y step untuk menentukan output actual

    0if,00if,1

    XX

    Y

    3. Hitung eror dengan menggunakan rumus

    )()()( pYpYpe d 4. Update bobot dengan menggunakan rumus

    )()()1( pwpwpw iii )()()( pepxpw ii

    5. Lakukan iterasi

    Contoh Penerapan

    Input Output ygdiharapkan

    Bobot awal Outputactual

    Error Bobot akhir

    X1 X2 Yd W1 W2 Ya e W1 W2

  • 139Sistem Pakar

    0 0 0 0,3 -0,1

    0 1 0

    1 0 0

    1 1 1

    Threshold: = 0.2; learning rate: = 0.1

    Dengan arsitektur 2-1(2 input dan 1 output)

    Epoch I

    Iterasi 1

    1. Hitung output actual

    n

    iii pwpxsteppY

    1)()()(

    2,0)1,00()3,00()1(1

    n

    ixxstepY

    2,0)1( stepY0)1( Y

    2. Hitung error

    )()()( pYpYpe d 000)1( e

    3. Update bobot

    Threshold

    Inputs

    x1

    x2

    OutputY

    HardLimiter

    w2

    w1

    LinearCombiner

  • 140Sistem Pakar

    a. Bobot w1

    )()()1( pwpwpw iii 3,003,0)1,1( iw

    )()()( pepxpw ii 0001,0)1,1( xxwi

    b. Bobot w2

    )()()1( pwpwpw iii 1,001,0)2,1( iw)()()( pepxpw ii

    0001,0)2,1( xxwiHasil iterasi 1 sebagai berikut:

    Input Output ygdiharapkan

    Bobot awal Outputactual

    Error Bobot akhir

    X1 X2 Yd W1 W2 Ya e W1 W2

    0 0 0 0,3 -0,1 0 0 0,3 -0,1

    0 1 0 0,3 -0,1

    1 0 0

    1 1 1

    Iterasi 2

    1. Hitung output actual

    2,0)1,01()3,00()2(1

    n

    ixxstepY

    3,0)2( stepY0)2( Y

    2. Hitung error

    000)2( e3. Update bobot

  • 141Sistem Pakar

    c. Bobot w1

    3,003,0)1,2( iw)()()( pepxpw ii

    0001,0)1,2( xxwid. Bobot w2

    1,001,0)2,2( iw0011,0)2,2( xxwi

    Hasil iterasi 2 sebagai berikut:

    Input Output ygdiharapkan

    Bobot awal Outputactual

    Error Bobot akhir

    X1 X2 Yd W1 W2 Ya e W1 W2

    0 0 0 0,3 -0,1 0 0 0,3 -0,1

    0 1 0 0,3 -0,1 0 0 0,3 -0,1

    1 0 0 0,3 -0,1

    1 1 1

    Iterasi 3

    1. Hitung output actual

    2,0)1,00()3,01()3(1

    n

    ixxstepY

    1,0)3( stepY 1)3( Y

    2. Hitung error101)3( e

    3. Update bobote. Bobot w1

    2,01,03,0)1,3( iw1,0111,0)1,3( xxwi

    f. Bobot w2

  • 142Sistem Pakar

    1,001,0)2,3( iw0101,0)2,3( xxwi

    Hasil iterasi 3 sebagai berikut:

    Input Output ygdiharapkan

    Bobot awal Outputactual

    Error Bobot akhir

    X1 X2 Yd W1 W2 Ya e W1 W2

    0 0 0 0,3 -0,1 0 0 0,3 -0,1

    0 1 0 0,3 -0,1 0 0 0,3 -0,1

    1 0 0 0,3 -0,1 1 -1 0,2 -0,1

    1 1 1 0,2 -0,1

    Iterasi 4

    4. Hitung output actual

    2,0)1,01()2,01()4(1

    n

    ixxstepY

    1,0)4( stepY0)4( Y

    5. Hitung error101)4( e

    6. Update bobotg. Bobot w1

    3,01,02,0)1,4( iw1,0111,0)1,4( xxwi

    h. Bobot w2

    01,01,0)2,3( iw1,0111,0)2,4( xxwi

    Hasil iterasi 4 sebagai berikut:

    Input Output yg Bobot awal Output Error Bobot akhir

  • 143Sistem Pakar

    diharapkan actual

    X1 X2 Yd W1 W2 Ya e W1 W2

    0 0 0 0,3 -0,1 0 0 0,3 -0,1

    0 1 0 0,3 -0,1 0 0 0,3 -0,1

    1 0 0 0,3 -0,1 1 -1 0,2 -0,1

    1 1 1 0,2 -0,1 1 1 0,3 0

    Untuk epoch I hingga iterasi ke-4 error belum nol(0), masih terdapat error -1 dan1 untuk iterasi ke 3 dan 4, maka harus dilanjutkan untuk epoch selanjutnya untukmencapai error 0 untuk semua input. Jika dilanjutkan ke epoch berikutnya makahasilnya sebagai berikut

    Epoch Input Output ygdiharapkan

    Bobot

    awal

    Outputactual

    Error Bobot

    akhir

    X1 X2 Yd W1 W2 Ya e W1 W2

    I 0 0 0 0,3 -0,1 0 0 0,3 -0,1

    0 1 0 0,3 -0,1 0 0 0,3 -0,1

    1 0 0 0,3 -0,1 1 -1 0,2 -0,1

    1 1 1 0,2 -0,1 0 1 0,3 0

    II 0 0 0 0,3 0 0 0 0,3 0

    0 1 0 0,3 0 0 0 0,3 0

    1 0 0 0,3 0 1 -1 0,2 0

    1 1 1 0,2 0 1 1 0,2 0

    III 0 0 0 0,2 0 0 0 0,2 0

    0 1 0 0,2 0 0 0 0,2 0

    1 0 0 0,2 0 1 -1 0,1 0

    1 1 1 0,1 0 0 1 0,2 0,1

    IV 0 0 0 0,2 0,1 0 0 0,2 0,1

    0 1 0 0,2 0,1 0 0 0,2 0,1

    1 0 0 0,2 0,1 1 -1 0,1 0,1

  • 144Sistem Pakar

    1 1 1 0,1 0,1 1 0 0,1 0,1

    IV 0 0 0 0,1 0,1 0 0 0,1 0,1

    0 1 0 0,1 0,1 0 0 0,1 0,1

    1 0 0 0,1 0,1 0 0 0,1 0,1

    1 1 1 0,1 0,1 1 0 0,1 0,1

    Error 0 dicapai pada poch ke-5, dikatakan cerdas dan dapat digunakan untukmemprediksi.

    2.5.3. BACK PROPAGATION(Perambatan Galat Mundur)

    2.5.3.1. Pengantar Back Propagation

    Jaringan perambatan galat mundur (backpropagation) adalah salah satualgoritma yang sering digunakan dalam menyelesaikan masalah-masalah yangrumit. Hal ini dimungkinkan karena pelatihan dengan menggunakan metodebelajar terbimbing. Pada jaringan back propagation diberikan sepasang pola yangterdiri atas pola masukan dan pola yang diinginkan. Ketika suatu pola diberikankepada jaringan, maka bobot-bobot diubah untuk memperkecil perbedaan polakeluaran dan pola yang diinginkan. Latihan ini dilakukan berulang-ulang sehinggasemua pola yang dikeluarkan jaringan dapat memenuhi pola yang diinginkan.

  • 145Sistem Pakar

    Algoritma pelatihan jaringan saraf perambatan galat mundur terdiri atasdua langkah,yaitu perambatan maju dan perambatan mundur. Langkahperambatan mundur ini dilakukan pada jaringan untuk setiap pola yang diberikanselama jaringan mengalami pelatihan. Jaringan perambatan galat mundur terdiriatas tiga lapisan atau lebih unit pengolah.

    I J K

    Gambar 2.8. Arsitektur Backpropagation

    Gambar 2.8 menunjukkan jaringan perambatan galat mundur dengan tigalapisan pengolah, bagian kiri sebagai masukan, bagian tengah disebut sebagailapisan tersembunyi dan bagian kanan disebut lapisan keluaran. Ketiga lapisan initerhubung secara penuh. Perambatan maju dimulai dengan memberikan polamasukan ke lapisan masukan. Pola masukan ini merupakan nilai aktivasi unit-unit

    masukan. Dengan melakukan perambatan maju dihitung nilai aktivasi pada unit-unit di lapisan berikutnya. Pada setiap lapisan,tiap unit pengolah melakukanpenjumlahan berbobot dan menerapkan fungsi sigmoid untuk menghitungkeluarannya.

    Keluaran Hiden layer dengan menggunakan rumus

    n

    ijpwijxpxiSigmoidpYj

    1)()()(

    In p u tla yer

    x i

    x 1

    x 2

    x n

    1

    2

    i

    n

    O u tp u tla yer

    1

    2

    k

    l

    y k

    y 1

    y 2

    y l

    In p u t s ig n a ls

    E rro r s ig n a ls

    w jk

    H id d enla yer

    w ij

    1

    2

    j

    m

  • 146Sistem Pakar

    Dimana

    Yj=keluaran unit j

    Sigmoid=fungsi aktivasi

    Xi=input dari unit i

    Wij=bobot dari unit i ke j

    j =batas ambang unit j

    P=iterasi

    Keluaran Output layer dengan menggunakan rumus

    m

    jkpWjkxpXjksigmoidYk

    1)()(

    Dimana

    Yk=keluaran unit k

    Sigmoid=fungsi aktivasi

    Xjk=input dari unit j

    Wjk=bobot dari unit j ke k

    k =batas ambang unit k

    P=iterasi

    Menentukan Erorr dengan menggunakan rumus

    )()(,)( pYkpkYdpek

    Dimana

    ek=error unit k(output layer)

  • 147Sistem Pakar

    Ydk=output yang diharapkan pada unit k

    Yk=output actual pada unit k

    P=iterasi

    Fungsi Aktivasi Ysigmoid

    X

    Sigmoid

    eY 1

    1

    Dimana

    x=nilai Yj/Yk

    Gradien error Hidden

    )()(1)()( pekxpYkxpYkpk Gradien error Input

    l

    kpWjkxpkxpYjxpYjpj

    1)()()(1)()(

    Langkah-Langkah Penyelesaian Backpropagation

    1. Inisialisasi

    Tentukan input, output yang diharapkan, bobot input, bobot hidden,treshold hidden, threshold output, training rate,

    2. Hitung keluaran hidden

    n

    ijpwijxpxiSigmoidpYj

    1)()()(

    Gunakan fungsi aktivasi Ysigoid untuk menentukan keluaran hidden danoutput layer dengan rumus

    X

    Sigmoid

    eY 1

    1

    3. Hitung keluaran output

  • 148Sistem Pakar

    m

    jkpWjkxpXjksigmoidYk

    1)()(

    4. Hitung error dengan rumus

    )()(,)( pYkpkYdpek 5. Update bobot hidden(Wjk)

    a. Hitung gradien error

    )()(1)()( pekxpYkxpYkpk b. Update bobot

    )()()1( pWjkpWjkpWjk )()()( pkxpYjxpWjk

    6. Update bobot input(Wij)a. Hitung gradient error

    l

    kpWjkxpkxpYjxpYjpj

    1)()()(1)()(

    b. Update bobot

    )()()1( pWijpWijpWij )()()( pjxpXixpWij

    7. Lakukan iterasi

    Contoh Penerapan Back Propagation

    3.0,1.0,8.01 32 , = 0.3

    Dengan arsitektur 3-2-1(3 input, 2 hidden dan 1 output)

  • 149Sistem Pakar

    Iterasi 1

    4. Hitung output actual

    a. Keluaran hidden layer

    n

    ijpwijxpxiSigmoidpYj

    1)()()(

    n

    ixxxSigmoidYj

    18,0)5,01()4,01()2,00()1(

    1,0)1( SigmoidYj X

    Sigmoid

    eY 1

    1

    1,011

    eYSigmoid

    52,0)1( Yj

    n

    ixxxSigmoidYj

    11,0)3,01()3,01()2,00()2(

    1,0)2( SigmoidYj1,01

    1e

    YSigmoid

    47,0)2( Yjb. Keluaran output layer

    n

    ixxSigmoidYj

    13,0)6,047,0()4,052,0()3(

    19,0)3( SigmoidYj

    X

    Sigmoid

    eY 1

    1

    19,011 eY

    Sigmoid

  • 150Sistem Pakar

    54,0)3( Yj

    5. Hitung error)()(,)( pYkpkYdpek

    46,0154,0)1( ekError tidak sama dengan nol, sehingga penelusura mundur(back) sambilmemperbaharui bobot hingga error =0

    3. Update bobot hidden(Wjk)a. Hitung gradien error output layer

    )()(1)()( pekxpYkxpYkpk 46,054,0154,0)1( xxk

    11,0)1( kb. Update bobot hidden layer(Wjk1)

    )()()( pkxpYjxpWjk 11,052,03,0)1( xxWjk

    01,0)1( Wjk)()()1( pWjkpWjkpWjk

    39,0)01,0(4,0)1( Wjkc. Update bobot hidden layer (Wjk2)

    )()()( pkxpYjxpWjk 11,047,03,0)2( xxWjk

    01,0)2( Wjk)()()1( pWjkpWjkpWjk

    59,0)01,0(6,0)2( Wjk

    4. Update bobot input(Wij)a. Hitung gradient error hidden(Y1)

    l

    kpWjkxpkxpYjxpYjpj

    1)()()(1)()(

  • 151Sistem Pakar

    4,0)11,0(52,0152,0)1( xxxj 0110,0)1( j

    b. Hitung gradient error hidden(Y2)

    l

    kpWjkxpkxpYjxpYjpj

    1)()()(1)()(

    6,0)11,0(47,0147,0)2( xxxj 0164,0)2( j

    c. Update bobot input layer(Wij1))()()( pjxpXixpWij

    0)0110,0(03,0)1( xxWij)()()1( pWijpWijpWij

    2,002,0)1( Wijd. Update bobot input layer(Wij2)

    )()()( pjxpXixpWij 0033,0)0110,0(13,0)2( xxWij

    )()()1( pWijpWijpWij 4033,00033,04,0)2( Wij

    e. Update bobot input layer(Wij3))()()( pjxpXixpWij

    0033,0)0110,0(13,0)3( xxWij)()()1( pWijpWijpWij

    5033,00033,05,0)2( Wijf. Update bobot input layer(Wij4)

    )()()( pjxpXixpWij 0)0164,0(03,0)4( xxWij

    )()()1( pWijpWijpWij 2,002,0)4( Wij

    g. Update bobot input layer(Wij5)

  • 152Sistem Pakar

    )()()( pjxpXixpWij 0049,0)0164,0(13,0)5( xxWij

    )()()1( pWijpWijpWij 2051,0)0049,0(3,0)5( Wij

    h. Update bobot input layer(Wij6))()()( pjxpXixpWij

    0049,0)0164,0(13,0)6( xxWij)()()1( pWijpWijpWij

    3049,0)0049,0(3,0)6( WijUntuk iterasi 1 sudah selesai dan hasil akhir setelah dilakukan

    update bobot adalah

    untuk mencapai error=0 harus dilanjutkan perhitungan untuk iterasiselanjutnya dan melakukan update bobot

    2.6. Decision Tree(Pohon Keputusan)

    2.6.1. Pengantar Decision Tree

  • 153Sistem Pakar

    Decision tree salah satu metode learning yang dapat mendefenisikan ataumenemukan aturan secara otomatis dan dapat berlaku umum untuk data-datayang belum pernah di ketahui. Decision tree juga salah satu metode belajar yangsangat populer dan banyak digunakan secara praktis karena dengan Decison treeakan berusaha menemukan fungsi-fungsi pendekatan yang bernilai diskrit dantahan terhadap data-data yang terdapat kesalahan(noise data) serta mampumempelajari ekspresi-ekspresi disjunctive(ekpresi OR). Ada beberapa algoritmayang termasuk dalam decision tree yaitu ASISTANT, C. 45 dan ID3. Dalam bukuini fokus pembahasan tentang algoritma ID3(Iterative Dychotomizer version 3).Dengan ID3 berusaha membangun pohon keputusan secara top-down(dari atas kebawah) yang dimulai dengan penentuan atribut sebagai akar(root). Untukmenentukan root dengan cara mengevaluasi semua atribut dengan ukuran statistikyaitu information gain dengan tujuan mengukur efektifitas atribut dalammengklasifikasikan kumpulan sampel data. Information Gain yang paling besaradalah atribut sebagai root (Suyanto, 2011).

    Table 2.8. Contoh Data Penerima Beasiswa

    Nim IPK Kehadiran Attitude DapatBeasiswa

    001 Bagus Tinggi Baik Ya

    002 Bagus Sedang Baik Ya

    003 Bagus Sedang Kurang Ya

    004 Bagus Rendah Kurang Tidak

    005 Cukup Tinggi Baik Ya

    006 Cukup Sedang Baik Ya

    007 Cukup Sedang Kurang Ya

    008 Cukup Rendah Kurang Tidak

    009 Kurang Tinggi Baik Ya

    010 Kurang Sedang Kurang Tidak

    011 Kurang Rendah Baik Ya

  • 154Sistem Pakar

    1. EntropyUntuk menghitung information gain, terlebih dahulu dengan menghitungentropy sebagai parameter untuk mengukur heterogenitas(keberagaman)dari suatu kumpulan sampel. Jika kumpulan sampel data semakinheterogen maka nilai entropy nya semakin besar. Secara matematisdituliskan sebagai berikutEntropy(S) = pi log piDimana C : jumlah nilai atribut target(jumlah kelas klasifikasi)

    pi: jumlah sampel untuk kelas i

    Tabel 2.8. menunjukkan data penerima mahasiswa, yang dikatakan targetadalah dapat beasiswa(Decision system) jumlah kelas=2 yaitu ya dantidak, berarti c=2. Jumlah data=11, untuk kelas ya=8 dan kelas tidak=3,maka entropynya adalah:entropy(S)=(8/11)*log2(8/11) (3/11)*log2(3/11)

    2. Iformation Gain

    Setelah mendapatkan hasil entropy, berikut mengukur mengukur evektivitas suatuatribut dalam mengklasifikasikan data. Ukuran evektivitas ini disebut sebagaiinformation gain, secara matematis information gain dari suatu atribut A,dituliskan sebagai berikut:

    Gain(S, A) = ( ) |Sv||S| Entropy(Sv) ( )Di mana:

    A : atribut

    V : menyatakan suatu nilai yang mungkin untuk atribut A

  • 155Sistem Pakar

    Values(A) : himpunan nilai-nilai yag mungkin untuk atribut A

    |Sv| : jumlah sampel untuk nilai v

    |S| : jumlah seluruh sampel data

    Entropy(Sv) : entropy untuk sampel_sampel yang memiliki nilai v

    Untuk memahami information gain lebih detail, perhatikan bagaimanamenghitung information gain untuk IPK di bawah ini :

    Pada table 2.8 di atas atribut dapat beasiswa =Ya dikatakan sebagaisampel positif (+),dan atribut dapat beasiswa =Tidak dikatakan sebagaisampel negatif (-), dari sampel data pada table 2.8 didapatkan:

    Values(IPK)=Bagus,Cukup,KurangS=[8+,3-],|S|=11SBagus=[3+,1-],|SBagus|=4SCukup=[3+,1-],|SCukup|=4SKurang=[2+,1-],|SKurang|=3

    Selanjutnya,nilai-nilai entropy untuk S, SBagus,SCukup,SKurang daninformation gain untuk IPK adalah:

    Entropy(S)=-(8/11)log2(8/11)-(3/11)log2(3/11)

    =0,8454

    Entropy(SBagus)=-(3/4)log2(3/4)-(1/4)log2(1/4)

    =0,8113

    Entropy(SCukup) =-(3/4)log2(3/4)-(1/4)log2(1/4)

    =0,8113

    Entropy(SKurang)=-(2/3)log2(2/3)-(1/3)log2(1/3)

    =0,9183

  • 156Sistem Pakar

    Gain(S,IPK)= Entropy(S)-(4/11)Entropy(SBagus)-(4/11)Entropy(SCukup) 3/11)Entropy(SKurang)

    =0,8454-(4/11)0,8113-(4/11)0,8113-(3/11)0,9183

    =0,0049

    2.6.2. AlgoritmaID3

    IDE3 adalah algoritma decision tree learning (algoritma pembelajaranpohon keputusan ) yang paling dasar. Algoritma ID3 melakukan pencarian secararakus/menyeluruh (greedy) pada semua kemungkinan pohon keputusan.Alogoritma IDE3 dapat diimplementasikan mengunakan fungsi rekursif (fungsiyang memangil dirinya sendiri ),sebagai berikut:

    Function IDE3 (Kumpulan sampel,Atribut Target,Kumpulan Atribut )

    1. Buat simpul Root

    2. If semua sampel adalah kelas i,maka Return pohon satu simpul Rootndengan label=i

    3. If kumpulan Atribut kosong ,Return pohon satu simpul Root dengan label=nila atribut target yang paling umum (yang paling sering muncul)Else

    AAtribut yang merupakan the best classifer (dengan informationgain terbesar)

    Atribut untuk keputussan untuk rootA For vi (setiap nilai pada A)

    Tambahkan suatu cabang di bawah Root sesuai nilai vi Buat satu variabel ,misalnya sampel vi,sebagai himpunan

    bagian(subset)dari kumpulan sampel yang bernilai vi padaatribut A

    If sampel vi kosongThen

  • 157Sistem Pakar

    di bawah cabang ini tambahkan suatu simpul daun(leafnode,simpul yang tidak punya anak di bawahnya )denganlabel=nilai atribut target yang paling umum(yang plingsering muncul)

    Else

    di bawah cabang ini tambahkan subtree denganmemanggil fungsi ID3(Sampelvi,Atribut Target Atribut-{A}

    End

    End

    End

    4.Retrun Root

    Agar lebih memehami algoritma ID3 di atas,marilah kita terapkanalgoritma tersebut untuk menemukan decision tree yang tepat untuk data tabel 2.8tentang data penerima beasiswa sebagai berikut:

    Rekursi level 0 interasi ke-1

    Memanggil fungsi ID3 dengan kumpulan sampel berupa semua sampeldata=[8+,3-],Atribut Target=diterima,dan kumpulanatribut={IPK,Kehadiran,Attitude}. Pada halaman sebelumnya, kita sudahmenghitung information gain untuk IPK, yaitu Gain(S,IPK)=0,0049. Untukmenemukan atribut yang merupakan the best classifer dan di letakkan sebagaiRoot ,kita perlu menghitung information gain untuk 2 atribut yang lain, yaituKehadiran dan Attitude. Dari tabel 2.8 dengan cara yang sama pada prosespenghitungan gain(S,IPK),kita dapatkan Gain (S,Kehadiran):

    Values(Kehadiran)=Tinggi, Sedang, Rendah

    S=[8+3-],|S|=11

  • 158Sistem Pakar

    STinggi=[3+.0-],|STinggi|=3,Entropy(STinggi)=0

    SSedang=[4+,1-] ,|SSedang|=5,Entropy(SSedang)=0,7219

    SRendah=[1+,2-],|SRendah|=3,Entropy(SRendah)=0,9183

    Gain(S,Kehadiran)=Entropy(S)-(3/11)Entropy(STinggi) -(5/11) Entropy(SSedang)-(3/11)Entropy(SRendah)

    =0,8454-(3/11)0-(5/11)0,7219-(3/11)0,9183

    =0,2668

    Dari tabel 2.8 dan dengan cara yang sama pada proses penghitungan gain(S,IPK),kita dapatkan Gain(S,Attitude):

    Values(Attitude)=Baik,Buruk

    S=[8+,3-),|S|=11

    SBaik=[6+,0-),|SBaik|=6, Entropy(SBaik)=0

    SBuruk=[2+,3-],|SBuruk|=5 Entropy(SBuruk)=0,9710

    Gain (S, Attitude)= Entropy(S)-(6/11) Entropy(SBaik)-(5/11) Entropy(SBuruk)

    =0,8454-(6/11)0-(5/11)0,9710

    =0,4040

    Dari tiga nilai information gain di atas,Gain(S, Attitude)adalah yang terbesar,sehingga Attitude adalah atribut yang merupakan the best classifer dan harus diletakkan sebagai Root. Selanjutnya ,setiap nilai pada atribut Attitude akan dicekapakah perlu di buat subtree di level berikutnya atau tidak. Untuk nilai baik

    terdapat 6 sampel ,berarti SampleBaik tidak kosong .Sehingga ,perlu memanggilfungsi ID3 dengan kumpulan sampel berupa SampleBaik=[6+,0-],AtributTarget=Diterima,dan Kumpulan Atribut={IPK,Kehadiran }.Pada tahap ini ,diperolehstruktur pohon pada gambar 2.9 berikut ini

  • 159Sistem Pakar

    Gambar 2.9. Pohon keputusan yang dihasilkan pada rekursi level 1 iterasike-1

    Rekursi Level 1 iterasi ke-1

    Memangil fungsi ID3 dengan kumpulan sampel berupa SampleBaik=[6+,0-]Atribut Target=Diterima,dan KumpulanAtribut ={IPK,Kehadiran }.Karenasemua sample pada SampleBaik termasuk dalam kelas ya,maka fungsi ini akanberhenti dan menggembalikan satu simpul tunggal Root dengan label ya pada

    tahap ini,dihasilkan pohon pada gambar 5-3 selanjutnya,proses akan kembali kerekkursi level o ke 2.

    Gambar 2.10. Pohon keputusan yang di hasilkan pada rekursi level 1 iterasike-1

    Baik

    Attitude

    Ya

    Attitude

    Baik

  • 160Sistem Pakar

    Rekursi Level o Iterasi ke-2

    Pada rekursi level 0 iterasi ke-1 sudah dilakukan pengecekan untuk atributAttitude dengan nilai baik. Selanjutnya,dilakukan pengecekan untuk atributAttitude dengan nilai Buruk. Untuk nilai Buruk terdapat 5 sampel, berarti

    sample Buruk tidak kosong, sehingga perlu memenggil fungsi ID3 dengankumpulan sampel berupa sampleBuruk =[2+,3-], Atribut Target=diterima, dankumpulan atribut ={IPK,Kehadiran}, pada tahap ini dihasilkan pohon sebagaiberikut.

    Gambar 2.11 : pohon keputasan yang dihasilkan pada rekursi level 0 iterasike-2

    Rekursi Level 1 iterasi ke-2

    Memanggil fungsi ID3 dengan kumpulan sampel berupaSampleBuruk=[2+,3- ] ,AtributTarget=Diterima,dan kumpulanatribut={IPK,Kehadiran}. Pada tahap ini,dilakukan perhitungan information gainuntuk atribut IPK dan Kehadiran, tetapi kumpulan semple yang diperhitungkanadalah sampleBuruk dengan 5 sample data,yaitu [2+,3-].dengan kata lain,S=SampleBuruk

    Attitude

    Baik Buruk

    Ya

  • 161Sistem Pakar

    Values(IPK)=Bagus,Cukup,Kurang

    S=SampleBuruk=[2+,3-],|S|=5

    SBagus=[1+,1-],|SBagus|=2

    SCukup=[1+,1-],|SCukup|=2

    SKurang=[0+,1-],|SKurang|=1

    Selajutnya, nilai-nilai entropy untuk S, SBagus, SCukup, SKurang,dan information gainuntuk IPK adalah:

    Entropy(S)=-(2/5)log2,(2/5)-(3/5)log2(3/5)

    =0,9710

    Entropy(SBagus)=-(1/2)log2(1/2)-(1/2)log2(1/2)

    =1

    Entropy(SCukup)=-(1/2)log2(1/2)-(1/2)log2(1/2)

    =1

    Entropy(SKurang)=(0)log2(0)-(1)log2(1)

    =0

    Gain(S,IPK)= Entropy(S) - (2/5)Entropy(SBagus) - (2/5)Entropy(SCukup) -(1/5)Entropy(SKurang)

    =0,9710-(2/5)1-(2/5)1-(1/5)0

    =0,1710

    Values(Kehadiran)=Tinggi,Sedang,Rendah

    S=SampleBuruk=[2+,3-],|S|=5, Entropy(S)=0,9710

    STinggi=[0+,0-],|STinngi|=0,Entropy(STinggi)=0

  • 162Sistem Pakar

    SSedang=[2+,1-]|SSedang|=3 Entropy(SSedang)=0,9183

    SRendah=[0+,2-],|SRendah|=2, Entropy(SRendah)=0

    Gain(S, Kehadiran)= Entropy(S) - (0/5)Entropy(STinggi) - (3/5)Entropy(SSedang) -(2/5)Entropy(SRendah)

    =0,9710-(0/5)0-(3/5)0,9183-(2/5)0

    =0,4200

    Dari dua nilai information gain di atas ,gain (S, Kehadiran) adalah yang terbesar,sehingga Kehadiran adalah adalah atribut yang merupakan the best classifer danharus di letakkan sebagai simpul di bawah simpul Attitude pada cabang nilaiBuruk . Selanjutnya ,setiap nilai pada atribut Kehadiran akan di cek apakahperlu di buat subtree di level berikut nya atau tidak .Utuk nilai Tinggi (Pada

    kumpulan sampel berupa SampleBuruk=[2+,3-]),terdapat 0 sampel, berartiSampleTinggi kosong. Sehingga perlu dibuat satu simpul daun (leaf node,simpulyang tidak punyak anak di bawahnya) dengan label yang paling sering munculpada SampleBuruk yaitu tidak. Kemudian dilakukan pengecekan untuk atributKehadiran bernilai sedang. Untuk nilai Sedang (Pada Kumpulan Sampelberupa SampleBuruk =[2+,3-]),terdapat tiga sample ,berarti sampleSedang tidakkosong. Sehingga perlu memangil fungsi IDE3 dengan kumpulan sample berupaSampleSedang=[2+,1-],