LANDASAN TEORI Deteksi Outlier menggunakan algoritma Block Based Nested Loop studi kasus data akademik mahasiswa Program Studi Teknik Informatika Universitas Sanata Dharma

9

Bab 2 LANDASAN TEORI

Bab ini berisi penjelasan mengenai teori atau konsep yang terkait dengan rumusan masalah dalam penelitian ini. Konsep yang dijelaskan yaitu Knowledge Discovery in Databases KDD dan Outlier Detection . Setiap konsep atau teori akan berisi penjelasan mengenai definisi, bagian-bagian serta peran masing- masing bagian tersebut dalam penelitian ini. Hal-hal tersebut akan diuraikan dalam dua sub bab di bawah ini. 2.1 Knowledge Discovery in Databases KDD Knowledge Discovery in Databases KDD adalah proses mengambil informasi penting yang tersembunyi dalam sekumpulan data. KDD membantu seseorang dalam mengambil keputusan berdasarkan informasi yang ditemukan tersebut Baradwaj Pal, 2011. KDD terbagi menjadi lima tahap yaitu selection, preprocessing , transformation, data mining, dan evaluation Fayyad et al ., 1996. Setiap tahap dalam KDD memiliki peranan penting dan saling berkaitan satu sama lain untuk mengekstrak knowledge dari data. Gambar 2.1 Langkah-langkah dalam KDD Fayyad et al., 1996 Selection merupakan proses seleksi data yang relevan untuk dianalisis dari sebuah basis data. Data yang relevan artinya data tersebut sesuai untuk digunakan dalam mencapai tujuan analisis data. Data yang telah diseleksi melalui proses ini disebut sebagai target data. Target data selanjutnya masuk ke tahapan berikutnya yaitu preprocessing . Preprocessing merupakan proses menyiapkan data agar siap untuk ditambang. Langkah-langkah dalam preprocessing yaitu data cleaning, data integration, data transformation, data reduction dan data discretization . Kelima langkah tersebut dilakukan secara berurutan. Langkah tertentu boleh dilewati saat kondisi data telah memenuhi syarat yang ditentukan masing-masing langkah tersebut. Saat telah melewati tahap preprocessing , data siap untuk ditambang. Data mining atau penambangan data adalah proses mengekstrak informasi atau pengetahuan dari data dalam jumlah yang besar. Secara umum, penambangan data dapat diklasifikasikan dalam empat kategori yaitu deteksi dependensi, identifikasi kelas, deskripsi kelas dan deteksi outlier . Tiga kategori pertama berkaitan dengan pola yang dimiliki oleh banyak obyek atau pada obyek dengan persentase yang besar dalam dataset . Berbagai penelitian penambangan data mengenai aturan asosiasi, klasifikasi, klastering dan generalisasi konsep termasuk dalam tiga kategori tersebut. Sebaliknya, kategori keempat berfokus pada obyek dengan persentase yang kecil, yang umumnya sering diabaikan atau dihilangkan karena dianggap noise Knorr Ng, 1998. Evaluation merupakan tahap pembuatan pola atau pemetaan berdasarkan hasil penambangan data. Tujuan dilakukannya tahap ini untuk membantu pihak- pihak yang berkepentingan terhadap data yang dianalisis untuk memperoleh gambaran tentang data tersebut. Pembuatan diagram atau pohon keputusan merupakan contoh visualisasi hasil penambangan data. Visualisasi dapat memberikan gambaran yang lebih mudah dipahami dibandingkan hasil sebuah penambangan data. Setelah tahap visualisasi selesai maka akan diperoleh hasil akhir analisis data yaitu knowledge . 2.2 Outlier Detection

2.2.1 Pengertian

Outlier Outlier dalam sekumpulan data merupakan data yang dianggap tidak mirip atau tidak konsisten dengan data lainnya. Outlier merupakan hasil observasi data pengukuran dalam suatu kumpulan data yang nilainya sangat berbeda jika dibandingkan dengan sekumpulan data dari pengukuran lain Hawkins, 1980. Outlier juga merupakan data yang tidak mengikuti pola umum atau model dari data lainnya yang berada dalam kumpulan yang sama. Outlier terlihat berbeda jauh dan tidak konsisten dengan data lain Han Kamber, 2006.

2.2.2 Penyebab

Outlier Pertama, munculnya outlier dapat disebabkan oleh data pengukuran yang salah. Sebagai contoh, munculnya data umur seseorang yaitu 999 tahun dapat disebabkan oleh pengaturan otomatis default program. Pengaturan otomatis ini diberlakukan pada data umur yang tidak direkam missing values Han Kamber, 2006. Kedua, kemunculan outlier juga dapat dikarenakan data pengukuran berasal dari populasi lain. Contohnya yaitu gaji seorang pimpinan perusahaan dapat dianggap sebagai outlier di antara gaji para karyawan di perusahaan tersebut Han Kamber, 2006. Hal ini disebabkan adanya perbedaan yang sangat mencolok antara gaji seorang pimpinan dan gaji karyawan di sebuah perusahaan. Ketiga, outlier berasal dari data pengukuran yang benar tetapi mewakili peristiwa atau keadaan unik yang jarang terjadi. Sebagai contoh, terdapat sebuah sekolah yang selalu menghasilkan lulusan dengan nilai yang sangat rendah setiap tahun. Ketika terdapat seorang siswa yang lulus dari sekolah tersebut dengan nilai yang sangat tinggi, maka siswa itu akan dianggap sebagai outlier .

2.2.3 Manfaat Deteksi

Outlier Sebagian besar algoritma penambangan data berfokus untuk meminimalkan pengaruh outlier atau mengeliminasi outlier tersebut. Hal ini dapat mengakibatkan hilangnya informasi penting yang tersembunyi dibalik outlier tersebut. Outlier sebenarnya dapat menjadi hal yang menarik untuk dianalisis lebih lanjut. Deteksi outlier outlier detection adalah deteksi yang dilakukan pada sekumpulan obyek untuk menemukan obyek yang memiliki tingkat kemiripan yang sangat rendah dibandingkan dengan obyek lainnya. Deteksi outlier umumya digunakan untuk menemukan kejanggalan dalam data, deteksi kecurangan data atau untuk mengetahui adanya pola khusus dalam sekumpulan data. Deteksi outlier sering dimanfaatkan untuk mendeteksi kecurangan penggunaan kredit atau layanan telekomunikasi. Deteksi outlier juga berguna dalam bidang pemasaran, yaitu untuk mengidentifikasi perilaku belanja konsumen dengan tingkat pendapatan yang tinggi atau rendah. Dalam dunia kesehatan, deteksi outlier digunakan untuk menemukan respon yang tidak biasanya atau berbeda terhadap berbagai perawatan kesehatan Han Kamber, 2006. Di bidang pendidikan, deteksi outlier dapat digunakan untuk mengetahui prestasi akademik mahasiswa yang berbeda secara signifikan dari mahasiswa lainnya dalam universitas yang sama Tair El-Halees, 2012.

3.2.4 Metode Deteksi

Outlier Algoritma klastering umumnya menghilangkan outlier dari data karena dianggap noise , tetapi algoritma deteksi outlier justru menjadikan outlier menjadi hasil dari eksekusinya. Ada beberapa metode yang dapat digunakan untuk mendeteksi outlier . Metode-metode tersebut dibagi menjadi empat pendekatan yaitu: pendekatan statistical distribution-based , pendekatan distance-based , pendekatan density-based local outlier dan pendekatan deviation-based Han Kamber, 2006. Pendekatan statistical distribution-based mengasumsikan sebuah model distribusi atau probabilitas dari sejumlah data yang diidentifikasi outlier nya menggunakan discordancy test . Pendekatan distance-based menentukan outlier berdasarkan jarak antar obyek serta jumlah obyek menggunakan parameter pct dan dmin . Pendekatan density-based local outlier , berfokus pada menemukan outlier pada sejumlah data berdasarkan kedekatan atau kepadatan antara satu obyek dengan obyek lainnya. Pendekatan density - based hampir sama dengan distance-based tetapi mampu membedakan antara local outlier dan global outlier . Pendekatan deviation-based tidak menggunakan perhitungan secara statistik maupun jarak untuk mengidentifikasi obyek yang diduga sebagai outlier . Pendekatan ini mengidentifikasi adanya outlier dengan menguji karakteristik utama dari obyek dalam sebuah kelompok. Setiap outlier yang ditemukan menggunakan pendekatan-pendekatan tersebut selanjutnya perlu diperiksa kembali untuk diyakini kebenarannya. Pada penelitian ini, penulis menggunakan pendekatan distance-based untuk melakukan deteksi outlier . 2.2.5 Distance-Based Outlier Detection Menurut pendekatan distance-based , sebuah obyek O dalam dataset T merupakan DB p,D - outlier jika setidaknya ada p obyek dalam T terletak pada jarak yang lebih dari D terhadap O . Diasumsikan N adalah jumlah obyek dalam dataset T , dan F merupakan fungsi jarak yang digunakan untuk menghitung jarak antar obyek dalam T . Untuk sebuah obyek O , D-neighbourhood dari O memuat sekumpulan obyek � ∈ � yang terletak pada jarak kurang dari D terhadap O sehingga { Q ∈ T | F O, Q ≤ D}. Nilai fraction p merupakan persentase jumlah obyek minimum dalam T yang harus ada di luar D-neighbourhood dari sebuah outlier . Diasumsikan M merupakan jumlah obyek maksimum dalam D- neighbourhood dari sebuah outlier sehingga M = N1 - p Knorr Ng, 1998. Sebagai contoh, terdapat sebuah dataset T dengan jumlah obyek N sebanyak 100 dan persentase jumlah outlier dalam data sekitar 10. Berdasarkan data tersebut maka persentase data bukan outlier p adalah 100 – 10 yaitu 90 atau 0.9. Untuk memperoleh nilai M maka menggunakan perhitungan N1 – p sehingga M = 1001-0.9 yaitu 10. Artinya, pada dataset T jumlah obyek maksimum dalam D-neighbourhood sebuah outlier adalah 10 obyek. Apabila sebuah obyek A dalam dataset T dapat menemukan lebih dari 10 obyek yang jaraknya kurang dari D terhadap dirinya maka A akan menjadi data bukan outlier sebaliknya A akan menjadi outlier . Nilai M adalah jumlah obyek maksimum dalam D- neighbourhood sebuah outlier sehingga dapat dikurangi menjadi 9, 8, 7 atau bahkan 1 sampai diperoleh hasil outlier yang dianggap paling tepat. Pada pendekatan distance-based terdapat beberapa algoritma yang dapat digunakan antara lain Index-Based , Block-based Nested-Loop dan Cell-Based Han Kamber, 2006. Jarak antar dua obyek dalam sebuah kumpulan data memiliki arti yang penting dalam deteksi outlier menggunakan pendekatan distance-based . Jarak antar dua obyek menjadi nilai yang akan dibandingkan dengan nilai parameter D . Untuk menghitung jarak antar obyek harus disesuaikan dengan tipe variabel yang dimiliki. Tipe variabel yang berupa nilai numerik dan sifatnya multidimensi, dapat dihitung jaraknya menggunakan pengukuran Euclidean distance Han Kamber, 2006. Euclidean distance didefinisikan sebagai berikut � , = � 1 − � 1 2 + � 2 − � 2 2 + … . +� � − � � 2 2.1 di mana i = obyek pertama, j = obyek kedua, x i = nilai obyek pertama, x j = nilai obyek kedua dan n = dimensi obyek. Pendekatan distance-based melibatkan penggunaan dua buah parameter sebagai input. Penentuan nilai parameter p dan D dapat melibatkan beberapa kali percobaan trial and error hingga mendapatkan nilai yang paling tepat. Pemilihan nilai parameter p dan D dapat mempengaruhi hasil deteksi outlier .

2.2.5.1 Algoritma

Block-based Nested-Loop Algoritma Block-based Nested-Loop merupakan pengembangan dari algoritma deteksi outlier lain yaitu Index-Based . Algoritma ini menghindari penggunaan memori dalam membentuk indeks untuk menemukan seluruh DBp,D-outliers . Algoritma ini menggunakan prinsip block-oriented , nested- loop design . Diasumsikan total free memory dari komputer yang digunakan sebanyak B bytes. Algoritma ini selanjutnya membagi free memory komputer dalam dua bagian yang disebut first array sebanyak ½ B dan second array sebanyak ½ B . Data kemudian dibagi ke dalam blok-blok tertentu. Algoritma Block-based Nested-Loop akan mengatur proses masuk keluarnya blok ke dalam memori. Setiap data yang ada dalam blok tertentu akan secara langsung dihitung jaraknya dengan data lainnya. Untuk setiap data t dalam first array , jumlah tetangganya akan dihitung. Dua data dikatakan saling bertetangga apabila jarak keduanya kurang dari atau sama dengan D . Perhitungan jumlah tetangga untuk setiap obyek akan berhenti saat nilainya telah melebihi M Knorr Ng, 1998. M merupakan jumlah tetangga maksimum dalam D-neighbourhood sebuah outlier . Jika jumlah tetangga sebuah data telah melebihi M artinya data tersebut tidak termasuk outlier . Pseudocode algoritma Block-based Nested-Loop adalah sebagai berikut Knorr Ng, 1998: 1. Isi first array ½ B dengan sebuah blok dari T 2. Untuk setiap obyek t i , pada first array , do : a. count i  0 b. Untuk setiap obyek t j dalam first array , jika dist t i ,t j ≤ D; Tambahkan nilai count i dengan 1. Jika count i M , tandai t i sebagai non - outlier dan proses dilanjutkan ke t i berikutnya. 3. Selama masih ada blok yang tersisa untuk dibandingkan dengan first array , do: a. Isi second array dengan blok lainnya tetapi pastikan blok yang belum pernah dimasukkan ke dalam first array berada pada urutan terakhir b. Untuk setiap obyek t i dalam first array yang belum ditandai unmarked do: Untuk setiap obyek t j dalam second arra y , jika dist t i ,t j ≤ D: Tambahkan nilai count i dengan 1. Jika count i M , tandai t i sebagai non-outlier dan proses dilanjutkan ke t i berikutnya. 4. Untuk setiap obyek t i dalam first array yang belum ditandai unmarked , tandai t i sebagai outlier . 5. Jika blok dalam second array sudah pernah dimasukkan ke dalam first array sebelumnya, berhenti; jika belum, tukar posisi nama dari first array dan second array dan kembali ke langkah 2. 19

Bab 3 METODE PENELITIAN

Dokumen yang terkait

Deteksi outlier menggunakan Algoritma Local Correlation Integral (LOCI) : studi kasus data akademik mahasiswa Teknik Informatika Universitas Sanata Dharma.

0 0 258

Deteksi outlier menggunakan Algoritma Local Outlier Probability : studi kasus data akademik mahasiswa Program Studi Teknik Informatika Universitas Sanata Dharma.

0 5 265

Deteksi outlier menggunakan Algoritma Connectivity Based Outlier Factor : studi kasus data akademik mahasiswa Teknik Informatika Universitas Sanata Dharma.

0 4 252

Deteksi Outlier menggunakan algoritma Block-Based Nested-Loop : studi kasus data akademik mahasiswa Program Studi Teknik Informatika Universitas Sanata Dharma.

0 2 202

Deteksi Outlier menggunakan algoritma Naive Nested Loop : studi kasus data akademik mahasiswa Program Studi Teknik Informatika, Universitas Sanata Dharma, Yogyakarta.

2 3 236

Deteksi outlier menggunakan algoritma Block-based Nested Loop (studi kasus: data akademik mahasiswa prodi PS Universitas XYZ).

1 5 6

Deteksi outlier menggunakan algoritma Naive Nested Loop (studi kasus : data akademik mahasiswa program studi PS Universitas XYZ).

0 0 4

Deteksi outlier menggunakan Algoritma Connectivity Based Outlier Factor studi kasus data akademik mahasiswa Teknik Informatika Universitas Sanata Dharma

1 8 250

Deteksi outlier menggunakan Algoritma Local Outlier Probability studi kasus data akademik mahasiswa Program Studi Teknik Informatika Universitas Sanata Dharma

1 9 263

Deteksi Outlier menggunakan algoritma Naive Nested Loop : studi kasus data akademik mahasiswa Program Studi Teknik Informatika, Universitas Sanata Dharma, Yogyakarta - USD Repository

0 0 234