algoritma klasifikasi - unhas.ac.idunhas.ac.id/amil/s1tif/dm2020/06 algoritma...
TRANSCRIPT
Algoritma KlasifikasiAmil Ahmad Ilham
Algoritma Data Mining (DM)
1. Estimation (Estimasi): • Linear Regression, Neural Network, Support Vector Machine, etc
2. Prediction/Forecasting (Prediksi/Peramalan): • Linear Regression, Neural Network, Support Vector Machine, etc
3. Classification (Klasifikasi): • Naive Bayes, K-Nearest Neighbor, C4.5, ID3, CART, Linear Discriminant Analysis, Logistic Regression, etc
4. Clustering (Klastering): • K-Means, K-Medoids, Self-Organizing Map (SOM), Fuzzy C-Means, etc
5. Association (Asosiasi): • FP-Growth, A Priori, Coefficient of Correlation, Chi Square, etc
Classification (Klasifikasi)
• Supervised Learning
• Pembelajaran pada data pelatihan yang mempunyaiinformasi label kelas (labeled data)
3
Labeled DataLearning Process Mod
el
Data Kelas
Citra 1 Mobil
Citra 2 Sepeda
Citra 3 Mobil
… …
Citra N Sepeda
Clustering (Klastering)
• Unsupervised Learning
• Pembelajaran pada data pelatihan tanpa ada informasi label kelas (unlabeled data)
4
Data Label
Citra 1 Kelompok 1
Citra 2 Kelompok 2
Citra 3 Kelompok 1
… …
Citra N Kelompok k
Unlabeled Data
Data Label
Citra 1 ?
Citra 2 ?
Citra 3 ?
… …
Citra N ?
Model
Similarity Process
Centroids
Centroid 1
Centroid 2
…
Centroid k
Labeled Data
Classification (Klasifikasi)
• Supervised using labelled datasets
5
Clustering (Klastering)
• Unsupervised using unlabelled datasets
6
Clustering Vs. Classification
7
KlasifikasiKlasifikasi
Apa Tugasnya Klasifikasi?• Diberikan sebuah himpunan observasi berupa data tabel, lengkap dengan
label class-nya,
• Klasifikasi harus menentukkan class dari observasi baru yang belumdiberikan label class.
9
Data berupaKategori
Contoh Kasus Klasifikasi• Sebuah bank harus menentukan apakah salah satu nasabahnya yang ingin
melakukan peminjaman uang dapat mengembalikan pinjamannya atautidak.
• Yang bisa dilakukan bank ialah menganalisa data nasabah sebelumnya, nasabah dengan ciri-ciri seperti apa yang kemungkinan memiliki masalahdalam melakukan pengembalian pinjaman.
• Ciri-ciri yang dimaksud adalah informasi yang dimiliki nasabah, seperti:• Umur, edukasi, lama bekerja, pendapatan, debit yang dimiliki, dll.
10
Contoh Kasus Klasifikasi
• Berdasarkan informasi-informasi tersebut, sebuah classifier model dapatdibuat yang akan digunakan untuk melakukan klasifikasi data baru!
• Jika nasabah baru muncul, classifier model dapat melakukan kategorisasinasabah tersebut.
11
Classifier model
Modelling
Input
Kategorisasi
0
Target / Class dari Klasifikasi
• Dari contoh yang sebelumnya, terlihat bahwa target / class dari nasabahtersebut berupa binary• Memungkinkan melakukan pinjaman• Tidak memungkinkan melakukan pinjaman
• Pada dasarnya, klasifikasi tidak hanya dapat melakukan binary classificationtetapi juga multiclass classification.
• Sebagai contoh:• Kelompok A, atau B, atau C.• Kucing, Harimau, atau Macan• Bunga anggrek, melati, atau bakung.
12
Contoh Multiclass Classification
• Terdapat data pasien yang mengalami sebuah penyakit yang sama.
• Namun karena kondisi tubuh pasien tersebut berbeda-beda, obat yang dianjurkan oleh dokterpun harus sesuai dengan kondisi tubuhnya.
• Ada tiga tipe obat yang tersedia: drugC, drugX, dan drugY.
13
Contoh Multiclass Classification
• Classifier model dapat dibuat berdasarkan data pasien yang tersedia.
• Jika pasien baru muncul, classifier model dapat melakukan klasifikasi, yang mana dari ketiga obat tersebut yang cocok untuk pasien tersebut.
14
Classifier model
Modelling
Input
Kategorisasi
Beberapa Algoritma Klasifikasi
• K-Nearest Neighbor
• Decision Tree
• Logistic Regression
• Support Vector Machines
• Neural Networks
15
DistanceDistance
Distance
• Distance digunakan untuk mengukur similarity antara dua buahobject
• Salah satu metode yang digunakan adalah Minkowski distance:
dimana i = (xi1, xi2, …, xip) dan j = (xj1, xj2, …, xjp) adalah dua buah p-dimensional data objects, dan q bernilai integer positif
pp
jx
ix
jx
ix
jx
ixjid )||...|||(|),(
2211
Distance
Minkowski distance
• Jika q = 1 disebut Manhattan Distance
• Jika q = 2 disebut Euclidean Distance
)||...|||(|),( 22
22
2
11 pp jx
ix
jx
ix
jx
ixjid
||...||||),(2211 pp j
xi
xj
xi
xj
xi
xjid
pp
jx
ix
jx
ix
jx
ixjid )||...|||(|),(
2211
Pengukuran Distance
Untuk mengukur distance antar object data, maupun object data dengan centroid cluster, dapat menggunakan
• Euclidean Distance
• Manhattan Distance
• Correlation Distance
Pengukuran DistanceDiketahui vectors x = (x1, …, xn), y = (y1, …, yn)
• Euclidean Distance:
• Manhattan Distance:
• Correlation Distance:
n
i
iiE yxyxd1
2)(),(
.),(1
n
i
iiM yxyxd
.)()(
))((
1),(
1
2
1
2
1
i
i
i
i
i
ii
C
yyxx
yyxx
yxd
Tipe Data
• Interval-scaled variables
• Binary variables
• Nominal, ordinal, and ratio variables
• Variables of mixed types.
Distance untuk Interval-valued variables
• Euclidean Distance
• Manhattan Distance
• Correlation Distance
Distance untuk Interval-valued variables
Contoh
A(3,2)
B(10,6)
𝑑𝐸 𝐵, 𝐴 = (10 − 3)2+(6 − 2)2
𝑑𝐸 𝐵, 𝐴 = 8.06
𝑑𝐸 𝐵, 𝐴 = 49 + 16
𝑑𝐸 𝐵, 𝐴 = 65
𝑑𝑀 𝐵, 𝐴 = | 10 − 3 | + |(6 − 2)|
𝑑𝑀 𝐵, 𝐴 = 11
Euclidean Distance
Manhattan Distance
Distance untuk Binary Variables
• A contingency table untuk binary data
• Simple Matching Coefficient
(invariant, jika binary variablenya symmetric):
• Jaccard Coefficient
(noninvariant, jika binary variable nya asymmetric):
dcbacb jid
),(
cbacb jid
),(
pdbcasum
dcdc
baba
sum
0
1
01
Object i
Object j
25
Distance untuk Binary Variables
Contoh
• Gender : symmetric attribute
• Semua atribut selain gender : asymmetric attribute
• Bila nilai Y and P direpresentasikan dengan 1, dan N menjadi 0, maka
Name Gender Fever Cough Test-1 Test-2 Test-3 Test-4
Jack M Y N P N N N
Mary F Y N P N P N
Jim M Y P N N N N
75.0211
21),(
67.0111
11),(
33.0102
10),(
maryjimd
jimjackd
maryjackd
cbacb jid
),(
26
Distance untuk Nominal Variables
• Nominal variable dibentuk dengan pengembangan binary variable
yang mempunyai lebih dari 2 state, misalnya warna (red, yellow, blue,
green), suhu (panas, sedang, dingin)
• Distance dapat diukur dengan metode : Simple Matching
m: jumlah variable yang sama,
p: total jumlah variables
pmp
jid
),(
27
Distance untuk Nominal Variables
Contoh :
m: jumlah variable yang sama,
p: total jumlah variables
𝑑 𝐴, 𝐵 =5 − 3
5=2
5= 0.4
pmp
jid
),(
Object Var 1 Var 2 Var 3 Var 4 Var 5
A Merah Tinggi Panas Luar Berat
B Merah Pendek Panas Dalam Berat
C Kuning Sedang Dingin Luar Ringan
k-Nearest Neighbor (k-NN)k-NN
Apa itu K-Nearest Neighbor
• Sebuah metode untuk melakukanklasifikasi berdasarkan similaritasterhadap data lainnya.
• Beberapa data terdekat disebutdengan “Tetangga” atau “Neighbors”
• Tetangga yang terdekat dianggap memiliki kemiripan dengan data yang dimaksud.
29
Contoh Penerapan k-NN
30
• Bayangkan sebuah perusahaan provider telekomunikasi.
• Perusahaan tersebut mengumpulkan data pelanggannya lengkapdengan penggunaan layanan yang dipilihnya.
Contoh Penerapan k-NN
31
• Berdasarkan data tersebut, perusahaan seharusnya dapat menemukan polapelanggan seperti apa yang senang memilih basic, e-service, plus, dan total.
• Sebagai contoh: akan memilih layanan mana pelanggan baru ini?
k-NN (k = 1)
32
• Untuk penyederhanaan, hanya dua variable yang digunakan untuk melakukan klasifikasi yaituIncome dan Age
• Plot sebaran data pelanggan.
k-NN (k = 1)
33
• Sekarang, andai pelanggan baru memiliki:
• Age = 50
• Income = 166
• Termasuk kategori manakah pelanggan baruini?
k-NN (k = 1)
34
• Hitung distance dari pelanggan baru ke semua pelangganyang lain
• Tentukan 1 pelanggan yang terdekat (k = 1) denganpelanggan yang baru yaitu yang memiliki nilai distanceterkecil.
• Pelanggan baru tersebut diklasifikasikan sama denganpelanggan terdekat
• Klasifikasi pelanggan baru adalah Total Service
k-NN (k = 3)
35
• Hitung distance dari pelanggan baru ke semuapelanggan yang lain
• Tentukan 3 pelanggan yang terdekat (k = 3) denganpelanggan yang baru.
• Klasifikasi pelanggan baru: 1 Plus Service, 2 Total Service (pelanggan baru = Total Service)
k-NN (k = 5)
36
• Hitung distance dari pelanggan baru ke semuapelanggan yang lain
• Tentukan 5 pelanggan yang terdekat (k = 5) denganpelanggan yang baru.
• Klasifikasi pelanggan baru: 3 Plus Service, 2 Total Service (pelanggan baru = Plus Service)
Algoritma k-Nearest Neighbor
1. Diberikan sebuah data tidak terklasifikasi 𝑝, dan kumpulan data training 𝑷 yang telah dilengkapi label classnya .
2. Pilih nilai dari jumlah ketetanggan 𝑘.
3. Hitung jarak antara 𝑝 ke seluruh data yang ada dalam 𝑷.
4. Ambil 𝑘 observasi yang merupakan data terdekat dengan 𝑝.
5. Klasifikasikan data tersebut dengan mayoritas class dari 𝑘-tetangga terdekatnya.
37
Menentukan Jumlah 𝐾
• Bagaimana menentukan jumlah 𝐾 yang tepat?
38
Training dan Testing Data (Split Test)
• Data dibagi menjadi 2 :
• Training data = Membuat model classifier.• Testing data = Memeriksa akurasi dari classifier
39
Training Data
Testing Data
Training dan Testing Data
40
Classifier model
Modelling
Input
Class
2
class = 3
TidakAkurat!!
Training Data
Testing Data
Menentukan Jumlah 𝐾
• Gunakan testing data untuk memeriksa berapakah jumlah 𝐾 yang tepat!
• Dari beberapa kali uji coba, temukan jumlah 𝐾 yang memiliki tingkatakurasi tertinggi.
41
Evaluasi KlasifikasiEvaluasi Klasifikasi
Confusion Matrix
• True Positive (TP):• Predicted: Positive• Actual: Positive
• False Negative (FN):• Predicted: Negative• Actual: Positive
• False Positive (FP):• Predicted: Positive• Actual: Negative
• True Negative (TN):• Predicted: Negative• Actual: Negative
43
F1 Score• 𝐴𝑘𝑢𝑟𝑎𝑠𝑖 =
𝑇𝑃+𝑇𝑁
(𝑇𝑃+𝑇𝑁+𝐹𝑃+𝐹𝑁)
• Precision (Positive Predictive Value) =𝑇𝑃
(𝑇𝑃+𝐹𝑃)
• Recall(True Positive Rate) =𝑇𝑃
(𝑇𝑃+𝐹𝑁)
44
F1-Score = 2 ×(Precision ×Recall)(Precision +Recall)