Data mining - E-learning Amikom

advertisement
DATA MINING
(MACHINE LEARNING)
SUMARNI ADI,S.Kom.,M.Cs
S1 Teknik Informatika
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK AMIKOM YOGYAKARTA
2016
KONSEP DASAR
Data mining merupakan proses menggali dan
menganalisa sejumlah data yang sangat besar
untuk memperoleh sesuatu yang benar, baru
dan bermanfaat dan akhirnya dapat ditemukan
suatu corak atau pola dalam data tersebut.
(Han dan Kamber, 2006)
 Proses ini dilakukan berulang-ulang (iterasi)
hingga didapat satu set pola yang memuaskan
yang dapat berfungsi sesuai yang diharapkan.

KONSEP DASAR

1.
2.
Secara garis besar data mining dapat
dikelompokkan menjadi dua kategori utama,
yaitu (Tan et al, 2005) :
Descriptive Mining, yaitu proses untuk menemukan
karakteristik penting dari data dalam suatu basis data. Teknik
ini adalah adalah clustering, association, dan sequential
mining.
Predictive, yaitu proses untuk menemukan pola dari data
dengan menggunakan beberapa variabel untuk membuat
prediksi variabel lain dimasa depan. Teknik yang termasuk
dalam predictive mining antara lain klasifikasi, regresi dan
deviasi.
KONSEP DASAR


Data mining adalah bagian integral dari penemuan pengetahuan dalam database
atau dikenal dengan Knowledge Discovery in Databases (KDD) yang merupakan
proses keseluruhan mengubah data mentah menjadi pola-pola data yang menarik
yang merupakan informasi yang dibutuhkan oleh pengguna sebagai pengetahuan.
langkah-langkah yang terjadi dalam proses KDD:
1.
2.
3.
4.
5.
Selection, tahap ini dilakukan pemahaman terhadap permasalahan yang akan dicari
solusinya melalui penemuan pengetahuan, pengetahuan sebelumnya yang relevan,
penentuan tujuan dan pemilihan data yang akan dianalisis.
Preprocessing, tahap ini dilakukan proses preprocessing data termasuk kegiatan
pembersihan data.
Transformation, tahap ini dilakukan pengurangan dan / atau pengubahan tipe data
menjadi standar, sehingga data siap untuk di presentasikan ke teknik-teknik data mining.
Data mining, tahap ini dilakukan pemilihan tugas data mining yang sesuai dengan tujuan
dan algoritma data mining untuk pencarian pola.
Interpretation/Evaluation, Interpretasi disajikan dalam bentuk visualisasi berupa grafik,
dll. Evaluasi Model dapat menghitung akurasi dengan teknik bootstrap (Untuk data yang
Relatif kecil) atau Teknik K-Cross Validation (data yang banyak)
ILUSTRASI KDD :
TAHAP SELECTIONPREPROCESSINGTRANSFORMATION

Selection untuk pemilihan fitur,kasus pemberian kredit pada bank XYZ

Data Hasil Preprocessing dan Transformation
Ada Perubahan ???
KLASIFIKASI DAN PREDIKSI


Klasifikasi merupakan proses menemukan
sebuah model atau fungsi yang
mendeskripsikan dan membedakan data ke
dalam kelas-kelas atau konsep-konsep
contoh, sebuah bank ingin menganalisis data pengaju
dana pinjaman apakah peminjam dana tersebut
masuk ke dalam kategori beresiko dalam artian dana
yang dipinjamkan akan sulit dikembalikan atau dalam
kategori aman, mengkategorikan apakah sebuah sel
tumor termasuk dalam kategori ganas atau jinak, dan
lain-lain.
KLASIFIKASI DAN PREDIKSI

klasifikasi terdapat 2 tahapan, yaitu :
1.
2.
tahap pertama model classifier akan dibentuk
berdasarkan data set atau data training
menggunakan algoritma klasifikasi, proses ini
disebut dengan tahap pembelajaran (learning
step). Model classifier selanjutnya digunakan
untuk menentukan label class berdasarkan atribut
Tahapan kedua, evaluasi terhadap model
classifier untuk mendapatkan nilai akurasi.
Jika nilai akurasi sesuai dengan yang diharapkan, maka classifier ini
sudah bisa digunakan untuk mendapatkan hasil prediksi dengan
menggunakan tupel data diluar data training
ALGORITMA KLASIFIKASI DAN PREDIKSI
Algoritma yg sering digunkan pada teknik ini
diantaranya : naive bayes classifier (NBC),
Decission tree, near neighbor, dll
 Contoh kita akan meyelesaikan kasus
menggunkan algoritma NBC

ALGORITMA NAIVE BAYES CLASSIFIER (NBC)
NBC memiliki prosedur sebagai berikut :
1.
2.
Setiap sample data direpresentasikan dengan ndimensional feature vector, X=(X1,X2,…,Xn), dengan n
dibuat dari sample n atribut, berturut-turut
A1,A2,…,An.
Diandaikan terdapat m class, C1,C2,…,Cm. Diberikan
sebuah data sample, X (yang tidak diketahui class
labelnya), kemudian classifier akan memprediksi X
ke dalam class yang memiliki probabilitas posterior
tertinggi, Naive bayes classifier akan menentukan
sample X ke dalam class Ci jika dan hanya jika
P(Ci | X) > P(Cj | X) untuk 1≤ j ≤ m, j ≠ i (1)
PROSEDUR NBC (LANJUTAN)
3.
Class Ci adalah nilai terbesar, yang disebut dengan maksimum posteri hypothesis
dengan teorema bayes:
4.
5.
(2)
P(X) adalah konstan untuk semua class. Jika probabilitas class prior tidak
diketahui, secara umum diasumsikan bahwa class adalah sama, yaitu
P(C1)=P(C2)=…=P(Cm), dan selanjutnya menghitung nilai P(X|Ci) dan menghitung
nilai P(X|Ci)P(Ci). Probabilitas class prior diestimasi dengan , dimana si adalah
jumlah training sample pada class Ci, dan s adalah jumlah training sample.
Apabila dataset terdiri dari banyak atribut, akan mengakibatkan komputasi yang
rumit untuk menghitung P(X|Ci). Untuk mengurangi komputasi, naive bayes
mengasumsikan pada pembuatan class independen. Sehingga nilai pada atribut
dikondisikan bersifat independen antara atribut yang satu dengan atribut yang lain,
serta diantara atribut tidak terdapat relasi depedensi.
(3)
PROSEDUR NBC (LANJUTAN)
6.
Probabilitas P(X1 | Ci), P(X2 | Ci),…, P(Xn | Ci), dapat diestimasi dari training
sample, dimana
a.
b.
Jika Ak adalah kategorikal, maka P(xk | Ci) =
(4)
sik adalah jumlah dari training sample pada class Ci yang mempunyai nilai Xk untuk Ak
dan si adalah jumlah training sample yang termasuk ke dalam class Ci.
Jika Ak bernilai kontinyu, maka diasumsikan mempunyai sebuah gaussian distribusi
adalah fungsi gaussian untuk atribut Ak dengan
deviasi untuk atribut Ak pada training sample class Ci.
dan
adalah mean dan standard
Untuk mengklasifikasikan sample X yang tidak diketahui, P(X | Ci) P(Ci) dievaluasi
untuk setiap class Ci. Sample X ditetapkan untuk class Ci jika dan hanya jika P (Ci |
X) > P (Cj | X) untuk 1 ≤ j ≤ m, j≠ i
Dengan kata lain, ditetapkan sebagai class Ci untuk P (Ci | X) yang bernilai maksimum.
7.
CONTOH

Menentukan pelanggan All Electronics akan
membeli komputer atau tidak. Tentukan
pelanggan “X” akan membeli komputer atau
tidak dg menggunakan algoritma NBC jika
kriteria sbg berikut :
X =(age=”<=30”; income=”medium”;
student=”yes”; credit_rating=”fair”).
CONTOH (LANJUTAN)
Data pelanggan :
CONTOH (LANJUTAN)
1.
Hitung probabilitas class : Buys_Computer (gunakan persamaan 4)
Dicari nilai P(Ci) untuk i = 1,2 (class-nya ada 2 yaitu “yes” dan “no”) :
P(buys_computer=”yes”) = 9/14 = 0.643 (implementasi persamaan 4)
P(buys_computer =”no”) = 5/14 = 0.357 (implementasi persamaan 4)
2.
Hitung Probabilitas setiap Variabel (atribut), dimana nilai P(Ci) untuk i = 1,2 (class-nya ada 2
yaitu “yes” dan “no”) :
a.
Probabilitas setiap Variabel yang class: Buys_Computer= “Yes” (gunakan persamaan 2):
P(age=”<=30” | buys_computer=”yes”) = 2/9 = 0.222 (implementasi persamaan 2)
P(income=”medium” | buys_computer=”yes”) = 4/9 = 0.444 (implementasi persamaan 2)
P(student=”yes” | buys_computer=”yes”) = 6/9 = 0.667 (implementasi persamaan 2)
P(credit_rating=”fair” | buys_computer=”yes”) = 6/9 = 0.667 (implementasi persamaan 2)
b.
Probabilitas setiap Variabel yang class: Buys_Computer= “No” (gunakan persamaan 2):
P(age=”<=30” | buys_computer =”no”) = 3/5 = 0.600 (implementasi persamaan 2)
P(income=”medium” | buys_computer =”no”) = 2/5 = 0.400 (implementasi persamaan 2)
P(student=”yes” | buys_computer =”no”) = 1/5 = 0.200 (implementasi persamaan 2)
P(credit_rating =”fair” | buys_computer =”no”) = 2/5 = 0.400 (implementasi persamaan 2)
CONTOH (LANJUTAN)
3.
Berdasarkan nilai probabilitas variabel tersebut, maka :
a.
b.
4.
Hitung semua variabel yang bernilai class: buys_computer =“Yes” :
P(X|buys_computer=”yes”) = 0.222 x 0.444 x 0.667 x 0.667 = 0.044
Hitung semua variabel yang bernilai class: buys_computer =“No” :
P(X|buys_computer =”no”) = 0.600 x 0.400 x 0.200 x 0.400 = 0.019
Berdasarkan nilai probabilitas kelas dan probabilitas variabel, maka :
a.
a.
Hitung probabilitas class yang bernilai buys_computer =“Yes” dan semua variabel
P(X|buys_computer=”yes”) :
P(X|buys_computer=”yes”)P(buys_computer=”yes”)= 0.044 x 0.643 = 0.028
Hitung probabilitas class yang bernilai buys_computer =“No” dan semua variabel
P(X|buys_computer=”No”) :
P(X|buys_computer =”no”)P(buys_computer =”no”)= 0.019 x 0.357 = 0.007
3.
Menentukan class untuk pelanggan “X” gunakan persamaan 1
karena P(X|buys_computer=”yes”)P(buys_computer=”yes”) >
P(X|buys_computer =”no”)P(buys_computer =”no”)
maka sample X dapat diklasifikasikan ke dalam class buys_computer=”yes” (implementasi persamaan 1)
GAMPANG KAN ??? 
Download