Data Yang Digunakan Analisis Sistem

BAB 3 ANALISIS DAN PERANCANGAN Bab ini membahas tentang analisis dan perancangan sistem. Analisis yang dilakukan berhubungan dengan penerapan metode leveinsthein distance dalam mengidentifikasi duplikasi pada data identitas perusahaan dan tahap-tahap yang akan dilakukan dalam perancangan sistem.

3.1. Data Yang Digunakan

Data yang digunakan pada penelitian ini berupa data identitas peserta yang memiliki duplikat data yang akan diidentifikasi sebagai data yang duplikat. Untuk data awal digunakan data identitas berupa nama lengkap, jenis kelamin, nama ibu, dan alamat. Data yang digunakan merupakan raw data identitas BPJS dengan jumlah 3023 data yang terdapat duplikat data. Potongan data dapat dilihat pada Gambar 3.1. Gambar 3.1. Data Yang Digunakan Universitas Sumatera Utara

3.2. Analisis Sistem

Sistem identifikasi duplikasi pada data duplikat costumer perusahaan menggunakan metode leveinsthein distance merupakan sistem yang berfungsi untuk mengidentifikasi data duplikat serta melakukan cleaning data pada data perusahaan. Adapun data yang akan digunakan yaitu data costumer perusahaan dengan empat atribut yaitu, nama lengkap, jenis kelamin, nama ibu kandung dan alamat. Data tersebut kemudian akan melalui tiga tahap pemrosesan yaitu tahap pertama adalah pembuatan key menggunakan metode multi-pass neighborhood yang berguna untuk menunjukkan jumlah tahapan yang akan diproses. Tahap kedua adalah sorting atau pengurutan data berdasarkan key dan pada tahap ketiga adalah merging atau penggabungan record yang teridentifikasi duplikat menjadi satu window dengan parameter edit-distance. Setelah duplikat record teridentifikasi, kemudian record akan dibandingkan dengan record teridentifikasi lainnya pada passes yang berbeda menggunakan transitive closure. Setelah melalui tahap pemrosesan, sistem akan menghasilkan keluaran output berupa data yang bersih serta data yang teridentifikasi duplikat. Adapun Arsitektur umum dari sistem ini dapat dilihat pada Gambar 3.2. Universitas Sumatera Utara Gambar 3.2. Arsitektur Umum 3.2.1 Input Data Sebelum dilakukan identifikasi pada data, perlu dilakukan proses input data berupa data peserta berupa nama lengkap, jenis kelamin, nama ibu kandung, dan alamat yang akan di identifikasi duplikat recordnya. Setelah data di input kemudian dilakukan pre- processing. Universitas Sumatera Utara 3.2.2 Pre-Processing Pada tahap pre-proccessing dilakukan beberapa tahapan persiapan data sehingga data dapat dengan mudah diproses untuk tahap selanjutnya. Tahapan pre-processing dari penelitian ini terdiri dari mengubah data menjadi lowercase dan regular expression. 1. Lowercase Pada tahap ini data pada keseluruhan teks akan diubah menjadi huruf kecil toLowerCase. 2. Regular Expression Penerapan regular expression dilakukan dengan memeriksa kata yang digunakan token yang diterima sesuai dengan pattern yang akan digunakan. Pada data alamat akan menghilangkan kata jalan., jln., jl., dan lainnya. Pada kolom lainnya juga dilakukan dengan penentuan kata yang berbeda dan akan menghilangkan kata pada tahap pre-processing. 3.2.3 Pembentukan Key Setelah data mengalami proses pre-processing, kemudian data tersebut disimpan sebagai data awal yang akan digunakan untuk tahap pembuatan key menggunakan metode multipass neighborhood. Dalam penyimpanan data awal ini, data di berikan tanda pengenal berupa id record sebagai key pada data. Berikut ini adalah tahapan multipass neighborhood : 1. Pembuatan key Menggabungkan record 3 huruf nama depan, nama belakang, dan nama ibu yang akan digunakan sebagai key. Pembuatan key pada tahap multi- pass akan dilakukan sebanyak 3 key yang bersal dari kombinasi nama depan, nama belakang, dan nama ibu.  Key 1 terdiri dari tiga huruf konsonan dari nama belakang, tiga huruf pertama dari nama depan, tiga huruf konsonan nama ibu. Pada key 1 akan diurutkan berdasarkan field nama belakang.  Key 2 terdiri dari tiga huruf pertama dari nama depan, tiga huruf konsonan pada nama belakang, dan tiga huruf konsonan nama ibu. Pada key 2 akan diurutkan berdasarkan field nama depan. Universitas Sumatera Utara  Key 3 terdiri dari, tiga huruf konsonan nama ibu, tiga huruf pertama dari nama depan, tiga huruf pertama dari nama belakang dan. Pada key 3 akan diurutkan berdasarkan nama ibu. Gambar 3.3. Gambar Data Setelah Pre-Processing Key 1  Tiga huruf konsonan “nama belakang” menjadi  Tiga huruf pertama “nama depan” hartati menjadi har  Satu huruf “jenis kelamin”p menjadi p  Tiga huruf pertama “nama ibu”titin menjadi tit  Tiga huruf konsonan dan tiga angka nomer rumah “alamat”perintis 1 menjadi prn1 Key 2  Tiga huruf pertama “nama depan” hartati menjadi har  Tiga huruf konsonan “nama belakang” menjadi  Satu huruf “jenis kelamin” p menjadi p  Tiga huruf pertama “nama ibu” titin menjadi tit  Tiga huruf konsonan dan tiga angka nomer rumah “alamat” perintis 1 menjadi prn1 Key 3  Tiga huruf pertama “nama ibu” titin menjadi tit  Tiga huruf pertama “nama depan” hartati menjadi har  Tiga huruf konsonan “nama belakang” menjadi  Satu huruf “jenis kelamin” p menjadi p  Tiga huruf konsonan dan tiga angka nomer rumah “alamat” perintis 1 menjadi prn1 Gambar 3.4. Gambar Pembentukan Key 1, Key 2 dan Key 3 Universitas Sumatera Utara 3.2.4 Pengurutan Data pada Key Pada proses ini dilakukan pengurutan data pada setiap key secara ascending A-Z. Pengurutan record dilakukan bertujuan untuk memudahkan penghitungan edit distance pada string hanya pada key yang berada pada satu window. Key yang berbeda akan diberikan label yang berbeda dan berada pada window yang berbeda. Gambar 3.5. Gambar Data Hasil Ascending 3.2.5 Pemisahan String pada Key Pemisahaan kata pada setiap key dilakukan menggunakan n-gram. N-gram merupakan algoritma string similarity pencocokan string, dengan pergeseran window dengan panjang n sepanjang karakter string. N-gram memisahkan string menjadi potongan string dengan panjang n. Kesamaan string pada kolom key 1,2,3 dilakukan menggunakan n-gram. Gambar 3.6. Gambar Data Hasil N-gram Universitas Sumatera Utara 3.2.6 Pengukuran Kesamaan pada Key Pengukuran kesamaan data pada key dilakukan menggunakan metode jaccard. Jaccard merupakan algoritma untuk mengukur kesamaan antara dua string. Rentang nilai yang dihasilkan berupa 0 untuk menandakan tidak ada kesamaan dan 100 adalah sama persis. Tahap pada algoritma ini ada tiga yaitu, menghitung panjang string, menemukan jumlah karakter yang sama pada kedua string dan menemukan jumlah transposisi. Transposisi adalah karakter yang sama dan tertukar urutannya pada string. Perhitungan jaccard untuk mencari rentang nilai kemiripan pada data menggunakan persamaan 2.1. 2.1 Hasil dari n-gram : harptitprn1  ha ar r p pt ti it tp pr rn n1 harptitprn1 ha ar r p pt ti it tp pr rn n1 Gambar 3.7. Gambar Data Hasil Jaccard Universitas Sumatera Utara 3.2.7 Pengukuran Kesamaan Data Tiap Kolom pada Data Pada penelitian ini, record yang telah diurutkan akan dilakukan penggabungan record yang teridentifikasi duplikat menjadi satu window dengan parameter edit-distance. Algoritma leveinsthein distance dilakukan untuk edit distance pada proses untuk mengetahui jarak antara dua string pada nama depan, nama belakang, jenis kelamin dan nama ibu. Perbedaan string berupa penambahan insert, penghapusan delete dan penggantian karakter substitute. Perhitungan leveinsthein distance untuk mencari jarak terdekat pada masing-masing data menggunakan persamaan 2.2 dan 2.3. … ∑ dimana : V untuk i = 1,2,…,l d = 0 jika d = 1 jika Data nama = hartati hartati ∑ = d s 1 ,t 1 + d s 2 ,t 2 + d s 3 ,t 3 + d s 4 ,t 4 + d s 5 +t 5 + d s 6 ,t 6 + d s 7 ,t 7 = dh,h + da,a + dr,r + dt,t + da,a + dt,t + di,i = 0 + 0 + 0 + 0 + 0 + 0 + 0 = 0 Gambar 3.8 Gambar Data Hasil Leveinsthein Distance Universitas Sumatera Utara 3.2.8 Pembacaan Data Duplikat pada Suatu Window Pembacaan data duplikat pada suatu window dilakukan menggunakan metode transitive closure. Transitive closure R+ dari relasi R pada data merupakan relasi terkecil yang mengandung R sebagai subset dan bersifat transitive. Suatu graph dikatakan transitive. Suatu graph dikatakan transitive jika terdapat jalan dari titik A ke titik B dan sebuah jalan dari titik B ke titik C, sehingga ada jalan dari titik A ke titik C.

3.3. Perancangan Sistem