Oleh Kelompok 1
IRFAN JUNI (H121 10 251)
NOER NI’MAT (H121 10 260)
MEGAWATI (H121 10 274)
AMANDA (H121 10 284)
A. Pendahuluan
Data mining merupakan
suatu proses pendukung pengambil keputusan dimana kita mencari pola informasi
dalam data. Pencarian ini dapat dilakukan oleh pengguna, misalnya dengan
menggunakan query (dalam kasus ini sangat sulit dilakukan) atau dapat dibantu
dengan suatu aplikasi yang secara otomatis mencari pola informasi pada basis
data. Pencarian ini disebut discovery. Discovery adalah proses
pencarian dalam basis data untuk menemukan pola yang tersembunyi tanpa ide yang
didapatkan sebelumnya atau hipotesa tentang pola yang ada. Dengan kata lain
aplikasi mengambil inisiatif untuk menemukan pola dalam data tanpa pengguna
berpikir mengenai pertanyaan yang relevan terlebih dulu.
Salah
satu bentuk pola yang dapat dihasilkan data mining adalah association
rule. Association Rule dapat digunakan untuk menemukan: hubungan atau sebab
akibat.
Association rule memiliki bentuk LHS
RHS dengan interpretasi bahwa jika setiap item dalam LHS (Left Hand Side)
dibeli, maka item dalam RHS (Right Hand Side) juga dibeli. Association
rule dapat dihasilkan dengan Algoritma Apriori. Salah satu penggunaan Association
rule adalah mendukung pengambilan keputusan dalam bidang pemasaran,
misalnya untuk mengetahui pola pembelian pelanggan, penentuan tata letak barang
dan lain-lain.
B. Pengertian Association Rule
Association
rule adalah salah satu teknik utama atau prosedur
dalam Market Basket Analysis untuk
mencari hubungan antat item dalam suatu data
set dan menampilkan dalam bentuk association
rule (Budhi dkk,2007). Association
rule (aturan asosiatif) akan menemukan pola tertentu yang mengasosiasikan
data yang satu dengan data yang lain. Untuk mencari association rule dari suatu kumpulan data, tahap pertama yang harus
dilakukan adalah mencari frequent itemset terlebih dahulu. Frequent itemset adalah
sekumpulan item yang sering muncul secara bersamaan. Setelah semua pola frequent itemset ditemukan, barulah
mencari aturan asosiatif atau aturan keterkaitan yang memenuhi syarat yang
telah ditentukan.
Jika diasumsikan bahwa
barang yang dijual di swalayan adalah semesta, maka setiap barang akan memiliki
bolean variabel yang akan menunjukkan
keberadaannya atau tidak barang tersebut dalam satu transaksi atau satu
keranjang belanja. Pola bolean yang
didapat dugunakan untuk menganalisa barang yang sering dibeli secara bersamaan.
Pola tersebut dapat dirumuskan dalam sebuah association
rule. Sebagai contoh konsumen biasanya akan membeli kopi dan susu yang
ditunjukkan sebagai berikut :
Kopi à
susu [support =2%, confidence=60%]
Association rule diperlukan suatu
variable ukuran yang ditentukan sendiri oleh user untuk menentukan batasan sejauh mana atau sebanyak apa output yang diinginkan user.
Support dan confidence adalah sebuah ukuran kepercayaan dan kegunaan suatu pola
yang telah ditemukan. Nilai support
2% menunjukkan bahwa keseluruhan dari total transaksi konsumen membeli kopi dan
susu secara bersamaan yaitu sebanyak 2%. Sedangkan confidence 60% yaitu menunjukkan bila konsumen membeli kopi dan
pasti membeli susu sebesar 60%.
C. Pengertian Algoritma Apriori
Algoritma
Apriori adalah salah satu algoritma yang melakukan pencarian frequent itemset dengan menggunakan
teknik association rule (Erwin,
2009). Algoritma Apriori menggunakan pengetahuan frekuensi atribut yang telah
diketahui sebelumnya untuk memproses informasi selanjutnya. Pada algoritma Apriori
menentukan kandidat yang mungkin muncul dengan cara memperhatikan
minimum support dan minimum confidence. Support adalah nilai pengunjung atau persentase kombinasi sebuah item dalam database.
Rumus support adalah sebagai berikut :
Support (A)
= (jumlah transaksi mengandung A / Total transaksi) x 100% …. (1)
Sedangkan confidence adalah nilai kepastian yaitu
kuatnya hubungan antar item dalam sebuah Apriori.
Confidence dapat dicari setelah pola frekuensi munculnya sebuah item
ditemukan. Rumus untuk menghitung confidence
adalah sebagai berikut :
Contoh misalnya ditemukan aturan AàB
maka:
|
…………..…………
(2)
|
Proses utama yang dilakukan dalam
algoritma Apriori untuk mendapat frequent
itemset yaitu (Erwin, 2009) :
1.
Join
(penggabungan)
Proses ini dilakukan dengan cara
pengkombinasian item dengan item yang lainnya hingga tidak dapat terbentuk
kombinasi lagi.
2.
Prune
(pemangkasan)
Proses pemangkasan yaitu hasil dari
item yang telah dikombinasikan kemudian dipangkas dengan menggunakan minimum support yang telah ditentukan oleh user.
Pada iterasi ke-k akan ditemukan
semua itemset yang memiliki k item, disebut dengan k-itemset. Tiap iterasi
terdiri dari dua tahap, yaitu :
-
Gunakan frequent (k-1) itemset untuk
membangun kandidat frequent k-itemset
-
Gunakan scan database dan pencocokan
pola untuk mengumpulkan hitungan untuk kandidat itemset
secara garis besar cara kerja algoritma apriori adalah:
Prinsip dari Algoritma Apriori antara lain :
- Pembentukan kandidat itemset, Kandidat k-itemset dibentuk dari kombinasi (k-1)-itemset yang didapat dari iterasi sebelumnya. Satu ciri dari algoritma Apriori adalah adanya pemangkasan kandidat k-itemset yang subset-nya yang berisi k-1 item tidak termasuk dalam pola frekuensi tinggi dengan panjang k-1.
- Penghitungan support dari tiap kandidat k-itemset. Support dari tiap kandidat k-itemset didapat dengan men-scan database untuk menghitung jumlah transaksi yang memuat semua item di dalam kandidat k-itemset tsb. Ini adalah juga ciri dari algoritme Apriori dimana diperlukan penghitungan dengan scan seluruh database sebanyak k-itemset terpanjang.
- Tetapkan pola frekuensi tinggi. Pola frekuensi tinggi yang memuat k item atau k-itemset ditetapkan dari kandidat k-itemset yang support-nya lebih besar dari minimum support.
- Bila tidak didapat pola frekuensi tinggi baru maka seluruh proses dihentikan. Bila tidak, maka k ditambah satu dan kembali ke bagian 1.
Prinsip dari Algoritma Apriori antara lain :
1) Mengumpulkan
item yang tunggal kemudian mencari item yang terbesar.
2) Dapatkan
candidate pairs kemudian hitung large pairs dari masing-masing item.
3) Temukan
candidate triplets dari setiap item dan seterusnya.
4) Setiap
subset dari sebuah frequent itemset
harus menjadi frequent.
D. Contoh dan Implementasi
berikut akan di berikan beberapa contoh dan implementasi algoritma apriori.
1. Contoh sederhana:
Misalkan kita memiliki table
transaction seperti berikut ini
Selanjutnya
yang akan kita lakukan adalah melihat ketersediaan item dalam setiap transaksi
artinya kita melihat ada berapa banyak item1 dalam transaksi di atas begitupula
dengan item ke 2 dan seterusnya
Hasilnya
adalah
Item
ke
|
banyaknya
|
1
2
3
4
5
|
2
3
3
1
3
|
Selanjutnya
kita menentukan minimum support, biasanya dalam apriori, minimum support adalah
50% artinya jika dihitung, nilainya adalah sebesar 2 sebab total transaksi ada
4 (T100,..,T400) sehingga 50% dari 4 adalah 2. Lalu dari table di atas kita
akan mengeliminasi item yang tidak mencapai 2 jumlahnya maka hasilnya adalah
Item
ke
|
banyaknya
|
1
2
3
5
|
2
3
3
3
|
Dan
jika kita kombinasikan maka hasilnya adalah
Item
ke
|
banyaknya
|
(1,2)
(1,3)
(1,5)
(2,3)
(2,5)
(3,5)
|
1
2
1
2
3
2
|
Kolom banyaknya di isi
dengan seberapa banyak kombinasi item muncul pada setiap transaksi. Selanjutnya
kita kemudian kembali mengeliminasi kombinasi item yang jumlahnya di bawah 2,
dan hasilnya adalah
Item
ke
|
banyaknya
|
(1,3)
(2,3)
(2,5)
(3,5)
|
2
2
3
2
|
Dan jika kita
kombinasikan dimana setiap kombinasi menghasilkan 3 elemen hasilnya adalah
Item
ke
|
banyaknya
|
(1,2,3)
(1,2,5)
(1,3,5)
(2,3,5)
|
1
1
1
2
|
Jadi yang memenuhi
syarat adalah kombinasi 2,3,5
Kemudian kita
menentukan tingkat confidence dari kombinasi 2,3,5
Caranya adalah
Confidence 2,3>5
=confidence 2 + confidence 3 + confidence 5/confidence 2x3x5
=2 / (2 x
3)=2/6=0.33 =33%
Jadi
dari 33 persen dari total pembelian yang membeli barang 2 dan 3 pasti membeli
barang 5 .
2. Implementasi dengan program R language
Suatu
supermarket kecil ingin menganalisa hubungan keterikatan antara suatu barang
dengan barang lainnya. Berikut adalah data penjualan barang-barang yang ingin
di lihat keterikatannya. Data ini diambil dalam durasi penjualan satu hari.
Maksud dari I1 adalah mewakili barang 1, I2 mewakili barang 2 dan seterusnya sampai
I5 mewakili barang ke 5. Berikut table transaksi dan pembelian setiap itemnya:
Transaksi
|
Barang
|
yang dibeli
|
|
1
|
I1,I2,I5
|
2
|
I1,I3,I4
|
3
|
I1,I2
|
4
|
I1,I2,I4
|
5
|
I1,I2,I3,I5
|
6
|
I2,I3,I5
|
7
|
I1,I2,I3
|
8
|
I4,I5
|
9
|
I1,I4,I5
|
10
|
I2,I3
|
11
|
I1,I2,I3,I4,I5
|
12
|
I2,I3,I5
|
13
|
I2,I4,I5
|
14
|
I1,I2
|
15
|
I1,I2
|
16
|
I2,I4,I5
|
17
|
I1,I2,I4
|
18
|
I1,I2
|
19
|
I1,I3,I4
|
20
|
I1,I2,I3,I4,I5
|
Transaksi
|
Barang
|
yang dibeli
|
|
21
|
I1,I2,I3
|
22
|
I2,I3,I4
|
23
|
I1,I2
|
24
|
I2,I3,I5
|
25
|
I1,I2,I3,I4,I5
|
26
|
I2,I3,I4
|
27
|
I1,I3,I4
|
28
|
I1,I2,I4
|
29
|
I1,I2
|
30
|
I3,I4,I5
|
31
|
I1,I2,I3,I4,I5
|
32
|
I2,I3,I4
|
33
|
I3,I4,I5
|
34
|
I1,I3,I5
|
35
|
I2,I4
|
36
|
I1,I2,I3
|
37
|
I1,I2
|
38
|
I2,I3,I4
|
39
|
I1,I2,I5
|
40
|
I1,I2,I3,I4,I5
|
Transaksi
|
Barang
|
yang dibeli
|
|
41
|
I3,I4,I5
|
42
|
I1,I2,I3
|
43
|
I3,I4,I5
|
44
|
I1,I2
|
45
|
I3,I4,I5
|
46
|
I1,I2,I3
|
47
|
I1,I2,I3,I4
|
48
|
I3,I4,I5
|
49
|
I1,I2,I3
|
50
|
I1,I2
|
51
|
I2,I3,I4
|
52
|
I1,I3,I4
|
53
|
I2,I3,I5
|
54
|
I1,I2,I3,I4,I5
|
55
|
I2,I3,I4
|
56
|
I1,I3,I4
|
57
|
I1,I2,I4
|
58
|
I1,I2
|
59
|
I3,I4,I5
|
60
|
I1,I2,I3,I4,I5
|
Transaksi
|
Barang
|
yang dibeli
|
|
61
|
I1,I2,I4
|
62
|
I3,I4,I5
|
63
|
I2,I3,I4
|
64
|
I1,I2
|
65
|
I3,I4,I5
|
66
|
I1,I3,I5
|
67
|
I2,I4
|
68
|
I1,I2,I3
|
69
|
I2,I4
|
70
|
I2,I3,I5
|
71
|
I1,I2,I3,I4,I5
|
72
|
I2,I3,I4
|
73
|
I1,I3,I4
|
74
|
I1,I2,I4
|
75
|
I1,I2
|
76
|
I3,I4,I5
|
77
|
I1,I5
|
78
|
I3,I4,I5
|
79
|
I1,I2
|
80
|
I1,I2,I4
|
Transaksi
|
Barang
|
yang dibeli
|
|
81
|
I3,I4,I5
|
82
|
I1,I2
|
83
|
I3,I4,I5
|
84
|
I1,I2,I4
|
85
|
I3,I4,I5
|
86
|
I1,I2,I4
|
87
|
I1,I3,I4,I5
|
88
|
I1,I3
|
89
|
I2,I3,I4
|
90
|
I2,I3,I5
|
91
|
I1,I2,I4,I5
|
92
|
I1,I2,I3,I4,I5
|
93
|
I2,I3,I4
|
94
|
I1,I5
|
95
|
I1,I2,I4
|
96
|
I1,I3
|
97
|
I2,I3,I5
|
98
|
I1,I2,I3,I4,I5
|
99
|
I2,I3,I4
|
100
|
I1,I3,I4
|
Transaksi
|
Barang
|
yang dibeli
|
|
101
|
I1,I2,I4
|
102
|
I1,I2
|
103
|
I3,I4,I5
|
104
|
I1,I2,I5
|
105
|
I1,I3,I4,I5
|
106
|
I3,I4,I5
|
107
|
I2,I3,I4
|
108
|
I3,I4,I5
|
109
|
I1,I3
|
110
|
I1,I3,I5
|
111
|
I1,I3,I4,I5
|
112
|
I3,I4,I5
|
113
|
I1,I2,I3
|
114
|
I3,I4,I5
|
115
|
I1,I3,I5
|
116
|
I1,I2
|
117
|
I2,I4
|
118
|
I3,I4,I5
|
119
|
I2,I3,I4
|
120
|
I1,I2
|
Transaksi
|
Barang
|
yang dibeli
|
|
121
|
I1,I3,I4
|
122
|
I3,I4,I5
|
123
|
I1,I3,I4,I5
|
124
|
I3,I4,I5
|
125
|
I1,I3,I5
|
126
|
I2,I3,I5
|
127
|
I1,I2,I3,I4,I5
|
128
|
I2,I3,I4
|
129
|
I1,I3,I4
|
130
|
I1,I2,I4
|
131
|
I1,I2
|
132
|
I3,I4,I5
|
133
|
I2,I4
|
134
|
I1,I2,I4
|
135
|
I1,I2,I3,I4
|
136
|
I3,I4,I5
|
137
|
I3,I4,I5
|
138
|
I1,I2,I3,I4
|
139
|
I2,I3,I4
|
140
|
I3,I4,I5
|
Transaksi
|
Barang
|
yang dibeli
|
|
141
|
I1,I3,I5
|
142
|
I2,I4
|
143
|
I3,I4,I5
|
144
|
I1,I2,I4
|
145
|
I1,I2,I3,I4
|
146
|
I3,I4,I5
|
147
|
I3,I4,I5
|
148
|
I1,I5
|
149
|
I1,I2,I4
|
150
|
I3,I4,I5
|
151
|
I1,I2,I3,I4
|
152
|
I1,I2,I4
|
153
|
I1,I3,I4,I5
|
154
|
I1,I2,I3
|
155
|
I2,I3,I4
|
156
|
I1,I3,I4,I5
|
157
|
I1,I3,I4
|
158
|
I1,I2,I4
|
159
|
I3,I4,I5
|
160
|
I2,I3,I5
|
Transaksi
|
Barang
|
Transaksi
|
Barang
|
|
yang dibeli
|
yang dibeli
|
|||
161
|
I1,I2,I3,I4,I5
|
181
|
I1,I2,I3,I4,I5
|
|
162
|
I2,I3,I4
|
182
|
I2,I3,I5
|
|
163
|
I1,I3,I4
|
183
|
I2,I4,I5
|
|
164
|
I1,I2,I4
|
184
|
I2,I4,I5
|
|
165
|
I1,I2
|
185
|
I1,I2,I3,I4
|
|
166
|
I3,I4,I5
|
186
|
I1,I3,I4,I5
|
|
167
|
I1,I3,I4,I5
|
187
|
I1,I2,I4
|
|
168
|
I2,I3,I4
|
188
|
I1,I3,I4
|
|
169
|
I3,I4,I5
|
189
|
I1,I2,I3,I4,I5
|
|
170
|
I1,I3,I4,I5
|
190
|
I1,I3,I5
|
|
171
|
I1,I3,I5
|
191
|
I3,I4,I5
|
|
172
|
I2,I4
|
192
|
I1,I2,I3,I4
|
|
173
|
I1,I2,I3
|
193
|
I1,I2,I3
|
|
174
|
I2,I4
|
194
|
I3,I4,I5
|
|
175
|
I2,I4,I5
|
195
|
I1,I2
|
|
176
|
I2,I4,I5
|
196
|
I2,I3,I4
|
|
177
|
I1,I2,I4
|
197
|
I1,I3,I4,I5
|
|
178
|
I1,I5
|
198
|
I1,I3,I4
|
|
179
|
I1,I3,I4
|
199
|
I1,I2,I3
|
|
180
|
I2,I3
|
200
|
I1,I3,I4,I5
|
|
201
|
I2,I3,I4
|
|||
202
|
I1,I3,I4
|
Langkah
langkah yang akan kita lakukan untuk menentukan hubungan asosiasi (association
rule) untuk kasus di atas dengan bantuan software R adalah :
1. Input
data di atas ke dalam program R dengan terlebih dahulu meload package arules,
package ini berfungsi untuk menganalisis hubungan suatu data dengan algoritma
apriori dalam program R. untuk meloadnya cukup ketikan script seperti gambar di
bawah ini :
2. Mulai
menginput data sesuai format berikut ini
>a_list <- list(c(item ke-1 yang dibeli, item ke-2 yang dibeli, …)
Lebih
lengkapnya script adalah sebagai berikut
> a_list
<-list(
+
c("I1","I2","I5"),
+
c("I2","I3","I4"),
+
c("I1","I2"),
+
c("I1","I2","I4"),
+
c("I1","I2","I3","I5"),
+
c("I2","I3","I5"),
+
c("I1","I2","I3"),
+
c("I4","I5"),
+
c("I1","I4","I5"),
+
c("I2","I3"),
+ c("I1","I2","I3","I4","I5"),
+
c("I2","I3","I5"),
+
c("I2","I4","I5"),
+
c("I1","I2"),
+
c("I1","I2"),
+
c("I2","I4","I5"),
+
c("I1","I2","I4"),
+
c("I1","I2"),
+
c("I1","I3","I4"),
+
c("I1","I2","I3","I4","I5"),
+
c("I1","I2","I3"),
+
c("I2","I3","I4"),
+ c("I1","I2"),
+
c("I2","I3","I5"),
+
c("I1","I2","I3","I4","I5"),
+
c("I2","I3","I4"),
+
c("I1","I3","I4"),
+
c("I1","I2","I4"),
+
c("I1","I2"),
+
c("I3","I4","I5"),
+
c("I1","I2","I3","I4","I5"),
+
c("I2","I3","I4"),
+
c("I3","I4","I5"),
+ c("I1","I3","I5"),
+
c("I2","I4"),
+
c("I1","I2","I3"),
+
c("I1","I2"),
+
c("I2","I3","I4"),
+
c("I1","I2","I5"),
+
c("I1","I2","I3","I4","I5"),
+
c("I3","I4","I5"),
+
c("I1","I2","I3"),
+
c("I3","I4","I5"),
+
c("I1","I2"),
+
c("I3","I4","I5"),
+
c("I1","I2","I3"),
+
c("I1","I2","I3","I4"),
+
c("I3","I4","I5"),
+
c("I1","I2","I3"),
+
c("I1","I2"),
+
c("I2","I3","I4"),
+
c("I1","I3","I4"),
+
c("I2","I3","I5"),
+
c("I1","I2","I3","I4","I5"),
+
c("I2","I3","I4"),
+
c("I1","I3","I4"),
+
c("I1","I2","I4"),
+ c("I1","I2"),
+
c("I3","I4","I5"),
+
c("I1","I2","I3","I4","I5"),
+
c("I1","I2","I4"),
+
c("I3","I4","I5"),
+
c("I2","I3","I4"),
+
c("I1","I2"),
+
c("I3","I4","I5"),
+
c("I1","I3","I5"),
+
c("I2","I4"),
+
c("I1","I2","I3"),
+
c("I2","I4"),
+
c("I2","I3","I5"),
+
c("I1","I2","I3","I4","I5"),
+
c("I2","I3","I4"),
+
c("I1","I3","I4"),
+
c("I1","I2","I4"),
+
c("I1","I2"),
+
c("I3","I4","I5"),
+
c("I1","I5"),
+
c("I3","I4","I5"),
+
c("I1","I2"),
+
c("I1","I2","I4"),
+
c("I3","I4","I5"),
+
c("I1","I2"),
+
c("I3","I4","I5"),
+
c("I1","I2","I4"),
+
c("I3","I4","I5"),
+
c("I1","I2","I4"),
+
c("I1","I3","I4","I5"),
+
c("I1","I3"),
+
c("I2","I3","I4"),
+
c("I2","I3","I5"),
+
c("I1","I2","I4","I5"),
+
c("I1","I2","I3","I4","I5"),
+
c("I2","I3","I4"),
+
c("I1","I5"),
+ c("I1","I2","I4"),
+
c("I1","I3"),
+
c("I2","I3","I5"),
+
c("I1","I2","I3","I4","I5"),
+
c("I2","I3","I4"),
+
c("I1","I3","I4"),
+
c("I1","I2","I4"),
+
c("I1","I2"),
+
c("I3","I4","I5"),
+
c("I1","I2","I5"),
+
c("I1","I3","I4","I5"),
+
c("I3","I4","I5"),
+ c("I2","I3","I4"),
+
c("I3","I4","I5"),
+
c("I1","I3"),
+
c("I1","I3","I5"),
+
c("I1","I3","I4","I5"),
+
c("I3","I4","I5"),
+
c("I1","I2","I3"),
+
c("I3","I4","I5"),
+
c("I1","I3","I5"),
+
c("I1","I2"),
+
c("I2","I4"),
+
c("I3","I4","I5"),
+ c("I2","I3","I4"),
+
c("I1","I2"),
+
c("I1","I3","I4"),
+
c("I3","I4","I5"),
+
c("I1","I3","I4","I5"),
+
c("I3","I4","I5"),
+
c("I1","I3","I5"),
+
c("I2","I3","I5"),
+
c("I1","I2","I3","I4","I5"),
+
c("I2","I3","I4"),
+
c("I1","I3","I4"),
+
c("I1","I2","I4"),
+
c("I1","I2"),
+
c("I3","I4","I5"),
+
c("I2","I4"),
+
c("I1","I2","I4"),
+
c("I1","I2","I3","I4"),
+
c("I3","I4","I5"),
+
c("I3","I4","I5"),
+
c("I1","I2","I3","I4"),
+
c("I2","I3","I4"),
+
c("I3","I4","I5"),
+
c("I1","I3","I5"),
+
c("I2","I4"),
+ c("I3","I4","I5"),
+
c("I1","I2","I4"),
+
c("I1","I2","I3","I4"),
+
c("I3","I4","I5"),
+
c("I3","I4","I5"),
+
c("I1","I5"),
+
c("I1","I2","I4"),
+
c("I3","I4","I5"),
+
c("I1","I2","I3","I4"),
+
c("I1","I2","I4"),
+
c("I1","I3","I4","I5"),
+
c("I1","I2","I3"),
+
c("I2","I3","I4"),
+
c("I1","I3","I4","I5"),
+
c("I1","I3","I4"),
+
c("I1","I2","I4"),
+
c("I3","I4","I5"),
+
c("I2","I3","I5"),
+
c("I1","I2","I3","I4","I5"),
+
c("I2","I3","I4"),
+
c("I1","I3","I4"),
+
c("I1","I2","I4"),
+
c("I1","I2"),
+
c("I3","I4","I5"),
+
c("I1","I3","I4","I5"),
+
c("I2","I3","I4"),
+
c("I3","I4","I5"),
+
c("I1","I3","I4","I5"),
+
c("I1","I3","I5"),
+
c("I2","I4"),
+
c("I1","I2","I3"),
+
c("I2","I4"),
+
c("I2","I4","I5"),
+
c("I2","I4","I5"),
+
c("I1","I2","I4"),
+
c("I1","I5"),
+
c("I1","I3","I4"),
+
c("I2","I3"),
+
c("I1","I2","I3","I4","I5"),
+
c("I2","I3","I5"),
+
c("I2","I4","I5"),
+
c("I2","I4","I5"),
+
c("I1","I2","I3","I4"),
+
c("I1","I3","I4","I5"),
+
c("I1","I2","I4"),
+
c("I1","I3","I4"),
+
c("I1","I2","I3","I4","I5"),
+
c("I1","I3","I5"),
+
c("I3","I4","I5"),
+
c("I1","I2","I3","I4"),
+
c("I1","I2","I3"),
+
c("I3","I4","I5"),
+
c("I1","I2"),
+
c("I2","I3","I4"),
+
c("I1","I3","I4","I5"),
+
c("I1","I3","I4"),
+
c("I1","I2","I3"),
+
c("I1","I3","I4","I5"),
+ c("I2","I3","I4"),
+
c("I1","I3","I4")
+ )
Angka
I1,I2,I3,I4,I5 menyatakan item yang dibeli setiap transaksi
3. Selanjutnya
kita menambahkan angka T dan akhiran 0 untuk setiap transaksi agar transaksinya
mudah kita analisis dalam table R, kita ketikan
>names(a_list)<-paste("T",c(1:202),"0",sep="")
a_list
adalah nama list dari daftar transaksi yang telah kita buat tadi
untuk
melihat hasilnya kita ketikan\
>a_list
4. Selanjutnya
kita membuat table transaksi dan menganalisisnya, kita ketikan
>
tabel1<-as(a_list,"transactions") pada console R
5.
Selanjutny
untuk melihat deskripsi dari table transaksi tadi kita ketikan
>
summary(tabel1)
transactions
as itemMatrix in sparse format with
202 rows (elements/itemsets/transactions) and
5 columns (items) and a density of 0.609901
most
frequent items:
I4
I3 I2 I1
I5 (Other)
139
138 125 119
95 0
element
(itemset/transaction) length distribution:
sizes
2
3 4 5
38 130
20 14
Min. 1st Qu.
Median Mean 3rd Qu. Max.
2.00
3.00 3.00 3.05
3.00 5.00
includes
extended item information - examples:
labels
1 I1
2 I2
3 I3
Dari
hasil di atas kita ketahui bahwa item ke 4 (I4) paling sering muncul dalam
pembelian dimana item tersebut muncul sebanyak 139 kali sementara item yang
paling sedikit muncul adalah item k 5 demana item ini muncul 95 kali
6. Selanjutnya
kita menghitung frekuensi absolut dan frekuensi relative setiap item, kita
ketikan
>
itemFrequency(tabel1, type="relative")
Hasilnya
adalah
I1
I2 I3 I4 I5
0.5891089
0.6188119 0.6831683 0.6881188 0.4702970
>
itemFrequency(tabel1, type="absolute")
Hasilnya
adalah
I1 I2
I3 I4 I5
119
125 138 139 95
7.
Selanjutnya
kita membuat proses algoritma apriorinya kita ketikan
>rules
<-apriori(tabel1)
Lalu kita
ketikan
>inspect(rules)
Hasilnya adalah
sebagai berikut
lhs rhs
support confidence lift
1 {I5} =>
{I3} 0.3910891 0.8315789 1.217239
2 {I4,
I5} => {I3} 0.2970297 0.8695652 1.272842
3 {I1,
I4,
I5} => {I3} 0.1237624 0.9259259 1.355341
Arti dari output
di atas dapat kita analogikan sebagai berikut
Body → Head [Support, Confidence]
Untuk output pertama kita dapatkan
(I5)=>(I3)(0.39=39%,0.8=80%)
Artinya dalam 39% dari keseluruhan semua
transaksi item 5 dan item 3 dibeli secara bersamaan dan dalam setiap 80% dari pembelian
item 5 pasti membeli item 3
Untuk output ke 2 kita dapatkan
(I4,I5)=>(I3)(29%,86%)
Artinya dalam 29% dari keseluruhan semua
transaksi item 4 dan item 5 serta item 3 dibeli secara bersamaan dan dalam
setiap 86% dari pembelian item 4 dan item 5 pasti membeli item 3
Untuk output ke 3 kita dapatkan
(I1,I4)=>(I5)(12%,92%)
Artinya dalam 29% dari keseluruhan semua
transaksi item 1 dan item 4 serta item 5 dibeli secara bersamaan dan dalam
setiap 92% dari pembelian item 1 dan item 4 pasti membeli item 5.
E. Kesimpulan
setelah memahami seluk beluk algoritma apriori dapat disimpulkan beberapa hal yaitu:
F. Daftar Pustaka
E. Kesimpulan
setelah memahami seluk beluk algoritma apriori dapat disimpulkan beberapa hal yaitu:
- kelebihan dari algoritma apriori ini adalah lebih sederhana dan dapat menangani data yang besar. Sedangkan algoritma lainnya memiliki kelemahan dalam penggunaan memori saat jumlah data besar, tentunya berpengaruh terhadap banyaknya item yang diproses serta mudah di pahami struktur kerja dan implementasinya
- Apriori memiliki kelemahan karena harus melakukan scan database setiap kali iterasi, sehingga waktu yang diperlukan bertambah dengan makin banyak iterasi
F. Daftar Pustaka
http://mfile.narotama.ac.id/files/Tubagus%20Purworusmiadi/Kumpulan%20File%20PDF/dmkdd09-6up.pdf (diakses pada 31 maret 2013 pukul 19.00 wita)
http://bow-masbow.blogspot.com/2010/10/algoritma-apriori-apriori-algorithm.html (diakses pada 31 maret 2013 pukul 19.00 wita)
http://ajananto10.typepad.com/blog/2011/05/algoritma-apriori-untuk-pencarian-association-rule.html (diakses pada 31 maret 2013 pukul 19.00 wita)

ijin copas ya, tks
BalasHapusBagus
BalasHapus