Pendahuluan
Piramida Data
Problem : deksripsi
Metode : statistik deskriptif
1
2/18/2021
Ilmu Data
Terminologi
• Ilmu data (data science) adalah suatu bidang ilmu interdisipliner yang
menggunakan metode saintifik, proses, algoritma dan sistem untuk
mengekstrak pengetahuan dan wawasan dari data dalam berbagai bentuk,
baik terstruktur maupun tidak terstruktur
• Ilmu data adalah suatu konsep yang
menyatukan statistika, analisis data,
machine learning dan metode terkait
untuk memahami dan menganalisis
fenomena aktual dari data
• Saintis data (data scientist) adalah
profesional pada disiplin ilmu data
dengan kualifikasi tertentu baik melalui
pendidikan maupun pengalaman yang
intens
Ilmu Data
Alur Proses
2
2/18/2021
Ilmu Data
Alur Proses
Ilmu Data
Alur Proses
3
2/18/2021
Ilmu Data
Alur Proses
Machine Learning
Definisi
4
2/18/2021
Machine Learning
Diagram Alur Proses
Machine Learning
Diagram Alur Proses
5
2/18/2021
Machine Learning
Diagram Alur Proses
11
Machine Learning
Metode Pembelajaran
Sumber : https://web.facebook.com/AIwithDrMalleswar/ 12
6
2/18/2021
Machine Learning
Metode Pembelajaran
Sumber : https://web.facebook.com/AIwithDrMalleswar/ 13
Machine Learning
Metode Pembelajaran
14
7
2/18/2021
Machine Learning
Metode Pembelajaran
• Multi-Class Classification
• Multi-Label Classification
• Ordinal Regression
• Ranking
• Anomaly Detection
15
Machine Learning
Klasifikasi : Prediksi Klaim Asuransi
8
2/18/2021
Machine Learning
Regresi : Prediksi Klaim Asuransi
17
MachineLearning
Aplikasi Lain
https://blog.quantinsti.com/machine-learning-basics/
18
9
2/18/2021
Machine Learning
Data Training/Testing
Machine Learning
Kaggle Challenge
10
2/18/2021
Machine Learning
Model
• Supervised learning
K-Nearest Neighbor, Naïve Bayes, Regresi Linear, Regresi
Logistik, Perceptron
Support vector machine
Decision tree – ensemble learning
Neural network - deep learning
• Unsupervised learning
K-means, fuzzy C-means, matrix factorization
Neural network - deep learning
21
Perangkat Lunak
Python
• Python Distribution
PC: Anaconda
Cloud: Google Colab
• IDE: Jupyter Notebook
• Library
Data Analysis: Pandas
Machine Learning: Scikit-learn, XGBoost
Visualization: Matplotlib
22
11
2/25/2021
Pendahuluan
Masalah Supervised Learning
• Regresi
– tn bernilai kontinu (riil)
– Bertujuan memprediksi nilai dari data
– Contoh: Prediksi kinerja CPU
• Klasifikasi
– tn bernilai kategori (kelas)
– Bertujuan memprediksi kelas atau
kategori dari data
– Contoh: Prediksi jenis contact lens
1
2/25/2021
Pendahuluan
Model Linear
y ( x ) = w 0 + ∑ w j x j = w 0+ w x
T
j= 1
dimana x = (x1, x2, ..., xD)T adalah data berdimensi D, w = (w1, w2, ..., wD)T
adalah parameter bobot, w0 adalah parameter bias.
• Model linear sering juga ditulis dalam bentuk yang lebih kompak, yaitu:
D
y ( x) = ∑ wjxj = w z
T
j= 0
dimana w = (w0, w1, ..., wD) dan z = (1,, x1, ..., xD)T
T
3
Pendahuluan
Optimasi
2
2/25/2021
Model Linear
Masalah Optimasi
Bentuk dan Metode
3
2/25/2021
Masalah Optimasi
Bentuk dan Metode
• Teorema. Jika x* adalah suatu titik minimum lokal dari f(x), f(x)
dapat diturunkan dan 2f(x) kontinu pada suatu linkungan dari x*,
maka f(x*) = 0 dan 2f(x*) adalah semidefinite positip, dimana
𝜕𝑓(𝒙) 𝜕𝑓(𝒙) 𝜕𝑓(𝒙)
∇𝑓 𝒙 = , ,…,
𝜕𝑥 𝜕𝑥 𝜕𝑥
Metode Langsung
Contoh:
Diberikan suatu fungsi 𝑓 𝒙 = 𝑥 + 𝑥 + 2𝑥 + 4𝑥 + 6. Tentukan
titik minimum x = (x1, x2)T, yaitu titik x dimana f(x) bernilai minimum
4
2/25/2021
Metode Iteratif
Metode Iteratif
Gradient Descent
5
2/25/2021
Machine Learning
Masalah Supervised Learning
• Regresi
– tn bernilai kontinu (riil)
– Bertujuan memprediksi nilai dari data
– Contoh: Prediksi kinerja CPU
• Klasifikasi
– tn bernilai kategori (kelas)
– Bertujuan memprediksi kelas atau
kategori dari data
– Contoh: Klasifikasi jenis contact lens
12
6
2/25/2021
Regresi
Masalah
13
Regresi
Regresi Linear
14
7
2/25/2021
Regresi Linear
Formulasi Metode
atau
1
𝐸 𝒘 = 𝒘 Φ Φ𝒘 − 2 Φ𝒘 𝑡 + 𝑡 𝑡
2
15
Regresi Linear
Formulasi Metode
16
8
2/25/2021
Regresi Linear
Formulasi Metode
17
Regresi Linear
Ilustrasi Proses
Diberikan tujuh data pada tabel berikut. Enam data pertama adalah data training,
sementara data ketujuh adalah data testing.
x 3 4 6 7 8 9 5
t 1 3 4 6 8 8 3.6
Tentukan akurasi dari model regresi linear yang dibangun berdasarkan data training dalam
memprediksi data testing.
Solusi:
Berdasarkan data training, maka:
[
ΦT = 1 1 1 1 1 1
3 4 6 7 8 9 ]
dan model regresi linear yang dihasilkan adalah y(x) = -2.35 + 1.19x. Selanjutnya, Prediksi
dari x = 5 adalah y(5) = -2.35 + 1.19*5 = 3.6. Sehingga, model tersebut dapat memprediksi
data testing dengan sangat akurat.
18
9
2/25/2021
Regularisasi
Masalah Over-fitting
19
Regularisasi
20
10
2/25/2021
Regresi Ridge
Fungsi Error
21
Regresi Ridge
Ilustrasi Proses
Diberikan enam data pada tabel berikut. Lima data pertama adalah data training,
sementara data keenam adalah data testing.
x 1 2 3 4 5 6
t 1.6 3.1 4.6 6.1 7.6 8.0
Apakah model regresi linear memberikan prediksi yang akurat untuk data penguji ?
Selanjutnya, jika menggunakan regresi Ridge dengan λ adalah 5 dan 10, λ manakah yang
memberikan akurasi terbaik untuk data testing ?
Solusi:
Berdasarkan data training, maka:
[
ΦT = 1 1 1 1 1
1 2 3 4 5 ]
22
11
2/25/2021
Regresi Ridge
Ilustrasi Proses
• Model regresi linear yang dihasilkan adalah y(x) = 0.1 + 1.5x. Selanjutnya, Prediksi dari
x = 6 adalah y(6) = 0.1 + 1.5*6 = 9.1 dengan error 1.1
• Dari hasil di atas terlihat bahwa model regresi linear tidak terlalu akurat memprediksi
data testing
• Kesimpulan : model regresi linear tidak memprediksi data penguji dengan akurat.
Model regresi Ridge memberikan hasil yang lebih akurat, dimana akurasi untuk λ = 5
lebih baik dari λ = 10
23
Regresi Ridge
Implementasi
24
12
2/25/2021
Machine Learning
Masalah Supervised Learning
• Regresi
– tn bernilai kontinu (riil)
– Bertujuan memprediksi nilai dari data
– Contoh: Prediksi kinerja CPU
• Klasifikasi
– tn bernilai kategori (kelas)
– Bertujuan memprediksi kelas atau
kategori dari data
– Contoh: Klasifikasi jenis contact lens
26
13
2/25/2021
Klasifikasi
Masalah
Klasifikasi
Regresi Logistik
28
14
2/25/2021
Regresi Logistik
Bentuk Umum
1
σ 𝑎 =
1+𝑒
29
Regresi Logistik
Formulasi Masalah
𝑝(𝒙)
ln =𝒘 𝒛
1 − 𝑝(𝒙)
Sehingga,
exp(𝒘 𝒛)
𝑝 𝒙 =
1 + exp(𝒘 𝒛)
Atau,
1
𝑝 𝒙 = = 𝜎(𝒘 𝒛)
1 + exp(−(𝑤 + 𝑤 𝒙))
30
15
2/25/2021
Regresi Logistik
Formulasi Masalah
𝑝 𝐭∣𝐰 = 𝑦 1−𝑦
31
Regresi Logistik
Likelihood Maksimum
dimana
𝐸 𝐰 = −ln 𝑝 𝐭 ∣ 𝐰 =− 𝑡 ln 𝑦 + 1 − 𝑡 ln 1 − 𝑦
32
16
2/25/2021
Regresi Logistik
Regularisasi
1
𝐸 𝐰 = ∥ 𝑤 ∥ +𝐶 𝑡 ln 𝑦 + 1 − 𝑡 ln 1 − 𝑦
2
33
Regresi Logistik
Fungsi Prediksi
𝑓 𝒙 =𝑑 𝑦 𝒙 =𝑑 σ 𝑤 +𝑤 𝒙
34
17
2/25/2021
Regresi Logistik
Ilustrasi Proses
• Diberikan tiga data pada tabel berikut, dimana dua data pertama adalah data
pelatihan dan data ketiga adalah data penguji. Dengan menggunakan fungsi
tujuan tanpa regularisasi, tentukan akurasi dari model regresi logistik.
n 1 2 3
xn (1,0)T (5,0)T (4.5, 2)T
tn 0 1 1
Jawab:
35
Regresi Logistik
Ilustrasi Proses
36
18
2/25/2021
Regresi Logistik
Prediksi
37
Regresi Logistik
Implementasi
38
19
2/25/2021
Referensi
20
2/18/2021
1
2/18/2021
dimana f(x) adalah fungsi tujuan, ci(x) dan dj(x) adalah fungsi kendala
• Metode sederhana untuk menyelesaikan masalah optimasi
berkendala adalah mensubstitusikan variabel dari fungsi kendala
pada fungsi tujuan sedemikian sehingga nilai optimal dari fungsi
tujuan dapat ditentukan
2
2/18/2021
Metode Substitusi
Contoh:
Tentukan solusi dari masalah optimasi berkendala berikut ini:
Jawab:
- Dari kendala diperoleh bahwa x2 = -8/3 x1
- Substitusi ke fungsi tujuan : f(x) = -8/3 x13 – ln(x1)
- Dengan membuat turunan f(x) sama dengan nol, maka x1 = -1/2
- Sehingga, solusi adalah x = (-1/2, 4/3)T
5
Metode Lagrange
3
2/18/2021
Metode Lagrange
Contoh:
Tentukan solusi dari maslah optimasi berkendala berikut ini:
Jawab:
- Fungsi Lagrange :
- Dengan membuat turunan L(x, α) = 0, maka
4
2/18/2021
Fungsi Pembatas
Model Linear
10
5
2/18/2021
Fungsi Pembatas
Hyperplane
11
Fungsi Pembatas
Hyperplane : Interpretasi Parameter
12
6
2/18/2021
y(x) = 0
y(x) > 0 y(x) < 0 Diberikan data training {xn, tn}, n = 1 sd N
dimana tn ϵ {-1, +1}
• Misal suatu data xn diklasifikasikan ke
kelas tn = +1 jika y(xn) 0 dan kelas tn =
-1 jika y(xn) < 0, maka semua data
diklasifikasi dengan benar jika
memenuhi tny(xn) 0 untuk semua n
• Masalah:
Bagaimana menentukan parameter w
Kelas 1 Kelas 2 dan b sedemikian sehingga tny(xn) 0
(t = +1) (t = -1) untuk semua n
13
14
7
2/18/2021
• Kenapa maksimum ?
• Berdasarkan intuisi, margin
maksimum adalah pilihan yang
aman karena jika terjadi sedikit
kesalahan pada data maka akan
memberikan kemungkinan terkecil
terjadi kesalahan klasifikasi
• Berdasarkan VC theory (1960-
1990), maksimum margin akan
memberikan kapabilitas
generalisasi terbaik
15
16
8
2/18/2021
17
9
2/18/2021
20
10
2/18/2021
1
𝑚𝑖𝑛 ∥𝒘∥
𝒘, 2
𝑠. 𝑡. 𝑡 𝒘 ϕ 𝒙 + 𝑏 ≥ 1, 𝑛 = 1, . . , 𝑁
𝑠. 𝑡. 𝑡 𝒘 ϕ 𝒙 + 𝑏 ≥ 1 − ξ , 𝑛 = 1, . . , 𝑁
ξ ≥0
dimana parameter C > 0 akan mengkontrol trade-off antara banyaknya
data pada kelas yang salah (margin menyempit) dan kapabilitas
generalisasi (margin melebar)
21
1
𝐿 𝒘, 𝑏 = ∥ 𝒘 ∥ +𝐶 ∑ ξ − ∑ 𝑎 {𝑡 𝑤 ϕ 𝒙 +𝑏 −1+ξ }− ∑ μ ξ
2
22
11
2/18/2021
1
𝐿 𝒘, 𝑏 = ∥ 𝑤 ∥ +𝐶 ξ − 𝑎 𝑡 𝑤 ϕ 𝑥 +𝑏 −1+ξ − μ ξ
2
Kondisi Karush-Kuhn-Tucker (KKT) atau kondisi yang harus dipenuhi oleh solusi
dari masalah optimasi berkendal tersebut adalah:
𝑎 ≥0 [𝐾𝐾𝑇 − 𝑆1]
𝑡 𝑦 𝑥 −1+ξ ≥0 [𝐾𝐾𝑇 − 𝑆2]
𝑎 𝑡 𝑦 𝑥 −1+ξ =0 [𝐾𝐾𝑇 − 𝑆3]
μ ≥0 [𝐾𝐾𝑇 − 𝑆4]
ξ ≥0 [𝐾𝐾𝑇 − 𝑆5]
μ ξ =0 [𝐾𝐾𝑇 − 𝑆6]
23
1
𝐿 𝒘, 𝑏 = ∥ 𝑤 ∥ +𝐶 ∑ ξ − ∑ 𝑎 {𝑡 𝑤 ϕ 𝑥 +𝑏 −1+ξ }− ∑ μ ξ
2
𝜕𝐿
=𝑤− ∑ 𝑎 𝑡 ϕ 𝑥 =0→𝑤= ∑ 𝑎 𝑡 ϕ 𝑥
𝜕𝒘
𝜕𝐿
= 𝑎 𝑡 =0→ 𝑎 𝑡 =0
𝜕𝑏
𝜕𝐿
=𝐶−𝑎 −μ =0→𝑎 =𝐶−μ
𝜕ξ
24
12
2/18/2021
sehingga menjadi:
1
𝐿 𝒂 = 𝑎 𝑎 𝑡 𝑡 ϕ 𝑥 ϕ 𝑥 − 𝑎 𝑎 𝑡 𝑡 ϕ 𝑥 ϕ 𝑥 −𝑏 𝑎 𝑡 + 𝑎
2
1
= 𝑎 − 𝑎 𝑎 𝑡 𝑡 ϕ 𝑥 ϕ 𝑥
2
Fungsi Kernel
1
= ∑ 𝑎 − ∑ ∑ 𝑎 𝑎 𝑡 𝑡 𝑘 𝑥 ,𝑥
2
25
1
𝑚𝑎𝑥 𝐿 𝒂 = 𝑎 − 𝑎 𝑎 𝑡 𝑡 𝑘 𝒙 ,𝒙
𝒂 2
𝑠. 𝑡. 0 ≤ 𝑎 ≤ 𝐶, 𝑛 = 1, . . , 𝑁 (Slide 27 [KKT-S1, KKT-s4], Slide 28)
∑ 𝑎 𝑡 =0 (Slide 28)
26
13
2/18/2021
𝑦 𝒙 =𝒘 ϕ 𝒙 +𝑏 = 𝑎 𝑡 ϕ 𝒙 ϕ 𝒙 +𝑏 = 𝑎 𝑡 𝑘 𝒙, 𝒙 +𝑏
• Hanya data dengan an > 0 (support vectors) yang berperan, sehingga fungsi
pembatas tersebut dapat ditulis menjadi:
𝑦 𝒙 = 𝑎 𝑡 𝑘 𝒙, 𝒙 +𝑏
∈
27
28
14
2/18/2021
• Nilai bias dapat ditentukan berdasarkan model dengan hanya mengandung support
vectors, yaitu data training dengan nilai an > 0. Berdasarkan [KKT-S3] bahwa
an{tny(xn) – 1 + ξn} = 0, maka
𝑡 𝑦 𝑥 = 1−ξ
• Dengan hanya menggunakan support vector yang terletak pada margin (ξn = 0),
maka
𝑡 𝑦 𝑥 =1
1
𝑡 𝑎 𝑡 𝑘 𝑥 ,𝑥 +𝑏 =1→𝑏 = 𝑡 − 𝑎 𝑡 𝑘 𝑥 ,𝑥
𝑁
dimana M adalah himpunan indeks dari support vectors dengan 0 < an < C
29
Metode
30
15
2/18/2021
Fungsi Prediksi
𝑓 𝒙 = 𝑑 𝑦 𝒙 =𝑑 𝑎 𝑡 𝑘 𝐱, 𝒙 +𝑏
dimana
31
Ilustrasi Proses
• Diberikan tiga data pada tabel berikut, dimana dua data pertama adalah data
training dan data ketiga adalah data testing. Dengan menggunakan fungsi
kernel linear k(x,z) = xTz dan C = 0.5, tentukan akurasi dari model SVC.
n 1 2 3
xn (1,0)T (5,0)T (4.5, 2)T
tn -1 1 1
Jawab:
32
16
2/18/2021
Ilustrasi Proses
n 1 2 3
xn (1,0)T (5,0)T (4.5, 2)T
tn -1 1 1
33
34
17
2/18/2021
Fungsi Kernel
Definisi
36
18
2/18/2021
Fungsi Kernel
Contoh
Bukti:
misal x=(x1,x2), z=(z1,z2) maka
(xTz)2 = (x1z1 + x2z2)2
= x12z12 + 2x1z1x2z2 + x22z22
= (x12, √2 x1x2, x22)T (z12, √2 z1z2, z22)
= (x)T(z)
sehingga, k(x,z) = (xTz)2 adalah suatu fungsi kernel dengan fungsi pemetaan
(x) = (x12, √2 x1x2, x22), yaitu suatu fungsi pemetaan dari R2 ke R3
37
Fungsi Kernel
Keuntungan
Contoh:
– Misal x = (1,2)T, z = (3,5)T adalah vektor pada ruang asal R2
– (x) = (x12, √2 x1x2, x22) adalah fungsi pemetaan dari ruang asal R2 ke
ruang berdimensi lebih tinggi R3
– Perkalian dalam x dan z pada ruang berdimensi lebih tinggi R3 adalah
(x)T(z) = 169
– Perkalian dalam diatas dapat ditentukan secara langsung dari ruang
asal R2 dengan menggunakan fungsi kernel, yaitu k(x,z) = (xTz)2 = 169
38
19
2/18/2021
Fungsi Kernel
Keuntungan
Contoh:
Jarak dua vektor pada ruang berdimensi lebih tinggi dapat dicari
secara langsung dari ruang asal dengan menggunakan fungsi
kernel, yaitu:
||(x)-(z)||2 = (x)T(x) + (z)T(z) - 2(x)T(z)
= k(x,x) + k(z,z) - 2k(x,z)
39
Fungsi Kernel
Keuntungan
20
2/18/2021
Fungsi Kernel
Contoh Populer
• Linear :
k(xi, xj) = xiT xj
• Polynomial :
k(xi, xj) = ( xiT xj + r)d, dimana > 0
• Radial basis function (RBF) :
k ( x i , x j )= exp {− γ ∥ x i− x j∥ }
2
• Sigmoid :
T
k ( x i , x j ) = tanh (ρ x i x j + r ) ,
1
dimana tanh (a ) = 2 σ(a)− 1, dan σ(a) =
1+ exp (a)
41
21
2/18/2021
SVC SVR
43
44
22
2/18/2021
𝑠. 𝑡. 𝑡 ≤ y 𝒙 + ε + ξ
𝑡 ≥y 𝒙 −ε−ξ
ξ ≥ 0, ξ ≥ 0
45
SVC SVR
1 1
𝑚𝑖𝑛 ∥ 𝒘 ∥ +𝐶 ∑ ξ 𝑚𝑖𝑛 𝐶 ∑ (ξ +ξ ) + ∥𝒘∥
𝒘, 2 𝒘, 2
𝑠. 𝑡. 𝑡 y 𝒙 ≥ 1 − ξ 𝑠. 𝑡. 𝑡 ≤ y 𝒙 + ε + ξ
ξ ≥0 𝑡 ≥y 𝒙 −ε−ξ
ξ ≥ 0, ξ ≥ 0
46
23
2/18/2021
1 1
𝑚𝑖𝑛 𝐶 ∑ (𝑡 − 𝑦(𝒙 )) + ∥ 𝒘 ∥ 𝑚𝑖𝑛 𝐶 ∑ (ξ +ξ ) + ∥𝒘∥
𝒘, 2 𝒘, 2
𝑠. 𝑡. 𝑡 ≤ y 𝒙 + ε + ξ
𝑡 ≥y 𝒙 −ε−ξ
ξ ≥ 0, ξ ≥ 0
47
48
24
2/18/2021
a n (ϵ+ ξ n+ y n− t n ) = 0 [ KKT − 1]
ā n (ϵ+ ξ̄ n − y n+ t n ) = 0 [ KKT − 2]
(C − a n ) ξ n = 0 [ KKT − 3]
(C − ā n ) ξ̄ n = 0 [ KKT − 4]
49
50
25
2/18/2021
sehingga menjadi:
51
(Slide 20)
26
2/18/2021
• Misal, solusi dari pemrograman kuadrat bentuk dual tersebut adalah a* dan
a*, maka:
• Hanya data dengan an* ≠ 0 dan an*≠ 0 (support vectors) yang berperan pada
model SVR, sehingga dapat ditulis menjadi:
𝑦 𝑥 = ∑ 𝑎 ∗ − 𝑎 ∗ 𝑘 𝑥, 𝑥 +𝑏
∈
53
54
27
2/18/2021
(1) (C − an )ξ n = 0 ( KKT − 3)
(2) a n (ε+ ξ n + y n − t n ) = 0 ( KKT − 1)
(3) y ( x) = w T ϕ( x)+ b
𝑏 =𝑦 𝑥 −𝑤 ϕ 𝑥
=𝑡 −ε−𝑤 ϕ 𝑥
=𝑡 −ε− 𝑎∗ − 𝑎∗ 𝑘 𝑥 , 𝑥
∈
55
Metode
56
28
2/18/2021
Fungsi Prediksi
57
58
29
2/18/2021
Referensi
30
SCMA801204 - Pembelajaran Mesin Lanjut
Decision Tree
Decision Tree
Deskripsi
• Simpul merepresentasikan
pengujian suatu fitur tertentu
Decision Tree
Algoritma
• CART atau Classification And Regression Tree adalah algoritma yang mirip
dengan C4.5, tetapi juga mendukung target kontinu atau masalah regresi
dan berupa suatu binary tree. Untuk setiap simpul, algoritma mencari fitur
dan nilai ambang (threshold) yang akan menghasilkan information gain
terbesar
4
CART
Formulasi Masalah
CART
Algoritma
6
CART
Algoritma
𝜃 ∗ = min 𝐺 𝑄, 𝜃
CART
Algoritma
8
CART
Algoritma
dimana 𝑡̅ = ∑ 𝑡
CART
Ilustrasi
11
CART
Ilustrasi
Misal untuk fitur O3, nilai ambang batas yang dipilih adalah 22,251 atau = {O3, 22,251}
Mortality
Obs O3 PM10 PM2.5 NO2 T2M
Rate
O3 ≤ 22,251
1 22,251 20,447 8,891 28,858 274,723 1,208
12
CART
Ilustrasi
13
CART
Ilustrasi
𝐺 𝑄, 𝜃 = 𝐻 𝑄 (𝜃) + 𝐻 𝑄 (𝜃)
𝒎 𝒎
= 0 + 0,0063
= 0,0054
14
CART
Ilustrasi
1,498 1,387
1,208 1,208 1,208
1,387 1,342
1,252 1,498 1,342 1,498
1,342 1,431
1,319 1,387
1,431 1,252 1,431
1,319 1,319
1,252
T2M≤ 278,626
CART
Ilustrasi
16
CART
Ilustrasi
PM10 ≤ 15,687
• Selanjutnya, lakukan langkah
Ya Tidak
yang sama untuk mencari
pemisahan biner 𝜃 pada T2M ≤ 276,907
1,208
1,252
sampel yang terdapat di
Ya Tidak
simpul turunan kiri dan
simpul turunan kanan.
1,498 T2M ≤ 278,626
• Lakukan langkah tersebut
Tidak
secara rekursif sampai Ya
CART
Tips Penggunaan Praktis
18
Referensi
Ensemble Learning
Pendahuluan
2
Random Forest
Pendahuluan
• Akan tetap, decision tree jarang memberikan hasil yang akurat. Salah
satu penyebabnya adalah bahwa jika decision tree tumbuh terlalu
dalam maka akan cendrung menjadi overfitting
• Metode umum:
mereduksi variansi dengan cara
membangun beberapa decision
tree menggunakan beberapa
bagian yang berbeda dari data
training yang sama (bootstrap)
Random Forest
• Pada proses pemilihan fitur sebagai simpul dari model dasar, fitur
yang dipilih bukan lagi fitur terbaik dari semua fitur, melainkan fitur
terbaik dari sub himpunan fitur yang dipilih secara acak
Random Forest
Ilustrasi
K. C. Dewi. Analisis Akurasi Model Random Forest untuk Big Data – Studi Kasus Prediksi Klaim Severity pada
Asuransi Mobil. Tesis. Program Magister Matematika, Departemen Matematika FMIPA UI, 2019
8
Random Forest
Ilustrasi
Misal random forest terdiri dari tiga decision tree dengan tiga data sampel (bootstrap)
sebagai berikut:
Random Forest
Ilustrasi
10
Random Forest
Ilustrasi
11
Random Forest
Ilustrasi
12
Random Forest
Ilustrasi
Diberikan data berikut. Berapa nilai prediksi dari model random forest yang
sudah terbentuk?
13
Random Forest
Ilustrasi
14
Random Forest
Ilustrasi
15
Random Forest
Ilustrasi
1
𝑓(𝑥) = 1,387 + 1,387 + 1,387
3
= 1,387
16
Random Forest
Tips Penggunaan Praktis
Referensi
Pendahuluan
𝐹𝐽 𝒙 = ℎ (𝒙)
• Metode umum:
membangun model hj(x) yang
meminimumkan suatu fungsi loss
L(tn, 𝑡 ) dimana 𝑡 = 𝐹 (𝒙 )
4
Gradient Boosting Machines
Masalah Regresi
ℎ 𝒙 = min 𝐿 𝑡 ,𝐹 𝒙 + ℎ(𝒙 )
Catatan:
Berdasarkan first-order Taylor approximation, suatu fungsi L(z) dapat
( )
diaproksimasi oleh 𝐿 𝑎 + (𝑧 − 𝑎) . Dalam kasus ini, z adalah
𝐹 𝒙 + ℎ (𝒙 ), dan a adalah 𝐹 𝒙
6
Gradient Boosting Machines
Masalah Regresi
𝜕𝐿(𝑡 , 𝐹)
ℎ 𝒙 = min 𝐿 𝑡 ,𝐹 𝒙 + ℎ(𝒙 )
𝜕𝐹 𝒙
ℎ 𝒙 = min ∑ ℎ(𝒙 )𝑔
( , )
dimana 𝑔 =
𝒙
8
Gradient Boosting Machines
Masalah Regresi
2. FOR j = 1 TO J
,
a. Hitung 𝑔 =− , 𝑛 = 1: 𝑁
𝒙
10
Gradient Boosting Machines
Fungsi Loss
11
12
Gradient Tree Boosting
14
Gradient Tree Boosting
Tips Penggunaan Praktis
15
XGBoost
XGBoost
17
XGBoost
18
XGBoost
• Aspek Model:
∑ 𝐿 𝑡 ,𝐹 𝒙 + ℎ(𝒙 ) + ∑ Ω(ℎ )
19
XGBoost
• Aspek Algoritma
Sparse aware yang mengatasi nilai-nila yang hilang
secara otomatis
Block structure untuk mendukung konstruksi pohon
secara parallel
Continued training untuk lebih lanjut meningkatkan
kinerja model dengan data baru
20
XGBoost
• Aspek Sistem:
Parallelization dalam konstruksi pohon dengan
menggunakan semua CPU
Distributed computing untuk training model sangat besar
menggunakan kluster dari masing-masing
Out-of-core computing untuk data sangat besar yang tidak
muat pada memori
Cache optimization dari struktur data dan algoritma untuk
membuat penggunaan terbaik dari perangkat keras
21
Referensi
Clustering
Pendahuluan
Masalah Unsupervised Learning
• Clustering
– Bertujuan mengelompokkan data
training
• Analisis Komponen
– Bertujuan mendeteksi komponen yang
ada pada data training
1
18/02/2021
Pendahuluan
Clustering
Clustering
K-Means
2
18/02/2021
K-Means
Formulasi Masalah
K-Means
Formulasi Masalah
3
18/02/2021
K-Means
Formulasi Masalah
min 𝐽= 𝑟 𝒙 −𝝁
,𝝁
𝑠. 𝑡. ∑ 𝑟 = 1, ∀𝑛
𝑟 ∈ 0,1
K-Means
Metode
4
18/02/2021
K-Means
Algoritma
1, 𝑗𝑖𝑘𝑎 𝑘 = min 𝒙 − 𝝁
𝑟 =
0, 𝑙𝑎𝑖𝑛𝑛𝑦𝑎
K-Means
Contoh
10
5
18/02/2021
K-Means
Evaluation
• Salah satu satuan ukuran untuk evaluasi hasil clustering adalah silhouette
coefficient (Rousseeuw, 1987)
– Silhouette coefficient didefinisikan untuk masing-masing data, yaitu
𝑏−𝑎
𝑠=
max(𝑎, 𝑏)
dimana a adalah jarak antara suatu data dan data lain pada kelompok
yang sama, dan b adalah jarak antara data tersebut dan semua data
anggota kelompok terdekat
– Silhouette coefficient untuk semua data training adalah rata-rata dari
silhouette coefficient untuk masing-masing data
– Semakin tinggi nilai silhouette coefficient maka akan semakin baik
kelompok yang dihasilkan
11
K-Means
Tips Penggunaan
12
6
18/02/2021
Clustering
Fuzzy C-Means
Pendahuluan
14
7
18/02/2021
Pendahuluan
15
Fuzzy C-Means
Formulasi Masalah
𝐽= 𝑟 𝒙 −𝝁
16
8
18/02/2021
Fuzzy C-Means
Formulasi Masalah
min 𝐽 = 𝑟 𝒙 −𝝁
,𝝁
𝑠. 𝑡. ∑ 𝑟 = 1, ∀𝑛
𝑟 ∈ 0,1 , ∀𝑛, k
17
Fuzzy C-Means
Metode
18
9
18/02/2021
Fuzzy C-Means
Metode
2. Selesaikan = 0 dan =0
𝝁
19
Fuzzy C-Means
Algoritma
10
18/02/2021
Fuzzy C-Means
Evaluation
• Salah satu satuan ukuran untuk evaluasi hasil clustering adalah silhouette
coefficient (Rousseeuw, 1987)
– Silhouette coefficient didefinisikan untuk masing-masing data, yaitu
𝑏−𝑎
𝑠=
max(𝑎, 𝑏)
dimana a adalah jarak antara suatu data dan data lain pada kelompok
yang sama, dan b adalah jarak antara data tersebut dan semua data
anggota kelompok terdekat
– Silhouette coefficient untuk semua data training adalah rata-rata dari
silhouette coefficient untuk masing-masing data
– Semakin tinggi nilai silhouette coefficient maka akan semakin baik
kelompok yang dihasilkan
21
Fuzzy C-Means
Pemilihan Model
22
11
18/02/2021
Referensi
12
18/02/2021
Analisis Komponen
Pendahuluan
Masalah Unsupervised Learning
• Clustering
– Bertujuan mengelompokkan data
training
• Analisis Komponen
– Bertujuan mendeteksi komponen yang
ada pada data training
1
18/02/2021
Pendahuluan
Analisis Komponen
Analisis Komponen
Singular Value Decomposition
2
18/02/2021
3
18/02/2021
• Penguraian matriks A menjadi Uk, Σk, dan VkT dikenal juga sebagai
truncated SVD
𝐴 = 𝜎𝒖𝒗
maka
𝐴−𝐴 =𝜎
4
18/02/2021
1 1
𝐴= 0 1
1 0
Jawab:
– SVD dari A adalah
6⁄3 0
30 2⁄2 2⁄2
𝐴 = 𝑈Σ𝑉 = 6⁄6− 2⁄2
01 2⁄2− 2⁄2
6⁄6 2⁄2
6⁄3 1 1
𝐴 =𝑈 Σ 𝑉 = 6⁄6 3 2⁄2 2⁄2 = 1⁄21⁄2
6⁄6 1⁄21⁄2
10
5
18/02/2021
Analisis Komponen
Latent Semantic Analysis
12
6
18/02/2021
• Selanjutnya, LSI diperluas untuk semua jenis data tidak hanya data
tekstual dan dikenal sebagai latent semantic analysis (LSA) [Dumais,
2005]
13
14
7
18/02/2021
Analisis Komponen
Sistem Rekomendasi
Pendahuluan
Sistem Rekomendasi
16
8
18/02/2021
Pendahuluan
Strategi
Pendahuluan
Collaborative Filtering
18
9
18/02/2021
Pendahuluan
Collaborative Filtering
19
Pendahuluan
Collaborative Filtering
10
18/02/2021
Matrix Factorization
Formulasi Masalah
• Metode:
Memproyeksikan pengguna dan
barang pada dimensi yang sama,
sehingga rating pengguna j ke
barang i yang belum diketahui
dapat ditentukan
21
Matrix Factorization
Metode
• Vektor baris dari matrik W adalah representasi barang dengan dimensi latent
semantics
• Vektor kolom dari matrik H adalah representasi pengguna dengan dimensi latent
semantics
• Dengan kata lain, pengguna dan barang direpresentasikan dengan dimensi yang
sama
• Sehingga, rating pengguna j ke barang i dapat diprediksi berdasarkan jarak
antara pengguna j dan barang i
22
11
18/02/2021
Matrix Factorization
Ilustrasi
Matrix Factorization
Metode Lanjut
24
12
18/02/2021
Matrix Factorization
Metode Lanjut
25
Matrix Factorization
Metode Lanjut
Gradient Descent
26
13
18/02/2021
Matrix Factorization
Pustaka Python
Surprise (http://surpriselib.com/)
Crab (https://muricoca.github.io/crab/)
27
Referensi
28
14
18/02/2021
Studi Kasus
Ilmu Data untuk Industri Asuransi
Pendahuluan
Industri Asuransi
• Prediksi Klaim
Porto Seguro: pemegang polis asuransi kendaraan mengajukan klaim atau tidak
(https://www.kaggle.com/c/porto-seguro-safe-driver-prediction)
1
18/02/2021
Pendahuluan
Publikasi
Pendahuluan
Publikasi
1. Rusdah, D.A., Murfi, H. (2020) XGBoost in Handling Missing Values for Life
Insurance Risk Prediction. SN Applied Science, vol. 2, no. 1336.
3. Dewi, K. C., Murfi, H., & Abdullah, S. (2019). Analysis Accuracy of Random
Forest Model for Big Data - A Case Study of Claim Severity Prediction in Car
Insurance. in Proceeding of 2019 5th International Conference on Science in
Information Technology: Embracing Industry 4.0: Towards Innovation in Cyber
Physical System, ICSITech 2019, 60-65
4. Fauzan, M. A., Murfi, H. (2018) The Accuracy of XGBoost for Insurance Claim
Prediction. International Journal of Advances in Soft Computing and its
Applications, vol. 10, no. 2, pp.159-171
2
18/02/2021
Model Linear
Prediksi Klaim
3
18/02/2021
Prediksi Klaim
Alur Proses
Data Science
4
18/02/2021
Dataset Keterangan
10
5
18/02/2021
11
12
6
18/02/2021
• Untuk mengetahui jumlah data, jumlah fitur, dan jenis fitur seperti
numerik atau non numerik (kategorik)
13
• Kita perlu mengecek apakah pada data terdapat missing values. Jika
pada suatu data terdapat missing values maka kita harus melakukan
proses pra pengolahan sehingga data tersebut dapat di fitting oleh
model. Jika suatu fitur memiliki missing values terlalu banyak, misal
lebih dari 60%, maka fitur tersebut umumnya dibuang
14
7
18/02/2021
16
8
18/02/2021
17
• Karena terdapat missing values pada beberapa fitur, maka harus dilakukan
proses imputasi pada fitur tersebut.
• Terdapat beberapa teknik imputasi yang telah dikembangkan, dan pada
simulasi ini akan menggunakan metode sebagai berikut:
Jika jumlah missing values pada suatu fitur lebih dari 60%, maka fitur
tersebut dibuang
Missing values pada fitur dengan tipe data riil, maka missing values
tersebut diganti dengan rata-rata (mean) dari non missing values
Missing values pada fitur dengan tipe data bulat, maka missing values
tersebut diganti dengan modus (most frequent) dari non missing
values
18
9
18/02/2021
19
20
10
18/02/2021
21
22
11
18/02/2021
23
– Contoh: suatu kelas bisa jadi tidak ada pada data validasi
12
18/02/2021
26
13
18/02/2021
• Kenapa 10 ?
28
14
18/02/2021
29
30
15
18/02/2021
31
Predicted class
Yes No
Actual class Yes True positive False negative
No False positive True negative
16
18/02/2021
• Karena jumlah data tidak seimbang antara dua kelas, maka kita
perlu melihat secara lebih rinci akurasi dari masing-masing
kelas, misal menggunakan classification_report()
• Kita dapat melihat bahwa model hanya dapat memprediksi
dengan baik untuk data dengan kelas “tidak mengajukan klaim”
(0). Sehingga, kita perlu melakukan proses penyeimbangan data
kelas
33
34
17
18/02/2021
• Dari hasil ini terlihat bahwa kelas claim sudah dapat diprediksi dan
memberikan nilai recall yang setara dengan kelas no
35
Model Lanjut
36
18
18/02/2021
Model Lanjut
(Repeated) Holdout
37
Model Lanjut
GBDT
38
19
18/02/2021
Model Lanjut
GBDT
39
Model Lanjut
XGBoost
40
20
18/02/2021
Model Lanjut
XGBoost
41
Model Lanjut
Pra Pengolahan
42
21
18/02/2021
Model Lanjut
Hyperparameter Tuning
43
22
20/04/2021
Representation Learning
Pendahuluan
1
20/04/2021
Pemilihan Fitur
Pemilihan Fitur
• Fitur atau ciri dari data tersebut akan menjadi pembeda antar
data satu dengan lainnya
• Selain itu, jika jumlah fitur semakin sedikit maka kinerja akan
semakin baik pada data berdimensi sangat tinggi
2
20/04/2021
Pemilihan Fitur
Variansi
Pemilihan Fitur
Scoring
3
20/04/2021
Pemilihan Fitur
Scoring
Pemilihan Fitur
Scoring
Gram-Schmidt Orthogonalization
4
20/04/2021
Reduksi Dimensi
Reduksi Dimensi
Formulasi Masalah
10
5
20/04/2021
11
12
6
20/04/2021
import numpy as np
from sklearn.decomposition import TruncatedSVD
svd = TruncatedSVD(n_components=1).fit(X)
U = svd.components_
SV = svd.transform(X)
Deep Autoencoder
Arsitektur
14
7
20/04/2021
Deep Autoencoder
Arsitektur
Deep Autoencoder
Tips Penggunaan
16
8
20/04/2021
Deep Autoencoder
Implementasi: Keras
17
Referensi
Ian Goodfellow, Yoshua Bengio, Aaron Courville, (2016). Deep Learning. MIT
Press
18