17
BAB III METODOLOGI PENELITIAN
Pada bab ini akan di jelaskan mengenai metodologi penambangan data yang di gunakan dalam penelitian sistem deteksi outlier menggunakan
algoritma Connectivity-based Outlier Factor. Metodologi yang di gunakan adalah KDD Knowledge Discovery in Database menurut Jiawei Han dan
Kamber. Akan di jelaskan pula penerapan dari algoritma Connectivity- based Outlier Factor
pada kumpulan data atau data set akademik mahasiswa Teknik Informatika Universitas Sanata Dharma.
3.1 Data yang dibutuhkan
Data yang di gunakan dalam penelitian ini adalah Data Akademik Mahasiswa Teknik Informatika Universitas Sanata Dharma angkatan
2007-2008. Data akademik yang di gunakan adalah dari semester satu sampai semester empat. Data ini berasal dari penelitian yang dilakukan
oleh Rosa, dkk 2011. Data ini berupa script query yang berisi tabel gudang data dan file ini berformat .sql.
3.2 Pengolahan Data
Tahapan pengolahan data untuk data akademik Teknik Informatika Universitas Sanata Dharma adalah sebagai berikut:
1. Data Integration atau Penggabungan Data
Di dalam tahapan ini di lakukan penggabungan data dari berbagai sumber data yang ada agar mudah di pilih dan di proses nantinya. Sumber
data yang berupa file .sql script query dari penelitian Rosa, dkk 2011 ini kemudian di olah dengan di import ke dalam database dan akan terbuat
satu database baru bernama gudangdata. Database gudangdata memiliki sembilan tabel, yaitu tabel dim_angkatan, tabel dim_daftarsmu, tabel
dim_fakultas, tabel dim_jeniskel, tabel dim_kabupaten, tabel dim_prodi,
tabel dim_prodifaks, tabel dim_statustes, dan tabel fact_lengkap2.
Gambar 3.1 Database gudangdata.
2. Data Selection atau Seleksi Data
Setelah dilakukan proses Data Integration atau penggabungan data, selanjutnya di dalam tahapan ini akan di lakukan pemilihan data yang di
butuhkan dalam database dan di gunakan untuk proses analisis. Data yang di peroleh dari langkah sebelumnya akan di seleksi sesuai dengan
kebutuhan untuk penelitian ini. Tabel yang di gunakan untuk penelitian ini adalah tabel fact_lengkap2. Tabel yang lainnya tidak di gunakan karena di
nilai kurang relevan dengan penelitian ini. Di dalam tabel fact_lengkap2 ini terdapat atribut nomor, jumsttb, jummtsttb, jumnem, nomor_mhs,
nama_mhs, ips1, ips2, ips3, ips4, nil11, nil12, nil13, nil14, nil15, final, statustes, kd21, kd22, kd23, kd24, kd25, kd26, kd27, kd28, nem, sttb,
sk_jeniskel, sk_status, sk_kabupaten, sk_daftarsmu, dan sk_prodi.
Gambar 3.2 Isi tabel fact_lengkap2
Langkah selanjutnya setelah seleksi tabel adalah menyeleksi data dalam tabel. Data yang akan di gunakan adalah data mahasiswa Teknik
Informatika angkatan 2007-2008. Jadi data selain mahasiswa Teknik Informatika akan di hilangkan. Data mahasiswa yang memiliki atribut
sk_prodi = 27 Teknik Informatika akan di tampilkan.
Gambar 3.3 Isi tabel fact_lengkap2 untuk mahasiswa Teknik Informatika
Setelah itu, di lakukan seleksi untuk atribut-atribut yang sesuai untuk di gunakan dalam penelitian ini. Akan di lakukan penghilangan
atribut-atribut nomor, jumsttb, jummtsttb, jumnem, sttb, sk_jeniskel, sk_status, sk_kabupaten, sk_daftarsmu, dan sk_prodi.
Gambar 3.4 Isi tabel fact_lengkap2 setelah seleksi
3. Data Transformation atau Transformasi Data
Di dalam tahapan ini, di lakukan pengubahan dan penggabungan data dari berbagai macam bentuk menjadi satu bentuk yang sama agar
mudah di proses. Atribut-atribut yang di gunakan memiliki tipe atau jenis yang berbeda sehingga membutuhkan transformasi data untuk
penyeragaman data sehingga datanya dapat lebih mudah untuk di tambang. Contohnya atribut ips1, ips2, ips3, dan ips4 memiliki nilai maksimal 4.00.
Untuk atribut nil11, nil12, nil13, nil14, dan nil15 memiliki nilai maksimal 10.00. Sedangkan untuk atribut final memiliki nilai maksimal 100.00.
Karena perbedaan nilai maksimal masing-masing atribut tersebut, maka harus di lakukan pengubahan nilai maksimal. Atribut nil11, nil12,
nil13, nil14, nil15, dan final akan di ubah nilai maksimalnya sehingga menjadi satu bentuk dengan atribut ips1, ips2, ips3, dan ips4 yaitu 4.00.
Untuk penggabungan data dari berbagai macam bentuk menjadi satu bentuk yang sama tersebut di gunakan rumus min-max normalization.
Keterangan : v’
: Nilai yang di cari untuk di normalisasi. v
: Nilai yang belum di normalisasi. minA
: Nilai minimum dari atribut A. maxA
: Nilai maksimum dari atribut A. new_maxA
: Nilai maksimum baru dari atribut A. new_minA
: Nilai minimum baru dari atribut A.
Contoh perhitungan menggunakan rumus min-max normalization untuk atribut nil11, nil12, nil13, nil14, dan nil15 adalah sebagai berikut.
nil11 adalah 8.00. Akan dilakukan transformasi untuk nil11 agar nilai maksimumnya 4.00. Di notasikan v = 8.00, minA = 0.00, maxA = 10.00,
new_maxA = 4.00, new_minA = 0.00. Jadi
v’ = 8.00 - 0.00 10.00 – 0.00 4.00 - 0.00 + 0.00.
v’ = 8 10 4. v’ = 3.20. Akan di berikan satu contoh perhitungan dalam tabel untuk atribut
ips1, nil11, nil12, nil13, nil14, dan nil15. Atribut nil11, nil12, nil13, nil14,
A A
A A
A A
min new
min new
max new
min max
min v
v _
_ _
dan nil15 akan di seragamkan nilai maksimumnya adalah 4.00.
Tabel 3.1 Contoh perhitungan min-max normalization untuk atribut nil11, nil12, nil13, nil14, dan15.
Nomor ips1
nil11 nil12
nil13 nil14
nil15 1.
3.72 8.00
6.00 6.00
7.00 5.00
2. 2.89
6.00 5.00
5.00 7.00
5.00 3.
2.56 6.00
4.00 5.00
7.00 5.00
4. 3.28
7.00 6.00
7.00 6.00
6.00 5.
1.89 6.00
5.00 6.00
6.00 7.00
6. 1.44
10.00 5.00
9.00 6.00
7.00 7.
4.00 6.00
6.00 4.00
4.00 7.00
8. 1.72
3.00 2.00
8.00 3.00
1.00 9.
2.89 5.00
5.00 8.00
5.00 7.00
10. 2.94
7.00 5.00
5.00 5.00
5.00 11.
2.94 6.00
4.00 6.00
3.00 7.00
12. 2.44
5.00 5.00
6.00 5.00
5.00 13.
1.72 7.00
6.00 8.00
8.00 2.00
Tabel 3.2 Setelah di hitung menggunakan rumus min-max normalization untuk atribut nil11, nil12, nil13, nil14, dan15.
Nomor ips1
nil11 nil12
nil13 nil14
nil15 1.
3.72 3.20
2.40 2.40
2.80 2.00
2. 2.89
2.30 2.00
2.00 2.80
2.00 3.
2.56 2.40
1.60 2.00
2.80 2.00
4. 3.28
2.80 2.40
2.80 2.40
2.40 5.
1.89 2.40
2.00 2.40
2.40 2.80
6. 1.44
4.00 2.00
3.60 2.40
2.80 7.
4.00 2.40
2.40 1.60
1.60 2.80
8. 1.72
1.20 0.80
3.20 1.20
0.40 9.
2.89 2.00
2.00 3.20
2.00 2.80
10. 2.94
2.80 2.00
2.00 2.00
1.60 11.
2.94 2.40
1.60 2.40
1.20 2.80
12. 2.44
2.00 2.00
2.40 2.00
2.00 13.
1.72 2.80
2.40 3.20
3.20 0.80
Sedangkan untuk contoh perhitungan menggunakan rumus min- max normalization
untuk atribut final adalah sebagai berikut. final = 67.80. Akan dilakukan transformasi untuk final agar nilai maksimumnya
4.00. Di notasikan v = 67.80, minA = 0.00, maxA = 100.00, new_maxA = 4.00, new_minA = 0.00. Jadi
v’ = 67.80 - 0.00 100.00 – 0.00 4.00 - 0.00 + 0.00.
v’ = 67.80 100 4. v’ = 2.712. Akan di berikan satu contoh perhitungan dalam tabel untuk atribut
ips1, ips2, ips3, ips4, dan final. Atribut final akan di seragamkan nilai maksimumnya adalah 4.00.
Tabel 3.3 Contoh perhitungan min-max normalization untuk atribut final.
Nomor ips1
ips2 ips3
ips4 Final
1. 2.06
2.32 2.91
3.00 67.80
2. 2.72
2.50 2.96
2.38 67.75
3. 3.33
3.48 3.78
3.48 69.41
4. 2.39
3.00 2.43
2.82 71.60
5. 2.11
2.71 2.43
2.45 73.75
6. 3.00
2.96 2.61
3.29 67.57
7. 3.72
3.56 3.43
3.67 78.67
8. 3.44
3.04 2.88
3.48 71.33
9. 2.17
2.70 3.09
3.63 72.00
10. 3.89
3.75 3.00
3.62 77.00
11. 2.89
3.68 2.88
3.76 72.99
12. 3.11
3.08 2.78
3.48 68.17
13. 2.00
2.00 2.29
3.00 77.10
Tabel 3.4 Setelah di hitung menggunakan rumus min-max normalization untuk atribut final.
Nomor ips1
ips2 ips3
ips4 Final
1. 2.06
2.32 2.91
3.00 2.712
2. 2.72
2.50 2.96
2.38 2.71
3. 3.33
3.48 3.78
3.48 2.7764
4. 2.39
3.00 2.43
2.82 2.864
5. 2.11
2.71 2.43
2.45 2.95
6. 3.00
2.96 2.61
3.29 2.7028
7. 3.72
3.56 3.43
3.67 2.1468
8. 3.44
3.04 2.88
3.48 2.8532
9. 2.17
2.70 3.09
3.63 2.88
10. 3.89
3.75 3.00
3.62 3.08
11. 2.89
3.68 2.88
3.76 2.9196
12. 3.11
3.08 2.78
3.48 2.7268
13. 2.00
2.00 2.29
3.00 3.084
4. Data Mining atau Penambangan Data
Di dalam tahapan ini, merupakan proses yang sangat penting dimana metode cerdas di lakukan dan di terapkan untuk mengekstrak pola
data. Data akademik Teknik Informatika angkatan 2007-2008 yang telah di olah, akan di analisis menggunakan algoritma Connectivity-based
Outlier Factor. Dalam tahap ini, akan di gunakan beberapa variabel untuk
melakukan pengujian. Variabel-variabel yang di gunakan adalah sebagai berikut:
1. Input Variabel input yang di gunakan di ambil dari tabel
‘fact_lengkap2’ pada database ‘gudangdata’. Variabel-variabel
tersebut adalah nomor_mhs, nama_mhs, ips1, ips2, ips3, ips4, nil1, nil2, nil3, nil4, nil5, final, statustes, kd21, kd22, kd23, kd24, kd25,
kd26, kd27, kd28, dan nem.
2. Output
Variabel output yang di gunakan berupa mahasiswa yang di anggap sebagai outlier setelah di lakukan pendeteksian
menggunakan algoritma Connectivity-based Outlier Factor.
Akan di berikan contoh penambangan data menggunakan algoritma Connectivity-based Outlier Factor.
Data yang di gunakan adalah sampel mahasiswa Teknik Informatika angkatan 2007-2008 berjumlah 13.
1. Perhitungan data mahasiswa angkatan 2007 pendaftar jalur reguler. Dengan membandingan variabel ips1 dengan nil1, nil2, nil3,nil4, dan
nil5.
Gambar 3.5 Contoh Data angkatan 2007 jalur reguler.
Dari data di atas, kemudian di cari jarak perbandingan setiap obyek menggunakan rumus jarak Ecluidian.
Setelah di hitung jarak, maka tentukan k = 7. Cari 7 jarak paling dekat terhadap obyek p. Setelah mendapat 7 jarak terdekat, kemudian di
cari jarak terbesar atau maksimum dari obyek p. Untuk obyek P1 dapat diperoleh jangkauan terbesar adalah 1,7385. Jangkauan terbesar atau
maksimum juga di sebut sebagai k-distance.
2. Mencari Nkp Dari contoh di atas akan di cari NkP1 terhadap p=P1.
Jarak terdekat dari titik P1 adalah P3, P4, P5, P6, P9, P11, P12 Jadi NkP1 = { P3, P4, P5, P6, P9, P11, P12}.
3. Mencari SBN-path Langkah selanjutnya adalah mencari SBN-path dari titik P1 pada NkP1
∪ {P1}. Pada langkah ini, di lakukan penggabungan antara p=P1 dengan NkP1.
Perhitungan di lakukan secara berantai dengan ukuran jarak terdekat dari titik tertentu p1, p2, ..., pr.
Dari contoh di atas, jalur atau path dari titik P1. Jadi SBN-path atau s1 = P1, P12, P4, P3, P11, P9, P5, P6.
4. Mencari SBN-trail Langkah yang berikutnya adalah mencari SBN-trail untuk s1 atau SBN-
path terhadap titik P1.
SBN-trail adalah urutan edge terhadap s1 diste1, ..., dister-1.
Jadi SBN-trail
atau tr
1 =
P1,P12,P12,P4,P4,P3,P3,P11,P11,P9,P9,P5,P5,P6
5. Menghitung Cost Description Sequence Langkah selanjutnya adalah menghitung Cost Description Sequence. Cost
Description Sequence adalah jarak dari masing-masing edge pada SBN-
trail. Maka Cost Desciption Sequence atau c1 terhadap tr1 :
c 1 = 0,9811; 0,1189; 0,0245; 0,1854; 0,0644; 0,2258; 0,1385
6. Menghitung ac-dist atau Average Chaining Distance Langkah berikutnya yaitu menghitung ac-dist. ac-dist adalah rata-rata dari
bobot CDSCost Description Sequence pada SBN-trail.
ac-dist Nk P1
∪ {P1} 1 = 0,329558
7. Menghitung COF Connectivity-based Outlier Factor Langkah selanjutnya adalah menghitung Connectivity-based Outlier
Factor COF.
Jadi COFkP1 = 0,966746822
Pada contoh di atas, dapat di tentukan bahwa P1 bukan outlier. Karena nilai COF tidak lebih dari 1.
5. Pattern Evaluation atau Evaluasi Pola
Di dalam tahapan ini, melakukan evaluasi terhadap pattern yang telah di proses, aspek-aspek yang di evaluasi adalah hasil output yang di
dapat setelah proses data mining dilakukan. .
6. Knowledge Presentation atau Presentasi Pengetahuan
Di dalam tahapan ini, di lakukan penyajian hasil dari proses data mining
yang sudah di proses. Sehingga dalam tahapan ini akan di buat sebuah sistem berbasis desktop menggunakan bahasa pemrograman java
yang dapat
melakukan pendeteksian
outlier.
30
BAB IV ANALISIS DAN PERANCANGAN SISTEM