Anda di halaman 1dari 7
APLIKASI DATA MINING UNTUK PENCARIAN POLA SEKUENSIAL DENGAN MENGUNAKAN ALGORITMA DIRECT SEQUENTIAL PATTERN GENERATION Arif Djunaidy, Rully Soelaiman, IGP Ary Pradnyana Jurusan Teknik Informatika, Institut Teknologi Sepuluh Nopember (ITS) Kampus ITS, JI. Raya ITS, Sukolilo - Surabaya 60111 Tel. +62 31 5939214, Fax. +62 31 5939363 E-mail: arif@its-sby.edu Abstrak ‘Makalah ini membahas pengembangan satu perangkat lunak untuk aplikasi data mining dalam ‘melakukan analisis. data transaksi yang di dalamnya terkandung pola transaksi sekuensial. Dalam dunia bisnis retail, perangkat lunak yang mampu untuk menemukan pola-pola sekuensial yang dapat digali dari suatu basis data yang besar merupakan alat yang sangat berharga dalam mendukung ‘pembuatan keputusan untuk perencanaan yang akan datang. Perangkat unak yang dikembangkan ‘untuk mencari pola sekuensial dalam suata basis data yang besar didasarkan pada algoritma Direct Sequential Pattern Generation (DSG). Dalam algoritma DSG, sebelum proses pencarian pola dilakukan perlu didefinisikan secara JJelas mengenai strultur basis data yang akan dianalisis, seperti nomor pelanggan, waktu transaksi dan item yang terjual pada transaksi yang bersangkutan. Kemudian, dari basis data yang telah ditentukan, ditetapkan satu rilat ambang batas yang harus dipenuhi oleh suatu pola sekuensial yang ‘akan dicari. Dari data yang ada, algoritma DSG akan berupaya untuk membentuk satu graf berarah ‘yang merepresentasikan hubungan antar item yang terdapat dalam transaksi, Penelusuran awal dari ‘graf dilakukan untuk memperoleh pola awal dari transaksi, yaitu suatu pola yang membentuk urutan dari dua buah item yang memenuhi nilai ambang batas yang telah ditentukan. Kemudian, penelusuan lebih lanjut dilakukan untuk memperoleh sejumlah pola terpanjang lebih dari dua item yang ‘memeruhi nilai ambang batas yang ada. ‘Perangkat lunak yang dikembangkan telah diuji coba terhadap suatu basis data yang berisikan ribuan item data transaksi. Uji coba yang dilakukan menunjukkan balwa algoritma DSG mampu memberikan hasil dalam waktu yang relatif singkat. Walaupun pengufian dilakukan secara terbatas dalam lingkup laboratorium, namun perangkat lunak yang dikembangkan akan mampu untuk digunakan dalam membantu pembuatan keputusan dalam perencanaan pengadaan stok barang dalam dunia bisnis retail yang nyata. Kata Kunci: data mining, pola sekuensial, basis data, direct sequential pattern generation, graf berarah 1. Pendahuluan Dewasa imi, kemampuan teknologi untuk menghasilkan dan mengumpulkan data telah berkembang dengan sangat pesat. Penggunaan teknologi bar code untuk berbagai produksi komersial, proses komputerisasi dari berbagai data transaksi bisnis dan bidang pemerintahan, serta dukungan tersedianya sarana dan prasarana untuk pengumpulan data telah menyebabkan jumlah data yang terkumpul menjadi sangat besar Dilain pihak, aplikasi basis data telah secara luas digunakan dalam berbagai bidang manajemen bisnis, administrasi pemerintahan, manajemen data untuk industri dan ilmu pengetahuan, dan berbagai aplikasi lainnya, Dalam kaitan ini, perlu dicatat bahwa jumlah data yang tersedia berkembang dengan cepat selaras dengan perkembangan manajemen basis data yang ada. Pada gilirannya, hal ini menyebabkan timbulnya kebutuhan yang mendesak akan adanya teknik-teknik baru yang dapat secara D-195 D-196 Proceedings, Komputer dan Sistem Intelijen (KOMMIT2000) ‘Auditorium Universitas Gunadarma, Jakarta, 23 -24 Agustus 2000 bik melakukan pemrosesan data untuk memperolch informasi yang bermanfaat bagi suatu organisasi 01,3,5) Data mining dapat diartikan sebagai suatu proses ekstraksi informasi yang bermanfaat dan otensial dari selumpulan data yang secara implisit terdapat dalam suatu basis data. Dengan ‘menemukan informasi yang bermanfaat dari sekumpulan data yang ada, maka berbagai informasi yang otensial dan berbagai hubungan yang dapat terjadi antar item data dalam transaksi akan dapat dickstrak dari sekumpulan data untuk dilakukan pengkajian lebih jauh dari berbagai sudut pandang. ‘Agar penenerapan data mining dapat memberikan hasil yang efeltif, maka seseorang harus melakukan evaluasi kebutuhan dan memperhitngkan tantangan-tantangan apa saja yang mungkin dihadapinya dalam mengembangkan suatu teknik data mining. Untuk ini, seorang pengembang data ‘mining harus memperhatikan beberapa hal penting seperti: penanganan berbagai jenis data yang akan diekstrak, efisiensi dari algoritma data mining yang digunakan, kegunaan dan keakuratan hasil proses data mining, interpretasi tethadap berbagai jenis hasil proses data mining, serta format dan semantik dari sumber data yang digukan [6], Oleh karena data mining dapat menciptakan banyak tantangan baru, maka aplikasi-aplikasi dari metode dan teknik statistik serta sistem basis data konvensional yang ada tidak dapat digunakan secara langsung untuk méayelesaikan berbagai masalah yang ada dalam data mining. Oleh karenanya perlu terus dilakukan penelitian untuk menemukan metode data mining baru atau periu dikembangkan suatu telnik terintegrasi untuk sebuah sistem data mining yang efektif dan efisien. Dalam kontek ini, data ‘mining itu sendiri telah menjadi satu bidang baru yang independen [6]. ‘Dewasa ini, data mining —yang juga dikenal sebagai sebagai satu teknik yang dapat digunakan ‘untuk menemukan suatu pola dari suatu basis data yang belur: diketakui sebeluzmnya- telah membuka satu topik yang sangat menarik dan menjanjikan dalam bidang rekayasa data. Pada seat ini, data ‘mining telah diaplikasikan secara luas dalam lingkungan industri, terutama dalam industri retail untuk diaplikasikan dalam melakukan analisis techadap data transaksi terdahulu dan menemukan sejumlah pola yang secara implisit terkandung di dalamnya. Dalam kaitan ini, data transaksi yang harus dianalisis biasanya melibatkan basis data dalam ukuran yang sangat besar. Untuk ini teknik yang. digunakan haruslah melibatkan algoritma yang dapat memberikan kinerja yang efisien dan realists untuk data transaksi dalam ukuran yang sangat besar [4, 5] Dalam penerapannya, telah banyak kemajuan yang dicapai dalam peagembangan teknik-teknik baru untuk data mining, seperti teknik yang digunakan untuk keperluan klasifikasi data, analisis clustering, dan pencarian pola sekuensial. Khusus untuk aplikasinya dalam pencarian pola sekuensial, berbagai metode telah pemah dikembangkan, seperti pendekatan secara statistik dan pendekatan yang berorientasi pada basis data yang besar [2, 4]. Dalam makalah ini dibahas pengembangan perangkat lunak untuk melakukan pencarian pola- pola sekuensial dalam suatu basis data yang berbasis client-server. Dalam implementasinya, perangkat lunak yang dihasilkan dibuat dengan menggunakan algoritma Direct Sequential Pattern Generation (OSG) yang memanfaatkan model data graf berarah untuk mencoba memperoleh pola-pola sekuensial yang diinginkan, yaitu pola-pola yang memenuhi suatu nilai ambang batas yang telah ditentukan sebelumnya 2. Pencarian Pola Sekuensial Pola sekuensial dalam suatu basis data merupakan salah satu jenis informasi yang dapat digali dengan menggunakan teknik data mining. Dari pola-pola sekensial yang dapat diperoleh dalam basis data transaksi jual-beli diharapkan dapat membantu manajemen suatu perusahaan dalam proses Pengambilan keputusan yang berkaitan dengan pola pembelian dari para pelanggannya. Sebagai satu contoh sederhana dari pola seluensial ini adalah misalnya terdapat 10% dari keseluruhan pelanggan suatu supermarket yang membeli roti, yang pada kesempatan berikutnya juga membeli selai, Sudah tentu, selain kedua jenis pembelian ini mungkin saja pelanggan yang ada juga membeli jenis barang, ‘yang lain. Secara umum, pola-pola sekuensial banyak dijumpai dalam lingkungan industri retail, yang ‘ujuan utamanya bermuara pada kepuasan para pelanggannya, Namun, teknik pencarian pola yang demikian dapat juga diaplikasikan dalam berbagai bidang yang lain, baik untuk bidang ilmu Pengetahuan maupun bisnis. Sebagai contoh, dalam bidang Kesehatan, suatu pola sekuensial yang ‘Aplikasi Data Mining Untuk Pencarian Pola Sekuensial D-97 Dengan Menggunakan Algoritma Direct Sequential Pattern Generation dapat berupa penyakit-penyakit yang diderita oleh pasien, yang dapat diperolch dalam rentetan Jeunjungan yang dilakukan para pasien, Pola yang ditemukan kemudian dapat digunakan untuk melakukan pengkajian dalam mengidentifikasi jenis penyakit yang mungkin dialami oleh pasien sebelum penyakit yang diderita berikumya (2, 4, 6) Dalam bisnis retail, data transaksi pelanggan yang biasa dicatat berupa informasi nomor pelanggan, waktu transaksi dan item yang dibeli oleh pelanggan. Untuk menemukan suatu pola sekuensial, maka data perlu diurut berdasarkan nomor pelanggan atau nomor transaksi. Dalam kaitan ini, data sekuensial berupa satu daftar transaksi yang terurut berdasarkan urutan waktu transaksi yang, ada. Sedang semua transaksi yang dilakukan oleh pelanggan yang diurut berdasarkan waktu ‘transaksinya disebut sebagai urutan item pelanggan (customer sequence). 3. Tahapan Pencarian Pola Sekuensial Secara umum, untuk memperoleh pola sekuensial yang diinginkan dalam suatu basis data diperlukan beberapa tahapan proses. Langkah pertama yang harus dilakukan berkaitan dengan enentuan struktur dari basis data yang akan diproses. Untuk: ini periu didefinisikan dengan jelas item- item data yang akan dianalisis. Begitu struktur penyimpanan data telah ditentukan, maka dapat diputuskan cara untuk melakukan ekstraksi data yang dibutubkan. Oleh Karena data yang akan dianalisis merupakan satu set data dari transaksi pada masa lampau, maka proses pencarian pola sekuensial tidak perlu dilakukan dalam mode wal nyata (real-time), sehingga tidak mengganggu transaksi yang sedang berjalan. Setelab data yang akan dianalis telah diekstrak dan hanya tersimpen dalam suatu data lokal, maka langkah berikutnya harus ditertukan suatu nilai ambang batas (threshold) yang harus dipeauhi ‘leh pola sekuensial yang diharapkan. Dalam makalah ini, satu urutan item data yang membentuk pola sekuensial dan memenuhi nilai ambang batas yang ditentukan disebut sebagai urufan item besar (large sequences). Urutan besar ini harus didukung oleh p% pelanggan yang melakukan transaksi, dengan p sebagai nilai ambang batas yang telah ditentukan sebelumnya, Pencarian pola sekuensial diawali dengan berupaya untuk membentuk urutan besar yang terdiri dari dua buah item data yang memenuhi nilai ambang batas yang ditentukan, Untuk selanjutnya, uurutan item besar yang demikian akan disebut sebagai urufan item besar-2. Dengan menggunakan pola awal ini, pencarian pola dilanjutkan dengan berupaya untuk menemukan sebanyak mungkin pola terpanjang yang dapat digali dari basis data. Selanjutnya algoritma DSG digunakan untuk melalcukan proses pencarian satu set pola terpanjang yang memenuhi nilai ambang batas yang ditentukan. Sebuah graf berarah yang merepresentasikan asosiasi antar item-item data yang ada dalam transaski dibentuk untuk melakukan analsis lebih lanjut dari urutan item besar-2 yang merupakan pola awal guna ‘menggali semua urutan item data dengan panjang lebih besar atau sama dengan dua yang telah ‘memenuhi nilai ambang batas yang ditentukan. Urutan item yang demikian selanjutnya akan disebut sebagai uruian item besar-k dengan k > 2. 4. Algoritma Direct Sequential Pattern Generation (DSG) Algoritma DSG merupakan salah satu dari sekian banyak algoritma-algoritma lain, seperti apriori all, apriori some, generalized sequential pattern, dan lain sebagainya. Masing-masing algoritma ini menawarkan teknik dan kemampuan tersendiri dalam menyelesaikan permasalahan pencarian pola sekuensial (3, 4] Seperti disinggung sebelumaya bahwa algoritma DSG dipekerjakan pada satu model data graf berarah atau graf asosiasi yang merepresentasikan hubungan antar item yang terdapat dalam data ‘ransaksi. Kondisi awal dari graf ini hanya merepresentasikan hubungan antar dua item yang 2 yang terbentuk dari contoh data dalam tabel I harus paling sedikitnya didukung, oleh dua pelanggan. abel 1. Contoh Unutan Item yang Dibeli Pelanggan No-Pelanggan | _Urutan Item A.BLCD. CBE ACB AED C.B.DE Graf asosiasi dibentuk dengan mengidentifikasi urutan langsurig (direct sequence) dua-dua dari item-item (urwtan item besar-2) yang dibeli oleh setiap pelanggan. Sebagai contob, untuk pelanggan ‘nomor 1, terdapat enam buah uruian item besar-2, yaitu , , , , dan . Untuk membentuk graf asosiasi, maka urufan item besar-2 yang memenuhi nilai ambang, batas dari setiap pelanggan harus dibentuk. Tabel 2 menunjukkan urufan item besar-2 tahap awal untuk datz seperti yang ditunjukkan dalam tabel 1. Sedang graf asosiasi yang dihasilkan untuk wrwfan item besar-2 yang ditunjukkan dalam tabel | diperlihatkan dalam gambar ! abel 2. Hasil Awal Urutan Item Besar-2 mah | No-Pean Nomor | Uretan | jlomlsk | NePaimene | 1 A,B 2 1,3 2 AC “2 13 3 A,D. 2 14 4 B,D 2 15 5 B,E 2 25 / olen 323s . 7 Jep 2s @_ce aps Dengan menggunakan asosiasi graf yang ditunjukkan dalam gambar 1, selanjutnya dilakukan penelusuran graf untuk memperoleh urutan item besar-k untuk k = 2. Untuk ini, item trakhir dalam urutan ke- dari setiap urutan item besar-k S, dengan k = 2, k akan digunakan untuk mencari kemungkinan pengembangan urutan tersebut menjadi urutan k+/. Pengembangan suatu wrutan item besar-k ini dilakukans dengan cara seperti berikut: Sika dimisalkan bahwa , ..... Se mewakili sebuah urwian ftem besar-k dan P, ..... Se merupakan himpunan nomor pelanggan dari pendukung urutan item besar-k dan terdapat satu lintasan (edge) dari item S; ke suatu item v, maka urutan boleh dikembangkan menjadi satu urutan itemt Si, Sz, ..-; Sp S> jika dan hanya jika nilai kardinalitas dari (PS), S,, ..., S> © P) lebih besar atau sarna dengan nilai ambang batas yang telah ditentukan. Proses penelusuran dengan cara suatu urutan item seperti ini terus dilakukan sehingga tidak ada lagi urwfan item besar-k yang Jebib panjang dari yang diperoleh sebelumnya: . Untuk ini penelusuran ‘graf menemukan satu edge baru yang merupakan kelanjutan langsung dari urutan , yaitu edge . Himpunan dukungan nomor pelanggan dari F > P adalah (2, 3. 5} 0 (2, 5 {2, 5}. Oleh karena nilai kardinalitas dari hasil interseksi himpunan pendukungnya memeauhi nilai ‘ambang batas yang ditentukan yaitu 40% (dengan kata lain jumlah dukungan harus lebih besar atau ‘sama dengan 2), maka uruian item besar-2 dapat dikembangkan menjadi urutan item besar-3 . Cara yang sama juga dilakukan untuk wratan item besar-2 laiinya, tetapi temyata proses penelusuran graf asosiasi untuk contoh di atas hanya memberikan tambahan satu urutan item besar-3, yaitu , sehingga hasil akhir dari seluruh urutan item besar yang dapat diperoleh untuk contoh ini ditunjukkan dalam tabel 3. Tabel 3. Hasil Akhir Pencarian Pola Sekuensial Jumlah | No-Pelanggan Dukungan | Peadukung AB 2 13 AC 13 AD 14 B,D 15 BE 2,5 CB 2.35 cD 1,5 GE 2.5 CBE 2.5 Nomor | Urutan ua] aforfro] = Untuk contoh di atas, pola-pola sekuensial yang memenuhi nilai ambang batas 40% tercermin dari hasil akhir yang ditunjukkan dalam tabel 3. Dari urutan nomor 9 dalam tabel ini, misalnya, dapat diinterpretasikan bahwa terdapat 40% dari keseluruhan pelanggan yang melakukan pembelian item “E” setelah sebelumnya juga memberli item-item “C” dan “B”. Dari ilustrasi di atas, maka secara keseluruhan algoritma untuk mendapatkan satu set pola sekuensial yang memenuhi sutau nilai ambang batas 6 yang diberikan dapat direpresentasikan dalam bbentuk pseudo-code seperti diperlihatkan dalam gambar 2. Dalam pseudo-code ini, wib-k merupakan singkatan dari urutan item besar dengan jumlah dukungan sebesar k pelanggan. D200 Proceedings, Komputer dan Sistem Intelijen (KOMMIT2000) ‘Auditorium Universitas Gunadarma, Jakarta, 23 - 24 Agustus 2000 Bentuk list yang berisikan semia wib-2 yang memenuhi nilai anbang batas 6; Buat graf asosiasi G yang berkorespondensi dengan uib-2 yang dihasilkan; FOR i = 170 jumlah uib-2 D0 BEGIN t= uib-2 ke-i dalam list; p = item terakhir dari t; L = list dari sema simpul yang merupalan urutan langsung berilutnya dari pr IF List + @ TaN FOR setiap simpul q dalam L DO BEGIN selesai = FALSE; P= ge WHILE NoT selesai DO BEGIN Takukan interseksi pendulung dari t dan uib-2 dari

Anda mungkin juga menyukai