Analitik Data Tingkat Lanjut...

25
10 Oktober 2016 Analitik Data Tingkat Lanjut (Regresi) Imam Cholissodin | [email protected]

Transcript of Analitik Data Tingkat Lanjut...

Page 1: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

10 Oktober 2016

Analitik Data Tingkat Lanjut

(Regresi)Imam Cholissodin | [email protected]

Page 2: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

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))

5. Studi Kasus

6. Tugas

Page 3: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

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

aktual ramalan

Page 4: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

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)

• Prediksi versus Peramalan (Jangka waktu merupakan

kata kunci untuk membedakan antara prediksi dan

peramalan)

Page 5: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

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

Analisis Teknikal dan Fundamental

Page 6: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

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 dilakukan

penggabungan Analisis Teknikal dan Fundamental?

Analisis Teknikal dan Fundamental

Page 7: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

Perhatikan dataset berikut:

Bagaimana Membangun model regresi yaitu dengan

mencari 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

4 4 10

Page 8: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

Regresi Linear:

Regresi Linear & Regresi Logistik

221

x xn

x -xy n b

y n

xb-y xb y b

1

10

xbby 10ˆ

Page 9: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

Metode ELM ini pertama kali diperkenalkan oleh Huang

(2004) (Huang, Zhu, & Siew, 2004).

ELM merupakan jaringan syaraf tiruan (JST) feedforward

dengan 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

ijk

Page 10: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

Metode pembelajaran ELM dibuat untuk mengatasi

beberapa kelemahan dari jaringan syaraf tiruan

feedforward, terutama dalam hal learning speed.

Menurut Huang (2004), JST feedforward masih

memiliki kelemahan dalam learning speed karena semua

parameter pada jaringan ditentukan secara iterative

dengan menggunakan metode pembelajaran satu

persatu untuk setiap data.

Extreme Learning Machine (ELM)

untuk Big Data

Page 11: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

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

ijk

Hasil

Prediksi

jkW j

iy

.ˆ HY

YH .ˆ

Langkah testing ELM:

1. Diketahu Wjk, dan .

2. Hitung H = 1/(1+exp(-Xtest.WT))

3. Hitung

4. Hitung nilai evaluasi, misal

dengan MAPE.

.ˆ HY

Page 12: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

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

ijk

Hasil

Prediksi

jkW j

iy

.ˆ HY

YH .ˆ

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.

.ˆ HY

bias

Page 13: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

Arsitektur Artificial Neural Network Backpropagation

(ANN):

ELM vs ANN

Page 14: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

Studi Kasus Sederhana dengan ELM

Misalkan diketahui, data training (terdapat 3 fitur dan

single target) sebagai berikut:

DataFitur

Target1 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

ijk

Hasil

Prediksi

1. Men-generate bobot input (Wj x k) antara input

layer dan hidden layer. Ukuran W adalah [j x k],

yang nilainya di-generate antara [-0.5,0.5].

Penyelesaian:

-0.4 0.2 0.1

-0.2 0 0.4

-0.3 0.3 -0.1W =

jkW j

iy

Page 15: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

Studi Kasus Sederhana dengan ELM

Misalkan diketahui, data training (terdapat 3 fitur dan

single 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

ijk

Hasil

Prediksi

1. Men-generate bobot input (Wj x k) antara input

layer dan hidden layer. Ukuran W adalah [j x k],

yang nilainya di-generate antara [-0.5,0.5].

2. Hitung matrik inisialisasi output hidden layer

(Hinit = X.WT)

Penyelesaian:

1.03.03.0

4.002.0

1.02.04.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

0 0 0

Page 16: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

Studi Kasus Sederhana dengan ELM

Misalkan diketahui, data training (terdapat 3 fitur dan

single 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

ijk

Hasil

Prediksi

2. Hitung matrik inisialisasi output hidden layer

(Hinit = X.WT)

3. Htung matrik H = 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 =

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

Page 17: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

Studi Kasus Sederhana dengan ELM

Misalkan diketahui, data training (terdapat 3 fitur dan

single 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

ijk

Hasil

Prediksi

3. Htung matrik H = 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+ =

Y =

Page 18: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

Studi Kasus Sederhana dengan ELM

Misalkan diketahui, data training (terdapat 3 fitur dan

single 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

ijk

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 =

YH .13.06

-7.74

-0.98

.ˆ HY

1.48

0.91

1.90

1.90

2.75

2.17

2.75

1.90

2.17

Y

Page 19: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

Studi Kasus Sederhana dengan ELM

Misalkan diketahui, data training (terdapat 3 fitur dan

single 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

ijk

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

Penyelesaian:

Y =

.ˆ HY

1.48

0.91

1.90

1.90

2.75

2.17

2.75

1.90

2.17

Y

N

i i

ii

y

yy

NMAPE

1

|100ˆ

|1

11.30

Page 20: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

Studi Kasus Sederhana dengan ELM

Misalkan diketahui, data training (terdapat 3 fitur dan

single 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

ijk

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

Penyelesaian:

Y =

.ˆ HY

1.48

0.91

1.90

1.90

2.75

2.17

2.75

1.90

2.17

Y

9

1

|100ˆ

|9

1 N

i i

ii

y

yy

NMAPE

11.30

Page 21: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

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.1W =

113 -0.3 0.2 -0.4

-0.2 -0.2 0

0.2 0 0.3Hinit =

13.06

-7.74

-0.98

Page 22: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

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:

113

2. Htung matrik output hidden H = 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.57H =

.ˆ HY 13.06

-7.74

-0.98

Y0.91

1.90

2.75

0048.36|100ˆ

|3

1 3

1

N

i i

ii

y

yy

NMAPE

Page 23: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

Algoritma Support Vector Regression

(SVR)

Konsep SVR didasarkan padarisk minimization, yaitu untukmengestimasi suatu fungsidengan cara meminimalkanbatas dari generalization error,sehingga SVR mampumengatasi overfitting.

Fungsi regresi dari metode SVRadalah sebagai berikut (SethuVijayakumar & Si Wu, 1999)

ALGORITMA SEKUENSIAL TRAINING SVR :

1. Inisialisasi parameter SVR yang

digunakan

2. Rumus memperoleh Matrik Hessian

)),(( 2 jiij xxKR

3. Untuk tiap training point lakukan:

4. Kembali ke langkah ketiga, sampai padakondisi iterasi maksimum atau

dan

5. Dengan mengunakan fungsi peramalan

berikut:

l

j ijjjii RyE1

* )(

*** ,,maxmin iiii CE

iiii CE ,,maxmin

iii

***

iii

)),(()()( 2

1

*

xxKxf i

l

i

ii

imax *max i

Page 24: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

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

ax

b

ax

-0.1 -0.2 0.4

0.4 0.3 0.2

-0.2 -0.1 -0.2W =

1.5 0.5 1

Xtest = 1 1 0.2

0.6 2 0

Ytest =0.71.83

Page 25: Analitik Data Tingkat Lanjut (Regresi)imamcs.lecture.ub.ac.id/files/2012/08/6-Analitik-Data-Tingkat... · Konsep Regresi (Just Review) • Regresi adalah membangun model untuk memprediksi

10 Oktober 2016

TerimakasihImam Cholissodin | [email protected]