BAB II. LANDASAN TEORI
2.3. Algoritma Arima (A Rare Itemset Miner Algorithm)
Algoritma Arima merupakan algoritma untuk mencari rare itemset.
Rare itemset adalah itemset yang muncul bersama-sama dalam sedikit
transaksi atau persentase sangat kecil pada transaksi dalam database.
Pembentukan rare itemsetdilakukan dengan mencari semua kombinasi item –
item yang memiliki support lebih kecil atau sama dengan minsup yang telah
ditentukan.
Suatu aturan asosiasi disebut rare, jika support kurang dari nilai
minimum support. Aturan asosiasi rare r adalah benar jika r adalah confident,
Minimal rare itemset (mRI) adalah suatu itemset yang sangat jarang
terjadi tetapi semuasubsetsering terjadi.
Minimal zero generator (mZG)adalah suatu itemset yang bernilai nol
dari semua subset yang bukan nol itemset(non-zero itemsets).
Gambar 2.2 Kiri : Contoh Dataset (D). Kanan : Rangkaian pola
Dataset D (Szathmary, L., et.al, 2007).
Pada gambar 2.3 digambarkan proses pencarian rare itemset dengan
nilai minsup=3. Pada C
1atau candidate-1ada 5 itemset yang terdiri dari ({A},
{B}, {C}, {D}, dan {E}). {D} merupakan minimal rare itemset(mRI) karena
itemset ini memiliki nilai support lebih kecil dari minimum support yang
Kemudian pada C2 atau candidate-2 ada 10 itemset yang terdiri dari ({AB},
{AC}, {AD}, {AE}, {BC}, {BD}, {BE}, {CD}, {CE}, dan {DE}). {CD}
merupakan minimal zero generator (mZG) karena nilai support itemset
bernilai nol, ({AD}, {BD}, {DE}) merupakan rare itemset karena itemset ini
memiliki nilai support lebih kecil dari minimum support yang ditentukan,
({AB}, {AC}, {AE}, {BC}, {BE}, {CE}) merupakan frequent itemset. Pada
C3 atau candidate-3 ada 10 itemset yang terbentuk yaitu ({ABC}, {ABD},
{ACD}, {ACE}, {ABE}, {ADE}, {BCD}, {BCE}, {BDE}, dan {CDE}).
({ABC}, {ACE}) merupakan minimal rare itemset(mRI) karena itemset ini
memiliki nilai support lebih kecil dari minimum support yang ditentukan,
({ABD},{ADE}, {BDE}) merupakan rare itemsetkarena itemset ini memiliki
nilai support lebih kecil dari minimum support yang ditentukan, ({ACD},
{BCD}, {CDE}) merupakan rare itemsetdengan nilai support 0 dan ({ABE},
{BCE}) merupakan frequent itemset.Kemudian pada C4 atau candidate-4ada 5
itemset yang terbentuk yaitu ({ABCD}, {ACDE}, {ABCE}, {ABDE}, dan
{BCDE}). ({ABCD}, {ACDE}, {BCDE}) merupakan rare itemdengan nilai
support 0 dan ({ABCE}, {ABDE}) merupakan rare itemset. Proses ini
berhenti pada C5 atau candidate-5karena pada tahap ini tidak ada rare itemset
yang terbentuk.
Apabila diketahui :
mRI = minimal rare itemset
S = menyimpan semua atribut di dataset
i = jumlah itemset
= candidate itemsetuntuk ukuran i
= rare itemsetuntuk ukuran i
= candidate itemset
Maka pseudocode untuk pencarian rare itemset menggunakan
algoritma Arimaadalah sebagai berikut (Szathmary, L., et.al, 2007) :
Inisialisasi mZG= null
Inisialisasi S = semua atribut di dataset
Inisialisasi i = jumlah terkecil itemset di mRI
Tambahkan semua itemset terkecil di mRIke dalam
Tambahkan anggota atau nilai support = 0 ke dalam mZG
Tambahkan anggota atau nilai support > 0 ke dalam
While ( ≠ø)
Loop over the elements of (r)
//in Cand no duplicates are allowed:
fall possible supersets of r using S;
loop over the elements of (c)
if c has a proper subset in mZG, then
delete c from ;
//i.e., if c is a superset of a min. zero gen.
//no duplicates are allowed in :
∪ ;
= ø; //re-initializing
SupportCount( ); //requires one database pass
∪{(i + 1)-long itemsets in mRI};
mZG mZG ∪{z € | support(z) = 0};
{r € | support(r) > 0};
i i + 1;
; //(all non-zero) rare itemsets
Gambar 2.3 Algoritma Arima (A Rare Itemset Miner Algorithm)
(Szathmary, L., et.al, 2007)
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 rare-itemset yang
ditemukan pada iterasi sebelumnya.
b. Setelah itu, dilakukan penelusuran data untuk menghitung support bagi
setiap candidate itemset dalam . Dalam tahap ini pastikan tidak
ada duplikat untuk . Untuk itu jika suatu data telah terdaftar di
mZGmaka data tersebut akan dihapus di dalam .
c. Kemudian akan dilakukan eliminasi minimal zero generator yang
memiliki nilaisupportsama dengan 0 dan eliminasi rare itemset yang
memiliki nilaisupportlebih besar dari 0. Sedangkan semuacandidate
k-itemset yang memenuhi minsup disimpan dalam yang akan
digunakan untuk membentuklarge (k+1)-itemset. Algoritma berakhir
ketika tidak adalarge itemsetbaru yang dihasilkan.
Algoritma Arima menggunakan arah pencarian bottom-up, dimana
arah pencarian dimulai dari rare itemset menuju itemset terpanjang.
Strategi yang digunakan adalah breadth-first search dimana proses
support-nya untuk menemukan rare itemsetpada leveltersebut. 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.
2.4.Contoh Penerapan Algoritma Arima (A Rare Itemset Miner Algorithm)
Berikut akan ditunjukkan cara kerja algoritma Arima untuk
menemukan rare itemset dan menemukan aturan asosiasi yang tepat dengan
minsup=3. Tabel 2.2 adalah contoh dataset yang akan digunakan untuk
menemukan aturan asosiasi langka yang terdapat pada data tersebut.
Tabel 2.2 Tabel Transaksi B (Szathmary, L., et.al, 2007)
ID Itemset
1 A, B, D, E
2 A, C
3 A, B, C, E
4 B, C, E
5 A, B, C, E
Dari tabel diatas maka proses pencarian rare itemsetdengan algoritma
Arimaadalah sebagai berikut :
mZG = ø
S = {A, B, C, D, E)
i = 1
C
1R
1{A} 4 {D} 1
{B} 4
{C} 4
{D} 1
{E} 4
mZG
before= ø
mZG
after= ø
C2 R2
Candidate 2-itemset Support Rare 2-itemset Support
{A, D} 1 {A, D} 1
{B, D} 1 {B, D} 1
{C, D} 0 {E, D} 1
{E, D} 1
mZG
before= ø
mZG
after= {CD}
C3 R3
Candidate 3-itemset Support Rare 3-itemset Support
{A, B, D} 1 {A, B, D} 1
{A, D, E} 1 {A, D, E} 1
{B, D, E} 1 {B, D, E} 1
{A, B, C} 2 {A, B, C} 2
{A, C, E} 2 {A, C, E} 2
mZG
before= {CD}
mZG
after= {CD}
C4 R4
Candidate 4-itemset Support Rare 4-itemset Support
{A, B, D, E} 1 {A, B, D, E} 1
{A, B, C, E} 2 {A, B, C, E} 2
mZG
before= {CD}
mZG
after= {CD}
C5 R5
Candidate 5-itemset Support Rare5-itemset Support
mZG
before= {CD}
mZG
after= {CD}
Gambar 2.4 Pencarian candidate itemset dan rare itemset dengan
min_supp=3
Penerapan algoritma Arima pada dataset B (Tabel 2.2) dengan
min_supp = 3 diilustrasikan pada Gambar 2.3. Algoritma pertama
mengambil mRI terkecil, {D}, yang bukannon-zeroakan disalin keR
1.2-long
supersets dihasilkan dan disimpan di C
2({AD}, {BD}, {CD} dan {DE}).
Karena {CD} adalah zero itemset, maka data ini disalin ke daftar mZG.
Kemudian yang Non-zero itemsets akan disalin ke R
2. Untuk setiap rare
itemsetdi R
2, memungkinkan supersets yang dihasilkan. Misalnya, dari {AD}
dapat menghasilkan kandidat berikut: {ABD}, {ACD}, dan {ADE}. Jika
kandidat memiliki subset mZG, maka kandidat pasti zero itemset dan dapat
dipangkas ({ACD}). Kandidat non-zero berpotensi disimpan di C
3. Duplikat
tidak diperbolehkan dalam tabel C
i. DarimRI 3-long itemsetsditambahkan ke
C
3({ABC} dan {ACE}).
Algoritma berhenti jika tabel R
ikosong. Gabungan tabelR
imemberikan
semua non-zero rare itemsets. Pada akhirnya, semua mZGs dijadikan satu,
jadi jika diperlukan,zero itemsetsdapat dengan mudah diambil dari daftar ini.
Berdasarkan pencarian rare itemset diatas maka dapat dibuat tabel
Tabel 2.3 minimal Rare itemset (mRI)dengan minimum support= 3
minimul Rare itemset (mRI) Support
{D} 1
{ABC}, {ACE} 2
Dari contoh diatas dapat dilihat bahwa bila nilai minsup dinaikan
maka akan banyak candidate itemset yang terbentuk, sehingga
menyebabkan banyak pengulangan.
Sehingga dengan rare itemsetyang ditemukan diatas dapat diproses
sebagai berikut :
Subsetdari rare itemset: {D} ,{ABC}, {ACE}.
Dari subsetyang ada dapat dibentuk aturan asosiasi sebagai berikut :
a. A⇒B & C
c(A⇒B & C)= s(A,B,C)/sA
=2/4
=50%
b. B & C ⇒A
c(B & C ⇒A)= s(A,B,C) /s(B,C)
=2/2
=100%
c. B ⇒A & C
c(B⇒A & C )= s(A,B,C)/sB
=2/4
=50%
d. A & C ⇒B
c(A & C ⇒B)= s(A,B,C) /s(A,C)
=2/3
=75%
e. C ⇒A & B
c(C⇒A & B)= s(A,B,C)/sC
=2/4
=50%
f. A & B ⇒C
c(A & B ⇒C)= s(A,B,C) /s(A,B)
=2/3
=75%
g. A ⇒C & E
c(A⇒C & E)= s(A,B,E)/sA
=2/4
=50%
h. C & E ⇒A
c(C & E ⇒A)= s(A,C,E) /s(C, E)
=2/3
i. C⇒A & E
c(C⇒A & E)= s(A,C,E)/sC
=2/4
=50%
j. A & E⇒C
c(A & E⇒C)= s(A,C,E) /s(A,E)
=2/3
=75%
k. E⇒A & C
c(E⇒A & C)= s(A,C,E)/sE
=2/4
=50%
l. A & C⇒E
c(A & C⇒E)= s(A,C,E) /s(A,C)
=2/3
=75%
Semua aturan asosiasi yang ada ternyata mempunyai nilai
confidence ≥ 70% sehingga semua aturan asosiasi yang terbentuk diatas
27
BAB III
ANALISIS DAN PERANCANGAN SISTEM
Perancangan program aplikasi dalam skripsi ini menggunakan aturan linear
sequential (waterfall). Pada bab ini akan dibahas tahap pertama dan kedua yaitu
analisis dan definisi kebutuhan, perancangan sistem dan perangkat lunak.
Tahap-tahap yang digunakan adalah sebagai berikut
3.1. Fase Analisis Kebutuhan Sistem
Dalam dokumen
Pengembangan alat bantu penambangan aturan asosiasi langka menggunakan algoritma arima (a rare itemset miner algorithm).
(Halaman 37-48)