You are on page 1of 25

Regresi

Bahan Kuliah IF4058 Topik Khusus


Informatika I
Oleh; Rinaldi Munir (IF-STEI ITB)
1
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
Pendahuluan
Regresi adalah teknik pencocokan kurva untuk data yang
berketelitian rendah.
Contoh data yang berketelitian rendah data hasil pengamatan,
percobaan di laboratorium, atau data statistik. Data seperti itu kita
sebut data hasil pengukuran. sebut data hasil pengukuran.
Untuk data hasil pengukuran, pencocokan kurva berarti membuat
fungsi mengampiri (approximate) titik-titik data.
Kurva fungsi hampiran tidak perlu melalui semua titik data tetapi
dekat dengannya tanpa perlu menggunakan polinomberderajat
tinggi.
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
2
Contoh: diberikan data jarak tempuh (y) sebuah kendaraaan -
dalammil- setelah x bulan seperti pada tabel di bawah ini

x 1.38 3.39 4.75 6.56 7.76
y 1.83 2.51 3.65 4.10 5.01

6.00
y
y = p
4
(x)
6.00
y
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
3
0.00 2.00 4.00 6.00 8.00 10.00
2.00
4.00
x
0.00 2.00 4.00 6.00 8.00 10.00
2.00
4.00
x
Interpolasi Regresi
2.00
4.00
6.00
y
y = p
4
(x)
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
4
0.00 2.00 4.00 6.00 8.00 10.00
2.00
x
Dari kedua pencocokan tersebut, terlihat bahwa garis lurus memberikan
hampiran yang bagus, tetapi belumtentu yang terbaik. Pengertian terbaik
di sini bergantung pada cara kita mengukur galat hampiran.
Prinsip penting yang harus diketahui dalammencocokkan
kurva untuk data hasil pengukuran adalah:
Fungsi mengandung sesedikit mungkin parameter bebas
Deviasi fungsi dengan titik data dibuat minimum.
Kedua prinsip di atas mendasari metode regresi kuadrat
terkecil.
Manfaat pencocokan kurva untuk data hasil pengukuran:
1. Bagi ahli sains/rekayasa: mengembangkan formula empirik
untuk sistemyang diteliti.
2. Bagi ahli ekonomi: menentukan kurva kecenderungan
ekonomi untuk meramalkan kecenderungan masa
depan.
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
5
Regresi Lanjar
Misalkan (x
i
, y
i
) adalah data hasil pengukuran. Kita akan
menghampiri titik-titik tersebut dengan sebuah garis lurus.
Garis lurus tersebut dibuat sedemikian sehingga galatnya
sekecil mungkin dengan titik-titik data.
y
(x
n
, y
n
)
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
6
x
y
(x
1
, y
1
)
(x
2
, y
2
)
(x
i
, y
i
)
(x
i
, a + bx
i
)
(x
n-1
, y
n-1
)
Karena data mengandung galat, maka nilai data sebenarnya,
g(x
i
), dapat ditulis sebagai
g(x
i
) = y
i
+ e
i
i = 1, 2, ..., n (1)
yang dalamhal ini, e
i
adalah galat setiap data. Diinginkan
fungsi lanjar
f(x) = a + bx (2) f(x) = a + bx (2)
yang mencocokkan data sedemikian sehingga deviasinya,
r
i
= y
i
- f(x
i
) = y
i
- (a + bx
i
) (3)
minimum.
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
7
Total kuadrat deviasi persamaan (4) adalah

R =

=
n
i
i
r
1
2
=

=
n
i 1
(y
i
- a - bx
i
)
2

Agar R minimum, maka haruslah
= -2(y
i
- a - bx
i
) = 0
a
R

IF4058 Topik Khusus Informatika I: Metode


Numerik/Teknik Informatika ITB
8
= -2(y
i
- a - bx
i
) = 0
= -2 x
i
(y
i
- a - bx
i
) = 0
Untuk selanjutnya, notasi ditulis saja.
a
b
R

Penyelesaian:
Masing-masing ruas kedua persamaaan dibagi dengan -2:
(y
i
- a - bx
i
) = 0 y
i
- a - bx
i
= 0
x
i
(y
i
- a - bx
i
) = 0 x
i
y
i
- ax
i
- bx
i
2
= 0

Selanjutnya,
a + bx
i
= y
i

IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
9
a + bx
i
= y
i

ax
i
+ bx
i
2
= x
i
y
i


atau

na + bx
i
= y
i

ax
i
+ bx
i
2
= x
i
y
i

Kedua persamaan terakhir ini dinamakan persamaan normal, dan dapat dapat
ditulis dalam bentuk persamaan matriks:

(



2
i i
i
x x
x n

(

b
a
=
(

i i
i
y x
y

Solusi (nilai a dan b) bisa dicari dengan metode eliminasi Gauss
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
10
Atau langsung dengan rumus:
b =
2 2
) (
i i
i i i i
x x n
y x y x n




x b y a =
Untuk menentukan seberapa bagus fungsi hampiran mencocokkan data, kita
dapat mengukurnya dengan galat RMS (Root-mean-square error):


2
1
2
) (
1
|
|

\
|
=

=
n
i
i i RMS
y x f
n
E
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
11
Semakin kecil nilai E
RMS
semakin bagus fungsi hampiran mencocokkan titik-titik
data.

Contoh: Tentukan persamaan garis lurus yang mencocokkan
data pada tabel di bawah ini. Kemudian, perkirakan nilai y
untuk x = 1.0.
Penyelesaian:

i x
i
y
i
x
i
2
x
i
y
i

1 0.1 0.61 0.01 0.061
2 0.4 0.92 0.16 0.368
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
12
2 0.4 0.92 0.16 0.368
3 0.5 0.99 0.25 0.495
4 0.7 1.52 0.49 1.064
5 0.7 1.47 0.49 1.029
6 0.9 2.03 0.81 1.827

x
i
= 3.3 y
i
= 7.54 x
i
2
= 2.21 x
i
y
i
= 4.844

Diperoleh sistem persamaan lanjar:



6 3.3 a 7.54
=
3.3 2.21 b 4.844


Solusi SPL di atas adalah: a = 0.2862
b = 1.7645
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
13
b = 1.7645

Persamaan garis regresinya adalah: f(x) = 0.2862 + 1.7645x.
Perbandingan antara nilai y
i
dan f(x
i
):

i x
i
y
i
f(x
i
) = a+ bx
i
deviasi (deviasi)
2

1 0.1 0.61 0.46261 0.147389 0.02172
2 0.4 0.92 0.99198 -0.07198 0.00518
3 0.5 0.99 1.16843 -0.17844 0.03184
4 0.7 1.52 1.52135 -0.00135 0.00000
5 0.7 1.47 1.52135 -0.05135 0.00264
6 0.9 2.03 1.87426 0.15574 0.02425
= 0.08563
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
14
= 0.08563


Taksiran nilai y untuk x = 1.0 adalah

y = f(1.0) = 0.2862 + 1.7645(1.0) = 2.0507

Galat RMS adalah E
RMS
=
2 / 1
)
6
0.08563
( = 0.119464
Pelanjaran
Regresi lanjar hanya tepat bila data memiliki hubungan lanjar
antara peubah bebas dan peubah terikatnya.
Gambar berikut memperlihatkan bahwa garis lurus tidak tepat
mewakili kecenderungan titi-titik data. Fungsi kuadratik lebih
tepat menghampiri titik-titik tersebut.
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
15
x
y
x
y
(a) (b)
Langkah pertama dalamanalisis regresi seharusnya berupa
penggambaran titik-titik data pada diagram kartesian
Kemudian secara visual memeriksa data untuk memastikan
apakah berlaku suatu model lanjar atau model nirlanjar.
Penggambaran titik-titik ini sekaligus juga sangat membantu Penggambaran titik-titik ini sekaligus juga sangat membantu
dalammengetahui fungsi yang tepat untuk mencocokkan
data.
Meskipun fungsi hampiran berbentuk nirlanjar, namun
pencocokan kurva dengan fungsi nirlanjar tersebut dapat juga
diselesaikan dengan cara regresi lanjar.
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
16
Tiga macam fungsi nirlanjar di bawah ini:

1. Persamaan pangkat sederhana
y = Cx
b
, C dan b konstanta.

2. Model eksponensial
y = Ce
bx
, C dan b konstanta.
Contoh: - model pertumbuhan populasi
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
17
Contoh: - model pertumbuhan populasi
- model peluruhan zat radioaktif
3. Persamaan laju pertumbuhan jenuh (saturation growth-rate)
y =
x d
Cx
+
, C dan d konstanta.

Contoh: model pertumbuhan bakteri kondisi pembatas
(misalnya dibatasi oleh jumlah makanan)

y
b
Cx y=
y
bx
Ce y=
y
x d
Cx
y
+
=
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
18
x
x
x
Pelanjaran Persamaan Pangkat Sederhana
Misalkan kita akan mencocokkan data dengan fungsi
y = Cx
b
Lakukan pelanjaran sebagai berikut:
y = Cx
b
ln(y) = ln(C) + b ln(x)
Definisikan
Y = ln(y); a = ln(C); X = ln(x)
Persamaan regresi lanjarnya adalah: Persamaan regresi lanjarnya adalah:
Y = a + bX
Lakukan pengubahan dari (x
i
,y
i
) menjadi (ln(x
i
), ln(y
i
)), lalu hitung a dan b
dengan cara regresi lanjar. Dari persamaan a = ln(C), kita dapat menghitung
nilai
C = e
a
Sulihkan nilai b dan C ke dalampersamaan pangkat y = Cx
b
.
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
19
Contoh: Cocokkan data berikut dengan fungsi y = Cx
b
.
Penyelesaian:

i x
i
y
i
X
i
= ln(x
i
) Y
i
= ln(y
i
) X
i
2
X
i
Y
i

1 0.1500 4.4964 -1.8971 1.5033 3.5990 -2.8519
2 0.4000 5.1284 -0.9163 1.6348 0.8396 -1.4980
3 0.6000 5.6931 -0.5108 1.7393 0.2609 -0.8884
4 1.0100 6.2884 0.0100 1.8387 0.0001 0.0184
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
20
4 1.0100 6.2884 0.0100 1.8387 0.0001 0.0184
5 1.5000 7.0989 0.4055 1.9599 0.1644 0.7947
6 2.2000 7.5507 0..7885 2.0216 0.6217 1.5940
7 2.4000 7.5106 0.8755 2.0163 0.7665 1.7653

X
i
= -1.2447 Y
i
= 12.7139 X
i
2
= 6.2522

X
i
Y
i
= -1.0659

Diperoleh sistem persamaan lanjar


7 -1.2447 a 12.7139
=
-1.2447 6.2522 b -1.0659


Solusi SPL di atas: a = 1.8515 dan b = 0.1981.

Hitung C = e
a
= e
1.8515
= 6.369366
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
21
Hitung C = e
a
= e
1.8515
= 6.369366

Jadi,titik-titik (x, y) pada tabel di atas dihampiri dengan fungsi pangkat sederhana:

y = 6.369366 x
0.1981

Pelanjaran Model Eksponensial y = Ce
bx
Misalkan kita akan mencocokkan data dengan fungsi
y = Ce
bx
Lakukan pelanjaran sebagai berikut:
y = Ce
bx
ln(y) = ln(C) + bx ln(e)
ln(y) = ln(C) + bx(ingat: ln(e) = 1)
Definisikan
Y = ln(y); a = ln(C); X = x
Persamaan regresi lanjarnya:
Y = a + bX
Lakukan pengubahan dari (x
i
, y
i
) menjadi (x
i
, ln(y
i
)), lalu hitung a dan b
dengan cara regresi lanjar.
Dari persamaan a = ln(C), kita dapat menghitung nilai C = e
a
. Sulihkan
nilai b dan C ke dalampersamaan eksponensial y = Ce
bx
.
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
22
Pelanjaran Model Laju Pertumbuhan Jenuh
x d
Cx
y
+
=
Misalkan kita akan mencocokkan data dengan fungsi
y =
x d
Cx
+

Lakukan pelanjaran sebagai berikut:

Cx
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
23
y =
x d
Cx
+



y
1
=
C
d
x
1
+
C
1

Definisikan
Y = 1/y
a = 1/C
b = d/C
X = 1/x

Persamaan regresi lanjarnya:
Y = a + bX
IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
24
Y = a + bX

Lakukan pengubahan dari (x
i
,y
i
) menjadi (1/x
i
, 1/y
i
), lalu hitung a dan b dengan cara
regresi lanjar.

Dari persamaan a = 1/C, kita dapat menghitung nilai C = 1/a.
Dari persamaan b = d/C, kita dapat menghitung d = bC .
Sulihkan d dan C ke dalam persamaan laju pertumbuhan jenuh y = Cx/(d+x).


Fungsi
y = f(x)
Bentuk lanjar
y = a + bX
Perubahan peubah dan
kontanta

y = Cx
b



y = Ce
bx

y =
x d
Cx
+


x
b
a y + =


ln(y) = ln(C) + b ln(x)


ln(y) = ln(C) + bx

y
1
=
C
d
x
1
+
C
1


y = a + b
x
1



Y = ln(y), X = ln(x),
C = e
a

Y = ln(y), X = x, C = e
a


Y = 1/y, X = 1/x
C = 1/a, d = bC


Y = y, X = 1/x


IF4058 Topik Khusus Informatika I: Metode
Numerik/Teknik Informatika ITB
25

C x
D
y
+
=


bx a
y
+
=
1


2
) (

+ = bx a y
Dx
Cxe y

=


) (
1
xy
C C
D
y

+ =


bX a
y
+ =
1


bX a y + =
2 / 1


) ( ) ln( ) ln( Dx C
x
y
+ =

Y = y, X = xy,
C =
b
1
,
b
a
D

=

x X
y
Y = = ,
1


x X y Y = =

,
2 / 1


x X
x
y
Y = = ), ln(
b D e C
a
= = ,