Jelajahi eBook
Kategori
Jelajahi Buku audio
Kategori
Jelajahi Majalah
Kategori
Jelajahi Dokumen
Kategori
a. Indikator
1. Mahasiswa mampu memahami konsep supervised learning dan unsupervised learning
2. Mahasiswa mampu memahami algoritma klasifikasi Naïve Bayes
3. Mahasiswa mampu menyelesaikan permasalahan klasifikasi menggunakan algoritma
Naïve Bayes
b. Dasar Teori
1. Supervised dan Unsupervised Learning
Machine learning adalah sub artificial inteligence. Machine learning itu sendiri
terbagi menjadi jika dikategorikan berdasarkan label. Label yang dimaksudkan disini adalah
target variable ada tidak dasar datanya. Dalam artikel ini pertama-tama akan dibahas
mengenai definisi masing masing dan aplikasinya dalam kehidupan nyata. Kemudian akan
disajikan kesimpulan dan perbandingan antara keduanya.
Supervised Learning dalam bahasa indonesia adalah pembelajaran yang ada
supervisornya. Maksud disini ada supervisornya adalah label di tiap data nya. Label
maksudnya adalah tag dari data yang ditambahkan dalam machine learning model.
Contohnya gambar kucing di tag “kucing” di tiap masing masing image kucing dan gambar
anjing di tag “anjing” di tiap masing gambar anjing. Machine learning kategori dapat berupa
clasification (“anjing”, “kucing”, “beruang”, dsb) dan regression ( berat badan, tinggi badan
dsb). Supervised learning banyak digunakan dalam memprediksi pola dimana pola tersebut
sudah ada contoh data yang lengkap, jadi pola yang terbentuk adalah hasil pembelajaran data
lengkap tersebut. Tentunya jika kita memasukan data baru, setelah kita melakukan ETL
(Extract Transform Load) maka kita mendapat info feature feature dari sample baru tersebut.
Kemudian dari feature feature tersebut di compare dengan pattern clasification dari model
yang didapat dari labeled data. Setiap label akan dicompare sampai selesai, dan yang
memiliki percentage lebih banyak akan diambil sebagai prediksi akhir.
Unsupervised learning memiliki keunggulan daari unsupervised learning. Jika
unsupervised learning memiliki label sebagai dasar prediksi baik serta membuat clasification
dan regression algorithm memungkinkan. Tetapi dalam realitanya, data real itu banyak yang
tidak memiliki label. Label kebanyakan jika data sudah masuk ke ERP apapun bentuk
ERPnya dan bagaimana kalo datanya berupa natural input seperti suara, gambar, dan video.
Unsupervised learning tidak menggunakan label dalam memprediksi target feautures /
variable. Melainkan menggunakan ke samaan dari attribut attribut yang dimiliki. Jika
attribut dan sifat sifat dari data data feature yang diekstrak memiliki kemirip miripan, maka
akan dikelompok kelompokan (clustering). Sehingga hal ini akan menimbulkan kelompok
kelompok (cluster). Jumlah cluster bisa unlimited. Dari kelompok kelompok itu model
melabelkan, dan jika data baru mau di prediksi, maka akan dicocok kan dengan kelompok
yang mirip mirip featurenya.
2. Klasifikasi Naïve Bayes
Metode Find-S tidak dapat digunakan untuk data yang tidak konsisten dan data yang
bias, sehingga untuk bentuk data semacam ini salah satu metode sederhana yang dapat
digunakan adalah metode bayes. Metode Bayes ini merupakan metode yang baik di dalam
mesin pembelajaran berdasarkan data training, dengan menggunakan probabilitas bersyarat
sebagai dasarnya.
P( X ∩Y )
P ( X|Y )= yang artinya Probabilitas X di dalam Y adalah probabilitas interseksi X
P(Y )
dan Y dari probabilitas Y, atau dengan bahasa lain P(X|Y) adalah prosentase banyaknya X di
dalam Y.
Metode Bayes
P(Y ∨X k )
P ( X k|Y ) =
∑ P(Y ∨ X i) yang artinya keadaan Posteriror (Probabilitas Xk di dalam Y) dapat
i
dihitung dari keadaan prior (Probabilitas Y di dalam Xk dibagi dengan jumlah dari semua
probabilitas Y di dalam semua Xi).
HMAP (Hypothesis Maximum Appropri Probability) adalah model penyederhanaan
dari metode bayes yang disebut dengan Naive Bayes. HMAP inilah yang digunakan di
dalam machine learning sebagai metode untuk mendapatkan hipotesis untuk suatu
keputusan. HMAP menyatakan hipotesa yang diambil berdasarkan nilai probabilitas
berdasarkan kondisi prior yang diketahui.
P (Y | X ) P ( X ) argmax
P ( S|X )= argmax = P ( Y |X ) P(X )
x∈ X P( X ) x∈ X
Kelemahan Metode Naïve Bayes
Metode Naïve Bayes hanya bisa digunakan untuk persoalan klasifikasi dengan supervised
learning dan data-data kategorikal;
Metode Bayes memerlukan pengetahuan awal untuk dapat mengambil suatu keputusan.
Tingkat keberhasilan metode ini sangat tergantung pada pengetahuan awal yang
diberikan.
d. Prosedur Kerja
1. Contoh Naïve Bayes:
Diketahui hasil survey yang dilakukan sebuah lembaga kesehatan menyatakan bahwa 30%
penduduk di dunia menderita sakit paru-paru. Dari 90% penduduk yang sakit paru-paru ini
60% adalah perokok, dan dari penduduk yang tidak menderita sakit paru-paru 20% perokok.
Apakah bila cuaca cerah dan kecepatan angin kencang, orang akan berolahraga?
Data testing:
Jenis Status Status IPK Status
No
Kelamin Mahasiswa Pernikahan Semester 1-6 Kelulusan
1 Perempuan Bekera Belum 3,50 ?
3. Carilah studi kasus atau kumpulan data (data set) supervised learning, hitunglah
keputusannya menggunakan Naïve Bayes berdasarkan atribut yang tersedia, hitung pula
confusion matrix, dan lakukan analisa.
e. Hasil dan Pembahasan
Dokumentasi hasil Latihan studi kasus yang telah dikerjakan.
f. Kesimpulan
Mahasiswa mampu memahami konsep algoritma Naïve Bayes
g. Rubrik Penilaian
No Indikator Skor*
1 Ketepatan waktu dan ketepatan dalam menjelaskan dari tugas 25 5 75 100
ditunjang dengan bukti referensi 0
2 25 5 75 100
Ketepatan waktu dan ketepatan dalam menjelaskan dari tugas 0
3 Ketepatan waktu akan tetapi kurang tepat dalam menjelaskan 25 5 75 100
tugas 0
4 Keterlambatan pengumpulan tugas dan ketidaktepatan dalam 25 5 75 100
menjelaskan tugas 0
Jumlah skor
Acara 30
Pokok Bahasan : Klasifikasi
Minggu/Acara Praktikum : 9 / 30
Tempat : Lab. Rekayasa Sistem Informasi
Alokasi Waktu : 1 x 110 menit
a. Indikator
1. Mahasiswa mampu memahami konsep supervised learning dan unsupervised learning
2. Mahasiswa mampu memahami algoritma klasifikasi Support Vector Machine
3. Mahasiswa mampu menyelesaikan permasalahan klasifikasi menggunakan algoritma
Support Vector Machine (SVM)
b. Dasar Teori
Teori tentang supervised dan unsupervised dapat dilihat di Minggu ke-9, acara praktikum
29.
Support Vector Machine (SVM) merupakan sebuah metode atau algoritma yang
dipelajari dalam pembelajaran tentang Machine Learning. SVM dikembangkan oleh Guyon,
Boser dan Vapink serta pertama kali diperkenalkan pada tahun 1992 pada saat presentasi di
Annual Workshop on Computational Learning Theory. Prinsip kerja SVM didasarkan atas
prinsip Structural Risk Minimization (SRM) yang bertujuan untuk menghasilkan
Hyperplane terbaik yang memisahkan input space pada dua buah kelas, dan secara
sederhana prinsip dasar metode ini adalah linier classifier atau pengelompokan secara
berarah yang kemudian dikembangkan sehingga mampu bekerja secara problem non linier.
Prinsip ini sendiri merupakan gabungan atau kombinasi yang baik antara teori komputasi
yang telah berkembang jauh sebelum adanya SVM.
Meski terbilang SVM merupakan teknik yang relatif baru, SVM sendiri dianggap
metode yang lebih baik, akurat dan mutakhir dari metode sejenis yaitu ANN (Artificial
Neural Network) yang berada dalam kelas pengklasifikasian yang sama yaitu supervised
learning. Menurut Santoso (2007) SVM merupakan sebuah metode untuk melakukan
perhitungan ataupun prediksi dalam hal klasifikasi ataupun regresi. Klasifikasi sendiri
merupakan pembagian akan suatu hal atau masalah berdasarkan kelas-kelas hal itu sendiri,
sedangkan regresi adalah metode penentuan hubungan antara sebab akibat antar satu
variabel dengan variabel yang lain.
Teori SVM diawali dengan mengelompokkan kasus linier yang mampu untuk
dipisahkan (dikelompokan) dan dibagi sesuai dengan kelas ataupun hubungan sebab
akibatnya. Misalkan terdapat {𝑥1, …, 𝑥𝑛} adalah data set dan 𝑦𝑖 ∈ {+1, −1} adalah label
kelas dari data 𝑥𝑖 maka kelas dari data pengujian 𝑥 dapat ditentukan berdasarkan nilai dari
fungsi keputusan. 𝑥𝑖 adalah support vector, ns = jumlah support vector dan 𝑥𝑑 adalah data
yang akan diklasifikasikan
Pada kenyataannya tidak semua data dapat dipisahkan secara linier, untuk mengatasi
permasalahan tersebut SVM dapat dimodifikasi dengan menambahkan fungsi kernel
didalamnya. ide dasar dari metode kernel ini adalah dengan memetakan data 𝑥 ke ruang
vector yang berdimensi lebih tinggi dengan fungsi Φ( 𝑥) sehingga pada ruang vektor yang
baru ini, hyperplane dapat dikonstruksikan. Selanjutnya, perhitungan untuk menemukan
titik-titik support vectornya bergantung pada dot product dari data yang sudah
ditransformasikan pada ruang baru dimensi yang baru. Karena sulitnya menemukan fungsi
transformasi dari Φ, maka menurut Mercer, perhitungan dot product tersebut dapat
digantikan dengan fungsi kernel (𝑥𝑖,) dimana fungsi tersebut mendefinisikan transformasi Φ
secara implisit. Inilah yang disebut dengan “kernel trick”, yang dirumuskan dengan :
Sehingga hasil klasifikasi dari data x ini dapat dituliskan dengan persamaan:
b. Kernel Gaussian
c. Kernel Sigmoid
d. Prosedur Kerja
1. Contoh: Diberikan data set sebagai berikut
Buatlah grafik dari data set tersebut, sehingga hasilnya sebagai berikut
(𝑥) = -0.162963
Dari hasil perhitungan (𝑥) didapatkan nilai negatif (-) maka data tersebut termasuk kelas
Non-technical article.
f. Kesimpulan
Mahasiswa mampu memahami konsep algoritma SVM
g. Rubrik Penilaian
No Indikator Skor*
1 Ketepatan waktu dan ketepatan dalam menjelaskan dari tugas 25 5 75 100
ditunjang dengan bukti referensi 0
2 25 5 75 100
Ketepatan waktu dan ketepatan dalam menjelaskan dari tugas 0
3 Ketepatan waktu akan tetapi kurang tepat dalam menjelaskan 25 5 75 100
tugas 0
4 Keterlambatan pengumpulan tugas dan ketidaktepatan dalam 25 5 75 100
menjelaskan tugas 0
Jumlah skor
Acara 31
Pokok Bahasan : Klasifikasi
Minggu/Acara Praktikum : 9 / 31
Tempat : Lab. Rekayasa Sistem Informasi
Alokasi Waktu : 1 x 110 menit
a. Indikator
1. Mahasiswa mampu memahami konsep supervised learning dan unsupervised learning
2. Mahasiswa mampu memahami algoritma klasifikasi K-Nearest Neighbor (KNN)
3. Mahasiswa mampu menyelesaikan permasalahan klasifikasi menggunakan algoritma K-
Nearest Neighbor (KNN)
b. Dasar Teori
Teori tentang supervised dan unsupervised dapat dilihat di Minggu ke-9, acara praktikum
29.
1. Definisi KNN
Algoritma K-Nearest Neighbor (K-NN) adalah sebuah metode klasifikasi terhadap
sekumpulan data berdasarkan pembelajaran data yang sudah terklasifikasikan sebelumya.
Termasuk dalam supervised learning, dimana hasil query instance yang baru diklasifikasikan
berdasarkan mayoritas kedekatan jarak dari kategori yang ada dalam KNN.
Ilustrasi cerita dari K-NN adalah sebagai berikut:
“ Bertanya pada Tetangga – Anda diundang ke sebuah pertemuan. Namun, Anda
tidak tahu tema dari pertemuan tersebut, maupun kegiatan apa saja yang akan dilakukan di
pertemuan tersebut. Anda benar-benar tidak tahu apakah pertemuan itu akan bermanfaat atau
tidak untuk Anda. Yang Anda tahu, beberapa orang teman Anda juga diundang ke acara
yang sama. Dalam kondisi seperti itu, apa yang Anda lakukan? ”
“ Cara yang biasanya dilakukan oleh banyak orang dalam menangani masalah seperti
itu adalah dengan bertanya kepada teman-teman apakah mereka akan datang ke pertemuan
tersebut atau tidak. Biasanya, orang-orang yang pertama ditanya adalah orang-orang yang
dekat dengan Anda. Maka, Anda mencoba mengontak enam orang teman yang biasa jadi
teman main Anda. Dari enam orang tersebut, empat orang menyatakan akan datang, tapi dua
orang ternyata memutuskan tidak datang, entah mengapa alasannya. Keputusan apa yang
Anda akan ambil? “
Kasus di atas menggambarkan ide dari algoritma k-Nearest Neighbours (kNN). Anda
ingin mengambil sebuah keputusan (kelas) antara datang atau tidak datang ke sebuah
pertemuan. Untuk mendukung pengambilan keputusan tersebut, Anda melihat mayoritas
dari keputusan teman-teman Anda (instance lainnya). Teman-teman tersebut Anda pilih
berdasarkan kedekatannya dengan Anda. Ukuran kedekatan pertemanan ini bisa bermacam-
macam: tetangga, satu hobi, satu kelas, atau hal-hal lainnya. Ukuran-ukuran tersebut bisa
juga digunakan bersamaan, misalnya si A itu tetangga, satu hobi, dan satu kelas; sedangkan
si B hanya satu kelas saja.
Gambar di atas menggambarkan ide dari algoritma k-Nearest Neighbours (kNN). Anda ingin
mengambil sebuah keputusan (kelas) antara datang atau tidak datang ke sebuah pertemuan.
Untuk mendukung pengambilan keputusan tersebut, Anda melihat mayoritas dari keputusan
teman atau tetangga Anda (instance lainnya). Teman atau tetangga tersebut Anda pilih
berdasarkan kedekatannya dengan Anda. Ukuran kedekatan pertemanan ini bisa bermacam-
macam: satu hobi, satu kelas, atau hal-hal lainnya. Ukuran-ukuran tersebut bisa juga
digunakan bersamaan, misalnya si A itu tetangga, satu hobi, dan satu kelas; sedangkan si B
hanya satu kelas saja.
Kedekatan dapat dianggap sebagai invers jarak, alias berbanding terbalik dengan jarak.
Semakin kecil jarak antara dua instance, semakin besar “kedekatan” antara dua instance
tersebut. Dengan demikian, k nearest neighbours dari sebuah instance x didefinisikan
sebagai k instance yang memiliki jarak terkecil (kedekatan terbesar, nearest) dengan x.
d. Prosedur Kerja
1. Contoh studi kasus KNN
Terdapat beberapa data yang berasal dari survey questioner tentang klasifikasi kualitas
kertas tissue apakah baik atau jelek, dengan objek training dibawah ini menggunakan
dua attribute yaitu daya tahan terhadap asam dan kekuatan.
X1 = Daya Tahan asam
X2 = Kekuatan (kg/m2) Y = Klasifikasi
(detik)
7 6 Jelek
6 6 Jelek
6 5 Jelek
1 3 Baik
2 4 Baik
2 2 Baik
3 5 ?
Akan diproduksi kembali kertas tissue dengan attribute X1=3 dan X2=5, tanpa harus
mengeluarkan biaya untuk melakukan survey, maka dapat diklasifikasikan kertas tissue
tersebut termasuk yang baik atau jelek.
Langkah:
Menentulan parameter K, misalnya jumlah tetangga terdekat K = 3
Selanjutnya hitung jarak antara data baru dengan semua data training, menggunakan
Euclidean Distance. Kita hitung seperti pada table berikut:
X1 X2 Euclidean Distance (3,5)
7 6 √ ( 7−3 ) + ( 6−5 )2 =√( 4 )2 +( 1 )2= √17=4.12
2
6 6 2 2 2
√ ( 6−3 ) + ( 6−5 ) =√ (3 ) + (1 ) =√10=3.16 2
6 5 2 2
√ ( 6−3 ) + ( 5−5 ) = √( 3 ) +( 0 ) =√ 9=3 2 2
1 3 2 2
√ ( 1−3 ) +( 3−5 ) =√ (−2 ) +(−2 ) =√ 8=2.82 2 2
2 4 2 2
√ ( 2−3 ) +( 4−5 ) =√ (−1 ) + (−1 ) =√ 2=1.41 2 2
2 2 2 2 2
√ ( 2−3 ) +( 2−5 ) =√ (−1 ) + (−3 ) =√ 10=3.16 2
Kemudian kita urutkan jarak dari data baru dengan data training dan menentukan
tetangga terdekat berdasarkan jarak minimum K.
Euclidean
X1 X2 Urutan Jarak Apakah termasuk 3-NN ?
Distance (3,5)
7 6 4.12 5 Tidak (K>3)
6 6 3.16 4 Tidak (K>3)
6 5 3 3 Ya (K=3)
1 3 2.82 2 Ya (K<3)
2 4 1.41 1 Ya (K<3)
2 2 3.16 4 Tidak (K>3)
Tentukan kategori dari tetangga terdekat. Kita perhatikan baris 3, 4, dan 5 pada gambar
sebelumnya (diatas). Kategori Ya diambil jika nilai K<=3. Jadi baris 3, 4, dan 5
termasuk kategori Ya dan sisanya Tidak.
Euclidean Apakah Kategori Ya
X1 X2 Urutan Jarak
Distance (3,5) termasuk 3-NN ? untuk KNN
7 6 4.12 5 Tidak (K>3) -
6 6 3.16 4 Tidak (K>3) -
6 5 3 3 Ya (K=3) Bad
1 3 2.82 2 Ya (K<3) Good
2 4 1.41 1 Ya (K<3) Good
2 2 3.16 4 Tidak (K>3) -
Gunakan kategori mayoritas yang sederhana dari tetangga yang terdekat tersebut
sebagai nilai prediksi data yang baru.
Data yang kita miliki pada baris 3, 4 dan 5 kita punya 2 kategori Baik dan 1 kategori
Jelek. Dari jumlah mayoritas (Baik > Jelek) tersebut kita simpulkan bahwa data baru
(X1=3 dan X2=5) termasuk dalam kategori Baik.
X1 = Daya Tahan asam
X2 = Kekuatan (kg/m2) Y = Klasifikasi
(detik)
7 6 Jelek
6 6 Jelek
6 5 Jelek
1 3 Baik
2 4 Baik
2 2 Baik
3 5 Baik
2. Hitunglah dengan cara yang sama jika, attribute X1=4 dan X2=2.
3. Carilah studi kasus atau kumpulan data (data set) supervised learning, hitunglah
keputusannya menggunakan KNN berdasarkan atribut yang tersedia, hitung pula
confusion matrix, dan lakukan analisa
f. Kesimpulan
Mahasiswa mampu memahami konsep algoritma KNN
g. Rubrik Penilaian
No Indikator Skor*
1 Ketepatan waktu dan ketepatan dalam menjelaskan dari tugas 25 5 75 100
ditunjang dengan bukti referensi 0
2 25 5 75 100
Ketepatan waktu dan ketepatan dalam menjelaskan dari tugas 0
3 Ketepatan waktu akan tetapi kurang tepat dalam menjelaskan 25 5 75 100
tugas 0
4 Keterlambatan pengumpulan tugas dan ketidaktepatan dalam 25 5 75 100
menjelaskan tugas 0
Jumlah skor
Acara 32
Pokok Bahasan : Klasifikasi
Minggu/Acara Praktikum : 9 / 32
Tempat : Lab. Rekayasa Sistem Informasi
Alokasi Waktu : 1 x 110 menit
a. Indikator
1. Mahasiswa mampu memahami konsep supervised learning dan unsupervised learning
2. Mahasiswa mampu memahami algoritma klasifikasi K-Nearest Neighbor (KNN), SVM,
Naïve Bayes
3. Mahasiswa mampu menyelesaikan permasalahan klasifikasi menggunakan algoritma K-
Nearest Neighbor (KNN), SVM, Naïve Bayes
b. Dasar Teori
Teori tentang supervised dan unsupervised dapat dilihat di Minggu ke-9, acara praktikum
29.
d. Prosedur Kerja
Buatlah resume tentang langkah masing-masing algoritma KNN, SVM, dan Naïve Bayes,
sertakan dalam bentuk diagram alir.