II.3 .4. Algoritma Apriori
Algoritma apriori merupakan algoritma untuk mencari frequent itemset yang berdasarkan prinsip apriori, yaitu jika suatu itemset merupakan frequent
itemset maka semua subset-nya akan berupa frequent itemset Tan, et.al. 2006.
Pembentukan frequent itemset dilakukan dengan mencari semua kombinasi item –
item yang memiliki support lebih besar atau sama dengan minsup yang telah
ditentukan. Pseudocode
untuk pencarian frequent itemset menggunakan algoritma apriori
adalah sebagai berikut Gunawan, 2003 :
= candidate itemset untuk ukuran k
= frequent itemset large itemset untuk ukuran k = {candidate 1-itemset}
= {large 1-itemset}
for do begin
new candidate for all transaction
do begin candidate contained in
for all candidates do
end end
Answer =
Algoritma diatas dapat dijelaskan sebagai berikut : a. Pada iterasi pertama dihitung jumlah kemunculan setiap item dalam transaksi
untuk menentukan large 1-itemset. Pada iterasi selanjutnya akan dihasilkan candidate k-itemset
menggunakan frequent k-1-itemset yang ditemukan pada
iterasi sebelumnya.
Candidate generation
diimplementasikan menggunakan sebuah fungsi yang disebut apriori-gen. Apriori-gen digunakan
untuk menghasilkan candidate itemset, yang menyebabkan tidak seluruh itemset
diolah pada proses selanjutnya, hanya yang memenuhi persyaratan saja yaitu sesuai dengan support yang telah ditentukan. Hal ini mempersingkat
waktu proses pencarian seluruh aturan asosiasi. b. Setelah itu, dilakukan penelusuran dalam basisdata untuk menghitung support
bagi setiap candidate itemset dalam . Untuk setiap transaksi t, dicari semua candidate itemset t
dalam set yang terkandung dalam transaksi tersebut. Kumpulan dari semua candidate itemset dalam yang terkandung dalam
transaksi t disebut dan ditulis dengan notasi . c. Selanjutnya nilai support dari semua candidate k-itemset dalam Ct
dinaikkan. Penelusuran dilanjutkan pada transaksi berikutnya sampai semua transaksi dalam basisdata ditelusuri. Lalu akan dilakukan eliminasi candidate
itemset yang memiliki nilai support lebih kecil dari minsup. Sedangkan semua
candidate k-itemset yang memenuhi minsup disimpan dalam yang akan
digunakan untuk membentuk large k+1-itemset. Algoritma berakhir ketika tidak ada large itemset baru yang dihasilkan.
Pencarian frequent itemset menggunakan algoritma apriori memiliki 2 karakteristik penting. Pertama, apriori merupakan algoritma level-wise dimana
proses pada algoritma ini membangkitkan frequent itemset per level, dimulai dari level 1-itemset
sampai ke itemset terpanjang dan candidate level yang baru, dibentuk dari frequent itemset yang ditemukan di level sebelumnya lalu
menentukan nilai supportnya. Kedua, algoritma ini menggunakan strategi generate and test
untuk menemukan frequent itemset. Pada tiap iterasi, candidate itemset
yang baru, dihasilkan dari frequent itemset yang ditemukan pada iterasi sebelumnya. Nilai support tiap candidate dihitung dan di bandingkan kembali
dengan ambang batas minsupnya. Jumlah iterasi yang dibutuhkan algoritma ini adalah
, dimana merupakan ukuran maksimum dari frequent itemset
. Algoritma apriori menggunakan arah pencarian bottom-up, dimana arah
pencarian dimulai dari frequent itemset menuju itemset terpanjang. Strategi yang digunakan adalah breadth-first search dimana proses pencarian dilakukan per
level dan untuk tiap level-nya ditentukan nilai support-nya untuk menemukan
frequent itemset pada level tersebut. Sedangkan strategi perhitungan nilai support
dilakukan dengan horizontal counting, dengan cara membaca transaksi satu persatu, jika ditemukan itemset yang dicari pada transaksi tersebut maka counter
bertambah satu, begitu selanjutnya.
II.3 .5. Penambangan Aturan Asosiasi Langka Rare Association Rule