10 Oktober 2016
Analitik Data Tingkat Lanjut
(Regresi)
Pokok Bahasan
1. Konsep Regresi
2. Analisis Teknikal dan Fundamental
3. Regresi Linear & Regresi Logistic (Optional)
4. Regresi Non-Linear
o Extreme Learning Machine (ELM) untuk Big Data o Support Vector Machine (SVM) untuk Regresi
(Support Vector Regression (SVR))
Konsep Regresi (Just Review)
• Regresi adalah membangun model untuk memprediksi nilai (satu target atau multi-target) dari data masukan (dengan dimensi tertentu) yang telah ada.
• Goal : Membangun model regresi untuk mencari
hubungan antara satu atau lebih variabel independen atau prediktor (X atau X1, X2, .., Xn) dengan variabel dependen atau respon single atau multi-target (Y atau
Y1, Y2, .., Yn).
13200 13250 13300 13350 13400 13450 13500
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Visualisasi Hasil Peramalan Iterasi SVR 100000
Konsep Regresi (Just Review)
• Prediksi berbeda dengan klasifikasi (dalam machine
learning, klasifikasi dianggap sebagai salah satu jenis
dari prediksi).
• Klasifikasi digunakan untuk memprediksi label kelas/kategori.
• Klasifikasi dapat dibagi lagi menjadi dua macam, yaitu:
– supervised classification (Klasifikasi) dan
– unsupervised classification (Clustering sudah
dibahas pada pertemuan sebelumya)
Ada beberapa jenis pendekatan yang dilakukan untuk meramalkan, misal pada nilai tukar uang diantaranya (Madura, 2011):o Analisis Teknikal
Melibatkan data historis nilai tukar untuk meramalkan nilai di masa yang akan datang.
Prinsip yang biasanya dianut oleh para teknikalis, bahwa nilai kurs sudah menjadi nilai yang representatif dari seluruh informasi yang relevan
mempengaruhi kurs tersebut, kurs akan bertahan pada trend tertentu, dan nilai kurs merupakan nilai yang repetitif berulang dari pola sebelumnya (Neely et al., 2011).
Namun terkadang peramalan secara teknis tidak terlalu membantu untuk
jangka waktu yang cukup lama. Banyak peneliti yang berselisih pendapat mengenai peramalan teknis, meskipun secara umum peramalan teknis memberikan konsistensi yang baik.
o Analisis Fundamental
Ada beberapa jenis pendekatan yang dilakukan untuk meramalkan, misal pada nilai tukar uang diantaranya (Madura, 2011):o Analisis Fundamental
Didasari hubungan fundamental antara variabel – variabel ekonomi
terhadap nilai tukar tersebut, seperti faktor – faktor yang mempengaruhi nilai tukar. Misalnya saja:
Tingkat inflasi Suku bunga
Neraca Perdagangan (log pembayaran dari hasil jual beli barang dan jasa antara negara)
Hutang Publik (Public Debt),
Rasio Harga Ekspor dan Harga Impor, dan Kestabilan Politik dan Ekonomi.
Dari uraian sebelumnya, apakah bisa dilakukanpenggabungan Analisis Teknikal dan Fundamental?
Perhatikan dataset berikut:
Bagaimana Membangun model regresi yaitu denganmencari hubungan antara satu atau lebih variabel independen atau explanatory variable atau prediktor (X) dengan variabel dependen atau respon (Y)?
Regresi Linear & Regresi Logistik
No (X) (Y)
1 10 15
2 6 20
3 3 12
Regresi Linear:Regresi Linear & Regresi Logistik
2
2 1
x x
n
x
-xy n
b y
n
x b
-y x
b y
b0 1
1
x
b
b
Metode ELM ini pertama kali diperkenalkan oleh Huang (2004) (Huang, Zhu, & Siew, 2004).
ELM merupakan jaringan syaraf tiruan (JST) feedforwarddengan single hidden layer atau disebut dengan Single Hidden Layer Feedforward Neural Networks (SLFNs) (Sun, Choi, Au, & Yu, 2008).
Extreme Learning Machine (ELM)
untuk Big Data
Arsitektur ELM
Input Layer Hidden Layer Output Layer fitur ke-1
fitur ke-2
fitur ke-k
Hasil Prediksi
i j
Metode pembelajaran ELM dibuat untuk mengatasibeberapa kelemahan dari jaringan syaraf tiruan
feedforward, terutama dalam hal learning speed.
Menurut Huang (2004), JST feedforward masihmemiliki kelemahan dalam learning speed karena semua parameter pada jaringan ditentukan secara iterative
dengan menggunakan metode pembelajaran satu
persatu untuk setiap data.
Langkah-langkah training algoritma Extreme Learning Machine (ELM):1. Buat random Wjk sebagai bobot masukan.
2. Hitung matrik keluaran hidden layer H = 1/(1+exp(-X.WT))
3. Hitung output weight dimana H+=(HT.H)-1.HT
4. Hitung
Extreme Learning Machine (ELM)
untuk Big Data
Input Layer
Hidden Layer
Output Layer fitur ke-1
fitur ke-2
fitur ke-k
i j
k
Hasil Prediksi
jk
W j
i
y
ˆ
.
ˆ H
Y
Y
H .
ˆ
Langkah testing ELM:1. Diketahu Wjk, dan .
2. Hitung H = 1/(1+exp(-Xtest.WT))
3. Hitung
4. Hitung nilai evaluasi, misal
dengan MAPE.
ˆ
ˆ
.
ˆ H
Langkah-langkah training ELM dengan bias:1. Buat random Wjk sebagai bobot masukan dan nilai bias b jika
ada. Ukuran matrik bias b adalah [1 x j]
2. Hitung matrik keluaran hidden layer H = 1/(1+exp(-(X.WT +
ones(Ntrain,1)*b))). Dan Ntrain adalah banyaknya data training.
3. Hitung output weight dimana H+=(HT.H)-1.HT
4. Hitung
Extreme Learning Machine (ELM)
untuk Big Data
Input Layer
Hidden Layer
Output Layer fitur ke-1
fitur ke-2
fitur ke-k
i j
k
Hasil Prediksi
jk
W j
i
y
ˆ
.
ˆ H
Y
Y
H .
ˆ
Langkah testing ELM:1. Diketahu Wjk, nilai bias b jika
ada, dan .
2. Hitung H = 1/(1+exp(-(Xtest.WT
+ ones(Ntest,1)*b)))
3. Hitung
4. Hitung nilai evaluasi, misal
dengan MAPE.
ˆ
ˆ
.
ˆ H
Y
Arsitektur Artificial Neural Network Backpropagation (ANN):Studi Kasus Sederhana dengan ELM
Misalkan diketahui, data training (terdapat 3 fitur dansingle target) sebagai berikut:
Data Fitur Target 1 2 3
1 1 1 1 1 2 1 0 1 1 3 1 1 0 1 4 1 1 0 2 5 0 1 0 2 6 0 0 0 2 7 0 1 0 3 8 1 1 0 3 9 0 0 0 3
Diketahui,
N : Banyaknya data training = 9
k: Banyaknya dimensi input layer = 3
i : Banyaknya dimensi output layer = 1
Misal diset,
j : Banyaknya dimensi hidden layer= 3
Input Layer
Hidden Layer
Output Layer fitur ke-1
fitur ke-2
fitur ke-k
i j
k
Hasil Prediksi
1. Men-generate bobot input (Wj x k) antara input layer dan hidden layer. Ukuran W adalah [j x k], yang nilainyadi-generateantara [-0.5,0.5].
Penyelesaian:
-0.4 0.2 0.1 -0.2 0 0.4 -0.3 0.3 -0.1
W =
jk
W j
i
Studi Kasus Sederhana dengan ELM
Misalkan diketahui, data training (terdapat 3 fitur dansingle target) sebagai berikut:
1 1 1 1 0 1 1 1 0 1 1 0 X = 0 1 0 0 0 0 0 1 0 1 1 0 0 0 0
Input Layer Hidden Layer Output Layer fitur ke-1 fitur ke-2 fitur ke-k i j k Hasil Prediksi
1. Men-generate bobot input (Wj x k) antara input layer dan hidden layer. Ukuran W adalah [j x k], yang nilainyadi-generateantara [-0.5,0.5].
2. Hitung matrik inisialisasi output hidden layer (Hinit = X.WT)
Penyelesaian: 1 . 0 3 . 0 3 . 0 4 . 0 0 2 . 0 1 . 0 2 . 0 4 . 0 W
Hinit =
-0.1 0.2 -0.1 -0.3 0.2 -0.4 -0.2 -0.2 0 -0.2 -0.2 0 0.2 0 0.3
0 0 0 0.2 0 0.3 -0.2 -0.2 0
Studi Kasus Sederhana dengan ELM
Misalkan diketahui, data training (terdapat 3 fitur dansingle target) sebagai berikut:
1 1 1 1 0 1 1 1 0 1 1 0 X = 0 1 0 0 0 0 0 1 0 1 1 0 0 0 0
Input Layer
Hidden Layer
Output Layer fitur ke-1
fitur ke-2
fitur ke-k
i j
k
Hasil Prediksi
2. Hitung matrik inisialisasi output hidden layer (Hinit = X.WT)
3. Htung matrikH = 1/(1+exp(-Hinit))
Penyelesaian:
Hinit =
-0.1 0.2 -0.1 -0.3 0.2 -0.4 -0.2 -0.2 0 -0.2 -0.2 0 0.2 0 0.3
0 0 0 0.2 0 0.3 -0.2 -0.2 0
0 0 0
H =
Studi Kasus Sederhana dengan ELM
Misalkan diketahui, data training (terdapat 3 fitur dansingle target) sebagai berikut:
1 1 1 1 1 0 1 1 1 1 0 1 1 1 0 2 X = 0 1 0 2 0 0 0 2 0 1 0 3 1 1 0 3 0 0 0 3
Input Layer
Hidden Layer
Output Layer fitur ke-1
fitur ke-2
fitur ke-k
i j
k
Hasil Prediksi
3. Htung matrikH = 1/(1+exp(-Hinit))
4. Hitung matrik H+=(HT.H)-1.HT
Penyelesaian:
H =
0.48 0.55 0.48 0.43 0.55 0.40 0.45 0.45 0.50 0.45 0.45 0.50 0.55 0.50 0.57 0.50 0.50 0.50 0.55 0.50 0.57 0.45 0.45 0.50 0.50 0.50 0.50
-2.18 -1.37 -9.11 -9.11 6.69 7.57 6.69 -9.11 7.57 2.58 3.98 1.68 1.68 -3.13 -1.74 -3.13 1.68 -1.74 -0.21 -2.38 7.33 7.33 -3.13 -5.35 -3.13 7.33 -5.35
H+ =
Studi Kasus Sederhana dengan ELM
Misalkan diketahui, data training (terdapat 3 fitur dansingle target) sebagai berikut:
1 1 1 1 1 0 1 1 1 1 0 1 1 1 0 2 X = 0 1 0 2 0 0 0 2 0 1 0 3 1 1 0 3 0 0 0 3
Input Layer Hidden Layer Output Layer fitur ke-1 fitur ke-2 fitur ke-k i j k Hasil Prediksi
4. Hitung matrik H+=(HT.H)-1.HT
5. Hitung beta topi atau hasil nilai beta yang diestimasi
6. Menghitung Y prediksi
Penyelesaian:
-2.18 -1.37 -9.11 -9.11 6.69 7.57 6.69 -9.11 7.57 2.58 3.98 1.68 1.68 -3.13 -1.74 -3.13 1.68 -1.74 -0.21 -2.38 7.33 7.33 -3.13 -5.35 -3.13 7.33 -5.35
H+ =
Y = ˆ Y H . ˆ
Studi Kasus Sederhana dengan ELM
Misalkan diketahui, data training (terdapat 3 fitur dansingle target) sebagai berikut:
1 1 1 1 1 0 1 1 1 1 0 1 1 1 0 2 X = 0 1 0 2 0 0 0 2 0 1 0 3 1 1 0 3 0 0 0 3
Input Layer Hidden Layer Output Layer fitur ke-1 fitur ke-2 fitur ke-k i j k Hasil Prediksi
6. Menghitung Y prediksi
7. Hitung MAPE
Pada proses training, didapatkan hasil testing menggunakan data training sendiri masih memiliki error MAPE sebesar 30.11
Studi Kasus Sederhana dengan ELM
Misalkan diketahui, data training (terdapat 3 fitur dansingle target) sebagai berikut:
1 1 1 1 1 0 1 1 1 1 0 1 1 1 0 2 X = 0 1 0 2 0 0 0 2 0 1 0 3 1 1 0 3 0 0 0 3
Input Layer Hidden Layer Output Layer fitur ke-1 fitur ke-2 fitur ke-k i j k Hasil Prediksi
6. Menghitung Y prediksi
7. Hitung MAPE
Pada proses training, didapatkan hasil testing menggunakan data training sendiri masih memiliki error MAPE sebesar 30.11
Studi Kasus Sederhana dengan ELM
Misalkan diketahui, data testing sebagai berikut:1 1 1 1 1 0 1 1 1 1 0 1 1 1 0 2 X = 0 1 0 2 0 0 0 2 0 1 0 3 1 1 0 3 0 0 0 3
Y =
1 0 1 Xtest = 1 1 0 0 1 0 Ytest =
Data training:
Data testing:
Diketahui,
N : Banyaknya data training = 9
k: Banyaknya input layer = 3
i : Banyaknya output layer = 1
Misal diset,
j : Banyaknya hidden layer = 3
1. Hitung matrik inisialisasi output hidden layer (Hinit = Xtest.WT)
Penyelesaian:
-0.4 0.2 0.1 -0.2 0 0.4 -0.3 0.3 -0.1
W =
1 1
3 -0.3 0.2 -0.4
-0.2 -0.2 0 0.2 0 0.3
Hinit =
Studi Kasus Sederhana dengan ELM
Misalkan diketahui, data testing sebagai berikut:1 1 1 1 1 0 1 1 1 1 0 1 1 1 0 2 X = 0 1 0 2 0 0 0 2 0 1 0 3 1 1 0 3 0 0 0 3
Y =
1 0 1 Xtest = 1 1 0 0 1 0 Ytest =
Data training:
Data testing:
1 1 3
2. Htung matrik output hiddenH = 1/(1+exp(-Hinit))
3. Menghitung Y prediksi
, diketahui , maka
4. Hitung MAPE
Pada proses testing, didapatkan hasil prediksi dengan error MAPE sebesar 36.0048
Penyelesaian:
0.43 0.55 0.40 0.45 0.45 0.50 0.55 0.50 0.57
H =
ˆ
.
ˆ H
Y ˆ
Algoritma Support Vector Regression
(SVR)
Konsep SVR didasarkan pada
risk minimization, yaitu untuk mengestimasi suatu fungsi dengan cara meminimalkan batas dari generalization error, sehingga SVR mampu mengatasi overfitting.
Fungsi regresi dari metode SVR adalah sebagai berikut (Sethu Vijayakumar & Si Wu, 1999)
ALGORITMA SEKUENSIAL TRAINING SVR :
1. Inisialisasi parameter SVR yang
digunakan
2. Rumus memperoleh Matrik Hessian
)
)
,
(
(
2
i jij
K
x
x
R
3. Untuk tiap training point lakukan:
4. Kembali ke langkah ketiga, sampai pada kondisi iterasi maksimum atau
dan
5. Dengan mengunakan fungsi peramalan
berikut:
l
j j j ij
i
i y R
E 1 * ) (
* *
* , , maxmin i i i
i E C
i i i
i E C
min max , ,
i i
i
* * * i ii
) ) , ( ( ) ( ) ( 2 1 *
x x K x f i l i i i
i Tugas Kelompok
1. Diketahui data berikut:
Tentukan hasil Φ(x1) dan Φ(x2) dengan menggunakan kernel Polynomial dengan c = 1 dan d = 2.
2. Pada Studi Kasus Sederhana proses training dengan ELM, jika diketahui hasil random W adalah sebagai berikut:
Tentukan nilai MAPE dari data testing berikut
2 2 2
1 1
1
b a x
b a x
-0.1 -0.2 0.4 0.4 0.3 0.2 -0.2 -0.1 -0.2
W =
1.5 0.5 1 Xtest = 1 1 0.2
0.6 2 0
Ytest =
10 Oktober 2016