• Tidak ada hasil yang ditemukan

Publication Repository Dinatek FP Max

N/A
N/A
Protected

Academic year: 2018

Membagikan "Publication Repository Dinatek FP Max"

Copied!
7
0
0

Teks penuh

(1)

ANALISA PENCARIAN FREQUENT ITEMSETS MENGGUNAKAN

ALGORITMA FP-MAX

Suhatati Tjandra

Dosen Teknik Informatika Sekolah Tinggi Teknik Surabaya

e-mail : tati@stts.edu

ABSTRAK

Association rule mining

merupakan sub bab dari data mining yang bertujuan untuk mencari

frequent itemset

dan menemukan hubungan di antara item-item dalam suatu database. Tujuan

utama dari association rule mining adalah menemukan frequent itemset dan men-generate

association rule

. Karena banyaknya jumlah frequent itemset yang dihasilkan jika menggunakan

frequent itemset mining

, maka dikembangkan

maximal frequent itemset mining

yang hanya

menghasilkan frequent itemset yang maximal. Sebuah frequent itemset disebut maximal jika

tidak ada frequent itemset lain yang merupakan superset dari itemset tersebut. Algoritma

FP-MAX menggunakan dasar struktur tree yang dikenal dengan FP-Tree.

Kata kunci : Data Mining, FP-Max, FP-Tree, Itemset

ABSTRACT

Association rule mining

is a part of data mining that has purposes to look for

frequent

itemsets

and to find the relation among items in a database. The main purposes of association

rule mining are to find frequent itemsets and to generate

association rule

. There are many

frequent itemsets being resulted when using

frequent itemset mining

, then

maximal frequent

itemset mining

is developed, where it only results maximal frequent itemset. A frequent itemset

is maximal if there is no other frequent itemset that is a superset for it. FP-MAX use the tree

structures which called FP-Tree.

Keywords :Data Mining, FP-Max, FP-Tree, Itemset

PENDAHULUAN

Perkembangan teknologi informasi yang cukup pesat menyebabkan penyimpanan dan pengolahan data menjadi suatu hal yang cukup vital. Data yang telah tersimpan dalam database tidak dapat digunakan secara maksimal tanpa diamati lebih dalam, mengenai fakta-fakta yang tersimpan dalam data tersebut. Data mining, bertujuan untuk mencari pengetahuan atau fakta-fakta yang tersimpan dalam data, oleh karenanya data mining ini terus dikembangkan dan diteliti.

Data mining bukanlah suatu bidang yang berdiri sendiri, melainkan terdiri dari gabungan beberapa disiplin ilmu, seperti halnya machine learning, statistika, dan database. Tidak seperti halnya classical statistic, pada data mining, lebih

ditekankan untuk mencari dan menemukan pengetahuan yang tidak hanya akurat, tetapi juga dapat dipahami oleh user. Comprehensibility (tingkat pemahaman) sangatlah penting ketika pengetahuan yang ditemukan akan digunakan sebagai bahan pertimbangan dalam pengambilan suatu keputusan. Jika pengetahuan yang ditemukan tidak dapat dipahami oleh user, user tidak mendapat gambaran mengenai apa yang sedang terjadi. Pada kasus ini, sangat besar kemungkinan user tidak mempercayai pengetahuan yang didapatkan dari hasil data mining sebagai bahan pertimbangan dalam pengambilan keputusan. Hal ini akan berakibat pada pengambilan keputusan yang buruk atau kurang baik.

(2)

preparation (data selection, data preprocessing), data transformation, data mining, dan analisis of knowledge. Setiap langkah harus diterapkan dan harus diselesaikan terlebih dahulu untuk mencapai tahap atau langkah berikutnya. Tahapan pada data mining merupakan langkah yang menunjukkan kecerdasan sistem komputer dalam mengambil pengetahuan atau keputusan.

Frequent Itemset

Frequent itemset mining adalah algoritma yang digunakan untuk mencari frequent itemset. Frequent itemset mining dapat diklasikasifikan menjadi tiga kelompok yaitu: algoritma mining Frequent Itemset (FI), algoritma mining Frequent Closed Itemset (FCI), dan algoritma mining Maka sebuah itemset X dapat didefinisikan sebagai X

I dan sebuah tidset Y dapat didefinisikan sebagai Y

T. Support sebuah itemset X adalah jumlah transaksi dimana terdapat item X didefinisikan sebagai

(X). Sebuah itemset X disebut frequent itemset apabila support X lebih besar atau sama dengan nilai minimum support yang dispesifikasikan (

(X)

min_supp ). Minimum support adalah suatu nilai yang menentukan sebuah itemset frequent atau tidak, dimana minimum support ditentukan oleh user. Misalkan nilai minimum support adalah 40% dan jumlah transaksi dalam database ada lima transaksi. Maka suatu itemset dikatakan frequent bila itemset tersebut minimal terdapat pada dua transaksi ( 40% * 5 = 2 ).

Maximal Frequent Itemset

Sebuah frequent itemset X disebut bersifat maximal apabila tidak ada frequent itemset lain yang merupakan superset dari itemset X. MFI ini dikembangkan untuk mengatasi kelemahan dari association rule mining yaitu banyaknya frequent itemset yang dihasilkan apabila nilai support yang diberikan kecil atau rendah.

Akan tetapi jumlah MFI yang lebih sedikit ini tidak mengurangi informasi yang seharusnya diperoleh. Dengan adanya MFI maka diharapkan rule yang dihasilkan sedikit tapi dapat memberikan informasi yang diinginkan.

Generate Association Rule

Setelah mengetahui frequent itemset, maka langkah selanjutnya adalah menghasilkan rule yang confident. Sebuah rule dapat dinyatakan dalam ekspresi X’  X – X’ untuk semua frequent itemset X, dimana X' X dan X {}. Sebuah rule disebut confident rule apabila nilai confident dari rule tersebut lebih besar atau sama dengan nilai minimum confident yang dispesifikasikan (

p

minconf). Nilai confident ( p ) dihitung dengan rumus p =

(X)/

(X )' atau dapat dikatakan nilai confident ( p ) adalah nilai support X dibagi nilai support X’.

Untuk sebuah itemset X dengan panjang k dapat dihasilkan rule sebanyak 2k-2. Dengan kata lain,

sebuah rule dihasilkan dengan mengkombinasikan item-item penyusun rule tersebut.

FP-Tree

Pembuatan FP-Tree dikerjakan dalam dua fase, dimana dalam setiap fase diperlukan satu kali membaca database. Fase yang pertama membaca database untuk mengenali frequent 1-itemset. Tujuannya adalah untuk menghasilkan order list dari frequent itemset yang dapat digunakan ketika membuat tree pada fase kedua.

Tabel 1

(3)

Transaksi item yang sudah diutkan digunakan untuk membuat FP-Tree.

Setiap sub-transaksi yang sudah di urutkan dibandingkan dengan prefix tree mulai dari root. Jika ada kesesuaian di antara prefix tree dan path dalam tree yang dimulai dari root, support dalam node yang sesuai ditambah satu. Sebaliknya node yang baru akan ditambahkan untuk item dalam suffix dari transaksi untuk melanjutkan path yang baru dimana tiap node baru tersebut nilai supportnya di inisialisasi satu. Selama proses penambahan node baru pada FP-Tree, link di buat di antara node dalam tree dan di masukkan ke dalam tabel header. Tabel header memegang satu pointer per item yaitu pointer untuk kejadian pertama dari item tersebut dalam struktur data FP-Tree. FP-Tree yang digunakan adalah FP-Tree yang sudah dimodifikasi yaitu linknya bi-directional [2]. Gambar 1 merupakan contoh FP-Tree, dimana dataset yang digunakan adalah dataset pada tabel 1.

Gambar 1 FP-Tree

Algoritma FP-MAX

Algoritma FP-MAX ini digunakan untuk mencari semua maximal frequent itemsets di dalam sebuah transaksi atau dalam sebuah dataset. Maximal Frequent itemset ini digunakan untuk memperkecil jumlah informasi yang diperoleh dari hasil mining suatu dataset atau transaksi yang besar tanpa mengurangi informasi yang di dapatkan dari proses mining tersebut.

Sebuah frequent itemset X disebut bersifat maximal apabila tidak ada frequent itemset lain yang merupakan superset dari itemset X. MFI ini dikembangkan untuk mengatasi kelemahan dari association rule mining yaitu banyaknya frequent itemset yang dihasilkan apabila nilai support yang diberikan kecil atau rendah.

Algoritma FP-MAX ini merupakan pengembangan dari algoritma FP-Growth. Algortima FP-Growth merupakan dasar yang digunakan dalam

pengembangan algoritma FP-MAX ini. Algoritma FP-MAX ini sama seperti algoritma FP-Growth prosesnya rekursif. Pada proses awal yang dilakukan algoritma FP-MAX yaitu mencari frequent 1 itemset dengan menggunakan FP-Tree, dari pembacaan pertama suatu dataset atau transaksi, dari FP-Tree yang sudah terbetuk kemudian dicari conditional FP-Treenya setelah itu baru dibentuk MFI-Treenya. Dari MFI-Tree baru bisa didapatkan maximal frequent itemsetnya.

Langkah langkah yang di lakukan dalam

algoritma FP-MAX dapat dilihat pada gambar

2.

Gambar 2 Blok Diagram FP-MAX

Proses yang dilakukan dalam algoritma FP-MAX sampai mendapatkan maximal frequent itemsets:

1. Persiapan dataset yang akan dimining, sebelum proses mining dataset di olah dengan data preparation, agar pengetahuan yang didapatkan dari dataset sesuai dengan kebutuhan.

2. Pembentukan FP-Tree, dari dataset yang sudah diolah kemudian dibentuk FP-Treenya, sehingga mendapatkan frequent 1 itemset.

3. Pencarian Conditional Pattern Base dari FP-Tree yang terbentuk dengan menelusuri semua cabang dari FP-Tree.

4. Pembentukan Conditional FP-Tree, dari Conditional Pattern Base yang sudah di dapatkan dari FP-Tree diolah lebih lanjut untuk mendapatkan Conditional FP-Tree. 5. Setelah mendapatkan Conditional FP-Tree

maka dapat dibentuk menjadi Tree lagi yaitu MFI-Tree.

(4)

Proses yang dilakukan algoritma FP-Max adalah mengolah FP-Tree yang merupakan masukan awal, kemudian mencari Conditional Frequent Pattern Base, dari Conditional Frequent Pattern Base kemudian dibentuk Conditional FP-Treenya, dari Conditional FP-Tree kemudian barulah dibetuk Maximal Frequent Itemset Tree (MFI-Tree). MFI-Tree yang terbentuk kemudian dicari Pattern - patternnya, pattern yang terbentuk dari MFI-Tree itulah yang menjadi Maximal Frequent Itemset. FP-Tree mempunyai header table yang berhubungan dengan Treenya. Item dan jumlah itemnya ditampung pada header table yang diurutkan berdasarkan jumlahnya. Header table pada FP-Tree ini dihubungkan dengan semua node yang ada pada FP-Tree. Dibandingkan dengan algoritma Apriori yang membutuhkan proses scan database berulang ulang, algoritma FP-Growth hanya membutuhkan dua kali scan dataset untuk proses mining semua frequent itemset. Proses scan pertama untuk mencari semua frequent item yang ada pada dataset, proses scan yang kedua untuk membentuk struktur FP-Tree.

Setelah FP-tree terbentuk maka proses untuk memining dataset dapat diwakilkan dengan hanya memining FP-Treenya saja. FP-Tree yang terbentuk kemudian dicari Conditional Pattern Basenya. Proses pencarian Conditional Pattern Base dari FP-Tree gambar 1 adalah:

1.

Pembentukan Conditional Pattern base

untuk header tabel FP-Tree. Item D pada

header tabel dicari linknya ke semua

cabang dari FP-Tree, pencarian ini

dilakukan untuk semua cabang pada

FP-Tree yang mempunyai item D. Dengan

proses yang dilakukan pada gambar 3

maka didapatkan conditional pattern

basenya adalah (BCEAD : 1).

Gambar 3

Langkah 1

Pencarian Conditonal Pattern

2.

Proses pencarian selanjutnya adalah

mencari cabang dari FP-Tree yang

mempunyai item D yang lain, proses ini

dapat dilakukan dengan melakukan

penelusuran dari cabang FP-Tree yang

pertama. Proses pencarian item D kedua

dari FP-Tree didapatkan conditional

pattern basenya adalah (BCED : 1).

Gambar 4

Langkah 2

Pencarian Conditonal Pattern

3. Proses pencarian selanjutnya adalah mencari cabang dari FP-Tree yang mempunyai item D yang lain, proses ini dapat dilakukan dengan melakukan penelusuran dari cabang FP-Tree yang kedua. proses pencarian item D ketiga dari FP-Tree didapatkan conditional pattern basenya adalah (BCD : 1).

Gambar 5

Langkah 3

Pencarian Conditonal Pattern

4. Proses pencarian item D pada cabang terakhir FP-Tree didapatkan conditional pattern basenya adalah (BEAD : 1).

Gambar 6

(5)

5. Proses selanjutnya adalah mencari conditional pattern base untuk item A, E, C, B, langkah yang dilakukan sama dengan langkah pencarian conditional pattern base untuk item D. Conditional pattern base untuk item A adalah (BEA : 1), (BCA : 1), (BCEA : 3). Conditional pattern base untuk item E adalah (BE : 1), (BCE : 5). Conditional pattern base untuk item C adalah (BC : 7). Conditional pattern base untuk item B adalah (-), item B tidak mempunyai conditional pattern base karena setelah item B adalah Root.

Tabel 2

Conditional Pattern Base

Item Conditional Pattern base D (BEAD : 1), (BCD: 1), (BCEAD : 1),

Conditional FP-Tree dibentuk setelah Conditional Pattern base dari semua item pada header table FP-Tree didapatkan. Conditional FP-FP-Tree dibuat dengan tujuan untuk proses pembentukan MFI-Tree. Langkah langkah untuk mendapatkan Conditional FP-Tree dengan minimum support 4 adalah sebagai berikut :

1. Conditional FP-Tree item D, cek apakah pattern pattern yang ada pada conditional pattern base merupakan subset atau bukan , jika merupakan subset dari pattern yang lain maka di kelompokkan menjadi satu, pada Tabel 5.1 item D mempunyai Conditional Pattern (BEAD : 1), (BCD: 1), (BCED : 1), karena semuanya merupakan subset dari pattern (BCEAD : 1), maka Conditional FP-Treenya akan menjadi (B : 4, D : 4).

2. Conditional FP-Tree item A, cek apakah pattern pattern yang ada pada conditional pattern base merupakan subset atau bukan , jika merupakan subset dari pattern yang lain maka di kelompokkan menjadi satu, pada Tabel 5.1 item A mempunyai Conditional Pattern (BEA : 1), (BCA : 1). Karena semuanya merupakan subset dari pattern (BCEA : 3), conditional FP-Tree yang terbentuk adalah (B : 5, A : 5, C : 4, E : 4).

3. Conditional FP-Tree item E, cek apakah pattern pattern yang ada pada conditional pattern base merupakan subset atau bukan , jika merupakan subset dari pattern yang lain maka di kelompokkan menjadi satu, pada Tabel 5.1 item E mempunyai Conditional Pattern (BE : 1). Karena semuanya merupakan subset dari pattern (BCE : 5), conditional FP-Tree yang terbentuk adalah (B : 6, E : 6, C : 5). 4. Conditional FP-Tree item C karena item C hanya mempunyai sebuah pattern pada Conditional Pattern Basenya dan pattern itu memenuhi minimum support yang ditentukan maka maka Conditional FP-Treenya yang dihasilkan dari Conditional Pattern Basennya adalah (B : 7, C : 7).

Semua Conditional FP-Tree yang terbentuk di simpan ke dalam sebuah List Conditional FP-Tree, dari proses di atas maka didapatkan semua

Pattern Base Conditional FP-Tree D (BEAD : 1),

Setelah semua proses pencarian Conditional FP-Tree selesai dilakukan maka proses selanjutnya adalah proses mining untuk mendapatkan (maximal frequent itemset) MFI dari semua conditional FP-Tree yang terbentuk.

(6)

Dengan menggunakan struktur Maximal Frequent itemset maka tidak diperlukan pengecekan lagi pada Conditional FP-Tree apakah pattern tersebut merupakan subset dari pattern yang lainnya, karena dengan struktur tree, pattern yang sama tidak dibentuk node yang baru, hanya pattern yang tidak sama yang dibentuk node baru pada tree.

Maximal Frequent Itemset tree (MFI-Tree) mirip seperti Frequent Pattern Tree (FP-Tree), mempunyai root yang di beri label “ROOT”, dan cabang dari root disebut prefix subtrees. Tiap node pada subtree mempunyai dua buah field yaitu item-name dan node-link. Semua node dengan item yang sama dihubungkan semua. Node link itu menunjuk ke node berikutnya yang mempunyai item sama pada Maximal Frequent Itemset tree (MFI-Tree). Header tabel pada Maximal Frequent Itemset tree (MFI-Tree) sama dengan header tabel pada FP-Tree pada scan pertama dataset. Header tabel pada Maximal Frequent Itemset tree (MFI-Tree) mempunyai dua buah field, yaitu item-name dan head of a node link. Node link menunjuk pada salah satu cabang dari Maximal Frequent Itemset tree (MFI-Tree) yang mempunyai item-name yang sama.

Dengan menggunakan Maximal Frequent Itemset tree (MFI-Tree) maka pattern pattern yang didapatkan dari pembacaan node node yang ada pada Maximal Frequent Itemset tree (MFI-Tree) menghasilkan pattern pattern yang sudah maximal, dan tiap patternnya tidak ada yang merupakan subset dari pattern yang lainnya.

MFI-Tree (Maximal Frequent Itemset Tree) merupakan struktur tree yang dibentuk untuk menampung Maximal Frequent Itemset yang didapat dari frequent pattern tree (FP-Tree), struktur tree yang dipakai sama dengan struktur FP-Tree, MFI-Tree mempunyai header tabel yang dihubungkan dengan node pada tree yang mempunyai item sama dengan yang ada pada header tabel, tiap nodenya yang mempunyai item sama juga dihubungkan.

MFI-Tree dibuat berdasarkan Conditional FP-Tree, dari conditional FP-Tree item itemnya di baca satu persatu kemudian di masukkan ke dalam MFI-Tree. Header tabel yang digunakan sama dengan header tabel pada FP-Tree. Berikut ini akan ditunjukkan langkah langkah pembentukan MFI-Tree dari conditional FP-MFI-Tree. Langkah langkah pembentukan MFI dari conditional FP-Tree adalah sebagai berikut:

1.

Dari pembacaan pertama conditional

FP-Tree akan didapatkan pattern (BACE),

pattern ini kemudian dimasukkan ke dalan

Tree.

Gambar 7

Langkah 1

Pembentukan MFI-Tree

2.

Dari pembacaan kedua conditional

FP-Tree akan didapatkan pattern (BEC),

pattern ini kemudian dimasukkan ke dalan

Tree.

Gambar 8

Langkah 2

Pembentukan MFI-Tree

3.

Dari pembacaan ketiga conditional

FP-Tree akan didapatkan pattern (BC), pattern

ini kemudian dimasukkan ke dalan Tree.

Gambar 9

Langkah 3

Pembentukan MFI-Tree

(7)

Gambar 10

Langkah 4

Pembentukan MFI-Tree

PENUTUP

 Semakin tinggi nilai minimum support yang diberikan semakin sedikit waktu yang diperlukan dan semakin sedikit memori yang dipakai. Hal ini disebabkan karena nilai minimum support berguna untuk memotong jumlah transaksi yang di baca, sehingga proses yang dilakukan semakin sedikit jika minimum support tinggi.

 Algoritma FP-MAX pada saat melakukan mining pada dataset yang besar waktu dan memori yang dipakai semakin besar, karena struktur tree yang dipakai adalah struktur FP-Tree, dan proses mining dilakukan apabila keseluruhan tree sudah terbentuk, hal inilah yang menyebabkan penggunaan memori yang besar.

DAFTAR PUSTAKA

1. Jiawei Han dan Micheline Kamber, Data Mining, Concepts and Techniques, Morgan Kaufmann Publishers. 340 Pine Street, Sixth Floor, San Fransisco, USA, 2001.

2. R. Agrawal dan R. Srikant, Fast Algorithms for Mining Association Rules, Proceedings of the 20th International Conference on Very Large Databases, Santiago, Chile, 1994.

3. B. Goethals and M. Zaki. Advances in frequent itemset mining implementations: Introduction to fimi03. In Workshop on Frequent Itemset Mining Implementations (FIMI’03) in conjunction with IEEE-ICDM, 2003.

Gambar

Gambar 1  FP-Tree  Proses yang dilakukan dalam algoritma FP-MAX
Gambar 3  Pencarian Conditonal Pattern
Tabel 3 Conditional FP-Tree
tabel pada Maximal Frequent Itemset tree (MFI-

Referensi

Dokumen terkait

Jenis penelitian ini adalah jenis penelitian eksperimental murni dengan menggunakan tikus putih jantan yang diinduksi vaksin Difteri Pertusis Tetanus untuk melihat

Untuk mengetahui besarnya pengaruh kualitas produk, citra merek, dan persepsi harga terhadap keputusan pembelian dapat dilihat dari besarnya nilai

Selanjutnya, untuk melihat kontribusi ekspor kopi berpengaruh positif atau tidak, dilihat berdasarkan sumbangannya kepada PDRB sektor perkebunan dibandingkan dengan ekspor

Tujuan penelitian ini adalah untuk mengidentifikasi dan menganalisis penerapan terapi perilaku: token ekonomi pada klien dengan gangguan sensori persepsi:

Hasil empiris dari penelitian ini menggambarkan bahwa upah minimum kabupaten dan pertumbuhan ekonomi berpengaruh terhadap tingkat pengangguran, sedangkan jumlah

Titik studi yang diambil untuk dilakukan analisis bahaya pada tugas akhir ini terdapat pada unit main

[r]

Waskita Karya (WSKT) mempertimbangkan akan kembali menerbitkan obligasi tahap II sebesar Rp 1,5 triliun pada tahun 2015, yang diperkirakan pada Mei atau bulan berikutnya.. Rasio