Algoritma Klasifikasi - unhas.ac.idUnhas.ac.id/amil/S1TIF/DM2020/06 Algoritma...
Transcript of Algoritma Klasifikasi - unhas.ac.idUnhas.ac.id/amil/S1TIF/DM2020/06 Algoritma...
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)