1 of 25

Analitik Data Tingkat Lanjut�(Regresi)

Imam Cholissodin | imam.cholissodin@gmail.com

10 Oktober 2016

2 of 25

Pokok Bahasan

  1. Konsep Regresi
  2. Analisis Teknikal dan Fundamental
  3. Regresi Linear & Regresi Logistic (Optional)
  4. Regresi Non-Linear
    • Extreme Learning Machine (ELM) untuk Big Data
    • Support Vector Machine (SVM) untuk Regresi (Support Vector Regression (SVR))
  5. Studi Kasus
  6. Tugas

3 of 25

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

4 of 25

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)

5 of 25

Analisis Teknikal dan Fundamental

  • Ada beberapa jenis pendekatan yang dilakukan untuk meramalkan, misal pada nilai tukar uang diantaranya (Madura, 2011):
    • 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.
    • Analisis Fundamental

6 of 25

Analisis Teknikal dan Fundamental

  • Ada beberapa jenis pendekatan yang dilakukan untuk meramalkan, misal pada nilai tukar uang diantaranya (Madura, 2011):
    • 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?

7 of 25

Regresi Linear & Regresi Logistik

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

No

(X)

(Y)

1

10

15

2

6

20

3

3

12

4

4

10

8 of 25

Regresi Linear & Regresi Logistik

  • Regresi Linear:

9 of 25

Extreme Learning Machine (ELM) untuk Big Data

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

Arsitektur ELM

Input Layer

Hidden Layer

Output Layer

fitur ke-1

fitur ke-2

fitur ke-k

Hasil

Prediksi

i

j

k

10 of 25

Extreme Learning Machine (ELM) untuk Big Data

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

11 of 25

Extreme Learning Machine (ELM) untuk Big 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

Input

Layer

Hidden

Layer

Output

Layer

fitur ke-1

fitur ke-2

fitur ke-k

i

j

k

Hasil

Prediksi

  • Langkah testing ELM:
    1. Diketahu Wjk, dan .
    2. Hitung H = 1/(1+exp(-Xtest.WT))
    3. Hitung
    4. Hitung nilai evaluasi, misal dengan MAPE.

12 of 25

Extreme Learning Machine (ELM) untuk Big Data

  • 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

Input

Layer

Hidden

Layer

Output

Layer

fitur ke-1

fitur ke-2

fitur ke-k

i

j

k

Hasil

Prediksi

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

13 of 25

ELM vs ANN

  • Arsitektur Artificial Neural Network Backpropagation (ANN):

14 of 25

Studi Kasus Sederhana dengan ELM

  • Misalkan diketahui, data training (terdapat 3 fitur dan single 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 input layer = 3

i : Banyaknya output layer = 1

Misal diset,

j : Banyaknya 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 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.1

W =

15 of 25

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

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 nilainya di-generate antara [-0.5,0.5].

  • Hitung matrik inisialisasi output hidden layer (Hinit = X.WT)

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

16 of 25

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

i

j

k

Hasil

Prediksi

  1. Hitung matrik inisialisasi output hidden layer (Hinit = X.WT)

  • 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

17 of 25

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

i

j

k

Hasil

Prediksi

  1. Htung matrik H = 1/(1+exp(-Hinit))

  • 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 =

18 of 25

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

i

j

k

Hasil

Prediksi

  1. Hitung matrik H+=(HT.H)-1.HT

  • Hitung beta topi atau hasil nilai beta yang diestimasi

  • 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 =

13.06

-7.74

-0.98

1.48

0.91

1.90

1.90

2.75

2.17

2.75

1.90

2.17

19 of 25

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

i

j

k

Hasil

Prediksi

  1. Menghitung Y prediksi

  • Hitung MAPE

Pada proses training, didapatkan hasil testing menggunakan data training sendiri masih memiliki error MAPE sebesar 30.11

Penyelesaian:

Y =

1.48

0.91

1.90

1.90

2.75

2.17

2.75

1.90

2.17

20 of 25

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

i

j

k

Hasil

Prediksi

  1. Menghitung Y prediksi

  • Hitung MAPE

Pada proses training, didapatkan hasil testing menggunakan data training sendiri masih memiliki error MAPE sebesar 30.11

Penyelesaian:

Y =

1.48

0.91

1.90

1.90

2.75

2.17

2.75

1.90

2.17

21 of 25

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 =

13.06

-7.74

-0.98

22 of 25

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

  1. Htung matrik output hidden H = 1/(1+exp(-Hinit))

  • Menghitung Y prediksi

, diketahui , maka

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

13.06

-7.74

-0.98

0.91

1.90

2.75

23 of 25

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

3. Untuk tiap training point lakukan:

4. Kembali ke langkah ketiga, sampai pada kondisi iterasi maksimum atau

dan

5. Dengan mengunakan fungsi peramalan

berikut:

24 of 25

Tugas Kelompok

  1. Diketahui data berikut:

Tentukan hasil Φ(x1) dan Φ(x2) dengan menggunakan kernel Polynomial dengan c = 1 dan d = 2.

  1. Pada Studi Kasus Sederhana proses training dengan ELM, jika diketahui hasil random W adalah sebagai berikut:

Tentukan nilai MAPE dari data testing berikut

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

0.7

1.8

3

25 of 25

Terimakasih

Imam Cholissodin | imam.cholissodin@gmail.com

10 Oktober 2016