BAB 2 LANDASAN TEORI

dokumen-dokumen yang mirip
BAB 2 TINJAUAN PUSTAKA DAN DASAR TEORI. yang akan diteliti. Pemanfaatan algoritma apriori sudah cukup banyak digunakan, antara lain

BAB II TINJAUAN PUSTAKA. pengetahuan di dalam database. Data mining adalah proses yang menggunakan

2.2 Data Mining. Universitas Sumatera Utara

BAB 2 LANDASAN TEORI. Pada bab ini akan dibahas tentang konsep dasar dan teori-teori pendukung yang berhubungan dengan sistem yang akan dibangun.

BAB 2 TINJAUAN PUSTAKA

II. TINJAUAN PUSTAKA

PREDIKSI KEBUTUHAN PENOMORAN PADA JARINGAN TELEKOMUNIKASI MENGGUNAKAN METODE APRIORI

BAB 2 TINJAUAN PUSTAKA

PENINGKATAN PERFORMA ALGORITMA APRIORI UNTUK ATURAN ASOSIASI DATA MINING

TINJAUAN PUSTAKA Data Mining

PENERAPAN ALGORITMA APRIORI DALAM MEMPREDIKSI PERSEDIAAN BUKU PADA PERPUSTAKAAN SMA DWI TUNGGAL TANJUNG MORAWA

BAB II LANDASAN TEORI

DATA MINING ANALISA POLA PEMBELIAN PRODUK DENGAN MENGGUNAKAN METODE ALGORITMA APRIORI

PENDAHULUAN. Latar Belakang

2.1 Penelitian Terkait

Konsep Data Mining. Pendahuluan. Bertalya. Universitas Gunadarma 2009

APLIKASI DATA MINING ANALISIS DATA TRANSAKSI PENJUALAN OBAT MENGGUNAKAN ALGORITMA APRIORI (Studi Kasus di Apotek Setya Sehat Semarang)

BAB II LANDASAN TEORI

PENGGALIAN KAIDAH MULTILEVEL ASSOCIATION RULE DARI DATA MART SWALAYAN ASGAP

APLIKASI DATA MINING UNTUK MENAMPILKAN INFORMASI TINGKAT KELULUSAN MAHASISWA

BAB II TINJAUAN PUSTAKA

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB IV GAMBARAN UMUM METODOLOGI DATA MINING

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

PENDAHULUAN TINJAUAN PUSTAKA

Timor Setiyaningsih, Nur Syamsiah Teknik Informatika Universitas Darma Persada. Abstrak

SISTEM REKOMENDASI PEMESANAN SPAREPART DENGAN ALGORITMA FP-GROWTH (STUDI KASUS PT. ROSALIA SURAKARTA)

BAB I PENDAHULUAN. Data mining memungkinkan penemuan pola-pola yang menarik, informasi yang

BAB II LANDASAN TEORI. Anindita Dwi Respita,2015. a. Penelitian ini menjelaskan tentang tujuan : menggunakan metode market basket analysis.

SISTEM REKOMENDASI PAKET MAKANAN DENGAN ALGORITMA FP-GROWTH PADA RESTORAN SEAFOOD XYZ

2. Tinjauan Pustaka. Gambar 2-1 : Knowledge discovery in database

Penerapan Stuktur FP-Tree dan Algoritma FP-Growth dalam Optimasi Penentuan Frequent Itemset

BAB II TINJAUAN PUSTAKA. Turban mendefinisikan Decision Support System sebagai sekumpulan

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Data Mining. Pengenalan Sistem & Teknik, Serta Contoh Aplikasi. Avinanta Tarigan. 22 Nov Avinanta Tarigan Data Mining

BAB II LANDASAN TEORI

BAB II TINJAUAN PUSTAKA. mewakilkan objek dan peristiwa yang memiliki arti dan sangat penting bagi

Pengembangan Aplikasi Market Basket Analysis Menggunakan Algoritma Generalized Sequential Pattern pada Supermarket

Abstrak. Data Mining, Algoritma Apriori, Algoritma FP-Growth, Mata Pelajaran, Pemrograman, Web Programming, Matematika, Bahasa Inggris.

Mining Association Rules dalam Basis Data yang Besar

BAB II LANDASAN TEORI

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI. yang tepat. Sistem data mining mampu memberikan informasi yang tepat dan

- PERTEMUAN 1 - KNOWLEGDE DISCOVERY

Pola Kompetensi Mahasiswa Program Studi Informatika Menggunakan FP-Growth

ANALISIS KETERKAITAN DATA TRANSAKSI PENJUALAN BUKU MENGGUNAKAN ALGORITMA APRIORI DAN ALGORITMA CENTROID LINKAGE HIERARCHICAL METHOD (CLHM)

IMPLEMENTASI ALGORITMA FP- GROWTH MENGGUNAKAN ASSOCIATION RULE PADA MARKET BASKET ANALYSIS

ASSOCIATION RULES PADA TEXT MINING

BAB 1 KONSEP DATA MINING 2 Gambar 1.1 Perkembangan Database Permasalahannya kemudian adalah apa yang harus dilakukan dengan data-data itu. Sudah diket

BAB II TINJAUAN PUSTAKA

ANALISA DAN PERANCANGAN APLIKASI ALGORITMA APRIORI UNTUK KORELASI PENJUALAN PRODUK (STUDI KASUS : APOTIK DIORY FARMA)

Aplikasi Data Mining untuk meneliti Asosiasi Pembelian Item Barang di Supermaket dengan Metode Market Basket Analysis

BAB 2 TINJAUAN PUSTAKA

PENERAPAN DATA MINING MENGGUNAKAN ALGORITMA FP-TREE DAN FP-GROWTH PADA DATA TRANSAKSI PENJUALAN OBAT

PENGEMBANGAN APLIKASI PENENTUAN TINGKAT KEUNTUNGAN PADA E- COMMERCE DENGAN MENGGUNAKAN ALGORITMA K-MEANS DAN APRIORI

DESAIN APLIKASI UNTUK MENAMPILKAN INFORMASI TINGKAT KELULUSAN MAHASISWA. Oleh : Rita Prima Bendriyanti ABSTRAK

BAB II TINJAUAN PUSTAKA 2.1 DASAR TEORI Business Analytic

Association Rule Mining Data Peminjaman Perpustakaan Menggunakan Apriori dan Jaccard Similarity

Assocation Rule. Data Mining

BAB I PENDAHULUAN 1.1. Latar Belakang

ANALISA PENCARIAN FREQUENT ITEMSETS MENGGUNAKAN ALGORITMA FP-MAX

Journal of Informatics and Technology, Vol 2, No 2, Tahun 2013, p

BAB II LANDASAN TEORI

PENERAPAN METODE APRIORI ASOSIASI TERHADAP PENJUALAN PRODUCT COSMETIC UNTUK MENDUKUNG STRATEGI PENJUALAN

ASSOCIATION RULES PADA TEXT MINING

IDENTIFIKASI POLA PENYAKIT ANAK DIBAWAH 5 TAHUN (BALITA) DENGAN MENGGUNAKAN ALGORITMA APRIORI

BAB 2 LANDASAN TEORI

IMPLEMENTASI DATA MINING MENGGUNAKAN ALGORITMA ECLAT

PENGGALIAN TOP-K CLOSED FREQUENT ITEMSETS BERBASIS ALGORITMA PEMETAAN TRANSAKSI

PERBANDINGAN ALGORITMA APRIORI DAN ALGORITMA FP-GROWTH UNTUK PEREKOMENDASI PADA TRANSAKSI PEMINJAMAN BUKU DI PERPUSTAKAAN UNIVERSITAS DIAN NUSWANTORO

PENERAPAN METODE ASOSIASI DATA MINING MENGGUNAKAN ALGORITMA APRIORI UNTUK MENGETAHUI KOMBINASI ANTAR ITEMSET PADA PONDOK KOPI

IMPLEMENTASI DATA MINING ALGORITMA APRIORI PADA PENJUALAN SPAREPART MOTOR DI AHAS PUTRA MOTOR

BAB 2 LANDASAN TEORI

BAB II TINJAUAN PUSTAKA. Bab ini menguraikan tentang teori-teori penunjang yang dipakai dalam

PENGGUNAAN ALGORITHMA APRIORI DALAM MENGANALISA PRILAKU MAHASISWA DALAM MEMILIH MATA KULIAH ( STUDI KASUS : FKIP UPI YPTK )

Link Analysis (Superset) 3 Kategori Link Analysis (#1) 3 Kategori Link Analysis (#2) Association Rule Mining. 3 Kategori Link Analysis (#3)

PENERAPAN DATA MINING UNTUK EVALUASI KINERJA AKADEMIK MAHASISWA MENGGUNAKAN ALGORITMA NAÏVE BAYES CLASSIFIER

BAB 1 PENDAHULUAN Latar Belakang

ANALISA DATA PENJUALAN OBAT DENGAN MENGGUNAKAN ALGORITMA APRIORI PADA RUMAH SAKIT UMUM DAERAH H. ABDUL MANAN SIMATUPANG KISARAN

RANCANG BANGUN APLIKASI DATA MINING ANALISIS TINGKAT KELULUSAN MENGGUNAKAN ALGORITMA FP-GROWTH (Studi Kasus Di Politeknik Negeri Malang)

BAB 1 PENDAHULUAN. retail di Indonesia pada semester I 2010 telah mencapai Rp 40 triliun. Omzet perusahaan

Implementasi Data Mining Untuk Analisa Tingkat Pelanggaran Lalu Lintas Dengan Algoritma Association Rule

Gambar Tahap-Tahap Penelitian

Aplikasi Data Mining Market Basket Analysis untuk Menemukan Pola Pembelian di Toko Metro Utama Balikpapan

PENERAPAN ALGORITMA APRIORI DALAM PERANGKAT LUNAK DATA BASE Amroni, S.Kom, M.Kom

BAB II TINJAUAN PUSTAKA

Penelitian ini melakukan pencarian

PEMODELAN POLA HUBUNGAN KEMAMPUAN LULUSAN UNIVERSITAS LANCANG KUNING DENGAN KEBUTUHAN DUNIA USAHA DAN INDUSTRI

BAB II TINJAUAN STUDI DAN LANDASAN TEORI

BAB III METODOLOGI PENELITIAN

Jurnal Informatika SIMANTIK Vol. 2 No. 2 September 2017 ISSN:

Cust. 1 : milk, bread, cereal. Cust. 2 : milk, bread, Sugar, eggs. Cust. 3 : milk, bread, butter

PERTEMUAN 14 DATA WAREHOUSE

PERSYARATAN PRODUK. 1.1 Pendahuluan Latar Belakang Tujuan

APLIKASI DATA MINING UNTUK POLA PERMINTAAN DARAH DI UDD ( UNIT DONOR DARAH ) PMI KOTA SURABAYA MENGGUNAKAN METODE APRIORI

Journal of Informatics and Telecommunication Engineering. Analisa Algoritma Data Mining Eclat Dan Hui Miner

Aturan assosiatif biasanya dinyatakan dalam bentuk : {roti, mentega} {susu} (support = 40%, confidence = 50%)

Jurnal Edik Informatika Penelitian Bidang Komputer Sains dan Pendidikan Informatika V1.i1(52-62)

BAB II LANDASAN TEORI

Transkripsi:

BAB 2 LANDASAN TEORI 2.1. Pengertian Data, Informasi dan Knowledge Data merupakan fakta yang dikumpulkan, disimpan, dan diproses boleh sebuah sistem informasi. Selain deskripsi dari sebuah fakta, data dapat pula merepresentasikan suatu objek sebagaimana dikemukakan oleh Wawan dan Munir (2006). Dengan demikian dapat dijelaskan kembali bahwa data merupakan suatu objek, kejadian, atau fakta yang terdokumentasikan dengan memiliki kodifikasi terstruktur untuk suatu atau beberapa entitas. Informasi merupakan suatu hasil dari pemrosesan data menjadi sesuatu yang bermakna bagi yang menerimanya, sebagaimana dikemukakan oleh Vercellis (2009). Informasi juga merupakan data yang telah diolah dan diproses untuk menyediakan output yang berguna bagi user. Dengan demikian informasi dapat dijelaskan kembali sebagai sesuatu yang dihasilkan dari pengolahan data menjadi lebih mudah dimengerti dan bermakna yang menggambarkan suatu kejadian dan fakta yang ada. Pengetahuan (knowledge) sebenarnya merupakan sebuah informasi juga yang merupakan hasil dari pengolahan data. Vercellis (2009) memandang bahwa suatu informasi dikatakan pengetahuan jika dapat digunakan dalam pengambilan keputusan. Dengan demikian pengetahuan dapat dijelaskan kembali sebagai kumpulan dari data dan informasi yang bertemu dengan kompetensi dan 7

8 pengalaman seseorang untuk menindaklanjuti data dan informasi yang ada sehingga dapat dikembangkan untuk pengambilan suatu keputusan. Tidak seperti informasi yang hanya bersifat memberi tahu, pengetahuan harus mampu digunakan untuk proses pengambilan keputusan. 2.2. Data Mining 2.2.1. Pengertian Data Mining Data mining adalah proses untuk menemukan interesting knowledge dari sejumlah besar data yang disimpan dalam database, data warehouse, atau media penyimpanan yang lainnya. (Han, Kamber, 2001). Sedangkan menurut Wikipedia (ID), penggalian atau penambangan data (Bahasa Inggris: data mining, DM) adalah proses pencarian otomatis terhadap pola dalam data dalam jumlah besar dengan menggunakan perangkat seperti klasifikasi, penggugusan (clustering), dll. Penambangan data adalah suatu topik yang kompleks dan berpautan dengan berbagai bidang inti seperti ilmu komputer dan memberikan nilai tambah dari teknik komputasi lain seperti statistika, pengambilan informasi, pembelajaran mesin, dan pengenalan pola. Data mining diterapkan dengan paradigma untuk melihat informasi yang tersembunyi. Sedangkan definisi data mining berdasarkan Han Jiawei dan M. Kamber adalah proses mengekstaksi pola-pola yang menarik (implisit, tidak diketahui sebelumnya, dan berpotensi untuk dapat dimanfaatkan) dari data yang berukuran besar.

9 Data mining muncul berdasarkan fakta bahwa pertumbuhan data yang sangat pesat, tetapi minim pengetahuan apa yang ada di dalam data tersebut. Alasan memilih data mining dibandingan analisis data secara tradisional adalah : Data mining mampu menangani jumlah data kecil sampai dengan data yang berukuran sangat besar. Data mining mampu menangani data yang mempunyai banyak dimensi, yaitu puluhan sampai ribuan dimensi. Data mining mampu menangani data dengan kompleksitas yang tinggi, misalnya data stream, data spasial, teks, web, dan lain-lain. Statictics Data Mining AI, Machine Learning, and Pattern Recognition Database Technology, Parallel Computing, Distributed Computing Gambar 2.1. Data mining sebagai pertemuan dari beberapa prinsip. Dengan menggunakan data mining, para pelaku bisnis dapat memanfaatkan data yang ada untuk memecahkan masalah bisnis mereka yang umumnya dihadapi adalah : - Bagaimana menyajikan advertensi kepada target yang tepat sasara - Menyajikan halaman web yang khusus setiap pelanggam - Menampilkan informasi produk lain yang biasa dibeli bersamaan dengan produk tertentu.

10 - Mengklasifikasi artikel-artikel secara otomatis - Mengelompokkan pengunjung web yang memiliki kesamaan karateristik tertentu - Mengestimasi data yang hilang - Memprediksi kelakuan di masa yang akan datang Secara sederhana, data mining adalah ekstraksi informasi atau pola yang penting atau menarik dari data yang ada di database yang besar. Data mining merupakan proses dari Knowledge Discovery in Databases (KDD). 2.2.2. Knowledge Discovery in Databases (KDD) Data mining digambarkan sebagai suatu proses untuk menemukan pengetahuan yang menarik, seperti pola, asosiasi, aturan, perubahan, keganjilan dan struktur penting dari sejumlah besar data yang disimpan pada bank data dan tempat penyimpanan informasi lainnya. Secara umum, proses KDD terdiri dari langkah-langkah (Han, Kamber, 2001), yaitu : 1. Pemilihan data (data selection), pemilihan data relevan yang didapat dari database. 2. Pembersihan data (data cleaning), proses menghilangkan noise dan data yang tidak konsisten atau data tidak relevan. 3. Melakukan integrasi data (data integration), penggabungan data dari berbagai database ke dalam satu database baru.

11 4. Transformasi data (data transformation), data diubah ke dalam format yang sesuai untuk diproses dalam data mining. 5. Data mining, suatu proses dimana metode diterapkan untuk menemukan pengetahuan berharga dan tersembunyi dari data. 6. Evaluasi pola (pattern recognation), untuk mengidentifikasi pola-pola menarik untuk dipresentasikan ke dalam knowledge based. 7. Representasi pengetahuan (knowledge presentation), visualisasi dan penyajian pengetahuan mengenai teknik yang digunakan untuk memperoleh pengetahuan yang diperoleh oleh user. Gambar 2.2. Proses pada Knowledge Discovery in Databases 2.2.3. Teknik-Teknik Data Mining Teknik pada data mining pada umumnya dibagi menjadi dua buah kategori yaitu : 1. Prediktif

12 Obyektif dari ketegori ini adalah untuk memprediksi nilai dari atribut tertentu berdasarkan nilai dari atribut yang lainnya. Atribut yang akan diprediksi umumnya dikenal sebagai target atau dependent variable, dan atribut yang digunakan untuk membuat prediksi disebut juga dengan explanatory atau independent variable. 2. Deskriptif Obyektif dari kategori ini adalah untuk mengenali pola (korelasi, trend, cluster, trajector, dan anomali) yang merupakan summary dari relasirelasi di dalam data. Gambar 2.3. Empat metode utama pada data mining. 2.2.3.1. Predictive Modeling Metode ini digunakan untuk membangun sebuah model untuk variabel tujuan sebagai fungsi pada variable yang bersifat menjelaskan. Terdapat dua buah

13 model pada metode ini, yaitu klasifikasi yang digunakan untuk variabel tujuan yang diskrit, dan regresi yang digunakan untuk variabel tujuan yang kontinu. Contohnya, memprediksikan apakah seorang pengguna web akan melakukan pembelian pada toko buku online termasuk dalam metode klasifikasi karena variable tujuannya adalah nilai biner. Sedangkan hal lainnya adalah memprediksikan nilai saham di masa akan datang merupakan metode regresi karena harga saham merupakan atribut nilai kontinu. Hasil yang ingin dicapai pada metode ini adalah untuk mempelajari sebuah model yang akan meminimalkan kesalahan atau error diantara prediksi dan nilai yang sesungguhnya pada suatu variabel tujuan. Model prediksi dapat juga digunakan untuk mengidentifikasi pelanggan yang akan merespon sebuah promosi, memprediksikan gangguan pada ekosistem bumi, atau menentukan apakah seorang pasien mempunyai penyakit tertentu berdasarkan hasil dari pemeriksaan medis. Gambar 2.4. Model klasifikasi pada bunga iris.

14 2.2.3.2. Cluster Analysis Analisis cluster bertujuan untuk menemukan grup pada observasi yang hubungannya berdekatan, sehingga observasi yang terkandung pada cluster yang sama adalah lebih mirip atau mendekati dibandingan pada observasi pada cluster lainnya. Metode ini sudah digunakan untuk set grup pada pelanggan yang berhubungan, menemukan area-area di laut yang mempunyai dampak pada cuaca bumi. Gambar 2.5. Beberapa contoh clustering. 2.2.3.3. Anomaly Detection Deteksi anomali adalah sebuah metode untuk mengidentifikasi observasi karakteristik apa saja yang secara signifikan berbeda dengan data-data lainnya. Observasi-observasi ini disebut juga dengan anomalis atau outliners. Tujuan dari metode ini adalah untuk menemukan anomalis sesungguhnya dan menghindari kesalahan melabelkan obyek biasa sebagai anomalis. Dengan kata lain, sebuah

15 detektor anomalis yang baik tentu saja harus memiliki tingkat deteksi yang tinggi dan tingkat kesalahan yang rendah. Contoh dari deteksi anomali ini adalah pendeteksian penipuan kartu kredit, gangguan jaringan komputer, pola penyakit yang tidak biasa, dan gangguan ekosistem. Gambar 2.6. Deteksi Anomali pada Lubang Ozon 2.2.3.4. Association Rule Aturan asosiasi atau seringkali disebut juga dengan association analysis digunakan untuk menemukan pola yang mendeskripsikan kekuatan ciri-ciri asosiasi di dalam data. Association rule merupakan salah satu metode yang umum digunakan untuk mencari hubungan antar item. Sebagai contohnya, dari suatu himpunan data transaksi, seseorang mungkin menemukan suatu hubungan seperti berikut, yaitu ketika seorang pelanggan membeli laptop, ia biasanya juga membeli mouse dalam satu transaksi yang sama atau ketika seorang pelanggan membeli

16 sikat gigi, dalam transaksi yang sama ia juga membeli odol. Dengan demikian proses untuk menemukan hubungan antar item ini mungkin memerlukan pembacaan data transaksi secara berulang-ulang dalam jumlah data transaksi yang besar untuk menemukan polapola hubungan yang berbeda-beda, maka waktu dan biaya komputasi tentunya juga akan sangat besar, sehingga untuk menemukan hubungan tersebut diperlukan suatu algoritma yang efisien. Gambar 2.7. Association Analysis pada Transaksi di Supermarket Dalam menentukan suatu association rule, terdapat ukuran yang menyatakan bahwa suatu informasi atau knowledge dianggap menarik (interestingness measure). Ukuran ini didapatkan dari hasil pengolahan data dengan perhitungan tertentu. Untuk mengukur interestingness measure, dapat digunakan variabel berikut ini : 1. Support Suatu ukuran yang menunjukkan berapa besar tingkat dominasi suatu item atau itemset dari keseluruhan transaksi. Ukuran ini menentukan apakah suatu item atau itemset layak dicari confidence-nya (misalnya, dari keseluruhan transaksi yang ada, seberapa besar tingkat dominasi yang menunjukkan bahwa item A dibeli bersamaan dengan item B.

17 2. Confidence Suatu ukuran yang menunjukkan hubungan antar dua item secara conditional (misalnya seberapa sering item B dibeli jika pelanggan membeli item A). Ada beberapa simbol yang akan membantu untuk menerapkan association rule, yaitu: Association rule: implikasi yang dimisalkan dengan bentuk X -> Y, dimana X dan Y saling disjoin (X Y) Support count(σ(x)): jumlah transaksi yang memuat itemset tertentu Support (s(x->y)): tingkat intensitas kemunculan gabungan rule(x U Y) pada association rule pada seluruh data set Confidence(c(X->Y)): tingkat intensitas kemunculan item Y pada transaksi yang memuat X Rumus support dan confidence : 2.2.4. Market Basket Analysis Market basket analysis adalah suatu metodologi untuk melakukan analisis pola belanja konsumen dengan menemukan asosiasi antar beberapa item yang

18 berbeda, yang diletakan konsumen dalam shopping basket yang dibeli pada suatu transaksi tertentu. Tujuan dari market basket adalah untuk mengetahui produkproduk mana yang mungkin akan dibeli secara bersamaan. Analisis data transaksi dapat menghasilkan pola pembelian produk yang sering terjadi. Informasi ini dapat digunakan bagi para penjual dalam mengembangkan strategi dan pengambilan keputusan dengan melihat beberapa item mana saja yang sering dibeli secara bersamaan oleh konsumen, misalnya dalam pengaturan peletakan produk di toko, produk yang sering dibeli bersamaan diletakkan secara berdekatan. Teknik ini telah digunakan oleh banyak toko grosir maupun retail (Olson, Yong, 2006). Market basket data adalah data transaksi yang mendeskripsikan tiga fundamental dari entitas yang berbeda, yaitu: 1. Pelanggan 2. Pembelian 3. Item Pada sebuah database relasional, struktur data untuk market basket data seringkali terlihat seperti gambar di bawah ini. Struktur data ini mengandung empat entitas yang penting. Gambar 2.8. Data model untuk Level Transaksi

19 2.2.4.1. Algoritma Apriori Association rule mining terdiri dari dua sub persoalan yaitu menemukan semua kombinasi dari item, disebut dengan frequent itemset yang memiliki support lebih besar daripada mininum support, dan menggunakan frequent itemset untuk menjalankan aturan yang ditetapkan. Algoritma apriori bertujuan untuk menemukan frequent itemsets yang dijalankan pada sekumpulan data. 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. Faktor-faktor yang dapat mengakibatkan kompleksitas pada algoritma apriori adalah sebagai berikut : 1. Pemilihan minimum support Dengan menurunkan batas minimum support dapat menyebabkan semakin banyaknya frequent itemset yang didapatkan. Hal ini juga menyebabkan peningkatan jumlah dari kandidat dan panjang maksimum dari frequent itemset 2. Dimensi atau jumlah item pada data set Lebih banyak ruang yang dibutuhkan untuk menyimpan hitungan support untuk setiap item.

20 Jika jumlah pada frequent item juga meningkat, baik komputasi dan I/O Cost mungkin juga akan meningkat. 3. Besarnya ukuran database Karena apriori membuat multiple pass, run time dari algoritma juga akan meningkat dengan jumlah dari transaksi. 4. Rata-rata panjang transaksi Lebar transaksi akan meningkatkan kepadatan data set. Hal ini akan meningkatkan panjang maksimum dari frequent itemset dan garis lintang pada hash tree (jumlah dari subset di dalam sebuah transaksi meningkatkan lebarnya). Berikut di bawah ini adalah pseudocode yang digunakan oleh algoritma apriori : L 1 = {large 1-itemset}; For ( k=2; L k-1 = 0; k++) do begin C k = apriori-gen(l k-1 ); // New candidates Forall transactions t D do begin C t = subset(c k,t ); // Candidates contained in t Forall candidates c C t do c.count++; end L k = {c C k c.count >= minsup } End Answer = U k L k ;

21 Gambar 2.9. Flowchart Algoritma Apriori Contoh cara kerja dari algoritma apriori dapat diilustrasikan pada tabel dibawah ini, dengan menggunakan minimum support sebesar 50% dan minimum confidence sebesar 70%. Tid Itemsets 1 A B C D E 2 A B C 3 C D E F 4 A B E Tabel 2.1 Database Transaksi Implementasi prosesnya adalah dengan mencari frequent itemset terlebih dahulu dengan hasil sebagai berikut ini :

22 1. Frequent 1 itemsets {{A}, {B}, {C}, {D}, {E}} 2. Frequent 2 itemsets {{AB}, {AC}, {AE}, {BC}, {BD}, {CD}, {CE}} 3. Frequent 3 itemsets {ABC} 4. Hasilnya L = L1 L2 L3 = {{A}, {B}, {C}, {D}, {E}, {AB}, {AC}, {AE}, {BC}, {BD}, {CD}, {CE}, {ABC}} 5. Menentukan asosiasi dari {ABC}, hanya {AC} {B}, {BC} A, {A} B, {B} {A} yang memenuhi persyaratan dimana level confidencenya adalah 100%. Kelemahan daripaada algoritma apriori dapat menciptakan banyak item kandidat di dalam proses kalkulasi. Ketika jumlah dari frequent 1-itemsets sangat besar atau pola frequent menjadi sangat panjang, maka jumlah kandidat yang digenerate menjadi meningkat. Sehingga efisiensi dari algoritma ini akan menurun sangat tajam. Contohnya apabila jumlah dari frequent 1-itemset adalah 10 4, maka jumlah kandidat pada 2-itemset yang akan kita generate akan menjadi 10 7. Jika panjang dari frequent mode adalah 100, maka kita perlu mengenerate 2 100 set kandidat. Jika kita mencari terlalu banyak set kandidat, maka efisiensi dari algoritma tersebut akan menjadi terlalu rendah. Algoritma apriori juga memerlukan scanning database berulang-ulang dan mencari itemset kandidat dengan pola mencocokan. Jika database terlalu besar dan pola yang perlu dicocokan terlalu panjang, maka efisiensi dari algoritma ini akan sangat berkurang.

23 2.2.4.2. FP Growth Algorithm Dengan menggunakan algoritma fp growth, dapat dilakukan pencarian frequent itemset tanpa harus melalui candidate generation. Fp growth menggunakan struktur data fp tree, sehingga cara kerja dari algoritma ini adalah melalui scan database yang dilakukan hanya dua kali saja. Data kemudian ditampilkan dalam bentuk fp tree, dan setelah fp tree terbentuk, digunakan pendekatan devide dan conquer untuk mendapatkan frequent itemset. Berikut ini adalah contoh dari penggunakan algoritma fp growth pada data penjualan : Gambar 2.10 Contoh Algoritma FP Growth

24 Growth : Berikut di bawah ini adalah pseudocode yang digunakan oleh algoritma FP Procedure: FPGrowth(DB, e) Define and clear F-List : F[]; Foreach Transaction Ti in DB do Foreach Item aj in Ti do F[a]++; End End Sort F[] Define and clear the root of FP-tree : r; Foreach Transaction Ti in DB do Make Ti ordered according to F; Call ConstructTree(ti,r); End Foreach item ai in I do Call Growth(r,ai,e); End 2.2.4.2.1. Performa FP Growth Algorithm Berikut ini adalah grafik hasil pengujian dengan menggunakan database yang terdiri dari 491403 transaksi dan 100 barang. Gambar 2.11 Perbandingan FP Growth dengan Apriori

25 2.2.4.3. Vertical Format Algorithm Dari penjelasan di atas, dapat dilihat bahwa terdapat beberapa kekurangan pada algoritma tradisional tersebut. Algoritma apriori adalah algoritma dengan format horizontal yang digunakan untuk mencari frequent itemset. Algoritma ini secara berulang men-scan database untuk mendapatkan tingkat support pada set kandidat. Beberapa algoritma apriori yang sudah diimproved menawarkan pengurangan waktu perbandingan antara set kandidat dan record transaksi. Tetapi apabila proses perbandingan tersebut dapat dihilangkan, maka akan membuat performa menjadi meningkat drastis. Vertical Format Algorithm adalah sebuah algoritma baru yang diciptakan oleh Yi-ming Gou dan Zhi-jun Wan dari Universitas Teknik Liaoning, Huludao, China dengan mencari frequent itemset dengan format vertikal. Algoritma ini melakukan scanning database hanya satu kali untuk mendapatkan frequent 1- itemset dan untuk langkah selanjutnya tidak perlu dilakukan scan terhadap database lagi. Keuntungan dari algoritma ini adalah dapat menentukan itemset nonfrequent sebelum generate itemset kandidat sehingga dapat menghemat waktu. Setiap id transaksi pada k-itemset membawa informasi yang lengkap yang dapat mengkalkulasi tingkat support, sehingga tidak perlu lagi melakukan scan database untuk mencari tingkat support dari (k+1) itemsets. 2.2.4.3.1. Cara Kerja Vertical Format Algorithm Pada awalnya dilakukan scanning database untuk mendapatkan frequent 1-itemset. Kemudian merubah format horizontal menjadi format vertikal pada

26 frequent 1-itemset tersebut. Langkah selanjutnya adalah dengan melakukan operasi AND untuk setiap elemen dari frequent itemset tersebut dan simpan hasilnya. Jika hasilnya melebihi minimal support, maka kita mendapatkan kandidat set untuk C k+1, dan dilakukan operasi AND berikutnya dan dilakukan secara berulang-ulang sampai mendapatkan situasi seperti berikut ini: Hanya tersisa satu frequent itemset dan tidak mungkin dapat digunakan operasi AND lagi. Seluruh hasil dari operasi AND kurang dari minimum support. Berikut di bawah ini adalah pseudocode yang digunakan oleh algoritma Vertical Fomat : Output : L k L 1 = find frequent 1-itemsets (D); For(k=2; L k > 1; k++) L k = P(L k-1, minsup) RETURN U k L k Procedure P(D, min_sup) { L k = null; For(i=0; i<l k-1.count; i++) For(j=i+1; j<l k-1.count; j++) { If(L k-1 [i].strung(k-2)=l k-1 [j].string(k-2)) } } Then item.t id =L k-1 [i].t id L k-1 [j].t id If(item.T id.length>=min_sup) Then L k.add(item)

27 Gambar 2.12. Flowchart Algoritma Vertical Format Sebagai contoh, digunakan tabel transaksi dibawah ini dengan menentukan minimum support yang digunakan adalah 2. Item set I1 I2 I3 I4 I5 TID set 1,4,5,7,8,9 (b1) 1,2,3,4,6,8,9 (b2) 3,5,6,7,8,9 (b3) 2,4 (b4) 1,8 (b5) Tabel 2.2. Tabel I Database Transaksi

28 Hasilnya adalah : b1 b2 = {1, 4, 8, 9} Jumlah=4; b1 b3 = {5, 7, 8, 9} Jumlah=4; b1 b4 = {4} Jumlah=1 < 2 (hapus); b1 b5 = {1, 8} Jumlah=2; b2 b3 = {3, 6, 8, 9} Jumlah=4; b2 b4 = {2, 4} Jumlah=2; b2 b5 = {1, 8} Jumlah=2; b2 b3 = φ (hapus); b2 b4 = {8} Jumlah=1 < 2 (hapus); b2 b5 = φ (hapus); Atur data di atas untuk mendapatkan frequent 2-itemset seperti terlihat pada tabel di bawah ini dan jika item pertama pada itemsetnya sama, hubungkan dan lakukan operasinya : Item set I1I2 I1I3 I1I5 I2I3 I2I4 I2I5 TID set 1,4,8,9 (b1) 5,7,8,9 (b2) 1,8 (b3) 3,6,8,9 (b4) 2,4 (b5) 1,8 (b6) Tabel 2.3. Tabel II Database Transaksi Hasilnya adalah : b1 b2 = {8, 9} Jumlah=2;

29 b1 b3 = {1, 8} Jumlah=2; b2 b3 = {8} Jumlah=1 < 2 (hapus); b4 b5 = φ (hapus); b4 b6 = {8} Jumlah=1 < 2 (hapus); b5 b6 = φ (hapus); Langkah selajuntnya adalah sama dengan langkah sebelumnya, atur kembali data di atas untuk mendapatkan frequent 3-itemset seperti pada tabel di bawah ini : Item set I1I2I3 I1I2I5 TID set 8,9 (b1) 1,8 (b2) Tabel 2.4. Tabel III Database Transaksi Hasilnya adalah : b1 b2 = {8} Jumlah=1 < 2 (hapus); Sehingga maksimal frequent itemsetnya adalah {I1, I2, I3} dan {I1, I2, I5}. 2.2.4.3.2. Performa Vertical Format Algorithm Pada saat menggunakan data set klasik yaitu tabel jamur (Mushroom Database) sebagai test data, yang berisikan 8124 instance, 23 atribut dan 127 macam nilai. Ketika tingkat support tinggi, algoritma apriori membutuhkan waktu yang singkat untuk berjalan. Akan tetapi algoritma vertical format memakan waktu lebih sedikit dibandingkan algoritma apriori. Sehingga dengan pengurangan tingkat support maka performa algoritma ini akan menjadi lebih baik.

30 Dengan menggunakan tingkat support sebesar 25% dan data set yang terdiri dari 8124 instance maka didapatkan hasil simulasi penelitian seperti pada gambar dibawah ini : Gambar 2.13 Hasil Perbandingan dengan menggunakan tingkat support berbeda Gambar 2.14 Hasil Perbandingan dengan menggunakan besar TID yang berbeda

31 Dengan adanya hasil eksperimen tersebut, dapat menunjukkan bahwa algoritma dengan menggunakan vertical format hasilnya lebih baik daripada dengan menggunakan algoritma apriori.