MODUL PRAKTEK
TR207P31 – Data Mining
Riwayat Revisi
Tanggal Revisi Disusun oleh: Rev
September 2023 Rizky Aditya Imron, M.Kom. 0
PROGRAM DIPLOMA IV
TEKNOLOGI REKAYASA PERANGKAT LUNAK
POLITEKNIK JAMBI
47
KATA PENGANTAR
Alhamdulillah, Segala Puji Hanya untuk Allah Tuhan Yang Maha Berilmu. Atas
petunjukNya-lah kami dapat menyelesaikan Modul Praktikum Data Mining ini.
Diharapkan dengan adanya modul ini, mahasiswa mendapatkan panduan dalam mengikuti
Praktikum Data Mining pada Pendidikan D4 Program Studi Teknologi Rekayasa
Perangkat Lunak.
Modul ini berisi pemahaman konsep-konsep Data Mining serta metode-metode
yang ada. Isi buku disusun mulai dari teori penunjang/dasar teori, tugas pendahuluan
yang berisi konsep yang harus diketahui mahasiswa sebelum melaksanakan praktikum
serta percobaan dan latihan.
Sekalipun modul ini telah selesai dengan proses yang cukup panjang, akan tetapi
masih tidak menutup adanya kekurangan padanya. Segala masukan, kritik dan review
sangat kami harapkan untuk semakin menyempurnakannya pada kesempatan mendatang.
Tim Penyusun
47
Data Mining
DAFTAR ISI
KATA PENGANTAR ......................................................................................................1
DAFTAR ISI ....................................................................................................................2
TATA TERTIB PENGGUNAAN LABORATORIUM ..................................................3
1. Peraturan Umum...................................................................................................3
2. Peraturan Dosen Pengajar ....................................................................................3
3. Peraturan Mahasiswa ...........................................................................................4
4. Tugas dan Laporan ...............................................................................................6
5. Penilaian ................................................................................................................6
6. Panduan Umum Keselamatan Kerja Dan Penggunaan Alat ...............................6
JOB SHEET PRAKTIKUM 1 .........................................................................................8
JOB SHEET PRAKTIKUM 2 ....................................................................................... 14
JOB SHEET PRAKTIKUM 3 ....................................................................................... 16
JOB SHEET PRAKTIKUM 4 ....................................................................................... 31
JOB SHEET PRAKTIKUM 5 ....................................................................................... 34
JOB SHEET PRAKTIKUM 6 ....................................................................................... 40
JOB SHEET PRAKTIKUM 7 ....................................................................................... 46
JOB SHEET PRAKTIKUM 8 ....................................................................................... 52
2
Data Mining
1. Peraturan Umum
1. Laboratorium adalah hak dan tanggung jawab dari Ketua Laboratorium yang
bersangkutan.
2. Dosen dan mahasiswa wajib berkoordinasi dan meminta izin kepada Ketua
Laboratorium (minimal secara lisan).
3. Ketua Lab berhak memberhentikan proses pembelajaran apabila terjadi ketidak sesuaian
pada saat proses belajar mengajar (baik dari Dosen yang bersangkutan ataupun dari
Mahasiswa).
4. Penggunaan Labaratorium untuk proses belajar mengajar hanya dapat digunakan sesuai
dengan jadwal praktikum yang berlaku.
5. Penggunaan Laboratorium diluar jam kerja/jadwal termasuk SP harus membuat Surat
Pengajuan Izin serta keperluan Praktikum ke Ketua Laboratorium melalui KPS.
6. Rincian penggunaan Laboratorium tertera pada Jadwal Penggunaan Laboratorium yang
telah di buat oleh Ketua Lab dan diketahui KPS.
7. Peminjaman alat dan bahan akan dilayani jika pengajar yang bersangkutan sudah hadir.
Jika belum hadir maka peminjaman hanya dapat dilayani apabila pengajar yang
bersangkutan sudah melakukan konfirmasi ke Ketua Lab ataupun mahasiswa membawa
surat rekomendasi dari Pengajar/Dosen.
8. Sebelum Proses Kegiatan Belajar Mengajar berlangsung, alat dan bahan di pastikan
telah siap dan dapat di gunakan dengan berkoordinasi antara Dosen Pengajar dengan
Kepala Lab terkait.
9. Dilarang keras merokok, membawa makanan/minuman atau sejenisnya kedalam
Laboratorium.
3
Data Mining
2. Hadir di Laboratorium sebelum praktikum dimulai (waktu yang telah ditentukan sesuai
jadwal yang berlaku)
3. Pada saat praktikum harus memakai baju praktikum sebagai mana aturan yang berlaku,
atau yang disediakan oleh Ketua Laboratorium
4. Wajib memakai sepatu.
5. Menyediakan bahan ajar atau modul sendiri sesuai dengan pembelajaran yang
diperlukan, yang sudah di seragamkan melalui Template Modul Praktikum di Lab
terkait (untuk kegiatan Lab reguler).
6. Wajib menjaga dan mengarahkan mahasiswa untuk menjaga kebersihan dan ketertiban
di Laboratorium, serta mematuhi peraturan yang telah dibuat.
7. Apabila meminjam alat/bahan, wajib mengarahkan mahasiswa untuk mengisi Form
Peminjaman Alat/Bahan yang telah disediakan oleh Ketua Laboratorium yang
bersangkutan.
8. Wajib memperhatikan mahasiswa disaat melakukan praktikum dan mengarahkan sesuai
dengan modul dan pembelajaran.
9. Apabila menjumpai kesalahan, kerusakan, atau ketidak sesuaian dengan buku petunjuk
praktikum/modul praktikum, diharapkan dapat mengkondisikan Laboratorium agar
tetap tertib dan aman.
10. Memperhatikan dan mengkondisikan jika terjadi kerusakan atau kehilangan alat yang
disebabkan oleh kesalahan/kelalaian mahasiswa dan memastikan kepada kelompok
tersebut untuk bertanggung jawab, dan kelompok/mahasiswa tersebut tidak
diperkenankan mengikuti praktek sebelum menyelesaikan tanggung jawabnya.
11. Setiap selesai melaksanakan praktek, wajib mengarahkan mahasiswa untuk
mengembalikan alat-alat yang digunakan dan melarang mahasiswa meninggalkan
Laboratorium sebelum mahasiswa tersebut menyelesaikan pengembalian alatnya.
3. Peraturan Mahasiswa
1. Dilarang keras membawa peralatan yang membahayakan diri sendiri, Dosen, maupun
mahasiswa lain.
2. Sudah hadir di Laboratorium sebelum praktikum dimulai.
4
Data Mining
5
Data Mining
5. Penilaian
1. Sikap : 25 %
2. Tugas : 30 %
3. Laporan : 20 %
4. Ujian Praktik : 25 %
6
Data Mining
7
Data Mining
A. Tujuan Praktikum
1. Mahasiswa mampu mengenal dan menjelaskan tentang konsep dasar data
mining
2. Mahasiswa mampu memahami tentang Data Mining dan penerapannya.
C. Dasar Teori
Data mining adalah suatu istilah yang digunakan untuk menguraikan penemuan
pengetahuan di dalam database. Data mining adalah proses yang menggunakan teknik
statistik, metematika, kecerdasan buatan, dan machine learning untuk mengekstrasi dan
mengidentifikasi informasi yang bermanfaat dan pengetahuan yang terkait dari berbagai
database besar (Turban, dkk. 2005 di dalam Kusrini, dkk. 2009).
Menurut Gartner Group data mining adalah suatu proses menemukan hubungan yang
berarti, pola dan kecenderungan dengan memeriksa dalam sekumpulan besar data yang
tersimpan dalam penyimpanan dengan menggunakan teknik pengenalan pola seperti
teknik statistik dan matematika (Larose, 2005 di dalam Kusrini, dkk. 2009)
Selain definisi di atas beberpa definisi juga diberikan seperti tertera di bawah ini
“Data mining adalah serangkaian proses untuk menggali nilai tambah dari suatu
kumpulan data berupa pengetahuan yang selama ini tidak diketahui secara manual”.
(Pramudiono, 2006 di dalam Kusrini, dkk. 2009)
“Data mining adalah analisis otomatis dari data yang berjumlah besar atau kompleks
dengan tujuan untuk menemukan pola atau kecenderungan yang penting yang biasanya
tidak disadari keberadaannya”. (Pramudiono, 2006 di dalam Kusrini, dkk. 2009)
“ Data mining merupakan analisis dari peninjauan kumpulan data untuk menemukan
hubungan yang tidak diduga dan meringkas data dengan cara yang berbeda dengan
sebelumnya, yang dapat dipahami dan bermanfaat bagi pemilik data”. (Larose, 2005 di
dalam Kusrini, dkk. 2009)
“Data mining merupakan bidang dari beberapa bidang keilmuan yang menyatukan
teknik dari pembelajaran mesin, pengenalan pola statistik, database, dan visualisasi
untuk penanganan permasalahan pengambilan informasi dari database yang besar”.
(Larose, 2005 di dalam Kusrini, dkk. 2009)
Kemajuan luar biasa yang terus berlanjut dalam bidang data mining didorong oleh
beberapa faktor, antara lain (Larose, 2005 di dalam Kusrini, dkk. 2009)
8
Data Mining
Hubungan yang dicari dalam data mining dapat berupa hubungan antara dua atau lebih
dalam satu dimensi. Misalnya dalam dimensi produk kita dapat melihat keterkaitan
pembelian suatu produk dengan produk yang lain. Selain itu, hubungan juga dapat
dilihat antara dua atau lebih objek (Ponniah, 2001 di dalam Kusrini, dkk. 2009).
Data mining bukanlah suatu bidang yang sama sekali baru. Salah satu kesulitan untuk
mendefinisikan data mining adalah kenyataan bahwa data mining mewarisi banyak
aspek dan teknik dari bidang-bidang ilmu yang sudah mapan terlebih dulu. Dari gambar
1 menunjukkan bahwa data mining memiliki akar yang panjang dari bidang ilmu seperti
kecerdasan buatan (artificeial intelligent), machine learning , statistic, database, dan juga
information retrieval (Pramudiono, 2006 dalam kusrini, dkk. 2009)
Istilah data mining dan knowledge discovery in databases (KDD) sering kali digunakan
secara bergantian untuk menjelaskan proses penggalian informasi tersembunyi dalam
suatu basis data yang besar. Sebenarnya kedua istilah tersebut memiliki konsep yang
berbeda, tetapi berkatian satu sama lain. Salah satu tahapan dalam keseluruhan proses
KDD adalah data mining. Proses KDD secara garis besar dapat dijelaskan sebagai
berikut (Fayyad, 1996 dalam Kusrini, dkk. 2009)
1. Data Selection
9
Data Mining
Pemilihan (seleksi) data dari sekumpulan data operasional perlu dilakukan sebelum
tahap penggalian informasi dalan KDD dimulai. Data hasil seleski yang akan
digunakan untuk proses data mining, disimpan dalam suatu berkas, terpisah dari basis
data operasional.
2. Pre-processing/Cleaning
Sebelum proses data mining dapat dilaksanakan, perlu dilakukan proses cleaning pada
data yang mejadi fokus KDD. Proses cleaning mencakup antara lain membuang
duplikasi data, memeriksa data yang inkonsisten, dan memperbaiki kesalahan pada
data, seperti kesalahan cetak (tipografi). Juga dilakukan proses encrichment, yaitu
proses “memperkaya” data yang sudah ada dengan data atu informasi lain yang
relevan dan diperlukan untuk KDD, seperti data atau informasi eksternal.
3. Transformation
Coding adalah proses tranformasi pada data yang telah dipilih sehingga data tersebut
sesuai untuk proses data mining. Proses coding dalam KDD merupakan proses kreatif
dan sangat tergantung pada jenis atau pola informasi yang akan dicari dalam basis
data.
4. Data mining
Data mining adalah proses mencari pola atau informasi menarik dalam data terpilih
dengan menggunakan gteknik atau metode tertentu. Teknik, metode atau algoritma
dalam data mining sangat bervariasi. Pemuliah metode atau algoritma yang tepat
sangat bergantung pada tujuan dan proses KDD secara keseluruhan.
5. Interpretation/Evaluation
Pola informasi yang dihasilkan dari proses data mining perlu ditampilkan dalam
bentuk yang mudah dimengerti oleh pihak yang berkepentingan. Tahap ini merupakan
bagian dari proses KDD yang disebut interpretation. Tahap ini mencakup pemeriksaan
apakah pola atau informasi yang ditemukan bertentangan dengan fakta atau hipotesis
yang ada sebelumnya.
10
Data Mining
bahwa siapa yang tidak cukup profesional akan sedikit didukung dalam pemilihan
presiden. Deskripsi dari pola dan kecenderungan sering memberikan kemungkianan
penjelasan untuk suatu pola atau kecenderungan.
2. Estimasi
Estimasi hampir sama dengan klasifikasi, kecuali variabel terget estimasi lebih ke arah
numerik daripada ke arah katagori. Model dibangun menggunakan record lengkap
yang menyediakan nilai dari variabel target sebagai nilai prediksi. Selanjutnya pada
peninjauan berikutnya estimasi nilai dari varibel terget dibuat berdasarkan nilai dari
varibel prediksi. Sebagai contoh, akan dilakukan estimasi tekanan darah sistolik pada
pasien rumah sakit berdasarkan umur pasien, jenis kelamin, indeks berat badan, dan
level sodium darah. Hubungan antara tekanan darah sistolik dan nilai variabel prediksi
dalam proses pembelajaran akan menghasilkan model estimasi. Model estimasi yang
dihasilkan dapat digunakan untuk kasus baru lainnya.
Contoh lain yaitu estimasi nilai indeks prestasi kumulatif mahasiswa program
pascasarjana dengan melihat nilai indeks prestasi mahasiswa tersebut pada saat
mengikuti program sarjana.
3. Prediksi
Prediksi hampir sama dengan klasifikasi dan estimasi, kecuali bahwa dalam prediksi
nilai dari hasil akan ada di masa mendatang
Contoh prediksi dalam bisnis dan penelitian adalah:
• Prediksi harga beras dalam tiga bulan yang akan datang
• Prediksi presentase kenaikan kecelakaan lalu lintas tahun depan jika batas bawah
kecepatan dinaikkan.
Beberapa metode dan teknik yang digunakan dalam klasifikasi dan estimasi dapat
pula digunakan (untuk keadaan yang tepat) untuk prediksi.
4. Klasifikasi
Dalam klasifikasi, terdapat terget variabel kategori. Sebagai contoh, penggolongan
pendapatan dapat dipisahkan dalam tiga katagori, yaitu pendapatan tinggi, pendapatan
sedang dan pendapatan rendah.
Contoh lain klasifikasi dalam bisnis dan penelitinan adalah:
• Menentukan apakah suatu transaksi kartu kredit merupakan transaksi yang curang
atau bukan.
• Memperkirakan apakah suatu pengajuan hipotek oleh nasabah merupakan suatu
kredit yang baik atau buruk.
• Mendiagnosis penyakit seorang pasien untuk mendapatkan termasuk katagori
penyakit apa.
5. Pengklusteran
Pengklusteran merupakan record, pengamatan atau memperhatikan dan membentuk
kelas objek-objek yang memuliki kemiripan. Kluster adalah kumpulan record yang
memiliki kemiripan satu dengan yang lainnya dan memuliki ketidakmiripan dengan
record-record dalam kluster lain.
Pengklusteran berbeda dengan klasifikasi yaitu tidak adanya varibel target dalam
pengklusteran. Pengklusteran tidak mencoba untuk melakukan klasifikasi,
mengestimasi atau memprediksi nilai dari varibel target. Akan tetapi, algoritma
pengklusteran mencoba untuk melakukan pembagian terhadap keseluruhan data
menjadi kelompok-kelompok yang memiliki kemiripan (homogen), yang mana
kemiripan record dalam satu kelompok akan bernilai maksimal, sedangkan kemiripan
11
Data Mining
Weka (Waikato Environtment for Knowledge Analysis) adalah tools open source
(berlisensi GPL) yang berisi kumpulan algoritma machine learning dan data
preprocessing. Weka dapat digunakan mulai dari tahap preprocessing, proses, evaluasi
sampai dengan visualiasi. Berbagai algoritma dapat dibandingkan untuk memilih yang
terbaik untuk masalah yang akan dipecahkan. Basis weka adalah Java sehingga bersifat
multiplatform dan dapat digunakan sebagai library dalam aplikasi Java. weka
menyediakan 3 interface untuk mengelola data sheet.
12
Data Mining
D. Tugas Laporan
Berikan 5 contoh penerapan Data Mining dan jelaskan cara kerjanya!
13
Data Mining
A. Tujuan Praktikum
1. Mampu salah satu Teknik data mining yaitu clustering
C. Dasar Teori
Clustering sebenarnya merupakan teknik data mining yang digunakan untuk mencari
pengelompokan data, yang tidak memiliki pengelompokkan alami. Pada algoritma
clustering, data akan dikelompokkan menjadi cluster-cluster berdasarkan kemiripan
satu data dengan data yang lain. Dalam hal ini tidak ada patokan tertentu yang
digunakan pada algoritma clustering untuk mencari pengelompokkan data yang ada
pada sekumpulan data tersebut. Data yang dikelompokkan dalam satu cluster
memiliki similaritas tinggi, sedangkan antara satu cluster dengan cluster lainnya
memiliki semilaritas rendah.
Konsep terpenting yang harus disadari adalah bahwa proses clustering yang baik akan
menghasilkan cluster dengan kualitas tinggi bila memiliki:
Tingkat kesamaan yang tinggi dalam class (high intra-class similarity)
Tingkat kesamaan yang rendah antar class (low inter-class similarity)
Similarity yang dimaksud merupkan pengukuran secara numerik terhadap dua buah
objek. Nilai similarity ini akan semakin tinggi bila dua objek yang dibandingkan
tersebut memiliki kemiripan yang tinggi pula. Tentunya, perbedaan kualitas suatu
hasil clustering ini bergantung pada metode yang dipakai untuk mengukur kesamaan
(similaritas) tersebut serta implementasinya.
Selain itu pula, suatu metode clustering juga harus dapat diukur kemampuannya
dalam usahanya untuk menemukan suatu pola tersembunyi pada data yang tersedia.
Dalam mengukur nilai sililarity ini, ada beberapa metode yang dapat dipakai salah
satunya adalah Euclediean Distence. Pada metode ini, dua buah point dapat dihitung
jaraknya bila diketahui nilai dari masing-masing atribut pada kedua point tersebut.
Berikut adalah rumus distence yang dipakai, yaitu:
14
Data Mining
Dengan :
x1 = sampel data
x2 = data uji
i = varibel data
d = jarak
p = dimensi data
Yang dimaksud dengan bobot field (µk) adalah ukuran kemampuan suatu field ke-k
dalam mempengaruhi jarak antara kedua point. Semakin besar nilai µk, akan semakin
besar pula pengaruhnya terhadap jarak antara kedua point, dan sebaliknya semakin
kecil nilai µk, akan semakin kecil pengaruhnya terhadap jarak antara ke dua point.
Tipe Clustering
15
Data Mining
1. Clustering
Pada task clustering, kita akan mencari kelompok-kelompok natural berdasarkan
atributnya. Buka kembali dataset credit-g.arff. Pilih tab cluster, klik tombol choose dan
pilih SimpleKMeans.Klik tulisan simpleKmeans, maka akan ditampilkan parameter
untuk KMeans. Bagian yang paling penting adalah jumlah cluster (numCluster), coba isi
dengan 4.Hasilnya dapat dilihat pada gambar berikut.
Kolom paling kiri adalah atribut, kolom kedua adalah cluster yang berisi semua data:
“Full Data”. Kolom berikutnya adalah cluster pertama dan seterusnya. Nilai atribut yang
ditampilkan adalah centroid (nilai tengah cluster). Ada tiga cluster dengan class "Good"
16
Data Mining
dan satu cluster dengan kelas "Bad". Bagian yang menarik dari keempat cluster ini
adalah atribut personal_status. Semua adalah male-single kecuali untuk cluster "Bad".
Perbedaan yang lain adalah atribut purpose, untuk kelas "Bad" atribut ini umumnya
adalah "New Car". Di output juga ditampilkan nilai SSE:
Within cluster sum of squared errors: 5226.216042637847
Nilai ini memperlihatkan tingkat kemiripan instance di dalam suatu cluster. Jika setiap
instance di cluster identik maka nilainya akan 0. Tentu jika semakin besar jumlah
cluster maka nilai SSE akan semakin turun, tetapi cluster yang memiliki terlalu sedikit
instance juga tidak terlalu berguna untuk analisis.Untuk melihat visualisasinya, pada
bagian result list, klik kanan lalu pilih "Visualize cluster assignment"
Perbesar nilai jitter, maka dapat dilihat visualisasi cluster sebagai berikut. Cluster 0 (biru
gelap) umumnya untuk kelas "Bad" sedangkan cluster 3 dan cluster 4 umumnya "Good".
Menarik bahwa cluster berwarna merah (cluster 1) kebanyakan untuk instance dengan
atribut housing=For Free. Coba ganti-ganti sumbu Y dengan atribut lain
17
Data Mining
A. Tujuan Praktikum
1. Mampu memahami tentang algoritma clustering density sBased
C. Dasar Teori
DBSCAN adalah salah satu algoritma clustering density-based, algoritma ini pertama kali
dikenalkan oleh Ester, dkk [Ester 1996] di dalam Adriano Moreira, dkk University of
Minho - Portugal. Dalam satu daerah dengan kepadatan titik yang tinggi menggambarkan
keberadaan cluster sedangkan daerah dengan kepadatan titik rendah disebut dengan Noise.
Algoritma ini terutama cocok untuk menangani data yang besar, dengan noise, dan
mampu mengidentifikasi cluster dengan berbagai ukuran dan bentuk.
Ide dasar dari density-based clustering berkaitan dengan beberapa definisi baru
1. Neighborhood dengan radius Eps dari suatu obyek disebut Eps-neighborhood dari
suatu obyek tersebut.
2. Jika Eps-neighborhood dari suatu obyek mengandung titik sekurang-kurangnya jumlah
minimum, MinPts, maka suatu obyek tersebut dinamakan core object
3. Diberikan set obyek D, obyek p dikatakan directly density-reachable (kepadatan
terjangkau langsung) dari obyek q jika p termasuk dalam Eps-neighborhood dari q dan
q adalah core objek.
18
Data Mining
Gambar density-reachable
5. Sebuah obyek p adalah density-connected terhadap obyek q dengan memperhatikan
Eps dan MinPts dalam set obyek D, jika ada sebuah obyek o elemen D sehingga p dan
q keduanya density-reachable dari o dengan memperhatikan Eps dan MinPts. Gambar
di bawah ini merupakan ilustrasi dari konsep density-connected.
Gambar density-connected
Algoritma DBSCAN
1. Arbitrary select a point p (memilih titik p)
2. Retrieve all points density-reachable from p wrt Eps and MinPts. (Ambil semua
point yang density reachable terhadap titik p)
3. If p is a core point, a cluster is formed. (jika p adalah core point, maka cluster
terbentuk)
4. If p is a border point, no points are density-reachable from p and DBSCAN visits
the next point of the database.
5. Continue the process until all of the points have been processed (lanjutkan proses
sampai semua poin terproses)
19
Data Mining
Node (x,y ) dari table diatas direfresentasikan dengan gambar dibawah ini :
Iterasi 1
20
Data Mining
Dengan titik tengah (4,4) maka point yang menjadi anggota adalah 5 point yaitu B, C, D,
F, G. Untuk lebih jelasnya dapat dilihat pada tabel berikut :
Iterasi 2
Dengan titik tengah (4,7) maka point yang menjadi anggota adalah 4 point yaitu A, D, F,
K. Untuk lebih jelasnya dapat dilihat pada tabael berikut :
21
Data Mining
Iterasi 3
Dengan titik tengah (6,9) maka point yang menjadi anggota adalah 6 point yaitu D, G,
L, Q, S dan T. Untuk lebih jelasnya dapat dilihat pada tabael berikut :
22
Data Mining
Iterasi 4
Dengan titik tengah (7,12) maka point yang menjadi anggota adalah 7 point yaitu O, P,
Q, S dan W. Untuk lebih jelasnya dapat dilihat pada tabel berikut :
23
Data Mining
Iterasi 5
Dengan titik tengah (16,7) maka point yang menjadi anggota adalah 5 point yaitu D, I, M
dan N. Untuk lebih jelasnya dapat dilihat pada tabel berikut :
24
Data Mining
Iterasi 6
Dengan titik tengah (19,8) maka point yang menjadi anggota adalah 5 point yaitu H,I, J,
M, P dan R. Untuk lebih jelasnya dapat dilihat pada tabael berikut :
25
Data Mining
Iterasi 7
Dengan titik tengah (20,10) maka point yang menjadi anggota adalah 4 point yaitu I, J,
M, N. Untuk lebih jelasnya dapat dilihat pada tabael berikut :
26
Data Mining
Iterasi 8
Dengan titik tengah (15,21)maka point yang menjadi anggota adalah 2 point yaitu. Untuk
lebih jelasnya dapat dilihat pada tabael berikut :
27
Data Mining
Hasil
28
Data Mining
A. Tujuan Praktikum
1. Mampu memahami algoritma dalam data mining yaitu K-Means
C. Dasar Teori
Konsep dasar metode SAW adalah mencari penjumlahan terbobot dari rating kinerja pada
setiap alternatif pada semua kriteria (Kusumadewi, 2006). Metode SAW membutuhkan
proses normalisasi matriks keputusan (X) ke suatu skala yang dapat diperbandingkan
dengan semua rating alternatif yang ada. Metode SAW mengenal adanya 2 (dua) atribut
yaitu kriteria keuntungan (benefit) dan kriteria biaya (cost). Perbedaan mendasar dari
kedua kriteria ini adalah dalam pemilihan kriteria ketika K-Means Termasuk partitioning
clustering yang memisahkan data ke k daerah bagian yang terpisah. K-means algorithm
sangat terkenal karena kemudahan dan kemampuannya untuk mengklaster data besar dan
data outlier dengan sangat cepat. Sesuai dengan karakteristik partitioning clustering,
Setiap data harus termasuk ke cluster tertentu, dan Memungkinkan bagi setiap data yang
termasuk cluster tertentu pada suatu tahapan proses, pada tahapan berikutnya berpindah
ke cluster yang lain.
Algoritma K-Means :
• Menentukan k sebagai jumlah cluster yang ingin dibentuk
• Membangkitkan k centroids (titik pusat cluster) awal secara random
• Menghitung jarak setiap data ke masing-masing centroids Setiap data memilih
centroids yang terdekat
• Menentukan posisi centroids baru dengan cara menghitung nilai rata-rata dari
data-data yang memilih pada centroidyangsama.
• Kembali ke langkah 3 jika posisi centroids baru dengan centroids lama tidak sama.
29
Data Mining
Asumsi:
Semua data akan dikelompokkan ke dalam dua kelas
Center points of both clusters are C1(3,4), C2(6,4)
M1 = (2, 5.0), M2 = (2, 5.5), M3 = (5, 3.5), M4 = (6.5, 2.2), M5 = (7, 3.3), M6 = (3.5,
4.8), M7 = (4, 4.5)
Iterasi 1
a. Menghitung Euclidean distance dari semua date ke tiap titik pusat pertama
Dengan cara yang sama hitung jara tiap titik ke titik pusat ke dan kita akan mendapatkan
D21= 4.12, D22=4.27, D23= 1.18, D24= 1.86, D25=1.22, D26=2.62, D27=2.06
b. Dari penghitungan Euclidean distance, kita dapat membandingkan:
M1 M2 M3 M4 M5 M6 M7
30
Data Mining
{M1, M2, M6, M7} anggota C1 and {M3, M4, M5} anggota C2
c. Hitung titik pusat baru
Iterasi ke 2
a. Hitung Euclidean distance dari tiap data ke titik pusat yang baru Dengan cara
yang sama dengan iterasi pertama kita akan mendapatkan perbandingan sebagai
berikut:
M1 M2 M3 M4 M5 M6 M7
Jadark C1 0.76 0.96 2.65 4.62 4.54 0.76 1.31
C2 4.62 4.86 1.27 0.86 0.88 3.22 2.63
b. Dari perbandingan tersebut kira tahu bahwa {M1, M2, M6, M7} anggota C1 dan {M3,
M4, M5} anggota C2
c. Karena anggota kelompok tidak ada yang berubah maka titik pusat
pun tidak akan berubah.
Kesimpulan
M1, M2, M6, M7} anggota C1 dan {M3, M4, M5} anggota C2
31
Data Mining
A. Tujuan Praktikum
1. Mampu memahami algoritma dalam data mining yaitu K-Medoids
C. Dasar Teori
Algoritma k-medoids adalah algoritma clustering yang berkaitan dengan algoritma k-
means dan algoritma medoidshift. Baik k-means dan algoritma k-medoids adalah
teknik partisi (memecah dataset ke dalam kelompok) dan keduanya berusaha untuk
meminimalkan square error (jarak antara titik berlabel berada dalam cluster dan titik
yang ditunjuk sebagai pusat cluster tersebut). Berbeda dengan algoritma k-means, k-
medoids memilih data points sebagai pusat (medoids atau eksemplar).
K-medoid adalah teknik partisi klasik untuk clustering yang melakukan klasterisasi
data dari n objek ke dalam k cluster yang dikenal dengan a priori. Sebuah alat yang
berguna untuk menentukan k adalah silhouette.
K-medoid lebih kuat terhadap noise dan outliner dibandingkan dengan k-means
karena meminimalkan jumlah dari ketidaksamaan bukannya meminimalkan jumlah
kuadrat jarak Euclidean.
medoid dapat didefinisikan sebagai objek cluster, yang rata-rata perbedaan untuk
semua objek dalam suatu cluster minimal yaitu merupakan titik paling pusat dari data
yang diberikan.
Realisasi yang paling umum dari clustering k-medoid adalah Partition Around
Medoids (PAM) dan algoritma adalah sebagai berikut :
1. Inisialisasi : pilih secara acak k dari n data point sebagai medoids
2. Asosiasikan setiap data point ke medoid yang terdekat (terdekat berarti
menggunakan perhitungan jarak yang biasa digunakan adalah Euclidean
distance, Manhattan distance atau Minkowski distance)
3. Untuk setiap medoid m
1. Untuk setiap data non medoid o
1. Tukarkan m and o dan hitung berapa total cost dari setiap
konfigurasi (penukaran m dan o)
4. Pilih konfigurasi dengan cost paling sedikit
5. Ulangi langkah 2 sampai 5 dan hentikan jika sudah tidak terdapat perubahan
medoids.
32
Data Mining
Contoh PAM
Klasterisasi data set yang terdiri dari sepuluh objek menjadi 2 cluster, anggaplah data
set nya adalah dalam 2 dimensi sebagai berikut
X1 2 6
X2 3 4
X3 3 8
X4 4 7
X5 6 2
X6 6 6
X7 7 3
X8 7 4
X9 8 5
X10 7 6
Langkah Pertama
Inisialisasi pusat k
Mari kita asumsikan c1 = (3,4) dan c2 = (7,4)
Jadi kita sekarang memiliki c1 dan c2 sebagai medoid, berikutnya kalkulasi jarak
menggunakan rumus jarak minkowski dengan p = 1
33
Data Mining
Untuk point pertama data objek (2,6) sedangkan data pusat adalah (3,4) jadi total
jarak yang didapat adalah
jarak = (|3-2|1)1/1 + (|4-6|1)1/1
jarak = (1+2) ; jarak = 3
Dan untuk titik-titik yang lain maka akan mendapatkan jarak sebagai berikut
Cost
c1 Data objects (Xi)
(distance)
3 4 2 6 3
3 4 3 8 4
3 4 4 7 4
3 4 6 2 5
3 4 6 6 5
3 4 7 3 5
3 4 8 5 6
3 4 7 6 6
34
Data Mining
Dimana
x adalah data objek
c adalah medoid
d adalah dimensi dari objek (sekarang menggunakan dimensi 2)
total cost adalah perhitungan total dari setiap cost yang dimiliki dalam sebuah cluster
dimana untuk c1 dan c2 total cost adalah
Langkah 2
Pemilihan nonmedoid O’ secara acak
Mari kita asumsikan O’= (7,3) (ada di c2 maka kita akan tukar c2 dengan O’)
Maka sekarang medoids yang ada adalah c1 (3,4) dan O’(7,3)
Jika c1 dan O’ adalah medoids baru, hitung biaya total yang terlibat
Dengan menggunakan rumus pada langkah 1 maka didapatkan:
35
Data Mining
36
Data Mining
37
Data Mining
A. Tujuan Praktikum
1. Mampu memahami konsep klasifikasi
2. Mampu memahami Algoritma Naïve Bayes
C. Dasar Teori
Konsep Dasar Klasifikasi
Aplikasi lain yang penting dari data mining adalah kemampuannya untuk melakukan
proses klasifikasi pada suatu data dalam jumlah besar. Hal ini sering disebut mining
classification rules. Sebagai contoh, sebuah dealer mobil ingin mengkiasifikasikan
pelanggannya menurut kecenderungan mereka untuk menyukai mobil jenis tertentu,
sehingga para sales yang bekerja disitu akan mengetahui siapa yang harus didekati,
kemana katalog mobil jenis baru harus dikirim, sehingga hal ini akan sangat membantu
dalam hal promosi.
Klasifikasi data adalah suatu proses yang menemukan properti-properti yang sama pada
sebuah himpunan obyek di dalarn sebuah basis data, dan mengklasifikasikannya ke dalam
kelas-kelas yang berbeda menurut model klasifikasi yang ditetapkan. Untuk membentuk
sebuah model klasifikasi, suatu sampel basis data 'E' diperlakukan sebagai training set,
dimana setiap tupel terdiri dari himpunan yang sama yang memuat atribut yang beragam
seperti tupel-tupel yang terdapat dalam suatu basis data yang besar 'W'. Setiap tupel
diidentifkasikan dengan sebuah label atau identitas kelas. Tujuan dari klasifikasi ini
adalah pertama-tama untuk menganalisa training data dan membentuk sebuah deskripsi
yang akurat atau sebuah model untuk setiap kelas berdasarkan feature-feature yang
tersedia di dalam data itu. Deskripsi dari masing-masing kelas itu nantinya akan
digunakan untuk mengklasifikasikan data yang hendak di test dalam basis data 'W', atau
untuk membangun suatu deskripsi yang lebih baik untuk setiap kelas dalam basis data.
Contoh untuk model ini adalah prediksi terhadap resiko pemberian kredit. Data terdiri dari
orang-orang yang telah menerima kredit. Sebagian kreditur menjalankan kewajiban
dengan baik, dan sebagian lagi tidak. Data mining, harus mampu mendefinisikan atribut-
atribut apa yang paling berpengaruh.
38
Data Mining
besar
Bentuk Umum Teorema Bayes
P(H I X) = P(X I H) P(H)
P(X)
Keterangan :
X : data dgn class yg belum diketahui
H : hipotesis data X
P(HIX) : probabilitas hipotesis H berdasar kondisi X (posteriori
probability)
P(H) : probabilitas hipotesis H (prior porbability)
P(XIH) : probabilitas X berdasar kondisi pada hipotesis H
P(X) : probabilitas dari X
Contoh Soal :
Tabel Data Training :
39
Data Mining
40
Data Mining
(jumlah data IPK “2.70” dengan keterangan “TEPAT” dibagi jumlah data TEPAT)
P(IPK = 2.70| Y= TERLAMBAT) = 1/7
(jumlah data IPK “2.70” dengan keterangan “TERLAMBAT” dibagi jumlah data
TERLAMBAT)
1. Praktek Klasifikasi
Sekarang kita akan mencoba menggunakan Weka untuk task klasifikasi. Analogi dari
proses klasifikasi otomatis dalam machine learning adalah sebagai berikut: misalnya kita
ingin mengajarkan seorang anak balita membedakan motor dan mobil. Motor dan mobil
41
Data Mining
adalah kelas yang kita ingin prediksi dan prosesnya disebut klasifikasi. Salah satu cara
yang dapat dilakukan adalah menyiapkan banyak foto-foto mobil dan motor. Kita
perlihatkan kepada anak tersebut: “ini foto mobil”, “ini foto motor” dan seterusnya. Ini
disebut proses training, dan datanya disebut data training. Apa yang terjadi dalam proses
training ini? Anak akan membuat model di otaknya berdasarkan karakteristik setiap kelas
(motor atau mobil). Misalnya jumlah roda, posisi pengemudi, bentuk depan, bentuk
belakang dan seterusnya. Karakteristik objek ini disebut fitur atau atribut.
Setelah selesai proses training, tentu kita ingin tahu apakah anak sudah mengerti. Maka
siapkan gambar mobil dan motor yang belum pernah dilihat anak dan kita akan uji dia
untuk memprediksi. Tahapan ini disebut testing dan datanya disebut data tes. Misalnya
ada 100 gambar uji, si anak menebak benar 85 gambar dan salah untuk 15 lainnya maka
“akurasi” dari model di otak anak ini adalah 0.85 atau 85%. JIka akurasi terlalu rendah,
mungkin bisa kita utak-atik teknik pembelajarannya atau data latihnya. Baru setelah kita
puas dengan akurasinya, maka kita bisa “melepas” si anak untuk melakukan klasifikasi
untuk data yang sebenarnya.
Weka sudah menyediakan beberapa dataset standar yang bisa digunakan sebagai latihan.
Sebagai kasus dalam tutorial ini, akan digunakan dataset weather.nominal.arff. Pada tab
Preprocess, pilihlah tombol Open file dan arahkan ke folder data pada direktori weka (di
Windows defaultnya adalah Program Files → Weka → Data ) , lalu pilih
weather.nominal.arff. Dataset ini adalah dataset contoh, yang berisi kondisi cuaca yang
terkait untuk bermain tenis atau tidak.
42
Data Mining
Dataset ini memiliki 14 instances (atau baris atau contoh) yang berlabel Yes (9 instances),
dan No (5 instances). Setiap instance menyatakan kondisi cuaca satu hari, sedangkan label
Yes menunjukkan hari itu cocok untuk bermain tenis, sedangkan label No menyatakan
hari itu tidak cocok bermain tenis.
Dataset ini memiliki 14 instances (atau baris atau contoh) yang berlabel Yes (9 instances),
dan No (5 instances). Setiap instance menyatakan kondisi cuaca satu hari, sedangkan label
Yes menunjukkan hari itu cocok untuk bermain tenis, sedangkan label No menyatakan
hari itu tidak cocok bermain tenis.
Atribut yang menjadi kelas adalah "play". Dapat dibaca pada baris pertama jika
outlook=sunny; temperatur="hot"; humidity="high"; windy=FALSE maka hari itu tidak
cocok untuk bermain tenis. Kita akan membuat model yang dapat memprediksi apakah
cocok bermain tenis (play=Yes) atau tidak (play=No) berdasarkan cuaca.
43
JOB SHEET PRAKTIKUM 7
47
A. Tujuan Praktikum
1. Mahasiswa mampu memahami tentang algoritma C.45 (Pohon Keputusan)
C. Dasar Teori
Algoritma C.45 (Pohon Keputusan)
Mengubah fakta yang sangat besar menjadi pohon keputusan yang merepresentasikan
aturan
Mengeksplorasi data untuk menemukan hubungan antara sejumlah calon variabel
input dengan sebuah variabel target
Struktur yang dapat digunakan untuk membagi kumpulan data yang besar menjadi
himpunan record yang lebih kecil dengan menerapkan serangkaian aturan keputusan
Data dalam pohon keputusan biasanya dinyatakan dalam bentuk tabel dengan atribut
dan record
Algoritma C.45
1. Menggunakan Nilai Gain
2. Pilih atribut sebagai akar (nilai gain tertinggi)
3. Buat cabang untuk tiap nilai
4. Bagi kasus dalam cabang
5. Ulangi proses untuk setiap cabang sampai semua kasus pada cabang memiliki
kelas yang sama
Rumus untuk menghitung nilai Gain
n
| Si |
Gain( S , A) entropy( S ) * entropy( Si )
i 1 | S |
Keterangan :
S : himpunan kasus
A : atribut
n : jumlah partisi atribut A
|Si| : jumlah kasus pada partisi ke-i
|S| : jumlah kasus dalam S
47
Data Mining
A : fitur
n : jumlah partisi
Pi : proporsi dari Si terhadap S
Contoh Soal : Buat Pohon keputusan dari tabel dibawah ini
Outlook Temperature Humidity Windy Play
Sunny Hot High False No
Sunny Hot High True No
Cloudy Hot High False Yes
Rainy Mild High False Yes
Rainy Cool Normal False Yes
Rainy Cool Normal True Yes
Cloudy Cool Normal True yes
Sunny Mild High False No
Sunny Cool Normal False Yes
Rainy Mild Normal False Yes
Sunny Mild Normal True Yes
Cloudy Mild High True Yes
Cloudy Hot Normal False Yes
Rainy Mild High True No
Jawab :
1. Menghitung jumlah kasus, jumlah kasus untuk keputusan yes, jumlah kasus untuk
keputusan no, dan entropy dari semua kasus
Jumlah kasus : 14
Jumlah kasus untuk keputusan yes : 10
Jumlah kasus untuk keputusan no : 4
Entropy dari semua n kasus :
entropy( S ) pi * log 2 pi
i 1
49
Data Mining
1
Humidity
high normal
50
1.1 Yes
??
Data Mining
Menghitung jumlah kasus, jumlah kasus untuk keputusan Yes, jumlah kasus untuk
keputusan No, dan Entropy dari semua kasus dan kasus yang dibagi berdasarkan
atribut OUTLOOK, TEMPERATURE dan WINDY yang dapat menjadi node akar
dari nilai atribut HIGH.
Jumlah kasus : 7
Jumlah kasus untuk keputusan yes : 4
Jumlah kasus untuk keputusan no : 3
Gain tertinggi : outlook
Outlook menjadi akar
1
Humidity
high normal
1.1 Yes
Outlook
cloudy sunny
rainy
Yes
1.1.2 No
??
Menghitung jumlah kasus, jumlah kasus untuk keputusan Yes, jumlah kasus untuk
keputusan No, dan Entropy dari semua kasus dan kasus yang dibagi berdasarkan
atribut TEMPERATURE dan WINDY yang dapat menjadi node cabang dari nilai
atribut RAINY.
Gain tertinggi : windy
high normal
1.1
51
Yes
Outlook
cloudy sunny
rainy
Data Mining
A. Tujuan Praktikum
1. Mahasiswa mampu memahami tentang Algoritma KNN (K-Nearest Neighbor)
C. Dasar Teori
Algoritma KNN (K-Nearest Neighbor)
Algoritma K-nearest neighbor (KNN) merupakan algoritma supervised learning di mana
hasil klasifikasi data baru berdasar kepada kategori mayoritas tetangga terdekat ke-K.
Tujuan dari algoritma ini adalah mengklasifikasikan objek baru berdasarkan atribut dan
data training. Algoritma KNN menggunakan kalsifikasi ketetenggaan sebagai prediksi
terhadap data baru
Pada fase pembelajaran, algoritma ini hanya melakukan penyimpanan vektor-vektor fitur
dan klasifikasi dari data pembelajaran. Pada fase klasifikasi, fitur-fitur yang sama
dihitung untuk data test (yang klasifikasinya tidak diketahui). Jarak dari vektor yang
baru ini terhadap seluruh vektor data pembelajaran dihitung, dan sejumlah k buah yang
paling dekat diambil. Titik yang baru klasifikasinya diprediksikan termasuk pada
klasifikasi terbanyak dari titik-titik tersebut.
Nilai k yang terbaik untuk algoritma ini tergantung pada data; secara umumnya, nilai k
yang tinggi akan mengurangi efek noise pada klasifikasi, tetapi membuat batasan antara
setiap klasifikasi menjadi lebih kabur. Nilai k yang bagus dapat dipilih dengan optimasi
52
Data Mining
Dengan :
x1 = sampel data
x2 = data uji
i = varibel data
d = jarak
p = dimensi data
Ketepatan algoritma KNN ini sangat dipengaruhi oleh ada atau tidaknya fitur-fitur yang
tidak relevan, atau jika bobot fitur tersebut tidak setara dengan relevansinya terhadap
klasifikasi. Riset terhadap algoritma ini sebagian besar membahas bagaimana memilih
dan memberi bobot terhadap fitur, agar performa klasifikasi menjadi lebih baik.
Here is step by step on how to compute K-nearest neighbors KNN algorithm:
1. Determine parameter K = number of nearest neighbors
2. Calculate the distance between the query-instance and all the training samples
3. Sort the distance and determine nearest neighbors based on the K-th minimum
distance
4. Gather the category of the nearest neighbors
5. Use simple majority of the category of nearest neighbors as the prediction value
of the query instance
Langkah-langkah algoritma KNN:
Tentukan parameter K = jumlah tetangga terdekat.
Hitung jarak antara instance query dan semua sampel pelatihan.
Urutkan jarak dan tentukan tetangga terdekat berdasar jarak minimum K-th.
Kumpulkan kategori Y dari tetangga terdekat.
Gunakan mayoritas kecil dari kategori tetangga terdekat sebagai nilai prediksi
query instance.
Contoh Pertama
Kita mempunyai data dari survey kuesioner (dengan meminta pendapat masyarakat) dan
testing objektif dengan dua atribut (acid durability and strength) untuk mengklasifikasi
apakah suatu bahan pembuat kertas baik atau tidak. Dengan data yang telah ada adalah
sebagai berikut:
X1 = Acid Durability X2 = Strength (kg/square Y = Classification
(seconds) meter)
7 7 Bad
7 4 Bad
3 4 Good
53
Data Mining
1 4 Good
Sekarang pabrik ingin menghasilkan sebuah bahan kertas yang melewati uji
laboratorium dengan x1=3 dan x2 = 7.
Tentukan parameter K = jumlah tetangga terdekat, misal kita gunakan K = 3.
Hitung jarak antara instance query dengan semua sampel pelatihan, koordinat
instance query adalah (3, 7).
X1 = Acid X2 = Strength Square Distance to query instance
Durability (kg/square meter) (3, 7)
(seconds)
7 7
7 4
3 4
1 4
Urutkan jarak dan tentukan tetangga terdekat berdasar jarak minimum ke-K
X1=Acid X2 = Strength Square Distance to Rank Is it included in
Durability (kg/square query instance (3, minimum 3-Nearest
(seconds) meter) 7) distance neighbors?
7 7 4 3 Yes
7 4 5 4 No
3 4 3 1 Yes
1 4 3.6 2 Yes
Kumpulkan kategori Y dari tetangga terdekat. Perhatikan, pada baris kedua kolom
terakhir, kategori tetangga terdekat (Y) tidak termasuk karena peringkat datanya
lebih besar dari 3 (=K)
54
Data Mining
Gunakan mayoritas kecil dari kategori tetangga terdekat sebagai nilai prediksi
dari instance query.
7 4 5 4 No -
3 4 3 1 Yes Good
Kita mempunyai 2 good dan 1 bad, karena 2 > 1 maka kita simpulkan bahwa
bahan kertas yang baru yang melewati tes uji laboratorium dengan X1 = 3 dan
X2 = 7 termasuk dalam kategori Good.
Metoda Konversi Atribut Nominal Ke Atribut Numerik
Ada 2 metoda yang digunakan untuk mengkonversi atribut nominal ke atribut numerik
1. Mengkodekan dengan nilai numerik
Contoh :
- Yes = 1 dan no = 0
- Biru = 1, Kuning = 2 dan merah = 3
2. Menghitung jaraknya
55
Data Mining
John 35 35K 3 NO
Hannah 63 200K 1 NO
Tom 59 170K 1 NO
56
Data Mining
Langkah Pertama Hitung jarak antara data baru (DAVID) dengan data yang telah
ada
Customer Age Income No. RESPO Distence
(K) cards SE
John 35 35K 3 NO
22 50 2 YES
Rachel
63 200 1 NO
Hannah
Tom 59 170 1 NO
25 40 4 YES
.75
Nellie
David 37 50K 2 YES
Berdasarkan perhitungan jarak dan nilai K = 3, artinya hanya diambil 3 yang memiliki
jarak terpendek dari lima data yang disajikan. Ketiga data yang jaraknya terpendik yaitu
15.S6; 15; 15.75 dan kelas responsenya YES, NO, YE. Kesimpulan yang dapat ditarik
David masuk dalam kelas RESPONSE YES
Normalisasi Variabel
Untuk memudahkan perhitungan biasanya dilakukan normalisasi.
57
Data Mining
Normalisasi yaitu membagi nilai variabel dengan nilai yang tertinggi dari data yang ada.
Berikut contoh normalisasi dari contoh kedua yang disajikan di atas
Customer Age Income (K) No. cards
Contoh Ketiga
58
Data Mining
Dari contoh di atas ada 24 data X1 dan X2 dan Kelas yang di cari adalah Y (positif atau
negatif)
Data baru X1 = 4; X2 = 7 dengan K = 8
Dari hasil perhitungan dapat ditarik kesimpulan data X1 = 4 dan X2 = 7 termasuk
dalam kelas NEGATIF.
Referensi
1. Kusrisni dkk, Algoritma Data Mining, Yogyakarta, 2009
2. http://paul.luminos.nl/documents\/ndex.php
3. Teknomo, Kardi. K-Nearest Neighbors Tutorial.
http://people.revoledu.com/kardi/tutorial/KNN/
4. Aziz Kustiyo, Kuliah Metode Kuantitatif Departemen Ilmu Komputer FMIPA IPB
5. http:// tutorialpoint.com
59
Data Mining
60