BAB 2 DASAR TEORI Bayesian Network

dokumen-dokumen yang mirip
BAB 3 ANALISIS HIPOTESIS

ALGORITMA TPDA DAN TPDA Π SEBAGAI ALTERNATIF STRUKTUR BAYESIAN NETWORK

ANALISIS PEMANFAATAN SEQUENTIAL PATTERN UNTUK MENENTUKAN NODE ORDERING PADA ALGORITMA KONSTRUKSI STRUKTUR BAYESIAN NETWORK

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

PUSTAKA. Agrawal, Rakesh and Srikant, Ramakrishnan (2000), Mining Sequential Pattern, IBM Almaden Research Center, 650 Harry Road, San Jose, CA 95120

PENGEMBANGAN ALGORITMA CB UNTUK KONSTRUKSI STRUKTUR BAYESIAN NETWORK DARI DATA TIDAK LENGKAP

Harmonisasi Algoritma Hybrid Untuk Membangun Struktur Bayesian Network Pada Basisdata

Assocation Rule. Data Mining

2.2 Data Mining. Universitas Sumatera Utara

BAB I PENDAHULUAN 1.1 Latar Belakang

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

REKAYASA PERANGKAT LUNAK DETEKSI DINI KECENDERUNGAN GANGGUAN KESEHATAN MASYARAKAT TERTINGGAL DAN PESISIR DENGAN BAYESIAN NETWORK

Latar Belakang Masalah Masing-masing algoritma hanya dapat bekerja pada pada data lengkap (algoritma CB) dan data tidak lengkap (algortima BC) untuk m

Algoritma Bayesian Network Untuk Simulasi Prediksi Pemenang PILKADA Menggunakan MSBNx

Struktur Bayesian Network untuk Penentuan Class Karakteristik Siswa pada Sistem Tutor Cerdas

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

PENDAHULUAN TINJAUAN PUSTAKA

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

BAB 2 TINJAUAN PUSTAKA

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

Mining Association Rules dalam Basis Data yang Besar

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

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

ANALISA POLA PEMILIHAN PROGRAM STUDI BAGI CALON MAHASISWA DI UNIVERSITAS ABDURRAB MENGGUNAKAN ASSOCIATION RULE

Sistem Pakar Untuk Mendiagnosa Penyakit Mata Dengan Metode Bayesian Network

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

BAB I PENDAHULUAN Latar Belakang

I.1 Latar Belakang Masalah Seiring berjalannya waktu dan perkembangan teknologi media penyimpanan elektronik, setiap organisasi dapat menyimpan

BAB II LANDASAN TEORI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

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

II. TINJAUAN PUSTAKA

DATA MINING ANALISA POLA PEMBELIAN PRODUK DENGAN MENGGUNAKAN METODE ALGORITMA APRIORI

PENGGUNAAN MARKET BASKET ANALYSIS DALAM DATA MINING

Menyelesaikan Topological Sort Menggunakan Directed Acyclic Graph

PENDAHULUAN. Latar Belakang

BAB 2 TINJAUAN PUSTAKA

BAB I PENDAHULUAN 1.1 Latar Belakang

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

BAB III METODE PENELITIAN. A. Tempat dan Waktu. 1. Tempat Penelitian. a. Assalam hypermarket merupakan salah satu pusat perbelanjaan di

ANALISA POLA PEMILIHAN PROGRAM STUDI BAGI CALON MAHASISWA DI UNIVERSITAS ABDURRAB MENGGUNAKAN ASSOCIATION RULE

ASSOCIATION RULES PADA TEXT MINING

IMPLEMENTASI DATA MINING DENGAN ALGORITMA APRIORI PADA TOKO BANGUNAN UD. RUFI SENTOSA JAYA SAMBIREJO - PARE

BAB. III. ANALISA PERMASALAHAN

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

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB II TINJAUAN PUSTAKA

Association Rule. Ali Ridho Barakbah

BAB I PENDAHULUAN I-1

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

BAB I PENDAHULUAN. frekuensi tinggi antar himpunan itemset yang disebut fungsi Association


Penggunaan Struktur FP-Tree dan Algoritma FP- Growth dalam Rekomendasi Promosi Produk pada Situs Belanja Online

BAB II TINJAUAN PUSTAKA

BAB 2 LANDASAN TEORI

BAB III METODOLOGI PENELITIAN

ASSOCIATION RULES PADA TEXT MINING

ABSTRAKSI Analisis keranjang pasar merupakan suatu cara untuk mengetahui kebiasaan berbelanja masyarakat disuatau tempat terhadap barang yang dibeli.

PENDAHULUAN TINJAUAN PUSTAKA

Cynthia Banowaty Pembimbing : Lely Prananingrum, S.Kom., MMSi

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

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

BAB II TINJAUAN PUSTAKA

Keoptimalan Naïve Bayes Dalam Klasifikasi

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

Gambar Tahap-Tahap Penelitian

ANALISA POLA DATA HASIL PEMBANGUNAN KABUPATEN MALANG MENGGUNAKAN METODE ASSOCIATION RULE

BAB IV METEDOLOGI PENELITIAN

ABSTRACT Market basket analysis is a way to know the shopping habits of people in one place on goods purchased. Market basket analysis to produce an a

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

ANALISA PENCARIAN FREQUENT ITEMSETS MENGGUNAKAN ALGORITMA FP-MAX

Penerapan Teknik Bayesian Network dalam Pengembangan Prototipe Aplikasi Web Content Mining

BAB 6 METODE PENGUJIAN

PENCARIAN ATURAN ASOSIASI MENGGUNAKAN ALGORITMA APRIORI SEBAGAI BAHAN REKOMENDASI STRATEGI PEMASARAN PADA TOKO ACIICA

BAB. II. TINJAUAN PUSTAKA

Konsep Data Mining. Pendahuluan. Bertalya. Universitas Gunadarma 2009

Jurnal Ilmiah Komputer dan Informatika (KOMPUTA) LEARNING BAYESIAN NETWORK PADA GAME SPORT PINGPONG

PENERAPAN ALGORITMA APRIORI ASSOCIATION RULE UNTUK ANALISA NILAI MAHASISWA DI UNIVERSITAS GUNADARMA

Analisa Keterkaitan (Link Analysis) Dengan Menggunakan Sequential Pattern Discovery Untuk Prediksi Cuaca

IMPLEMENTASI ALGORITMA APRIORI UNTUK MENGANALISA POLA PEMBELIAN PRODUK PADA DATA TRANSAKSI PENJUALAN

PENGGALIAN KAIDAH MULTILEVEL ASSOCIATION RULE DARI DATA MART SWALAYAN ASGAP

1 BAB I 2 PENDAHULUAN

Model Multinomial Bayesian Network pada Data Simulasi Curah Hujan

KLASIFIKASI KARAKTERISTIK MAHASISWA UNIVERSITAS COKROAMINOTO PALOPO MENGGUNAKAN METODE NAÏVE BAYES DAN DECISION TREE. Yuli Hastuti

Kecerdasan Buatan/ Artificial Intelligence

BAB I PENDAHULUAN. yang cepat dan besar di Asia (Kartiwi, 2006). Pertumbuhan e-commerce yang

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

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

BAB III ANALISIS DAN PERANCANGAN

PENERAPAN ASSOCIATION RULE PADA DATA PERSEDIAAN BAHAN BAKU DI PRO AB CHICKEN JAMBI

BAB II TINJAUAN PUSTAKA

BAB I PENDAHULUAN 1.1 Latar Belakang

Analisis Perbandingan Metode Bayesian Network dan Dempster-Shafer Pada Sistem Pakar Diagnosis Penyakit Mata

MEMBANDINGKAN KEMANGKUSAN ALGORITMA PRIM DAN ALGORITMA KRUSKAL DALAM PEMECAHAN MASALAH POHON MERENTANG MINIMUM

Cross-Selling: Perangkat Utama Customer Relationship Managem. Meningkatkan Loyalitas Pelanggan

PENERAPAN ALGORITMA APRIORI DALAM MENENTUKAN STRATEGI PENJUALAN MAKANAN RINGAN (Studi Kasus: Toko Pak Herry Templek - Gadungan)

BAB III METODE PENELITIAN

METODE PENELITIAN. Proses Dasar Sistem

Metodologi Algoritma A Priori. Metodologi dasar algoritma a priori analisis asosiasi terbagi menjadi dua tahap :

LANDASAN TEORI. Bab Konsep Dasar Graf. Definisi Graf

Transkripsi:

BAB 2 DASAR TEORI Bab ini berisi konsep yang berhubungan dengan Bayesian network (BN), node ordering, dan sequential pattern (SP). Penjelasan dimulai dari pendahuluan, konsep dan teori dasar BN, pendekatan untuk mengkonstruksi struktur BN dari data dengan metode analisis dependensi. Kemudian diuraikan mengenai konsep dan teori dasar node ordering yang merupakan kajian utama penelitian. Pada bagian akhir dijelaskan mengenai konsep dan teori dasar sequential pattern (SP). 2.1. Bayesian Network Pada bagian ini dijelaskan konsep yang berhubungan dengan Bayesian network (BN), meliputi pendefinisian dan konsep BN, kebebasan kondisional atau conditional independency test (CI test) serta konsep d-seperation. Dijelaskan juga mengenai algoritma Three Phase Dependency Analysis Phi (TPDA ) yaitu algoritma pengkonstruksi struktur BN yang menggunakan pendekatan analisis dependensi. 2.1.1. Konsep Dasar Bayesian belief network dikenal juga dengan sebutan belief network atau probalibistic network, atau Bayesian network. Dalam penulisan ini untuk selajutnya akan digunakan penamaan Bayesian network yang disingkat dengan BN. Bayesian network merupakan probabilistic graphical model (PGM) dengan busur berarah yang digunakan untuk merepresentasikan pengetahuan tentang hubungan kebergantungan (dependency) atau kebebasan (independency) di antara variabel-variabel dari domain persoalan yang dimodelkan [HAN06]. BN terdiri dari dua bagian utama, yaitu bagian struktur graf dan himpunan parameter. Kedua bagian BN tersebut dijelaskan sebagai berikut: 1. Struktur graf Struktur graf BN disebut dengan directed acyclic graph (DAG) yaitu graf berarah tanpa siklus [NEA04]. DAG terdiri dari simpul dan busur. Simpul merepresentasikan variabel acak, dan busur merepresentasikan adanya hubungan kebergantungan langsung (dapat pula diinterpretasikan sebagai pengaruh (sebab akibat) langsung, di antara variabel yang dihubungkannya. Tidak adanya busur 9

menandakan adanya kebebasan kondisional di antara variabel. Penjelasan yang lebih lengkap mengenai simpul dan busur akan diberikan Bab selanjutnya. Struktur BN disebut juga sebagai representasi kualitatif yang menyatakan keterhubungan di antara variabel-variabel yang dimodelkan. 2. Himpunan parameter. Himpunan parameter mendefinisikan distribusi probabilitas kondisional untuk setiap variabel. Setiap variabel acak direpresentasikan oleh sebuah simpul. Pada setiap simpul terdapat tabel yang berisikan distribusi probabilitas kondisional yang disebut dengan conditional probability table (CPT). Pada setiap sel dari tabel tersebut berisikan probabilitas kondisional dari nilai-nilai simpul yang diwakilinya jika diketahui setiap kombinasi nilai semua simpul parent kecuali pada akar (root). Himpunan parameter disebut juga sebagai representasi kuantitatif yang menyatakan nilai probabilistik pada variabel-variabel yang dimodelkan. BN merepresentasikan hubungan kebebasan kondisional dan kebergantungan antara satu variabel dengan variabel lain, sehingga dengan memanfaatkan BN, proses komputasi akan menjadi lebih sederhana dan lebih akurat. [HAN06]. Berikut diberikan sebuah contoh tentang kondisi medis yang meliputi penyebab, gejala, dan hasil uji penyakit [NEA04]: sebuah BN dengan simpul H merepresentasikan pernah atau tidaknya seseorang merokok, simpul B merepresentasikan penyakit bronkhitis, simpul L merepresentasikan penyakit paru-paru, simpul F merepresentasikan keletihan, simpul X merepresentasikan hasil uji sinar-x pendeteksi penyakit paruparu, dan simpul C merepresentasikan penyakit kanker. BN tersebut ditunjukkan pada gambar II.1 yang merepresentasikan seseorang yang memiliki riwayat merokok memiliki pengaruh langsung pada penyakit bronchitis atau kanker paru-paru, bronkhitis atau kanker paru-paru berpengaruh langsung pada keletihan, dan kanker paru-paru berpengaruh langsung pada hasil uji sinar-x terhadap penyakit paru-paru. 10

Gambar II.1. Bayesian network [NEA04] Representasi nilai dari masing-masing simpul pada BN tersebut diberikan pada gambar berikut. Node Nilai Keterangan H h1 Ada riwayat merokok (H=history) h2 Tidak ada riwayat merokok B b1 Bronkhitis ada (B=Bronkhitis) b2 Bronkhitis tidak ada L l1 Kanker paru-paru ada (L=lung) l2 Kanker paru-paru tidak ada F f1 Kelelahan ada (F=Fatique) f2 Kelelahan tidak ada C c1 Hasil uji sinar-x terhadap kanker paru-paru positif (C=Cancer) c2 Hasil uji sinar-x terhadap kanker paru-paru negatif Gambar II.2. Representasi nilai dari simpul-simpul pada BN pada gambar II.1 Struktur graf pada BN merepresentasikan dua hal yaitu: pengaruh langsung dan tidak langsung, dan inferensi probabilistik [NEA04]. Adanya representasi hubungan langsung dan tidak langsung dapat dilihat pada gambar II.1 tersebut yaitu: busur dari H ke L adalah representasi dari pengaruh langsung akan adanya riwayat merokok terhadap adanya kanker paru-paru. Tidak adanya busur dari H ke C adalah representasi dari riwayat merokok tidak mempunyai pengaruh langsung pada pada hasil uji sinar-x, namun pengaruhnya adalah akibat dari keberadaan kanker paru-paru. 11

Dalam hal representasi inferensi probabilistik yang terdapat pada BN adalah dengan memanfaatkan pengetahuan tentang keterhubungan di antara variabel yang ada pada BN, untuk melakukan pengambilan keputusan (inferensi) probabilistik. Inferensi probabilistik adalah memprediksi nilai variabel yang tidak dapat diketahui secara langsung dengan menggunakan nilai-nilai variabel lain yang telah diketahui [NEA04]. Inferensi probabilistik pada contoh di atas misalnya menentukan probabilitas kondisional pasien mengidap bronkhitis jika diketahui pasien tersebut merokok dan hasi uji sinar-x untuk kanker paru-paru adalah positif [NEA04]. Untuk melakukan inferensi probabilistik maka terlebih dahulu harus diperoleh diperoleh joint probability distribution (JPD) dari semua variabel yang dimodelkan [NEA04]. JPD adalah probabilitas semua kejadian variabel yang terjadi secara bersamaan. Misalnya dengan diketahuinya JPD dari semua variabel pada contoh tersebut atau P(f,c,b,l,h) dapat dihitung probabilitas kondisional seseorang mengidap bronkhitis jika memiliki sejarah merokok, mengalami kelelahan, dan hasil uji sinar-x untuk kanker paru-paru adalah positif, yaitu: l P( b1, h1, f 1, c1, l) P( b1, h1, f 1, c1) P( b1 h1, f 1, c1) = =...(II.1) P( h1, f 1, c1) P( b, h1, f 1, c1, l) berarti penjumlahan b dan l untuk semua kemungkinan nilai- Yang dalam hal ini, b,l nilainya. b, l Tanpa menggunakan BN, maka pada contoh tersebut JPD ditentukan langsung sebagai berikut: P(f,c,b,l,h) = P(f c,b,l,h) P(c b,l,h) P(b l,h) P(l h) P(h)...(II.2) Untuk variable biner (variabel yang bernilai true atau false), JPD tersebut keseluruhan membutuhkan sebanyak 62 parameter, yaitu dengan perincian 32 (hasil perhitungan 2 5 ) parameter untuk menghitung P(f c,b,l,h), 16 (hasil perhitungan 2 4 ) parameter untuk menghitung P(c b,l,h), 8 (hasil perhitungan 2 3 ) parameter untuk menghitung 12

P(b,l,h), 4 (hasil perhitungan 2 2 ) parameter untuk menghitung P(l h), dan 2 (hasil perhitungan 2 1 ) parameter untuk menghitung P(h). Jika stuktur BN yang ada pada gambar II.1 digunakan bersama dengan rumus II.2, maka JPD dapat dinyatakan sebagai P(f,c,b,l,h) = P(f b,l) P(c l) P(b h) P(l h) P(h) yang secara keseluruhan membutuhkan 22 parameter, yaitu dengan perincian 8 (hasil perhitungan 2 3 ) parameter untuk menghitung P(f b,l), 4 (hasil perhitungan 2 2 ) parameter untuk menghitung P(c l), 4 (hasil perhitungan 2 2 ) parameter P(b h), 4 (hasil perhitungan 2 2 ) parameter untuk menghitung P(l h), dan 2 (hasil perhitungan 2 2 ) parameter untuk menghitung P(h). Proses penghitungan menjadi lebih sederhana, karena struktur BN yang sudah terbentuk dapat dimanfaatkan untuk menentukan simpul parent dari simpul yang sedang diperiksa. Sebagai contohnya, simpul C memiliki satu simpul parent yaitu L sehingga cukup dihitung nilai dari P(c l) saja. Melalui contoh tersebut, peran dari BN terlihat jelas dalam mereduksi jumlah parameter yang semula sebanyak 62 parameter menjadi hanya 22 parameter. JPD dari N variabel biner (variabel yang memiliki dua nilai) membutuhkan O(2 N ) parameter. Sedangkan dengan menggunakan BN, JPD dan N variabel biner dengan k maksimum parent dari simpul pada struktur BN hanya membutuhkan O(2 k n) parameter [NEA04]. Konstruksi BN dari data dibagi dalam dua tahap, yaitu: 1. Konstruksi struktur atau disebut juga dengan tahap kualitatif, yaitu mencari keterhubungan di antara variabel-variabel yang dimodelkan. 2. Estimasi parameter atau tahap kualitatif, yaitu menghitung nilai-nilai probabilistik pada CPT. Melakukan konstruksi struktur lebih sulit dibandingkan dengan melakukan estimasi parameter [CHE01[a]]. Kesulitan bertambah jika datanya tidak lengkap, atau dengan istilah lain ada simpul yang tidak terobservasi (hidden node), atau ada data yang nilai variabelnya yang tidak diketahui (missing value) [CHE01[a]]. Ada dua pendekatan yang digunakan untuk mengkonstruksi struktur BN [CHE01[a]] yaitu metode search and scoring dan metode dependency analysis. Masing-masing metoda ini memandang BN dari sudut yang berbeda. Pada metoda search and 13

scoring, BN dipandang sebagai sebuah struktur yang merepresentasikan JPD dari variabel-variabel, sedangkan pada metoda dependency analysis, BN dipandang sebagai sebuah struktur yang merepresentasikan sekumpulan kebebasan kondisional di antara simpul-simpul. Berikut ini diberikan penjelasan lebih rinci mengenai kedua pendekatan tersebut: 1. Metode search and scoring. Pada pendekatan ini algoritmanya memandang masalah konstruksi struktur sebagai pencarian sebuah struktur yang paling cocok dengan data. Proses konstruksi dimulai dari sebuah graf tanpa busur, dan kemudian menggunakan metode pencarian atau searching untuk menambahkan sebuah busur pada graf. Setelah itu digunakan medote scoring untuk melihat apakah struktur baru lebih baik daripada struktur sebelumnya. Jika lebih baik, maka busur tetap ditambahkan, dan berusaha menambahkan sebuah busur yang lain. Proses ini berlanjut sampai tidak ada struktur baru yang lebih baik daripada struktur sebelumnya. Algoritma dengan pendekatan ini antara lain algoritma K2 dari Cooper dan Herkovits, algoritma HCG dari Heckerman [CHE98]. 2. Metode dependency analysis. Pada pendekatan ini, struktur BN dikonstruksi dengan mengidentifikasi hubungan kebebasan kondisional di antara simpul-simpul. Menggunakan beberapa pengujian statistik misalnya chi-squared atau mutual information, dapat ditemukan hubungan kebebasan kondisional di antara simpul-simpul, dan selanjutnya hubungan tersebut digunakan sebagai batasan untuk mengkonstruksi struktur BN. Algoritma dengan pendekatan ini misalnya algoritma PC dari Peter Spirtes dan Clark Glymour, Algoritma TPDA dan TPDA dari Jie Cheng [CHE98]. Secara umum pendekatan dengan dependency analysis lebih efisien daripada pendekatan search and scoring untuk network yang memiliki sedikit keterhubungan di antara simpul-simpulnya. Pendekatan dependency analysis juga dapat menghasilkan struktur yang tepat jika distribusi probabilitas dari data memenuhi asumsi berlaku untuk sebuah representasi DAG faithful. Namun algoritma dengan pendekatan ini membutuhkan jumlah pengujian kebebasan kondisional (conditional independency test atau CI test) yang eksponensial dan membutuhkan orde tinggi (CI 14

test dengan himpunan kondisi besar). Sebagaimana dijelaskan dalam [CHE98], CI test dengan himpunan kondisi besar akan reliable jika volume data relatif besar. Pada sisi lain, meskipun pendekatan search and scoring mungkin tidak menemukan struktur terbaik karena sifat heuristiknya, pendekatan ini bekerja dengan cakupan model probabilistik yang lebih luas daripada pendekatan dependency analysis [CHE98]. Sebagai catatan, pada bagian ini tidak dijelaskan secara rinci seluruh konsep dasar yang berhubungan dengan learning BN seperti graf berarah, chain, path, DAG, collider dan non-collider, kondisi Markov, dan faithfulness. Penjelasan yang detil selengkapnya diberikan pada Lampiran A. 2.1.2. Conditional Independency Test (CI Test) Algoritma konstruksi struktur BN dengan pendekatan dependency analysis, adalah jenis algoritma yang menggunakan CI test untuk menentukan apakah ada kebebasan kondisional di antara dua variabel acak diskret (variabel yang nilainya terbatas). Salah satu jenis CI test yang bisa digunakan untuk menghitung kebebasan kondisional pada variabel acak diskret adalah conditional mutual information test [CHE01]. Untuk mengukur aliran informasi, digunakan teknik pengukuran dengan mutual information dan conditional mutual information. Pada teori informasi, mutual information antara simpul A dan B digunakan untuk merepresentasikan informasi harapan yang diperoleh tentang simpul B, setelah terlebih dahulu diketahui nilai variabel simpul A. Pada struktur BN, jika ada dua simpul yang saling bergantung, dan jika nilai dari salah satu simpul telah diketahui maka dapat diketahui nilai dari simpul lainnya yang saling bergantung. Informasi tersebut bisa diperoleh dengan menggunakan pengukuran mutual information. Jadi, dengan menggunakan mutual information di antara dua simpul akan dapat diketahui apakah dua simpul adalah saling bergantung atau tidak, dan bagaimana kedekatan hubungan simpul-simpul tersebut [CHE01[a]]. 15

Mutual information antara dua simpul A dan B didefinisikan sebagai berikut [CHE97]: I i j ( X i, X j ) = P( xi, x j )log...(ii.3) x, P( xi ) P( x j ) i x j P( x, x ) dan conditional mutual information didefinisikan sebagai berikut [CHE97]: P( xi, x j c) I( X i, X j c) = P( xi, x j, c)log...(ii.4) P( x c) P( x c x, x, c i j ) i j yang dalam hal ini C adalah himpunan simpul yang telah diketahui nilainya. Pada saat I(X i,x j ) memiliki nilai lebih kecil dari sebuah threshold (ambang batas) tertentu yang dinotasikan dengan ε, maka dapat dikatakan bahwa X i dan X j adalah marginally independent. Pada saat I(X i,x j ) C) memiliki nilai lebih kecil dari ε, maka dapat dikatakan bahwa X i dan X j adalah conditionally independent [CHE97]. Pada saat konstruksi struktur BN, algoritma yang digunakan akan mengambil data yang tersimpan pada tabel di dalam basis data sebagai masukan. Setiap atribut (field) dari tabel dianggap sebagai variabel, yang masing-masing direpresentasikan dengan sebuah simpul pada BN. Setiap record pada tabel merupakan instansiasi lengkap dari variabel yang ada pada domain masalah. Asumsi yang digunakan pada algoritma yang akan dipakai adalah [CHE97]: 1. Untuk seluruh record, atribut yang ada pada tabel berisikan nilai-nilai yang diskrit dan tidak ada missing value (data kosong). 2. Seluruh record terjadi secara bebas. 3. Volume data relatif cukup besar untuk melakukan CI test yang representatif. Asumsi pertama menyatakan bahwa pada sebuah model probabilistik seluruh variabel acak adalah diskrit dan lengkap. Asumsi kedua menyatakan bahwa semua record diambil bersifat bebas satu dengan lainnya. Asumsi ketiga untuk menjamin bahwa keputusan statistik yang dibuat oleh algoritma yang menggunakannya adalah benar. 16

2.1.3. Directional Separation (d-separation) Pada bagian ini dijelaskan konsep d-separation. Konsep d-separation digunakan untuk mengidentifikasi kebebasan kondisional yang ada pada DAG. Seluruh penjelasan yang diberikan berikut mengacu kepada [NEA04]. Semua kebebasan kondisional yang diperoleh dari kondisi Markov dapat diidentifikasi pada DAG dengan konsep d-separation. Sebelum diberikan definisi d- separation, telah dahulu diberikan definisi berikut: Definisi II.1. Misalkan G(V,E) adalah sebuah DAG, A V, X dan Y adalah simpul berbeda dalam V A, dan p adalah sebuah chain antara X dan Y. Maka p diblok oleh A jika dipenuhi salah satu kondisi berikut [NEA04]: (i) Ada sebuah simpul Z A pada chain p, dan Z adalah simpul head to tail pada chain p (A C B). (ii) Ada sebuah simpul Z A pada chain p, dan Z adalah simpul tail to tail pada chain p (A C B). (iii) Ada sebuah simpul Z A pada chain p, yang dalam hal ini semua descendant dari Z bukan anggota A, dan Z adalah simpul head to head (collider/v structure) pada chain p (A C B). Jika diketahui simpul A, dan mengakibatkan chain tersebut tidak diblok oleh A, maka chain akan disebut aktif. Pada saat chain aktif, maka lintasan yang terbentuk disebut dengan lintasan terbuka (open path). Berikut diberikan definisi d-separation. Definisi II.2. Untuk sebuah DAG G=(V,E), A V, X dan Y adalah simpul berbeda dalam V A. X dan Y dikatakan d separated oleh A dalam G jika setiap chain antara X dan Y diblok oleh A. Sebagai contoh diberikan gambar berikut: Gambar II.3. DAG yang digunakan untuk mengilustrasikan d-separation 17

Dari DAG pada gambar tersebut dapat dikatakan bahwa: A dan E d-separated oleh {B}, karena chain A-B-C-E terblok pada B dan chain A-B-D-E terblok pada B B dan E d-separated oleh {C,D} karena chain B-C-E terblok pada C dan chain B- D-E terblok pada D C dan D d-separated oleh {B} karena chain C-B-D terblok pada B dan chain C-E- D terblok tanpa simpul apapun Selanjutnya diberikan definisi. Definisi II.3. Misalkan G=(V,E) adalah sebuah DAG, dan A, B, dan C merupakan himpunan bagian dari V yang salin disjoin. A dan B dikatakan d separated oleh C dalam G, jika untuk setiap X A dan Y B, X dan Y d separated oleh C. Hal ini dinotasikan dengan IG(A,B C). Jika C = maka IG(A,B) [NEA04] Jadi misalkan P adalah JPD dari variabel-variabel di V dan G=(V,E) adalah sebuah DAG maka (G,P) memenuhi kondisi Markov jika dan hanya jika semua kebebasan kondisional yang ada pada G benar pada P, yaitu: I G (A,B C) I G (A,B C) Ada sebuah teorema yang penting pada d-separation yaitu: Teorema II.1. Berdasarkan kondisi Markov, sebuah DAG G membawa semua dan hanya kebebasan kondisional yang teridentifikasi oleh d separation pada G. Distribusi probabilitas tertentu P yang memenuhi kondisi Markov dengan G, bisa saja mempunyai kebebasan kondisional yang tidak teridentifikasi oleh d-separation. Beberapa DAG dapat saling ekuivalen, artinya memiliki d-separation yang sama. Berikut ini diberikan definisi ekuivalensi. Definisi II.4. Misalkan G1=(V,E1) dan G2=(V,E2) merupakan dua DAG mengandung himpunan simpul V yang sama. Maka G1 dan G2 disebut ekuivalensi Markov jika untuk setiap tiga himpunan bagian disjoin A, B, C V, A dan B d separated oleh C pada G1 jika dan hanya jika A dan B d separated oleh C pada G2, yaitu: I G (A,B C) I G2 (A,B C) 18

Meskipun definisi tersebut hanya berhubungan dengan properti graf, aplikasi adalah dalam probabilitas, berdasarkan teorema berikut: Teorema II.2. Dua DAG merupakan ekuivalen Markov jika dan hanya jika, berdasarkan kondisi Markov, keduanya mempunyai kebebasan kondisional yang sama [NEA04]. Contoh DAG yang saling ekuivalen Markov yaitu pada gambar berikut: Gambar II.4. DAG-DAG ini merupakan ekuivalen Markov, Untuk mengidentifikasi ekuivalensi Markov, digunakan teorema berikut: Teorema II.3. Dua DAG merupakan ekuivalen Markov jika dan hanya jika kedua DAG tersebut mempunyai link (busur tanpa memperhatikan arah) yang sama dan himpunan uncoupled head to head meeting yang sama [PEA89]. Teorema tersebut memberikan cara sederhana untuk merepresentasikan kelas ekuivalen Markov dalam sebuah graf. Graf ini disebut DAG pattern. DAG pattern dari DAG DAG pada gambar 5 tersebut adalah seperti pada gambar berikut. H B L F C Gambar II.5. DAG pattern yang merepresentasikan kelas ekuivalen Markov pada gambar II.3 [NEA04] Dengan menggunakan Markov condition, dapat ditentukan himpunan simpul yang bebas kondisional jika telah diketahui simpul lainnya pada struktur Bayesian network. Dengan menggunakan kosep direction dependent separation atau d-separation [Pearl, 1988] maka hubungan kebebasan kondisional (conditional independency) yang valid dapat diperoleh secara langsung dari topologi Bayesian network. 19

Dengan demikian konsep d-separation dapat menyatakan seluruh hubungan kebebasan kondisional yang ada pada Bayesian network [Geiger and Pearl, 1988]. 2.2. Three Phases Dependency Analysis Phi (TPDA - ) Seperti telah dijelaskan pada sub bab sebelumnya bahwa ada dua pendekatan yang digunakan untuk mengkonstruksi struktur BN, yaitu pendekatan search and scoring dan pendekatan analysis dependency. Pada pendekatan analysis dependency dilakukan sejumlah pengujian terhadap kebebasan kondisional yang disebut dengan CI test. Pengujian dilakukan untuk memeriksa besar aliran informasi yang ada pada seluruh pasangan simpul yang ada. Salah satu algoritma dengan pendekatan dependency analysis adalah algoritma Three Phase Dependency Analysis Phi (TPDA ) yang dikembangkan oleh Jie Cheng [CHE97]. Pada bagian berikut ini akan dijelaskan mengenai algoritma TPDA, tiga fase pembentukan struktur BN, dan CI test pada setiap fase tersebut. Seluruh penjelasan yang diberikan mengacu pada [CHE98] dan [CHE01[a]]. 2.2.1. Algoritma TPDA Algoritma TPDA menerima dua masukan yaitu tabel dari basis data sebagai sumber data dan informasi node ordering yang lengkap, dan selanjutnya mengkonstruksi struktur BN sebagai keluarannya. Untuk mengkonstruksi struktur BN, langkah kerja algoritma TPDA dibagi menjadi 3 fase. Ketiga fase tersebut dijelaskan berikut ini. Ketiga fase pada algoritma TPDA adalah: fase 1 membuat bagan, fase 2 pemeriksaan busur yang tidak ada, dan fase 3 membuang busur yang tidak perlu. Pada fase pertama, algoritma akan menghitung mutual information dari masing-masing pasangan simpul. Nilai mutual information tersebut menyatakan ukuran kedekatan antar simpul. Dengan memanfaatkan nilai mutual information dan melakukan pemeriksaan lintasan terbuka, maka kemudian dibuat sebuah bagan dari struktur BN. Pada fase kedua, algoritma akan melakukan sejumlah pengujian kebebasan kondisional (CI test), dan menambahkan sebuah busur jika hasil CI test menunjukkan bahwa pasangan simpul yang diperiksa ternyata tidak bebas kondisional terhadap 20

condition-set tertentu. Hasil dari fase kedua adalah sebuah I-map yang merepresentasikan sebuah model kebergantungan pokok jika model tersebut adalah DAG faithful. Pada fase ketiga, masing-masing busur dari I-map diperiksa dengan menggunakan CI test, dan busur akan dibuang jika kedua simpul tersebut adalah bebas kondisional. Hasil dari fase ketiga adalah sebuah P-map dari model pokok, jika model tersebut adalah DAG-faithful. Berikut ini akan diberikan sebuah ilustrasi yang menggambarkan cara kerja algoritma yang ada pada tiga fase tersebut. Langkah-langkah detil dan lengkap pada masingmasing fase tersebut tidak dijelaskan pada bagian ini, namun dijelaskan pada lampiran B. Diberikan sebuah contoh sederhana sebuah jaringan multi-connected [CHE01[a]]. Sebagai asumsi diberikan sebuah basis data dengan 5 variabel yaitu A, B, C, D, dan E maka algoritma TPDA akan menghasilkan struktur BN seperti pada gambar II.6.a. Proses pembentukan struktur tersebut sesuai dengan fasenya adalah mulai dari gambar II.6.b, kemudian gambar II.6.c, dan terakhir adalah gambar II.6.d yang merupakan sebuah struktur akhir BN yang berhasil dikonstruksi. C C A B E A B E D (a) C D (b) C A B E A B E D (c) D (d) Gambar II.6. Hasil fase 1, 2, 3 dari algoritma TPDA : (a) Graf sesungguhnya (b) Hasil fase 1 (c) Hasil fase 2 (d) Hasil fase 3 Berikut ini akan dijelaskan ketiga fase berikut, dengan contoh mengacu kepada gambar II.6. 21

Fase 1: Membuat Bagan. Pada fase membuat bagan, dilakukan pengukuran mutual information terhadap seluruh kombinasi pasangan yang mungkin terbentuk dari simpul yang ada. Kemudian seluruh pasangan simpul yang memiliki nilai mutual information lebih besar dari ε diurutkan mulai dari pasangan yang memiliki nilai mutual information terbesar menuju yang terkecil. Asumsikan seluruh pasangan memiliki nilai mutual information lebih besar dari ε dan setelah diurutkan adalah I(B,D) I(C,E) I(B,E) I(A,B) I(B,C) I(C,D) I(D,E) I(A,D) I(A,E) I(A,C). Pada kondisi nyata banyaknya pasangan simpul dapat berjumlah lebih sedikit dibandingkan dengan jumlah seluruh kombinasi pasangan simpul yang dapat dibentuk tanpa memperdulikan nilai mutual information. Hal ini dapat terjadi karena ada beberapa pasang simpul yang kemungkinan memiliki nilai mutual information lebih kecil dari ε yang ditentukan [CHE97]. Selanjutnya pasangan simpul diambil satu demi satu dengan prioritas pada pasangan yang memiliki nilai mutual information terbesar, dan diperiksa apakah ada atau tidak lintasan terbuka diantara pasangan simpul tersebut. Jika tidak ada lintasan terbuka antara pasangan simpul tersebut, maka sebuah busur dibuat untuk menghubungan pasangan simpul tersebut. Proses tersebut terus dilakukan hingga seluruh pasangan simpul telah diperiksa. Pada akhir fase ini, akan terbentuk sebuah bagan graf seperti pada gambar II.6.b dengan hasil yang cukup dekat dengan struktur BN yang sesungguhnya pada gambar II.6.a. Bila dibandingkan dengan struktur BN sesungguhnya yang ada pada gambar II.6.a maka ada dua hal yang bisa disimpulkan sebagai hasil dari fase ini. Pertama adalah bahwa pada akhir fase 1 tersebut kemungkinan terbentuk busur yang berlebih atau ada busur yang hilang. Sebagai contoh, pada struktur bagan yang ada pada graf gambar II.6.b tersebut terlihat bahwa busur (B,E) adalah busur yang berlebih (wrongly added) dan busur (D,E) adalah busur yang hilang (missing). Kedua adalah bahwa kemungkinan masih terdapat beberapa pasangan simpul yang memiliki mutual information lebih besar dari ε namun tidak terhubung langsung, yang dalam contoh tersebut yaitu {C,D},{D,E},{A,D},{A,E},{A,C}. Selanjutnya bagan yang dihasilkan pada fase 1 tersebut menjadi basis untuk melakukan fase 2. 22

Fase 2: Memeriksa Busur Yang Hilang Pada fase 1, masih ada beberapa pasang simpul yang tidak dihubungkan pada struktur bagan hanya karena sudah terdapat lintasan terbuka di antara pasangan simpul tersebut. Pada fase 2, digunakan CI test dan d-separation untuk memeriksa apakah pasangan simpul tersebut seharusnya terhubung atau tidak. Karena hanya ada satu CI test yang digunakan untuk memeriksa keterhubungan tersebut (arah sudah diketahui dari informasi node ordering), sehingga cut set yang tepat dapat ditentukan maka tidak bisa dipastikan apakah keterhubungan tersebut adalah benar-benar perlu, tetapi bisa dipastikan bahwa tidak akan ada lagi busur yang hilan (missing) pada akhir fase 2 tersebut. Pada contoh, graf setelah fase 2 ditunjukkan pada gambar II.b.c. Busur (D,E) ditambahkan sebab D dan E tidak bebas kondisional pada {B}, yang merupakan cutset terkecil antara simpul D dan E pada graf terkini. (Cut-set dari suatu graf terhubung G, adalah himpunan busur yang bila dibuang dari graf G, maka akan mengakibatkan graf G tidak terhubung). Busur (A,C) tidak ditambahkan karena hasil CI test mengindikasikan bahwa A dan C adalah bebas jika diketahui cut-set {B}. Busur (A,D), (C,D), dan (A,E) tidak ditambahkan karena alasan yang sama. Pada gambar (c) terlihat bahwa graf yang dihasilkan setelah fase 2 berisikan semua busur dari model yang sesungguhnya, yaitu merupakan sebuah I-map dari model yang sesungguhnya. Fase 3: Membuang Busur Yang Tidak Perlu. Seperti telah dijelaskan bahwa pada fase 1 dan fase 2 ada kemungkinan ditemukan busur yang tidak perlu, maka pada fase 3 ini yang dilakukan adalah membuang seluruh busur yang tidak perlu tersebut. Sama seperti fase 2, hanya ada satu CI test yang dilakukan untuk memastikannya, namun pada fase ini keputusan yang telah dilakukan adalah benar. Alasannya adalah bahwa graf terkini adalah sebuah I-map dari model yang sesungguhnya, yang tidak ditemukan hingga pada akhir fase 2. Pada fase 3 busur yang tidak perlu berhasil dibuang, sehingga pada akhir fase ini graf yang dihasilkan adalah graf yang sesungguhnya [CHE97]. Graf yang dihasilkan pada akhir fase 3 ditunjukkan pada gambar II.6.d, yang merupakan struktur sesungguhnya dari graf. Busur (B,E) dibuang karena B dan E 23

adalah bebas kondisional jika diketahui {C,D}. Pada akhir fase ini, struktur BN yang benar berhasil dikonstruksi ditunjukkan oleh gambar II.6.d. 2.3. Node Ordering, Kausalitas, dan Informasi Temporal Pada bagian berikut diberikan penjelasan mengenai node ordering dan hubungannya dalam kausalitas. Kemudian diberikan juga penjelasan tentang informasi temporal (keterurutan berdasarkan waktu) dan hubungannya dengan kausalitas. Penjelasan yang diberikan mengacu kepada [CHE01[a]] dan [PEA01]. Definisi II.5. Pola kebergantungan yang ditemukan secara statistik yang menyatakan suatu kausalitas harus memiliki arah kausalitas. Sebagai contohnya, diketahui tiga variabel: A, B, dan C, dengan kondisi A dan B saling bergantung, B dan C saling bergantung, dan A dan C saling bebas. Maka arah kausalitas yang dapat dibentuk hanyalah A B C, yaitu sesuai dengan konsep d separation (definisi II.2) hanya dapat dibentuk oleh head to head meeting (v structure) [PEA01]. Lebih lanjut lagi hubungan yang erat antara pola asosiasi tersebut dengan informasi temporal diberikan pada definisi II.12. Namun sebelumnya, terlebih dahulu akan diberikan beberapa definisi lain. Definisi berikut adalah menjelaskan hubungan antara urutan variabel, node ordering, DAG, dan BN. Definisi II.6. Model DAG dengan urutan variabel yang sering digunakan adalah untuk menyatakan sesuatu yang berhubungan dengan aliran waktu atau temporal dan kausalitas. Dalam kausalitas, stuktur causal Bayesian network dibangun dari model DAG. Model DAG yang dikonstruksi dengan informasi node ordering menyatakan bukan hanya kebebasan (independency) saja, tetapi juga kebebasan bersyarat (conditional independencies). [PEA01]. Berikut ini diberikan definisi mengenai node ordering. Definisi II.7. Node ordering adalah domain pengetahuan yang digunakan oleh algoritma konstruksi struktur BN yang menspesifikasikan urutan kausal dari simpul simpul yang terdapat pada graf. Pada sebuah informasi node ordering, simpul yang muncul lebih dahulu adalah merupakan sebab dari simpul lainnya muncul kemudian [CHE01[a]]. Penulisan notasi node ordering dinyatakan dengan (n 1,n 2,n 3,n 4,...,n i ). Sebagai contoh, jika diberikan informasi node ordering adalah (A,B,C,D,E) maka pasangan simpul yang mungkin dibentuk sesuai dengan urutan penulisannya pada node ordering tersebut adalah A B, A C, A D, A E, B C, B D, B E, C D, C E, dan D E. Dalam hal ini simpul A adalah penyebab dari simpul B, dan bukan sebaliknya. 24

Dalam hal keterurutan simpul, suatu simpul yang muncul lebih dahulu pada node ordering adalah sebagai penyebab dari simpul yang muncul sesudahnya. Jika sebuah node ordering konsisten dengan model data set, maka node ordering tersebut dikatakan correct ordering. Sebagai contohnya, pada gambar II.7 adalah suatu struktur BN dengan dua buah correct ordering yaitu A-B-C-D-E dan A-B-D-C-E. Gambar II.7. Struktur BN dengan dua correct ordering yaitu A-B-C-D-B dan A-B-D-C-E Dalam konteks berpikir manusia, keterurutan waktu diasumsikan sebagai suatu hal yang selalu ada untuk dapat mendefinisikan hubungan kausalitas. Tidak diragukan lagi bahwa informasi keterurutan waktu atau disebut juga sebagai informasi temporal adalah merupakan suatu petunjuk yang digunakan oleh manusia untuk membedakan bentuk hubungan kausal dan bukan kausal [PEA01]. Namun informasi temporal saja tidak cukup untuk menentukan penyebab murni. Sebagai contoh, biasanya angka pada barometer menurun sebelum terjadi hujan. Namun dalam konteks berpikir manusia, dapat dipastikan bahwa terjadinya hujan bukan akibat dari angka pada barometer yang menurun [PEA01]. 25

Sebelum diberikan definisi penyebab murni, berikut ini diberikan definisi penyebab potensial. Definisi II.8. Sebuah variabel X adalah penyebab potensial terhadap Y, jika memenuhi kondisi berikut [PEA01]: 1. X dan Y adalah tidak bebas 2. Terdapat sebuah variabel Z dan {S} sehingga a. X dan Z bebas jika diketahui S b. Z dan Y tidak bebas jika diketahui S Sebagai contohnya, pada gambar II.8 variabel B memenuhi syarat sebagai penyebab potensial terhadap D, karena memenuhi kondisi (1) B dan D tidak bebas, dan kondisi (2) Dengan variabel Z=C dan {S}=A, maka B dan C bebas jika diketahui nilai A, dan C dan D tidak bebas jika diketahui nilai A. Demikian juga C memenuhi syarat sebagai penyebab potensial dari D (dalam hal ini Z=B dan {S}=A). Gambar II.8. B dan C adalah penyebab potensial pada D, dan D adalah penyebab asli pada E Berikut diberikan definisi penyebab murni. Definisi II.9. Sebuah variabel X adalah penyebab murni dari variabel Y jika terdapat sebuah variabel Z sehingga X dan Y bergantung dalam keadaan apapun, dan ada {S} yang memenuhi kondisi [PEA01]: a. Z adalah penyebab potensial dari X (sesuai definisi II.7) b. Z dan Y tidak bebas jika diketahui nilai S c. Z dan Y bebas jika diketahui nilai S X Sebagai contoh, pada gambar II.8 jika diberikan X=D, Y=E, Z=B, dan {S}= maka D adalah penyebab murni dari E. 26

Pada definisi II.9 tidak ada pernyataan bahwa informasi temporal diketahui. Jika informasi temporal diketahui, maka definisi II.9 dapat disederhanakan, karena setiap variabel yang terjadi mendahului dan bertetangga dengan sebuah variabel X dapat dikatakan memenuhi syarat sebagai penyebab potensial dari X. Definisi berikut adalah bentuk sederhana dari definisi II.9 dengan penambahan informasi temporal. Definisi II.10. Sebuah variabel X memiliki pengaruh kausal terhadap Y jika ada variabel ketiga Z dan ada sebuah {S}, dan keduanya harus terjadi sebelum X yang memenuhi kondisi berikut [PEA01]: a. Z dan Y tidak bebas jika diketahui nilai S b. Z dan Y bebas jika diketahui nilai S X Terlihat bahwa tidak ada perbedaan antara definisi II.9 dan definisi II.10 kecuali bahwa pada definisi II.10 ada informasi temporal yang dapat digunakan untuk menyatakan bahwa Z adalah penyebab potensial dari X. Pada gambar II.8, jika D diketahui maka Z dan Y akan berubah dari tidak bebas menjadi bebas, yang berarti bahwa kebergantungan antara Z dan Y adalah melalui X. Dengan adanya informasi temporal bahwa Z terjadi lebih dahulu dari X, maka dapat disimpulkan bahwa X adalah penyebab Y [PEA01]. Definisi berikut akan menjelaskan aspek yang harus dipenuhi dalam menetapkan hubungan kausalitas. Definisi II.11. Dalam konteks berpikir manusia, hubungan kausalitas harus memenuhi dua aspek yaitu: temporal dan statistik. Aspek temporal menyatakan bahwa sebab harus mendahului akibat. Sedangkan aspek statistik adalah untuk menyatakan suatu penjelasan ilmiah akan kausalitas untuk memastikan bahwa hanya secara statistik hal yang bersifat ilmiah dapat dihasilkan [PEA01]. Artinya adalah bahwa dengan melakukan pengujian statistik, hubungan kausalitas dapat dinyatakan secara ilmiah, dan pada setiap hubungan kausalitas tentu mengandung informasi temporal [PEA01]. Definisi II.12. Hubungan kausalitas bersifat asimetris, artinya tidak dapat dibolak balik. Jika tidak ada informasi temporal, akan mustahil untuk memutuskan manakah diantara dua variabel yang saling bergantung yang akan menjadi sebab dan mana menjadi akibat. Hal ini terjadi karena joint distribution P(x,y) dapat menyatakan x adalah sebab dan y adalah akibat, namun selain itu juga dapat menyatakan bahwa y adalah sebab dan x adalah akibat [PEA01]. Untuk dapat menentukan arah kausalitas pada DAG, maka sedikitnya ada tiga variabel yang dibutuhkan. Namun dengan adanya aspek temporal yaitu pernyataan bahwa sebab selalu mendahului akibat (definisi II.11), kausalitas yang bersifat simetris tidak berlaku lagi. 27

Definisi II.12 menunjukkan bahwa, dengan bila kebergantungan varibel dapat ditemukan, maka dengan memanfaatkan informasi temporal selanjutnya dapat dibentuk kausalitasnya. Sebuah pertanyaan yang dapat diajukan untuk membantu penjelasan defenisi II.12 tersebut adalah, apakah hubungan kausalitas yang digambarkan dalam X Y pada kenyataanya dapat bertentangan dengan informasi temporal yang ditemukan dalam kumpulan data? Jika hubungan kausalitas X Y dibangun dari data, maka berdasarkan definisi II.11 dan II.12 dapat ditarik suatu kesimpulan yang kuat terhadap aspek statistik yang dikandung pada suatu hubungan sebab akibat, bahwa secara ilimiah pertentangan tersebut tidak mungkin terjadi [PEA01]. Jadi hubungan kausalitas yang dibangun dari data juga merepresentasikan aspek temporal. Bagian ini ditutup dengan memberikan sebuah definisi yang kuat untuk menjelaskan menghubungakan kausalitas dan informasi temporal. Definisi II.13. Pada saat menentukan kausalitas, pengujian statistik yang dilakukan pada kumpulan data secara ilmiah hanya menyatakan hubungan kausalitas yang terkandung pada kumpulan data tersebut, dan tidak ada hubungannya dengan informasi temporal [PEA01]. 2.4. Sequential Pattern Bagian ini berisi konsep yang berhubungan dengan sequential pattern. Penjelasan dimulai dari konsep dasar mengenai market basket analysis, elemen dan itemset yang ada pada transaksi, association rule mining, dan frequent itemset. Pada bagian akhir dijelaskan tentang teori sequential pattern dan ditutup dengan pemberian sebuah contoh sequential pattern.. 2.4.1. Konsep dasar Pada sub bab ini, diuraikan beberapa konsep dasar yang berhubungan dengan himpunan data yang sering dijadikan sebagai objek penelitian yaitu market basket data. Kemudian diuraikan juga tentang association rule dan perannya dalam menemukan frequent itemset dari himpunan data tersebut. 28

Berikut diberikan beberapa definisi: Definisi II.14. Market basket data adalah himpunan data yang dijadikan sebagai objek penelitan pada area data mining. Market basket analysis adalah proses untuk menganalisis kebiasaan pelanggan dalam menyimpan item item yang akan dibeli ke dalam keranjang belanjaannya. Market basket analysis memanfaatkan data transaksi penjualan untuk dianalisis sehingga dapat ditemukan pola berupa item item yang cenderung muncul bersama dalam sebuah transaksi [HAN06]. Selanjutnya pola yang ditemukan dapat dimanfaatkan untuk merancang strategi penjualan atau pemasaran yang efektif, yaitu dengan menempatkan item-item yang sering dibeli bersamaan ke dalam sebuah area yang berdekatan, merancang tampilan item-item di katalog, merancang kupon diskon (untuk diberikan kepada pelanggan yang membeli item tertentu), merancang penjualan item-item dalam bentuk paket, dan sebagainya. Dengan menggunakan teknologi data mining, analisis data secara manual tidak diperlukan lagi. Definisi II.15. Elemen dalam suatu transaksi disebut juga sebagai item, yang merupakan suatu unit objek tekecil. Himpunan elemen disebut juga sebagai itemset, tetapi tidak boleh kosong. Itemset yang berisi k item (dengan k adalah banyaknya item dari sebuah itemset) disebut k itemset. Misalnya, itemset {computer, software} adalah 2 itemset atau 2 elemen. Frekuensi kemunculan dari suatu itemset adalah banyaknya transaksi yang berisi itemset tersebut dari keseluruhan transaksi, juga sering disebut hanya sebagai frekuensi, atau support count, atau count dari itemset. Suatu k itemset yang dihitung support count nya disebut kandidat k itemset dan dituliskan dengan simbol C k. Definisi II.16. Association rule adalah aturan yang digunakan untuk mengukur besarnya asosiasi atau keterhubungan antar item dalam market basket data. Association rule merupakan uji statistik yang merepresentasikan ukuran ketertarikan antar data. Terdapat dua ukuran ketertarikan (interestingness) pada association rule dalam bentuk X Y yaitu [HAN06]: a. support, merepresentasikan persentase transaksi dalam basis data yang berisi kombinasi item X Y (gabungan dari himpunan X dan himpunan Y). Ini dapat dituliskan dalam bentuk probabilitas, P(X Y). b. confidence yaitu kuatnya hubungan antar item dalam aturan assosiatif, yang menunjukkan persentasi dari transaksi yang memuat X yang juga memuat Y. Ini dapat dituliskan dalam bentuk probabilitas kondisional, P(X Y). Hubungan itemset dan association rule dijelaskan pada bagian berikut. Sebelumnya diberikan sebuah definisi tambahan untuk menjelaskan association rule mining. Definisi II.17. Asssociation rule mining adalah teknik yang menggunakan association rule, untuk menemukan keterhubungan antar itemset dalam market basket data. Keterhubungan antar itemset 29

yang ditemukan selanjutnya akan diolah menjadi sebuah informasi yang dapat digunakan dalam membuat keputusan strategis, seperti pengaturan penempatan barang dalam rak, promosi pemasaran lewat katalog, dan penggunaan kupon diskon untuk kombinasi barang tertentu. [HAN06] Pada association rule mining, ada dua parameter yang digunakan, yaitu minimum support threshold (min_sup) dan minimum confidence threshold (min_conf). Minimum support threshold (min_sup) adalah parameter yang digunakan sebagai ambang batas untuk menentukan apakah jumlah kemunculan suatu itemset dari seluruh transaksi dapat diterima atau tidak. Selanjutnya, itemset yang memenuhi min_sup disebut sebagai frequent itemset. Minimum confidence threshold (min_conf) adalah parameter yang digunakan sebagai ambang batas untuk menentukan apakah suatu itemset muncul jika itemset lainnya telah muncul dapat diterima atau tidak. Hasil akhir association rule mining adalah ditemukannya asosiasi itemset yang frequent dalam bentuk informasi statistik. Sebagai contoh, nilai probabilitas seorang pelanggan membeli roti dan susu secara bersamaan, nilai probabilitas seorang pelanggan akan membeli printer jika telah membeli komputer, atau nilai probabilitas seorang pelanggan membelanjakan uangnya sebesar jumlah tertentu. Informasi statistik tersebut selanjutnya dapat dimanfaatkan untuk mendukung keputusan strategis. Proses menemukan keterhubungan antar itemset disebut dengan association rule mining dan sudah diimplementasikan dalam banyak algoritma. Sebagai catatan, algortima yang menerapkan association rule mining tidak dibahas dalam tulisan ini. 2.4.2. Teori Sequential Pattern Pada sub bab ini diuraikan teori sequential pattern, dan secara umum banyak mengambil prinsip yang terdapat pada market basket data dan association rule yang telah dijelaskan pada sub bab sebelumnya. Definisi II.18. Sequential pattern adalah pola yang menggambarkan urutan waktu terjadinya peristiwa [HAN06]. Pola tersebut bisa ditemukan jika data yang disimpan relatif cukup besar, dan objek yang sama dalam jumlah yang relatif besar melakukan beberapa aksi yang berulang kali. Sebagi contohnya, pelanggan yang memiliki identitas yang tercatat, melakukan transaksi belanja berulang kali pada sebuah toko atau pusat perbelanjaan. Dalam sebuah basis data yang menyimpan barket basket data, terdapat data sejumlah transaksi dan masing-masing transaksi terdiri dari field berupa id_pelanggan, 30

waktu_transaksi, daftar_item. Pada seluruh data yang tersimpan, hanya ada satu transaksi yang dilakukan oleh satu pelanggan pada satu waktu. Dalam suatu transaksi, banyaknya item yang dibeli tidak dipertimbangkan, namun diperlakukan sebagai sebuah variabel biner yang merepresentasikan sebuah item dibeli atau tidak [AGR00]. Untuk lebih memperjelas berbagai notasi yang digunakan dalam konteks sequential pattern, berikut diberikan sebuah definisi baru terhadap item (elemen), dan itemset (himpunan elemen). Definisi II.19. Elemen dalam suatu transaksi disebut sebagai item dan dinotasikan dengan i. Himpunan elemen disebut juga sebagai itemset dan dinotasikan dengan is. Selanjutnya dapat dinyatakan sebuah itemset is adalah sama dengan (i 1, i 1,...,i j ), yang dalam hal ini i j adalah sebuah item. Sebagai contoh, misalnya pada sebuah transaksi belanja terdapat dua item, yaitu komputer dan anti virus, maka akan dibentuk sebuah itemset is berisi (komputer, antivirus). Selanjutnya diberikan definisi sequence. Definisi II.20. Sequence adalah himpunan itemset yang telah tersusun secara menaik berdasarkan waktu terjadinya [AGR00]. Sebuah sequence dinotasikan sebagai s yaitu is 1 is 2...is k, yang dalam hal ini is k adalah sebuah itemset. Pada sebuah sequence, urutan penulisan himpunan itemset harus diperhatikan, karena urutan penulisan tersebut merepresentasikan waktu terjadinya seluruh itemset yang menyusun sebuah sequence. Pada sebuah itemset yang merupakan anggota sebuah sequence, urutan penulisan item tidak perlu diperhatikan, sehingga bisa dituliskan dengan tidak beraturan. Untuk lebih memperjelas pengertian sequence, itemset, item, dan urutan penulisan, berikut diberikan sebuah contoh pada kasus analisis market basket sebuah tempat belanja. Diasumsikan bahwa item yang tersedia adalah sebanyak lima jenis yaitu a, b, c, d, dan e. Pelanggan pertama dalam lima transaksi berturut-turut membeli sejumlah item sebagai berikut: a, a b c, a c, d, dan c f. Pelanggan kedua dalam empat transaksi berturut-turut membeli himpunan item sebagai berikut: a d, c, b c, dan a e. Dalam basis data tercatat data kelima jenis elemen yaitu {a,b,c,d,e,f,g} dan dua sequence yaitu a, (abc), (ca), d, (fc) dan (ad), c, (bc), (ae) masing-masing untuk pelanggan pertama dan pelanggan kedua. Sequence tersebut dibentuk dengan cara mengurutkan secara menaik berdasarkan waktu transaksi. Pada sequence pertama, himpunan 31

elemen dapat dituliskan sebagai a, (abc), (ca), d, (fc) meskipun transaksi yang terjadi adalah a, a b c, a c, d, dan c f. Hal ini bukanlah sebuah masalah, karena dalam satu himpunan elemen, urutan elemen tidak dipertimbangkan. Selanjutnya diberikan definisi maksimal sequence. Definisi II.21. Suatu sequence dikatakan maksimal, jika sequence tersebut tidak terdapat pada sequence lainnya [AGR00]. Sebuah sequence a 1, a 2,,a n dikatakan terdapat pada sebuah sequence lainnya b 1, b 2,,b m jika ada integer i 1 < i 2 < i n sehingga a 1 bi 1, a 2 bi 1,..., a n bi n. Untuk lebih memperjelas mengenai maksimal sequence, berikut diberikan sebuah contoh.suatu sequence (3), (4 5), (8) merupakan bagian dari (7), (3 8), (9), (4 5 6) (8), karena (3) (3 8), (4 5) (4 5 6) dan (8) (8). Suatu sequence (3) (5) bukan merupakan bagian dari sequence (3 5) (dan sebaliknya). Item 3 dan 5 pada sequence pertama dibeli satu setelah yang lainnya. Item 3 dan 5 pada sequence selanjutnya, dibeli secara bersamaan [AGR00]. Sequential pattern memiliki kaitan yang sangat erat dengan frequent itemset. Pada contoh tersebut, terlihat bahwa satu sequence terdiri dari satu itemset. Hanya itemset yang memuhi min_sup yang dapat dijadikan sebuah sequence. Sebagai akibatnya, seluruh itemset yang terdapat pada seluruh sequence pada sequential pattern adalah himpunan frequent itemset (itemset yang memenuhi min_sup). Berikut diberikan sebuah definisi. Definisi II.22. Pada sequential pattern, seluruh sequence disusun oleh himpunan frequent itemset yaitu himpunan itemset yang memenuhi min_sup. (frequent itemset ada pada definisi II.15). 2.4.3. Contoh Sequential Pattern Berikut ini diberikan sebuah contoh yang menjelaskan sequential pattern secara keseluruhan. Untuk mempersingkat penjelasan, berikut diberikan sebuah gambar yang berisi data transaksi lima pelanggan dan pada setiap transaksi dicatat id_pelanggan, waktu_transaksi, dan daftar item. Pada gambar tersebut, seluruh data transaksi telah dikelompokkan berdasarkan id_pelanggan dan telah diurutkan menaik berdasarkan waktu_transaksi. 32

id_pelanggan waktu_transaksi item 1 1 29 Juni 93 30 Juni 93 30 90 2 2 2 10 Juni 93 15 Juni 93 20 Juni 93 10,20 30 40,60,70 3 25 Juni 93 30,50,70 4 4 4 25 Juni 93 30 Juni 93 25 Juli 93 30 40,70 90 5 12 Juni 93 90 Gambar II.9. Basis data dikelompokkan berdasarkan id_pelanggan Seluruh transaksi yang dilakukan oleh seorang pelanggan dipandang sebagai satu sequence. Dalam hal ini masing-masing transaksi berkorespondensi dengan satu itemset, dan seluruh transaksi yang dirutkan secara menaik berdasarkan waktu transaksi berkorespondensi dengan sebuah sequence yang membentuk sequence pelanggan. Gambar berikut memberikan daftar lengkap sequence pelanggan yang terbentuk. id_pelanggan sequence pelanggan 1 (30), (90) 2 (10,20), (30), (70,60,40) 3 (30, 70, 50) 4 (30), (70, 40), (90) 5 (90) Gambar II.10. Sequence pelanggan Pada tabel tersebut, urutan item yang terdapat pada seluruh itemset tidak dipermasalahkan, tetapi urutan itemset-itemset yang menyusun sebuah sequence adalah terurut menaik berdasarkan waktu terjadinya. Proses menemukan sequential pattern itu sendiri adalah sebuah proses yang melibatkan algoritma, dan proses ini disebut dengan sequential pattern mining. Sequential pattern mining tidak dibahas pada bagian ini namun dijelaskan pada lampiran C. Sebagai hasil akhir proses pada contoh tersebut, jika nilai min_sup adalah 25% maka sequential pattern yang dapat ditemukan adalah (30), (90) dan (30), (40, 70). 33