1 Pendahuluan

1.1 Latar Belakang

Perkembangan teknologi informasi telah memberikan kontribusi pada cepatnya pertumbuhan jumlah data yang dikumpulkan dan disimpan dalam basis data berukuran besar (gunung data). Dibutuhkan sebuah metode atau teknik yang dapat merubah gunungan data tersebut menjadi sebuah informasi berharga atau pengetahuan (knowledge) yang bermanfaat untuk mendukung pengambilan keputusan bisnis. Suatu teknologi yangdapat digunakan untuk mewujudkannya adalah data mining.

Data mining adalah proses mencari pola atau informasi menarik dalam data terpilih dengan menggunakan teknik atau metode tertentu.Salah satu metode yang seringkali digunakan dalam teknologi data mining adalah metode asosiasi atau association rule mining.

Metode association rule mining ini lebih dikenal dengan istilah analisa Market basket analysis adalah suatu metode analisa atas perilaku konsumen secara spesifik dari suatu golongan / kelompok tertentu. Sumber data dari market basket analysis antara lain dapat bersumber dari transaksi kartu kredit, kartu lotere, kupon diskon, panggilan keluhan pelanggan. Market basket analysis umumnya dimanfaatkan sebagai titik awal pencarian pengetahuan dari suatu transaksi data ketika kita tidak mengetahui pola spesifik apa yang kita cari. Kebutuhan market basket analysis berawal dari keakuratan dan manfaat yang dihasilkannya dalam wujud aturan assosiasi (association rules). Yang dimaksud dengan association rules adalah pola-pola keterkaitan data dalam basis data.

1.2 Rumusan Masalah

Adapun rumusan masalah dalam tugas akhir ini adalah sebagai berikut: 1. Bagaimana menganalisa sistem basis data menggunakan metode association rule? 2. Bagaimana mengimplementasikan metode association rule? 3. Bagaimana mendesain sistem basis data menggunakan metode association rule?

1.3 Tujuan

Adapun tujuan dari penelitian ini adalah untuk mengetahui bagaimana pengimplementasian dari metode association rule.

2 Tinjauan Pustaka

2.1 Data Mining

Data mining adalah proses yang mempekerjakan satu atau lebih teknik pembelajaran komputer (machine learning) untuk menganalisis dan mengekstraksi pengetahuan (knowledge) secara otomatis. Definisi lain diantaranya adalah pembelajaran berbasis induksi (induction-based learning) adalah proses pembentukan definisi – definisi konsep umum yang dilakukan dengan cara mengobservasi contoh – contoh spesifik dari konsep – konsep yang akan dipelajari.

2.2 Association Rule

Association Rule adalah suatu metode data mining yang bertujuan untuk mencari sekumpulan items yang sering muncul bersamaan. Umumnya association rule ini dianalogikan dengan keranjang belanjaan. Dari keranjang belanjaan para pengunjung supermarket akan dapat diketahui, barang apa saja yang sering dibeli bersamaan dan barang mana saja yang tidak.

Analisis asosiasi atau association rule mining adalah teknik data mining untuk menemukan aturan suatu kombinasi item. Salah satu tahap analisis asosiasi yang menarik perhatian banyak peneliti untuk menghasilkan algoritma yang efisien adalah analisis pola frenkuensi tinggi (frequent pattern mining). penting tidaknya suatu asosiasi dapat diketahui dengan dua tolak ukur, yaitu : support dan confidence. Support (nilai penunjang) adalah persentase kombinasi item tersebut dalam database, sedangkan confidence (nilai kepastian) adalah kuatnya hubungan antar item dalam aturan asosiasi

2.3 Algoritma Apriori

Algoritma apriori termasuk jenis aturan asosiai pada data mining. Selain apriori, yang termasuk pada golongan ini adalah metode generalized Rule Induction dan Algoritma Hash Based. Aturan yang menyatakan asosiasi antara beberapa atribut disebut affinity analysis atau market basket analysis.

Algoritma apriori merupakan salah satu metode untuk mengenali kaidah asosiasi yang paling sederhana dan paling terkenal untuk menemukan pola frekuensi tinggi. Pola frekuensi tinggi adalah pola – pola item di dalam suatu database yang memiliki frekuensi atau support di atas ambang batas tertentu yang disebut dengan istilah minimum support. Polafrekuensi tinggi ini digunakan untuk menyusun aturan assosiatif dan juga bebrapa teknik data mining lainnya. Analisis asosiasi atau association rule mining adalah teknik data mining untuk menemukan aturan asosiatif antara suatu kombinasi item.

3 Metode Penelitian

3.1 Proses Algoritma Apriori

Proses Algoritma Apriori dilakukan menggunakan Software R dengan bantuan editor Rstudio, minimal support dan confidance ditentukan dengan cara membangdingkan nilai support dan cofidance dari yang tertinggi hingga yang terendah sehingga didapatkan nilai support dan confidance yang efektif dan memiliki aturan assosiasi yang kuat. Proses analisis menggunakan algortima apriori terbagi menjadi dua tahap yaitu melakukan analisa pola frekuensi tinggi dan pembentukan aturan assosiatif (association rule).

4 Hasil dan Pembahasan

4.1 Memanggil Library

Library yang digunakan adalah arules packages.

# Use this R-Chunk to load all your libraries!
library(arules)
## Warning: package 'arules' was built under R version 4.1.3
## Loading required package: Matrix
## 
## Attaching package: 'arules'
## The following objects are masked from 'package:base':
## 
##     abbreviate, write

4.2 Memanggil Data

Data yang digunakan adalah data transaksi dari suatu market. Data terdiri dari 7501 transaksi. Adapun data tersebut sebagai berikut.

#Create data
data = read.csv("D:/AAA SEM 6/data mining/data-market-basket (1).csv", header=FALSE)
data
#force data into transaction
dataa = read.transactions("D:/AAA SEM 6/data mining/data-market-basket (1).csv",sep=",",rm.duplicates=TRUE)
## distribution of transactions with duplicates:
## 1 
## 5
## Table
table = as(dataa,"transactions")
table
## transactions in sparse format with
##  7501 transactions (rows) and
##  119 items (columns)

4.3 Summary Data

Berikut merupakan hasil output dari summary data.

summary(table)
## transactions as itemMatrix in sparse format with
##  7501 rows (elements/itemsets/transactions) and
##  119 columns (items) and a density of 0.03288973 
## 
## most frequent items:
## mineral water          eggs     spaghetti  french fries     chocolate 
##          1788          1348          1306          1282          1229 
##       (Other) 
##         22405 
## 
## element (itemset/transaction) length distribution:
## sizes
##    1    2    3    4    5    6    7    8    9   10   11   12   13   14   15   16 
## 1754 1358 1044  816  667  493  391  324  259  139  102   67   40   22   17    4 
##   18   19   20 
##    1    2    1 
## 
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   1.000   2.000   3.000   3.914   5.000  20.000 
## 
## includes extended item information - examples:
##              labels
## 1           almonds
## 2 antioxydant juice
## 3         asparagus

Berdasarkan output diatas, didapatkan bahwa jumlah data transaksi paling kecil adalah 1 item, sedangkan transaksi paling banyak adalah sebanyak 20 item.

4.4 Item Frequency

Adapun selanjutnya dihitung nilai relativ dari seluruh item.

itemFrequency(table, type="relative")
##              almonds    antioxydant juice            asparagus 
##         0.0203972804         0.0089321424         0.0047993601 
##              avocado          babies food                bacon 
##         0.0333288895         0.0045327290         0.0086655113 
##       barbecue sauce            black tea          blueberries 
##         0.0107985602         0.0142647647         0.0091987735 
##           body spray              bramble             brownies 
##         0.0114651380         0.0018664178         0.0337288362 
##            bug spray         burger sauce              burgers 
##         0.0086655113         0.0058658845         0.0871883749 
##               butter                 cake           candy bars 
##         0.0301293161         0.0810558592         0.0097320357 
##              carrots          cauliflower              cereals 
##         0.0153312892         0.0047993601         0.0257299027 
##            champagne              chicken                chili 
##         0.0467937608         0.0599920011         0.0061325157 
##            chocolate      chocolate bread              chutney 
##         0.1638448207         0.0042660979         0.0041327823 
##                cider  clothes accessories              cookies 
##         0.0105319291         0.0083988801         0.0803892814 
##          cooking oil                 corn       cottage cheese 
##         0.0510598587         0.0047993601         0.0318624183 
##                cream         dessert wine             eggplant 
##         0.0009332089         0.0043994134         0.0131982402 
##                 eggs           energy bar         energy drink 
##         0.1797093721         0.0270630583         0.0266631116 
##             escalope extra dark chocolate            flax seed 
##         0.0793227570         0.0119984002         0.0090654579 
##         french fries          french wine          fresh bread 
##         0.1709105453         0.0225303293         0.0430609252 
##           fresh tuna        fromage blanc      frozen smoothie 
##         0.0222636982         0.0135981869         0.0633248900 
##    frozen vegetables      gluten free bar        grated cheese 
##         0.0953206239         0.0069324090         0.0523930143 
##          green beans         green grapes            green tea 
##         0.0086655113         0.0090654579         0.1321157179 
##          ground beef                 gums                  ham 
##         0.0982535662         0.0134648714         0.0265297960 
##     hand protein bar        herb & pepper                honey 
##         0.0051993068         0.0494600720         0.0474603386 
##             hot dogs              ketchup          light cream 
##         0.0323956806         0.0043994134         0.0155979203 
##           light mayo       low fat yogurt            magazines 
##         0.0271963738         0.0765231302         0.0109318757 
##        mashed potato           mayonnaise            meatballs 
##         0.0041327823         0.0061325157         0.0209305426 
##               melons                 milk        mineral water 
##         0.0119984002         0.1295827223         0.2383682176 
##                 mint       mint green tea              muffins 
##         0.0174643381         0.0055992534         0.0241301160 
## mushroom cream sauce              napkins          nonfat milk 
##         0.0190641248         0.0006665778         0.0103986135 
##              oatmeal                  oil            olive oil 
##         0.0043994134         0.0230635915         0.0658578856 
##             pancakes      parmesan cheese                pasta 
##         0.0950539928         0.0198640181         0.0157312358 
##               pepper             pet food              pickles 
##         0.0265297960         0.0065324623         0.0059992001 
##          protein bar             red wine                 rice 
##         0.0185308626         0.0281295827         0.0187974937 
##                salad               salmon                 salt 
##         0.0049326756         0.0425276630         0.0091987735 
##             sandwich              shallot              shampoo 
##         0.0045327290         0.0077323024         0.0049326756 
##               shrimp                 soda                 soup 
##         0.0714571390         0.0062658312         0.0505265965 
##            spaghetti      sparkling water              spinach 
##         0.1741101187         0.0062658312         0.0070657246 
##         strawberries        strong cheese                  tea 
##         0.0213304893         0.0077323024         0.0038661512 
##         tomato juice         tomato sauce             tomatoes 
##         0.0303959472         0.0141314491         0.0683908812 
##           toothpaste               turkey       vegetables mix 
##         0.0081322490         0.0625249967         0.0257299027 
##          water spray           white wine     whole weat flour 
##         0.0003999467         0.0165311292         0.0093320891 
##    whole wheat pasta     whole wheat rice                 yams 
##         0.0294627383         0.0585255299         0.0114651380 
##          yogurt cake             zucchini 
##         0.0273296894         0.0094654046

Kemudian dibuatkan plot item frequency untuk 15 item dengan frekuensi terbanyak menggunakan nilai relative. Dapat dilihat pada plot dibawah item yang memiliki nilai relative paling tinggi adalah item mineral water.

itemFrequencyPlot(table,topN = 15, main="Item Frequency")

4.5 Mine Association Rules

rules<- apriori(table[1:15])
## Apriori
## 
## Parameter specification:
##  confidence minval smax arem  aval originalSupport maxtime support minlen
##         0.8    0.1    1 none FALSE            TRUE       5     0.1      1
##  maxlen target  ext
##      10  rules TRUE
## 
## Algorithmic control:
##  filter tree heap memopt load sort verbose
##     0.1 TRUE TRUE  FALSE TRUE    2    TRUE
## 
## Absolute minimum support count: 1 
## 
## set item appearances ...[0 item(s)] done [0.00s].
## set transactions ...[39 item(s), 15 transaction(s)] done [0.00s].
## sorting and recoding items ... [11 item(s)] done [0.00s].
## creating transaction tree ... done [0.00s].
## checking subsets of size 1 2 done [0.00s].
## writing ... [2 rule(s)] done [0.00s].
## creating S4 object  ... done [0.00s].

4.6 Display Result

inspect(table[1:15]) #display transaction
##      items               
## [1]  {almonds,           
##       antioxydant juice, 
##       avocado,           
##       cottage cheese,    
##       energy drink,      
##       frozen smoothie,   
##       green grapes,      
##       green tea,         
##       honey,             
##       low fat yogurt,    
##       mineral water,     
##       olive oil,         
##       salad,             
##       salmon,            
##       shrimp,            
##       spinach,           
##       tomato juice,      
##       vegetables mix,    
##       whole weat flour,  
##       yams}              
## [2]  {burgers,           
##       eggs,              
##       meatballs}         
## [3]  {chutney}           
## [4]  {avocado,           
##       turkey}            
## [5]  {energy bar,        
##       green tea,         
##       milk,              
##       mineral water,     
##       whole wheat rice}  
## [6]  {low fat yogurt}    
## [7]  {french fries,      
##       whole wheat pasta} 
## [8]  {light cream,       
##       shallot,           
##       soup}              
## [9]  {frozen vegetables, 
##       green tea,         
##       spaghetti}         
## [10] {french fries}      
## [11] {eggs,              
##       pet food}          
## [12] {cookies}           
## [13] {burgers,           
##       cooking oil,       
##       eggs,              
##       mineral water,     
##       turkey}            
## [14] {champagne,         
##       cookies,           
##       spaghetti}         
## [15] {mineral water,     
##       salmon}
inspect(rules) #display association
##     lhs          rhs             support   confidence coverage  lift count
## [1] {burgers} => {eggs}          0.1333333 1          0.1333333 5.00 2    
## [2] {salmon}  => {mineral water} 0.1333333 1          0.1333333 3.75 2

5 Kesimpulan dan Saran

5.1 Kesimpulan

Penelitian ini berhasil menganalisa data transaksi peminjaman buku untuk mengetahui buku-buku yang sering dipinjam secara bersamaan menggunakan algoritma Apriori. Hasil dari analisa pada semua data transaksi belanja disuatu supermarket dapat disimpulkan bahwa jika pengunjung membeli burger maka akan membeli eggs dengan nilai support 13.33% dan confidents 100%. dan jika pengunjung membeli salmon maka pengunjung akan membeli juga mineral water yang mana memiliki nilai support 13,3% dan confidence 100%.