Breaking News

Monday, March 19, 2018

Market Basket Analisys (MBA) dengan Association Rule

[INFO STATISTICS]

Hallo sobat Info Statistics, Pada kesempatan kali ini saya ingin berbagi mengenai penggunaan Metode MBA ( Market Basket Analisys) dengan menggunakan Algoritma Apriori Association Rule. Metode ini merupakan bagian dari data mining. Metode ini biasanya digunakan pada sebuah data transaksi di swalayan/pertokoan. Metode ini bagian dari data mining. Mari kita kenali terlebih dahulu  tentang apa itu data mining.

What is Data Mining ?

Sebenernya pengertian data mining ini sudah banyak dijelaskan oleh para ahli. Data mining merupakan sebuah cabang ilmu yang mempelajari bagaimana cara untuk mengekstrak suatu data yang berukuran/ berjumlah besar. Menurut wikipedia Data Mining merupakan sebuah proses menemukan sebuah pola data didalam kumpulan data yang besar yang melibatkan beberapa metode analisis seperti mechine learning, statistics, matemathics dan sebuah sistem database. Berikut ini adalah alur dari proses Data Mining


Dalam data mining terdapat beberapa banyak metode yang sering digunakan oleh ahli data untuk menyelesaikan permasalahannya  contohnya,  Clustering, Regression, Classification, Market basket analisys (MBA), Forecasting, dan sebagainya. Salah satu penerapan dari data mining ini dapat di aplikasikan di swalayan dengan menggunakan metode MBA dengan Algoritma Apriori Association Rule. Metode ini biasa digunakan pada data transaksi pada sebuah supermarket/swalayan.

Association rule merupakan suatu metode data mining yang beertujuan untuk mencari sekumpulan item yang sering muncul bersamaan. Pada umumnya metode ini dianalogikan sebagai keranjang belanjaan. Dari kerajang belanjaan para pengunjung swalayan/supermarket tersebut dapat diketahui pola pembeliannya, dengan melihat barang apa saja yang sering dibeli bersamaan dan barang mana saja yang tidak. Dalam association rule terdapat beberapa hal yang digunakan untuk mmengukut apakah sekumpulan item seing muncul bersamaan atau tidak yaitu nilai Support, Confidence dan Lift rasio

1. Nilai Support merupakan persentase dari semua transaksi yang terjadi yang mengandung itemset tersebut. Adapun rumusnya sebagai berikut : 
2. Nilai Confidence merupakan perbandingan antara nilai support dari himpunan items  yang terdapat di dalam rule dan nilai support himpunan items yang mendahuluinya. Adapun rumusnya sebagai berikut :
3. Nilai lift rasio merupakan suatu ukuran dalam mengetahui kekuatan suatu aturan asosiasi. Adapun rumusnya sebagai berikut :
Untuk lebih jelasnya disini saya memberikan studi kasus sederhana mengenai penjualan suatu produk di sebuah mini market X. Diberikan data transaksi sebagai berikut :
Berdasarkan gambar diatas terdapat 6 ID transaksi, ini artinya terdapat 6 konsumen yang berbelanja di super market X. Seperti biasa kita menggunakan R studio sebagai tools dalam analisis ini. 

Biar tidak terlalu lama, lets do it : 

1. Buka R studio anda

2. Buka lembar kerja baru dengan cara ketik file, new file, dan R Script

3. Selanjutnya Kita akan menggunakan beberapa packages (Paket) yang dibutuhkan dalam analisis ini. berikut packagesnya :
library (arules)
library (arulesViz)
library (grid)
library (Matrix)

3. Buat list dataset dari transaksi diatas.
#membuat simulasi data
data = list(c("pena","roti","mentega"),
            c("mentega", "roti", "telur","susu"),
            c("buncis","telur","susu"),
            c("roti","mentega"),
            c("roti","mentega","kecap","telur","susu"),
            c("kecap","buncis","telur"),
            c("pena","buku","pensil"))

4. Ubah data tersebut menjadi data transaksi.
#Ubah data tersebut menjadi data transaksi 
data_trans = as(data, "transactions")
data_trans

5. Jika ingin melihat jumlah itemset yang terjual maka dapat menggunakan script berikut ini :
#Total Itemset yang terjual
itemFrequencyPlot(data_trans,type="absolute", 
                  col=12, main="Jumlah Frekuensi Item")

Jika di running maka akan menghasilkan plot dibawah ini 

6. Selanjutya kita akan memulai analisis association rule dengan memberikan minimum nilai support 0.2 dan confidence 0.2. 
#melakukan analisis association rule
aturan.ap<-apriori(aturan, 
                   parameter = list(supp=0.2,conf=0.2))
View(inspect(aturan.ap))

Script di atas menunjukan metode ini menggunakan nilai minimum support 0.2 dan confidance 0.2. Jika ingin memunculkan hasil dari analisis ini dapat digunakan perintah "inspect" seperti yang ditunjukan pada gambar diatas. maka hasil dari analisis ini sebagai berikut : 


Dari gambar diatas terlihat bahwa dengan menggunakan nilai nilai minimum support 0.2 dan confidance 0.2 menghasilkan aturan sebanyak 39 aturan.
Bagaimana cara membaca data tersebut :
  • Kita ambil contoh saja pada baris ke-8, interpretasi yang dapat kita lakukan pada hasil ini adalah jika konsumen membeli "buncis" maka dia akan membeli "telur" dengan nilai support 0.285 = 28,5%  , nilai confidence 1  = 100 %, dan nilai lift = 1,75

7. Didalam penentuan nilai support dan confidence itu menggunakan metode trial and error (coba-coba) untuk mendapatkan nilai support dan confidence yang maksimum. 

8. Kita juga dapat menentukan berapa jumlah kombinasi itemset yang diinginkan pada aturan asosiasi yang sudah terbentuk. Anda dapat menuliskan script R berikut :
#melakukan analisis association rule dengan kombinasi 3 itemset
aturan.ap<-apriori(data_trans, 
                 parameter = list(supp=0.2,conf=0.2, minlen=3))
View(inspect(aturan.ap))

Dari script diatas maka menghasilkan output seperti berikut : 

Gambar diatas menunjukan aturan asosiasi yang tebentuk sebanyak 16 aturan dengan menggunakan niali support 0.2, nilai confidence 0.2, dan menggunakan minimal kombinasi 3 itemset. 
Nah bagaimana cara untuk interpretasinya :
  • Kita ambil contoh pada baris pertama, jika konsumen membeli "mentega" dan "susu" kemudian dia akan membeli "roti" dengan nilai support 0.285 = 28,5%  , nilai confidence 1  = 100 %, dan nilai lift = 1,75

9. Kita juda bisa melihat grafik dari hasil aturan tersebut dengan menggunakan perintah berikut :
#Pembuatan plot aturan asosiasi
plot(aturan.ap2, method = "graph", 
     main = " Plot Asscoiation Rule Kombinasi 3 itemset")
Maka hasilnya seperti berikut : 

Jika dilihat dari gambar bahwa nilai bulat merah tersebut merupakan nilai support dari ke 4 produk tersebut. Semakin kontrasnya warna merah terebut maka nilai support nya akan semakin besar begtupun sebaliknya, semakin pudar warna dari bulatan tersebut maka nilai support nya kecil. 


Mungkin cukup sekian dulu tutorial MBA Association Rule dengan menggunakan R studio, semoga bermanfaat bagi anda yang ingin belajar. 

Jangan lupa bisa dilihat juga video recommended banget nih 
contoh MBA dengan R dan arules : Youtube : RB. Fajriya Hakim  


Dont forget to like, comment, and share . 
Have a nice Day
Thanks a lot :)

5 comments:

Copyright by INFO STATISTICS