• Tidak ada hasil yang ditemukan

PEMBUATAN MODUL REKOMENDASI PADA OPENCART MENGGUNAKAN METODE ITEM-BASED COLLABORATIVE FILTERING KIRANA NURYUNITA

N/A
N/A
Protected

Academic year: 2021

Membagikan "PEMBUATAN MODUL REKOMENDASI PADA OPENCART MENGGUNAKAN METODE ITEM-BASED COLLABORATIVE FILTERING KIRANA NURYUNITA"

Copied!
37
0
0

Teks penuh

(1)

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

BOGOR

2012

KIRANA NURYUNITA

PEMBUATAN MODUL REKOMENDASI PADA OPENCART

MENGGUNAKAN METODE ITEM-BASED

(2)

ABSTRACT

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

BOGOR

2012

KIRANA NURYUNITA

Skripsi

sebagai salah satu syarat untuk memperoleh gelar

Sarjana Komputer pada

Departemen Ilmu Komputer

PEMBUATAN MODUL REKOMENDASI PADA OPENCART

MENGGUNAKAN METODE ITEM-BASED

(3)

Collaborative Filtering Method. Under the supervision of YANI NURHADRYANI.

This research aims to add a recommender module in OpenCart CMS. One of the method is item-based collaborative filtering that can reduce the execution time of calculation. This study uses adjusted cosine similarity to calculate the similarity between books, weighted sum method to calculate the books rate prediction, and mean absolute error to calculate recommendacy accuracy. In order to get the recommendation, user have to login and give ratings to the books. Then, adjusted cosine similarity calculates the similarity between books based on user’s rate. Based on the similarities between books, weighted sum method calculates the books rate prediction. Before a book is recommended to the user, type of book from the prediction are first matched with the type of book rated by the user. This research uses 300 books and 30 users. The result shows that only 17 users can get recommendations. Evaluation is conducted by analyzing the execution time and recommendacy accuracy. It is found that the execution time is 1.60 seconds and the mean absolute error is 0.15.

Keywords: adjusted cosine similarity, e-commerce, item-based collaborative filtering, mean

(4)

Menyetujui: Pembimbing

Dr. Yani Nurhadryani, S.Si, M.T. NIP. 19740404 199802 2 001

Mengetahui:

Ketua Departemen Ilmu Komputer

Dr. Ir. Agus Buono, M.Si., M.Kom. NIP. 19660702 199302 1 001

(5)

dan hidayah-Nya sehingga penulis dapat menyelesaikan tugas akhir dengan judul Pembuatan Modul Rekomendasi pada OpenCart Menggunakan Metode Item-Based Collaborative Filtering. Penelitian ini dilaksanakan mulai Desember 2011 sampai dengan September 2012 dan bertempat di Departemen Ilmu Komputer Institut Pertanian Bogor.

Penulis juga menyampaikan terima kasih kepada pihak-pihak yang telah membantu dalam penyelesaian tugas akhir ini, yaitu:

1 Ayahanda Wagiran Wahyu, Ibunda Wikanti Asriningrum, serta kakakku Sulistyo Unggul Wicaksono yang selalu memberikan kasih sayang, semangat, dan doa.

2 Ibu Yani Nurhadryani selaku dosen pembimbing yang telah memberikan arahan dan bimbingan dengan sabar kepada penulis dalam menyelesaikan skripsi ini.

3 Aditya Nur Johansyah, Jaka Ahmad Juliarta, dan Mbak Yudith sebagai teman satu bimbingan yang selalu memberikan masukan, saran, dan semangat kepada penulis.

4 Rekan-rekan di Departemen Ilmu Komputer IPB angkatan 45 atas segala kebersamaan, canda tawa, dan kenangan indah yang telah mengisi kehidupan penulis selama di kampus.

5 Teman-teman kosan Tri Regina lantai 1, Dannis, Fitta, Nensi, Rossy, Nindy, nilam, dan Yeli. 6 Semua pihak yang tidak dapat disebutkan satu persatu yang telah memberikan saran, masukan,

dan kritik bagi penulis.

Penulis menyadari bahwa masih terdapat kekurangan dalam penulisan skripsi ini. Semoga skripsi ini bermanfaat.

Bogor, November 2012

(6)

RIWAYAT HIDUP

Penulis lahir di Jakarta, 11 Juni 1990 sebagai anak kedua dari dua bersaudara dari pasangan Wagiran Wahyu dan Wikanti Asriningrum. Penulis merupakan lulusan dari SMAN 14 Jakarta Timur (2004-2007), SMPN 49 Jakarta Timur (2001-2004), dan SDN Pekayon 05 Pagi (1995-2001). Saat ini penulis sedang menempuh studi S1 di Departemen Ilmu Komputer, Fakultas MIPA, Institut Pertanian Bogor, sejak tahun 2008 sampai dengan sekarang.

Pada bulan Juli hingga Agustus 2011, penulis melaksanakan kegiatan Praktik Kerja Lapangan di PT. Pertamina. Selain kuliah, penulis juga pernah menjadi asisten praktikum Sistem Informasi pada tahun 2011-2012. Organisasi yang pernah diikuti penulis selama perkuliahan yakni Bendahara Divisi Internal BEM FMIPA IPB 2009-2010. Penulis dapat dihubungi melalui email di alamat kirana.nina@gmail.com.

(7)

v DAFTAR TABEL ... vi DAFTAR GAMBAR ... vi DAFTAR LAMPIRAN ... vi PENDAHULUAN ... 1 Latar Belakang ... 1 Tujuan Penelitian ... 1

Ruang Lingkup Penelitian ... 1

TINJAUAN PUSTAKA ... 2

E-commerce ... 2

Sistem Rekomendasi ... 2

Collaborative Filtering ... 3

Item-Based Collaborative Filtering ... 4

Mean Absolute Error (MAE) ... 4

OpenCart ... 5

METODE PENELITIAN ... 5

Analisis Kebutuhan ... 5

Perancangan Sistem ... 5

Implementasi Item-Based Collaborative Filtering ... 5

Pengujian Item-Based Collaborative Filtering ... 6

HASIL DAN PEMBAHASAN ... 6

Analisis Kebutuhan ... 6

Perancangan Sistem ... 9

Implementasi Item-Based Collaborative Filtering ... 10

Pengujian Item-Based Collaborative Filtering ... 13

SIMPULAN DAN SARAN ... 14

Simpulan ... 14

Saran ... 15

DAFTAR PUSTAKA ... 15

(8)

vi

1 Rekomendasi pada e-commerce buku di Indonesia beserta traffic rank. ... 6

2 Lima peringkat CMS dengan Global traffic rank dan indonesia traffic rank tertinggi. ... 7

3 Rate buku dari pengguna. ... 8

4 Nilai kemiripan antar buku... 9

5 Prediksi rate buku. ... 9

6 Perbandingan nilai kemiripan perhitungan sistem dan perhitungan manual. ... 14

DAFTAR GAMBAR

Halaman 1 Proses collaborative filtering. ... 3

2 User-based collaborative filtering... 3

3 Item-Based Collaborative. ... 4

4 Pencarian kemiripan antar produk. ... 4

5 Metode penelitian waterfall (Green 1998). ... 5

6 Tahapan analisis fungsi ... 5

7 Kategori produk yang dijual secara online di Indonesia (Dsresearch 2011). ... 6

8 simulasi rekomendasi. ... 8

9 DFD konteks sistem rekomendasi. ... 8

10 DFD level 1 sistem rekomendasi. ... 9

11 Entity relationship diagram sistem rekomendasi. ... 10

12 Perancangan antarmuka pengguna. ... 10

13 Perancangan antarmuka admin... 10

14 Halaman home pengguna yang belum login dan pengguna yang telah login yang tidak terdapat rekomendasi. ... 11

15 Halaman home pengguna yang telah login dan terdapat rekomendasi. ... 11

16 Halaman modul recommended product pada admin. ... 11

17 Waktu rata-rata eksekusi dari 30 pengguna. ... 14

DAFTAR LAMPIRAN

Halaman 1 Pengguna pemberi review buku ... 17

2 Rata-rata rate pengguna ... 19

3 Kemiripan antar buku dengan nilai similarity lebih besar dari 0.5 ... 20

4 Prediksi rate buku ... 22

5 Rekomendasi buku pengguna ... 25

(9)

PENDAHULUAN

Latar Belakang

Informasi dengan berbagai macam kriteria terdapat di internet, salah satunya adalah informasi tentang penjualan produk dan jasa secara online atau biasa disebut e-commerce. Faktor yang dapat mendorong penjualan dalam e-commerce salah satunya adalah menyangkut personalisasi dari pembeli di internet. Pembuatan profil dan personalisasi merupakan cara yang digunakan untuk mengenali pembeli sebagai pemakai individual. Sistem rekomendasi merupakan salah satu bentuk dari personalisasi website. Sistem Rekomendasi merupakan model penyelesaian masalah yang menerapkan teknik-teknik tertentu pada pembuatan rekomendasi untuk pemilihan suatu informasi, produk, dan jasa (Goldberg et al. 2001).

Terdapat dua pendekatan dalam mengembangkan sebuah sistem rekomendasi, yaitu content-based dan collaborative filtering (Balabanovic & Shoham 1997). Pendekatan

content-based menyediakan rekomendasi dengan cara membandingkan representasi konten yang terkandung dalam sebuah produk dengan representasi konten yang diinginkan pengguna dengan membangun user thematic

profile. Pendekatan collaborative filtering

bekerja dengan cara mempelajari masukan

rate dari pengguna pada kumpulan produk,

mengenali kesamaan berdasarkan masukan pengguna, dan menghasilkan rekomendasi baru (Candillier et al. 2007). Rekomendasi berdasarkan pendekatan collaborative filtering merupakan pendekatan yang paling banyak digunakan untuk membangun sebuah sistem rekomendasi (Burke 2002).

Teknik collaborative filtering terbagi menjadi dua, yaitu user-based collaborative

filtering dan item-based collaborative filtering

(Karypis 2001). Pada user-based collaborative filtering, sistem mencari sejumlah pengguna yang memiliki korelasi tinggi, sedangkan pada item-based collaborative filtering, sistem mencari sejumlah produk yang memiliki korelasi tinggi. User-based collaborative filtering memerlukan data pengguna, di mana pengguna lama dapat mengubah pola perilaku mereka dan pengguna baru dapat memasuki sistem setiap saat. Banyaknya data pengguna membutuhkan proses yang cukup lama untuk menghasilkan rekomendasi. Item-based collaborative filtering memerlukan data

koleksi produk yang relatif lebih sedikit dibandingkan data pengguna sehingga memungkinkan pengurangan perhitungan (Sarwar et al. 2001).

Saat ini, sistem rekomendasi merupakan bagian dari beberapa situs e-commerce seperti amazon.com. Amazon.com menggunakan algoritme item-based collaborative filtering untuk sistem rekomendasi karena jumlah pengguna yang lebih banyak dibanding jumlah produk (Linden et al. 2003). Di Indonesia, beberapa situs e-commerce buku telah ada yang memberikan rekomendasi kepada pengguna. Rekomendasi yang diberikan kepada pengguna masih menggunakan query biasa untuk mencari kesamaan penulis, penerbit, atau kategori. Rekomendasi yang diberikan pada e-commerce buku di Indonesia bukan merupakan personalisasi dari pengguna.

Pembuatan situs e-commerce buku salah satunya dapat dilakukan dengan menggunakan

content management system (CMS). Salah

satu CMS yang populer di masyarakat adalah OpenCart (Masalov 2007). OpenCart telah memiliki beberapa modul seperti account,

affiliate, banner, bestsellers, carousel, category, featured, google talk, information, latest, slideshow, specials, store, dan

welcome. OpenCart belum memiliki modul

yang dapat menghasilkan rekomendasi untuk pengguna.

Pada penelitian ini ditambahkan modul baru yaitu modul rekomendasi pada content

management system (CMS) OpenCart. Modul

rekomendasi dikembangkan menggunakan metode item-based collaborative filtering berdasarkan masukan rate dari pengguna. Tujuan Penelitian

Penelitian ini bertujuan menambahkan modul sistem rekomendasi berbasis

item-based collaborative filtering pada e-commerce

buku di Indonesia menggunakan CMS OpenCart. Setelah pengimplementasian sistem rekomendasi, dilakukan analisis tingkat kesalahan hitung dari item-based collaborative filtering dan analisis waktu

eksekusi dari item-based collaborative filtering.

Ruang Lingkup Penelitian

Ruang lingkup pada penelitian ini adalah: 1 Sistem rekomendasi yang dibuat hanya

(10)

buku menggunakan metode item-based

collaborative filtering.

2 Sistem rekomendasi dibuat menggunakan CMS OpenCart.

3 Pada sistem ini data buku yang digunakan berjumlah 300 dan data responden yang mencoba sistem rekomendasi berjumlah 30.

TINJAUAN PUSTAKA

E-commerce

E-commerce meliputi seluruh proses dari

pengembangan, pemasaran, penjualan, pengiriman, pelayanan, dan pembayaran untuk berbagai produk dan jasa yang diperjualbelikan. Aspek-aspek yang memengaruhi kesuksesan e-commerce adalah (O’Brien 2006):

1 Pengendalian akses dan keamanan

Proses e-commerce harus membangun rasa percaya dan akses yang aman antara berbagai pihak dalam bertransaksi, melalui pengautentikasian pemakai, pengotorisasian akses, dan penerapan berbagai fitur keamanan.

2 Pembuatan profil dan personalisasi Proses pembuatan profil dijalankan untuk mengumpulkan data mengenai pembeli dan membangun profil dari berbagai karakteristik serta preferensi pembeli.

3 Manajemen pencarian

Proses pencarian yang efisien dan efektif membantu pembeli untuk menemukan produk atau jasa tertentu yang diinginkan untuk dievaluasi atau dibeli oleh pembeli.

4 Manajemen isi

Proses yang digunakan untuk mengembangkan, menghasilkan, mengirimkan, memperbarui, dan menyimpan data teks serta informasi multimedia pada situs e-commerce. 5 Manajemen katalog

Proses untuk mengkonfigurasikan produk-produk pada situs dan membagi produk tersebut berdasarkan kategori. 6 Pembayaran

Proses yang melibatkan proses belanja sampai verifikasi pembayaran. Metode-metode pembayaran yang mendukung juga harus dipertimbangkan.

7 Manajemen arus kerja

Proses yang meliputi otomatisasi pembelian beserta manajemen dokumen

dari pembelian dan pengiriman produk atau jasa.

8 Pemberitahuan kegiatan

Proses yang merespons berbagai kegiatan dari pelayanan untuk pelanggan baru, proses pembayaran, proses pengiriman, dan newsgroup.

9 Kerjasama dan perdagangan

Proses kesepakatan kerjasama yang terjadi antara pelanggan, pemasok, dan

stakeholder dalam transaksi e-commerce.

Dari aspek-aspek di atas, tujuh di antaranya merupakan aspek yang dilakukan secara online sedangkan dua lainnya merupakan aspek yang dilakukan secara

offline. Aspek yang dilakukan secara online

adalah pengendalian akses dan keamanan, pembuatan profil dan personalisasi, manajemen pencarian, manajemen isi, manajemen katalog, dan pemberitahuan kegiatan.

Sistem Rekomendasi

Sistem rekomendasi merupakan model penyelesaian masalah yang menerapkan teknik-teknik tertentu pada pembuatan rekomendasi untuk pemilihan suatu informasi, produk, dan jasa (Goldberg et al. 2001). Sistem rekomendasi digunakan untuk memprediksi apakah pengguna tertentu menyukai produk tertentu. Sistem rekomendasi memanfaatkan opini seseorang terhadap suatu barang dalam kategori tertentu, untuk membantu seseorang dalam memilih produk (McGinty & Smyth 2006).

Tujuan utama dari sistem rekomendasi meliputi analisis data dari pengguna dan penggalian informasi yang berguna untuk prediksi yang lebih lanjut (Chen & McLeod 2006). Sistem rekomendasi dirancang untuk memungkinkan pengguna menemukan produk lebih cepat dan menghindari informasi yang berlebihan. Secara spesifik, sistem rekomendasi memiliki tiga proses utama, yaitu (i) latar belakang data, yaitu informasi yang dimiliki sistem sebelum rekomendasi dimulai; (ii) data masukan, yaitu informasi yang diberikan oleh pengguna untuk berinteraksi dengan sistem dalam menghasilkan rekomendasi; dan (iii) algoritme rekomendasi, yaitu kombinasi antara latar belakang data dan data masukan untuk menghasilkan suatu rekomendasi (Burke 2002). Terdapat dua pendekatan dalam mengembangkan sebuah sistem rekomendasi yaitu content-based dan collaborative filtering (Balabanovic & Shoham 1997). Pendekatan

(11)

content-based menyediakan rekomendasi dengan cara membandingkan representasi konten yang terkandung dalam sebuah produk dengan representasi konten yang diinginkan pengguna dengan membangun user thematic

profile. Di sisi lain, pendekatan collaborative filtering bekerja dengan cara mempelajari

masukan rate dari pengguna pada kumpulan produk, mengenali kesamaan berdasarkan masukan pengguna, dan menghasilkan rekomendasi baru (Candillier et al. 2007).

Pendekatan lain yang berkembang saat ini selain content-based dan collaborative filtering adalah clustering dan hybrid recommender system. Pendekatan clustering

bekerja dengan mengidentifikasi sekelompok pengguna yang memiliki preferensi yang sama. Setelah cluster terbentuk, prediksi bagi seseorang dapat dibuat dengan menghitung rata-rata rate dari pengguna lain di cluster tersebut. Teknik Clustering biasanya menghasilkan rekomendasi yang kurang personal dibanding metode lainnya, dan dalam beberapa kasus, cluster memiliki akurasi yang lebih buruk dibandingkan algoritme lainnya (Breese et al. 1998). Sedangkan pendekatan

hybrid recommender system merupakan gabungan dua atau lebih pendekatan rekomendasi untuk menghasilkan kinerja yang lebih baik (Burke 2002). Rekomendasi berdasarkan pendekatan collaborative filtering adalah pendekatan yang paling banyak digunakan untuk membangun sebuah sistem rekomendasi (Burke 2002).

Collaborative Filtering

Pada Collaborative Filtering, rekomendasi yang dihasilkan berdasarkan pada korelasi yang didapat di antara pengguna yang telah memberikan rate atau bertransaksi dalam sistem. Pendekatan collaborative filtering bekerja dengan cara mempelajari kebiasaan para pencari informasi dan membangun profil pencari informasi, kemudian memberikan rekomendasi. Ide awal yang melandasi munculnya teknik collaborative filtering adalah perbandingan rasa suka atau tidak suka seseorang (Goldberg et al. 2001). Tujuan dari algoritme collaborative filtering adalah menganjurkan produk baru atau memprediksikan evaluasi produk kepada pengguna berdasarkan pada ketertarikan sebelumnya dari pengguna dan opini dari pengguna-pengguna lain yang mempunyai ketertarikan serupa.

Gambar 1 Proses collaborative filtering. Pada Gambar 1 dijelaskan bahwa ada dua hal utama yang dilakukan sistem rekomendasi

collaborative filtering, yaitu (i) Prediksi yaitu

melakukan prediksi dari opini yang telah diberikan oleh pengguna dan (ii) Rekomendasi yaitu memberikan rekomendasi berupa daftar produk. Hal yang perlu dicatat adalah produk yang direkomendasikan belum pernah dibeli, dilihat, atau diberi rate oleh pengguna tersebut. Teknik collaborative

filtering terbagi menjadi dua yaitu user-based collaborative filtering dan item-based collaborative filtering (Sarwar et al. 2001).

Gambar 2 menjelaskan pendekatan

user-based collaborative filtering. Pada pendekatan user-based collaborative filtering sistem

mencari sejumlah pengguna yang memiliki korelasi tinggi kepada pengguna. Setelah sejumlah pengguna yang memiliki korelasi tinggi didapat, sistem merekomendasikan produk yang dipilih sejumlah pengguna kepada pengguna.

Gambar 2 User-based collaborative filtering. Sedangkan pada item-based collaborative filtering (Gambar 3) dijelaskan

bahwa pengguna cenderung memilih produk (likely buy) yang sejenis atau yang Pengguna aktif Produk j yang diprediksi

INPUT (table rate)

Prediksi Rekomendasi

Prediksi pada produk ke-j untuk pengguna ke-a

Top-N rekomendasi

(12)

mempunyai korelasi tinggi (similar) dengan produk yang telah dipilihnya (Karypis 2001).

Gambar 3 Item-Based Collaborative.

Item-Based Collaborative Filtering

Metode item-based collaborative filtering memanfaatkan rating atau catatan transaksi dalam membuat rekomendasi. Pada metode ini korelasi yang dicari adalah produk yang belum pernah diberi rate oleh pengguna. Sejumlah produk yang berkorelasi tinggi dijadikan sebagai top-N rekomendasi.

Pada Gambar 4 dijelaskan bahwa kemiripan antara dua produk dilakukan hanya pada pengguna yang telah menilai kedua produk. Salah satu metode yang paling umum untuk menentukan kemiripan antara dua produk adalah dengan menggunakan persamaan cosinus. Persamaan cosinus digunakan pada sistem rekomendasi Amazon.com (Linden et al. 2003).

Gambar 4 Pencarian kemiripan antar produk. Pada jurnal lain Sarwar et al. (2001), menyebutkan bahwa adjusted cosine similarity memiliki tingkat kesalahan terkecil

bila dibandingkan dengan persamaan cosine. Persamaan adjusted cosine similarity

merupakan pengembangan dari persamaan

cosine. Berikut adalah persamaan adjusted cosine similarity:

̅ ̅

√∑ ̅ √∑ ̅ (1)

dengan:

 sim(i,j) adalah nilai kemiripan antara

produk i dan produk j.

u U adalah himpunan pengguna u yang memberikan rate pada produk i dan produk j.

i adalah rating pengguna u pada produk

i.

adalah rating pengguna u pada produk

j.

̅ adalah rata-rata rating pengguna u. Dalam menghitung nilai kemiripan, nilai yang dihasilkan oleh persamaan

adjusted-cosine similarity adalah berkisar antara +1.0

dengan -1.0. Informasi korelasi yang diketahui berdasarkan nilai kemiripan tersebut adalah (Marmanis & Babenko 2009):

 Nilai kemiripan 0: kedua produk tidak berkorelasi (independen).

 Nilai kemiripan mendekati +1.0: kedua produk berkorelasi tinggi.

 Nilai kemiripan mendekati -1.0: kedua produk saling bertolak belakang.

Setelah mendapatkan sekumpulan produk yang sangat mirip, dilakukan proses prediksi yang memperkirakan nilai rate dari pengguna. Prediksi yang diperkirakan adalah produk yang belum pernah diberi rate oleh pengguna tersebut. Teknik yang digunakan untuk mendapatkan nilai prediksi adalah dengan persamaan weighted sum (Karypis 2001). Berikut adalah persamaan weighted sum: ∑ ( ∑ | * )

|

(2)

dengan:

P(u,j) adalah prediksi untuk pengguna u pada produk j.

i I adalah himpunan produk yang mirip dengan produk j.

adalah rate pengguna u pada produk i.

adalah nilai kemiripan antara produk i

dan produk j.

Mean Absolute Error (MAE)

Mean absolute error (MAE) merupakan

persamaan yang digunakan untuk mengukur akurasi sistem dengan membandingkan nilai yang diprediksi dengan nilai yang sebenarnya (Karypis 2001). Persamaan MAE digunakan untuk mengevaluasi kualitas dari sistem dan perhitungan yang paling sering digunakan Kemiripan antar produk hanya dihitung pada

(13)

(Candillier et al. 2007). Berikut adalah persamaan MAE:

MAE = ∑ | | (3) dengan:

 MAE adalah nilai rata-rata kesalahan hitung.

N adalah jumlah produk yang dihitung. pi adalah nilai prediksi produk ke-i.

qi adalah nilai rate sebenarnya produk

ke-i.

Semakin kecil nilai MAE yang dihasilkan, prediksi yang dihasilkan semakin baik.

OpenCart

Salah satu perangkat lunak yang bersifat

open source adalah content management system (CMS). CMS memberikan kesempatan

kepada pengembang untuk membuat sebuah

website secara personal dan memulai bisnis

toko online. Salah satu CMS yang populer di masyarakat adalah OpenCart (Masalov 2007).

OpenCart telah memiliki struktur pengkodean yang baik untuk menciptakan toko online yang semua fungsinya dapat berjalan dengan baik dan tampilan layar yang cukup menarik. OpenCart merupakan sebuah sistem yang mudah disesuaikan secara personal dan berisi banyak fitur yang dibutuhkan untuk menjalankan sebuah

e-commerce. Struktur OpenCart yang bersifat

modular memungkinkan seseorang untuk membuat modul baru dan dapat dengan mudah diintegrasikan ke dalam sistem. Penampilan website juga mudah disesuaikan dan dapat diubah dengan mengganti beberapa

stylesheets.

METODE PENELITIAN

Metode yang dilakukan pada penelitian ini terdiri dari beberapa tahap, yaitu analisis kebutuhan, perancangan sistem, implementasi

item-based collaborative filtering, dan pengujian item-based collaborative filtering. Metode penelitian ditunjukkan pada Gambar 5.

Analisis Kebutuhan

Analisis meliputi analisis kebutuhan data dan analisis kebutuhan fungsi. Analisis kebutuhan data meliputi data pengguna, data buku, dan analisis CMS yang cukup populer di masyarakat Indonesia. CMS dicari

berdasarkan Indonesia traffic rank tertinggi melalui situs alexa.com. Tahapan pada analisis fungsi terdiri atas pemberian rate oleh pengguna, perhitungan rata-rata rate

pengguna, perhitungan nilai kemiripan produk menggunakan adjusted cosine similarity, perhitungan prediksi produk menggunakan

weighted sum, dan pencocokan kategori

produk prediksi dengan kategori produk yang diberi rate oleh pengguna. Tahapan pada analisis fungsi dapat dilihat pada Gambar 6.

Gambar 5 Metode penelitian waterfall (Green dan DiCaterino 1998).

Gambar 6 Tahapan analisis fungsi. Perancangan Sistem

Perancangan sistem terdiri dari perancangan database dan perancangan antarmuka.

Implementasi Item-Based Collaborative Filtering

Pada tahap implementasi, adjusted cosine

similarity dan weighted sum diterjemahkan ke

dalam sistem dan ditambahkan pada modul untuk menghasilkan sebuah rekomendasi.

Rate pengguna

Rata-rata rate pengguna

Nilai kemiripan produk (adjusted cosine similarity)

Prediksi rate produk (weighted sum)

Pencocokan Kategori produk Analisis Kebutuhan Perancangan Sistem Implementasi item-based collaborative filtering Pengujian item-based collaborative filtering

(14)

Pengujian Item-Based Collaborative

Filtering

Pengujian terhadap sistem dilakukan dengan menggunakan mean absolute error (MAE) untuk mengetahui nilai keakuratan dari rekomendasi yang dihasilkan. Pengujian juga dilakukan dengan menghitung waktu eksekusi yang dibutuhkan sistem untuk menghasilkan sebuah rekomendasi. Pengujian dilakukan pada lingkungan pengembangan perangkat keras Processor Intel Core 2 Duo 1.6 GHz, RAM 2GB, dan Hard drive 120 GB.

HASIL DAN PEMBAHASAN

Analisis Kebutuhan

A Kebutuhan data

Menurut hasil penelitian yang dilakukan Dsresearch (2011) dengan jumlah responden 224, kategori produk yang paling sering dibeli oleh masyarakat secara online adalah pakaian (Gambar 7). Pada Gambar 7 dapat juga dilihat bahwa produk buku menempati urutan nomor dua terbawah. Sistem rekomendasi yang dibuat diharapkan dapat menaikkan penjualan buku secara online. Menaiknya penjualan buku berarti minat baca masyarakat semakin tinggi sehingga masyarakat memiliki pengetahuan yang lebih luas dari membaca buku.

Gambar 7 Kategori produk yang dijual secara

online di Indonesia (Dsresearch

2011).

Website e-commerce buku yang ada di

Indonesia dianalisis terlebih dahulu ada atau tidaknya rekomendasi yang dihasilkan. Dari 20 website e-commerce yang dianalisis, 9

website e-commerce buku telah memberikan

rekomendasi kepada pengguna (Tabel 1). Rekomendasi yang diberikan oleh website

e-commerce yang telah ada berdasarkan query

untuk mencari kecocokan antara kategori,

penulis, maupun penerbit dari buku yang bersangkutan.

Tabel 1 Rekomendasi pada e-commerce buku di Indonesia beserta traffic rank

e-commerce buku Rekomendasi Indonesia traffic rank Kutukutubuku .com Ada (Kategori) 5596

Bukukita.com Ada (Penulis, penerbit, dan kategori) 731 Bukabuku .com Ada (Kategori) 1333 Gramedia .com Ada (Kategori) 778 Belbuk.com Ada (Kategori) 1624 Bookoopedia .com Tidak ada 5.545 Palasarionline .com Tidak ada 7.187 Bukubagus .com Ada (Kategori) 25006 Bukupengusa ha.com Tidak ada 66718

Inibuku.com Tidak ada 17661 Bearbookstore .com Tidak ada - Cordova-bookstore .com Ada (Penerbit dan kategori) 35235 Andipublisher .com Ada (Kategori) 4723

Serambi.co.id Tidak ada 64223

Cibuku.com Tidak ada -

Bukudedo .com Tidak ada - Surgabuku .com Ada (Kategori) - Lilinkecil .com Tidak ada -

Biobses.com Tidak ada 21869

Buku-islam.com

Tidak ada -

*website e-commerce buku yang memiliki rekomendasi.

Penelitian ini menggunakan data buku yang diambil dari website bukukita.com. Data buku diambil dari website bukukita.com karena memiliki traffic rank yang lebih tinggi dibanding situs e-commerce buku lainnya (Tabel 1). Data yang diambil memiliki atribut ISBN, judul buku, penulis, penerbit, harga, jumlah halaman, kategori, tahun terbit, sinopsis, rate buku, dan cover buku. Jumlah

(15)

data buku yang ada sebanyak 300 buku. Data buku diambil pada tanggal 20 juli 2012.

Data buku yang ada dibagi menjadi beberapa kategori. Kategori buku mengikuti sebagian kategori yang terdapat pada website bukukita.com. Kategori buku terdiri atas:  Agama dengan sub-kategori Islam,

Kristen, dan Buddha.

Agriculture dengan sub-kategori hewan peliharaan, perikanan, perkebunan, pertanian, peternakan, dan tanaman hias.  Anak-anak dengan sub-kategori cerita

anak, keterampilan anak, dan parenting.  Arsitektur dan interior.

 Biografi.

 Bisnis dengan sub-kategori

enterpreneurship, investasi, dan

marketing.

 Buku sekolah dengan sub-kategori SD, SMP, SMA.

 Fiksi dengan sub-kategori komedi, komik, novel, dan sastra.

 Hobi dengan sub-kategori fotografi,

handycraft, kecantikan, menulis, musik,

olahraga, dan travel.  Kamus.

 Kesehatan dengan sub-kategori diet, penyakit, dan tanaman obat.

Komputer dengan sub-kategori database, jaringan, mobile, multimedia, pemrograman dan web.

 Non-fiksi dengan sub-kategori hukum dan sejarah dan budaya.

 Psikologi dan pengembangan diri dengan sub-kategori motivasi, pengembangan diri, dan psikologi.

Jumlah responden yang memberi rate pada buku adalah 30 orang dengan masing-masing orang memberi rate minimal 5 buku. Nilai rate terdiri atas angka 1 sampai 5 yang berjenis bilangan bulat dengan angka 1 berarti sangat tidak bagus dan angka 5 berarti sangat bagus. Nilai rate yang terdiri atas angka 1 sampai 5 sudah terdapat pada OpenCart dan tidak dilakukan perubahan. Responden yang memberi rate adalah mahasiswa IPB yang mencoba menggunakan sistem rekomendasi yang dibuat. Data responden diambil pada tanggal 26 sampai 27 juli 2012.

Analisis mengenai pemilihan CMS yang dipakai menggunakan situs alexa. Pemilihan Alexa sebagai tool analisis data website dikarenakan situs ini menyediakan layanan perangkingan secara otomatis untuk seluruh situs di dunia (Saidah 2012). Berdasarkan

situs alexa yang diakses dengan query

opensource shopping cart, lima global traffic rank tertinggi adalah magentocommerce,

sitepoint, prestashop, rackspace hosting, dan OpenCart (Tabel 2). Dari lima peringkat berdasarkan global traffic rank tersebut, dicari peringkat berdasarkan Indonesia traffic rank. Situs yang memiliki Indonesia traffic rank tertinggi adalah OpenCart. OpenCart dipilih pada penelitian ini karena memiliki global

traffic rank dan Indonesia traffic rank

tertinggi di antara opensource shopping cart lainnya.

Tabel 2 Lima peringkat CMS dengan Global

traffic rank dan indonesia traffic rank

tertinggi. CMS Global traffic rank Indonesia traffic rank Magento 861 2572 Sitepoint 1219 1794 Prestashop 1240 1728 Rackspace hosting 1676 3038 Opencart 1939 646

*CMS yang memiliki global traffic rank dan Indonesia traffic rank tertinggi.

Berdasarkan aspek kesuksesan e-commerce menurut O‘Brien (2006), OpenCart

telah memiliki tujuh aspek. Aspek yang telah dimiliki OpenCart adalah:

 Pengendalian akses dan keamanan, pada OpenCart terdapat verifikasi bagi pengguna yang login.

 Manajemen pencarian, OpenCart memiliki fungsi pencarian yang memudahkan pengguna dalam mencari suatu produk.  Manajemen isi, OpenCart mudah untuk

memperbaharui maupun menambah produk.

 Manajemen katalog, OpenCart mudah untuk membagi produk menjadi kategori-kategori tertentu.

 Pembayaran, pada OpenCart terdapat alur proses belanja sampai verifikasi pembayaran.

 Pemberitahuan kegiatan, pada OpenCart terdapat notifikasi apabila pengguna melakukan suatu proses pada sistem.  Pembuatan profil dan personalisasi,

OpenCart menyimpan profil pengguna dan

history pembelian bagi pengguna yang

telah login ke dalam sistem.

Pada aspek pembuatan profil dan personalisasi, OpenCart hanya memiliki aspek pembuatan profil. Salah satu cara untuk

(16)

menciptakan personalisasi adalah dengan adanya sistem rekomendasi.

B Kebutuhan fungsi

Gambar 8 menunjukkan simulasi rekomendasi yang terjadi pada sistem. Sistem memanfaatkan masukan rate dari pengguna untuk menghasilkan rekomendasi. pada gambar 8 pengguna A memberikan rate pada buku 1, pengguna B memberikan rate pada buku 1 dan 2, pengguna C memberikan rate pada buku 2 dan 3, dan pengguna D memberikan rate pada buku 1 dan 3. Berdasarkan masukan rate tersebut, dicari pasangan buku yang memiliki korelasi tinggi atau similar menggunakan adjusted cosine

similarity. Pada gambar 8, buku yang

memiliki korelasi tinggi adalah buku 2 dan buku 3. Pasangan buku yang memiliki korelasi tinggi dicari nilai prediksi rate menggunakan weighted sum. Kategori prediksi buku lalu dicocokkan dengan kategori buku yang telah diberi rate. Buku 1, 2, dan 3 memiliki kategori yang sama pada gambar 8. Pengguna yang memiliki rekomendasi adalah pengguna B dengan rekomendasi buku 3 dan pengguna D dengan rekomendasi buku 2.

Gambar 8 simulasi rekomendasi. Pada DFD konteks (Gambar 9) dapat dilihat bahwa pengguna memberi rate pada suatu buku. Rate tersebut lalu diolah oleh sistem untuk mencari buku yang memiliki kemiripan dengan buku yang telah diberi rate sebelumnya. Apabila terdapat buku yang memiliki kemiripan, sistem memberikan rekomendasi buku pada pengguna.

Gambar 9 DFD konteks sistem rekomendasi.

Pada DFD level 1 (Gambar 10) menjelaskan alur rekomendasi. Pengguna yang memberikan rate pada produk disimpan dalam database. Atribut yang disimpan pada

database adalah rate, customer_id, dan product_id. Kemudian sistem menghitung

rata-rata rate pengguna dan disimpan dalam

database dengan atribut average_rating dan customer_id. Setelah rata-rata rate dihitung,

sistem menghitung kemiripan antar produk dan menyimpannya dalam database dengan atribut similarity, product_id, dan

customer_id. Sistem lalu menghitung nilai

prediksi rate produk dan menyimpannya dalam database dengan atribut prediction

rate, product_id, dan customer_id. Sistem lalu

mencocokkan kategori produk yang telah diberi rate oleh pengguna dengan kategori produk prediksi. Kategori yang memiliki kesamaan direkomendasikan kepada pengguna.

Berdasarkan Gambar 10 maka dibuat simulasi dari proses rekomendasi. Proses pertama dan kedua dalam menghasilkan rekomendasi adalah mengumpulkan data pengguna yang telah memberi rate pada buku dan menghitung rata-rata rate dari pengguna. Pemberian rate dilakukan oleh pengguna yang telah login. Simulasi data pengguna yang telah memberi rate dapat dilihat pada Tabel 3, dimana U melambangkan pengguna, I melambangkan buku dan ̅ melambangkan nilai rata-rata rate pengguna.

Proses ketiga adalah menghitung nilai kemiripan antar buku menggunakan adjusted

cosine similarity. Simulasi nilai kemiripan

antar buku dapat dilihat pada Tabel 4, dengan

I melambangkan buku. Berdasarkan Tabel 3,

terdapat empat pasang buku yang memiliki nilai kemiripan lebih besar dari 0.5 yaitu I1

dengan I5, I3 dengan I5, I3 dengan I6, dan I5

dengan I6.

Tabel 3 Rate buku dari pengguna.

Pengguna I1 I2 I3 I4 I5 I6 I7 ̅ U1 3 5 3 - - - 2 3.25 U2 5 - - 2 5 5 - 4.25 U3 1 - 2 - - - 2 1.67 U4 - - - 4 5 5 - 4.67 U5 4 2 3 3 3 - - 3.00 U6 3 4 - - - 1 4 3.00 U7 - - - 4 4 4.00 U8 - 5 5 2 - 5 - 4.25 U9 - - 5 - 5 - 4 4.67 U10 - 4 - - 5 - 3 4.00 U11 - - - 2 4 - 3 3.00 U12 - - - 4 3 - 5 4.00

(17)

Gambar 10 DFD level 1sistem rekomendasi. Tabel 4 Nilai kemiripan antar buku.

buku1 Buku2 Nilai kemiripan I1 I2 -0.62 I1 I3 -0.31 I1 I4 -0.60 I1 I5 0.60 I1 I6 0.35 I1 I7 0.08 I2 I3 0.07 I2 I4 -0.60 I2 I5 0.00 I2 I6 -0.54 I2 I7 -0.31 I3 I4 -1.00 I3 I5 1.00 I3 I6 1.00 I3 I7 0.26 I4 I5 -0.69 I4 I6 -0.99 I4 I7 0.00 I5 I6 1.00 I5 I7 -0.80 I6 I7 -1.00

*Pasangan buku yang memiliki nilai similarity lebih besar dari 0.5.

Proses keempat adalah menghitung nilai prediksi rate buku menggunakan weighted

sum. Pasangan buku yang dijadikan rekomendasi adalah pasangan buku yang nilai kemiripannya lebih besar dari 0.5. Pengguna yang diberikan prediksi rate buku hanya pengguna yang baru memberikan rate pada salah satu buku. Simulasi prediksi dapat

dilihat pada Tabel 5, dengan U melambangkan pengguna dan I melambangkan buku. Prediksi yang telah dihasilkan tidak langsung diberikan kepada pengguna. Proses kelima yaitu prediksi buku terlebih dahulu dicocokkan dengan kategori buku yang telah diberi rate oleh pengguna. Apabila kategori buku dari prediksi yang dihasilkan sama dengan kategori buku yang telah diberi rate oleh pengguna, buku prediksi tersebut direkomendasikan.

Tabel 5 Prediksi rate buku.

Pengguna Prediksi rate buku

U1 (I5, 3)( I6, 3) U2 (I3, 5) U3 (I5, 2)(I6, 2) U4 (I1, 5)(I3, 5) U5 (I6, 3) U6 (I3, 1)(I5, 2) U7 (I3, 4)(I5, 4) U8 (I5, 5) U9 (I1, 5)(I6, 5) U10 (I1, 5)(I3, 5)(I6, 5) U11 (I1, 4)(I3, 4)(I6, 4) U12 (I1, 3)(I3, 3)(I6, 3) Perancangan Sistem A Perancangan database

CMS OpenCart yang digunakan telah memiliki database agar sistem dapat berjalan dengan baik. Walaupun OpenCart telah memiliki database yang cukup lengkap, untuk

(18)

menambahkan modul rekomendasi diperlukan beberapa tambahan tabel. Pada pembahasan pemodelan proses rekomendasi diperlukan empat tabel untuk menyimpan data yang dibutuhkan dalam menghasilkan rekomendasi. Tabel yang dibutuhkan adalah tabel untuk menyimpan nilai rate dari pengguna, tabel untuk menyimpan nilai rata-rata rate dari pengguna, tabel untuk menyimpan nilai kemiripan antar buku, dan tabel untuk menyimpan prediksi buku.

-review_id : int +product_id : int +customer_id : int +pengguna : int +rate : int review +customer_id : int +average_rating : decimal review_average -sim_id : int +id_product1 : int +id_product2 : int +similarity : decimal similarity -prediction_id : int +customer_id : int +product_id : int +prediction_rate : int prediction

Gambar 11 Entity relationship diagram sistem rekomendasi.

Tabel yang digunakan untuk menyimpan nilai rate dari pengguna telah ada pada OpenCart yaitu tabel review. Tabel ini memiliki kolom yang dibutuhkan yaitu kolom review_id bersifat auto increment sebagai

primary key, customer_id, product_id, pengguna, dan rate. Tabel lainnya tidak terdapat pada OpenCart sehingga ditambahkan ke dalam database. Tabel

review_average ditambahkan untuk menyimpan nilai rata-rata rate dari pengguna yang terdiri dari kolom customer_id dan

average_rating. Tabel similarity ditambahkan

untuk menyimpan nilai kemiripan antar buku yang terdiri dari kolom sim_id bersifat auto

increment sebagai primary key, product1,

product2, dan sim untuk menyimpan nilai kemiripan antar buku. Tabel prediction ditambahkan untuk menyimpan nilai prediksi buku yang terdiri atas kolom prediction_id bersifat auto increment sebagai primary key, customer_id, product_id, dan prediction untuk menyimpan nilai rate hasil prediksi. Entity

relationship diagram antar tabel dapat dilihat

pada Gambar 11.

B Perancangan antarmuka

Perancangan antarmuka yang digunakan mengikuti antarmuka yang telah ada pada OpenCart. Perancangan antarmuka untuk

pengguna terdiri atas website logo di bagian kiri atas, akun manajer, fungsi search dan fungsi shopping cart di bagian kiri atas, menu di bagian tengah, kategori produk di bagian kanan bawah, dan konten buku di bagian kiri bawah (Gambar 12). Modul sistem rekomendasi diletakkan pada bagian konten pada halaman home pengguna.

Gambar 12 Perancangan antarmuka pengguna.

Perancangan antarmuka untuk admin terdiri dari header di bagian atas, menu di bagian tengah, dan konten di bagian bawah (Gambar 13). Modul sistem rekomendasi diakses oleh admin melalui menu extensions lalu menu modules. Modul yang digunakan pada sistem ini adalah modul account untuk menampilkan fungsi akun manajer, modul

carousel untuk menampilkan penerbit yang

ada pada sistem, modul category untuk mengatur letak kategori produk, modul latest untuk menampilkan buku terbaru, dan modul yang ditambahkan yaitu modul recommended untuk menampilkan rekomendasi buku.

Gambar 13 Perancangan antarmuka admin. Implementasi Item-Based Collaborative

Filtering

Implementasi tampilan pada OpenCart tidak banyak diubah. Pada halaman home diberi penambahan modul baru yaitu

recommended product. Pada pengguna yang

belum login dan pengguna yang telah login tetapi tidak terdapat rekomendasi, modul

recommended product menampilkan data

(19)

seller didapat dari perhitungan pemesanan

buku terbanyak yang dilakukan pada sistem. Halaman home bagi pengguna yang belum

login dan pengguna yang telah login tetapi

tidak memiliki rekomendasi dapat dilihat pada Gambar 14. Pada pengguna yang telah login

dan memiliki rekomendasi buku, modul

recommended product menampilkan data

buku hasil rekomendasi. Halaman home bagi pengguna yang telah login dan memiliki rekomendasi buku dapat dilihat pada Gambar 15.

Gambar 14 Halaman home pengguna yang belum login dan pengguna yang telah login yang tidak terdapat rekomendasi.

Gambar 15 Halaman home pengguna yang telah login dan terdapat rekomendasi.

Gambar 16 Halaman modul recommended product pada admin. Modul recommended

product

Modul recommended

(20)

Pada sisi admin juga ditambahkan modul

recommended product. Admin hanya dapat

mengatur penempatan modul recommended

product di halaman pengguna. Admin tidak

dapat mengubah algoritme pada modul

recommended product. Tampilan modul recommended product dapat dilihat pada

Gambar 16. Implementasi algoritme pada penelitian ini dilakukan pada bagian model sistem menggunakan bahasa structured query

language (SQL). Model sistem dipilih untuk

memudahkan menggabungkan beberapa tabel yang ada yang diperlukan dalam menghasilkan rekomendasi.

A Adjusted cosine similarity

Adjusted cosine similarity digunakan

untuk menghitung nilai kemiripan antar buku. Data yang diperlukan dalam perhitungan

adjusted cosine similarity adalah data rate

pengguna dan data rata-rata rate pengguna. Data rate untuk menghitung kemiripan diambil dari tabel review pada database. Data pada tabel review dapat dilihat pada Lampiran 1, sedangkan data rata-rata rate dari pengguna diambil dari tabel

review_average pada database. Data pada

tabel review_average dicari dengan menghitung rata-rata rate dari pengguna. Data pada tabel review_average dapat dilihat pada Lampiran 2. Rata-rata rate dihitung dengan menggunakan query sebagai berikut: SELECT

customer_id, AVG (rating) AS average_rating

FROM review

GROUP BY (customer_id).

Implementasi adjusted cosine similarity pada query adalah sebagai berikut:

SELECT (SUM((item1.rating-item1.average_rating)*(item2.ra ting-item2.average_rating))/(SQRT(SU M(POW((item1.rating-item1.average_rating ),2)))*SQRT(SUM(POW((item2.rati ng-item2.average_rating),2))))) AS similarity FROM (SELECT r.customer_id, r.product_id, r.rating, ra.average_rating FROM review r, review_average ra WHERE r.customer_id=ra.customer_id AND r.product_id = $prod ) AS item1,

(SELECT r.customer_id,

r.product_id, r.rating,

ra.average_rating FROM review r, review_average ra WHERE r.customer_id=ra.customer_id AND r.product_id = $product ) AS item2

WHERE

item1.customer_id= item2.customer_id).

Pada query adjusted cosine similarity, $prod dan $product merupakan parameter masukan dari id buku yang telah diberi rate. Nilai kemiripan ini disimpan dalam tabel similarity pada database. Nilai kemiripan yang disimpan dalam database hanya yang memiliki nilai kemiripan lebih besar dari 0.5. Berdasarkan query adjusted cosine similarity terdapat 93 pasangan buku yang

berkorelasi tinggi. Pasangan buku yang berkorelasi tinggi disimpan dalam tabel

similarity pada database. Data tabel

similarity dapat dilihat pada Lampiran 3.

Data pada tabel similarity semuanya memiliki nilai kemiripan 1.0. Nilai kemiripan yang seragam disebabkan oleh pengguna memberi

rate pada buku yang berbeda dengan nilai rate yang sama. Nilai kemiripan yang

seragam juga disebabkan oleh sebuah buku hanya diberi rate oleh satu atau dua pengguna.

B Weighted sum

Weighted sum digunakan untuk menghitung nilai prediksi rate buku. Data yang diperlukan dalam perhitungan weighted

sum adalah data rate pengguna dan data

kemiripan antar buku yang berkorelasi tinggi. Data rate pengguna diambil dari tabel review dan data kemiripan antar buku diambil dari tabel similarity. Implementasi weighted sum pada query adalah sebagai berikut:

SELECT

(SUM(r.rating*s.sim)/SUM(ABS(s. sim))) AS prediction

FROM

(SELECT product1, product2, sim FROM similarity) s,

(SELECT customer_id,

product_id, rating FROM review WHERE customer_id = $customer ) r

WHERE

(s.product1 = $product1 . "' AND s.product2 = r.product_id) XOR (s.product1 = r.product_id AND s.product2 = $product2)). Pada query wighted sum, $customer merupakan parameter masukan dari customer_id. $product1, dan $product2

(21)

merupakan masukan dari pasangan buku yang terdapat pada tabel similarity.

Berdasarkan query weighted sum terdapat 297 nilai prediksi rate buku. Data tabel prediksi dapat dilihat pada Lampiran 4. Prediksi yang diberikan kepada pengguna adalah prediksi buku yang belum pernah diberi rate oleh pengguna dan kategorinya sama dengan kategori buku yang pernah diberi rate oleh pengguna yang bersangkutan. Pengguna yang memiliki rekomendasi hanya 17 pengguna. Hasil rekomendasi dari tiap pengguna dapat dilihat pada Lampiran 5. Pengguna yang memiliki rekomendasi buku adalah pengguna dengan customer_id 6, 7, 8, 10, 11, 15, 17, 18, 20, 23, 24, 25, 28, 30, 31, 32 dan 33. Beberapa pengguna tidak mendapatkan rekomendasi disebabkan oleh pengguna hanya memberi rate pada kategori tertentu saja atau rate yang diberikan seorang pengguna bertolak belakang dengan rate yang diberikan oleh pengguna lainnya. Pengujian Item-Based Collaborative

Filtering

A Pengujian keakuratan rekomendasi Pengujian dilakukan dengan menghitung

Mean Absolute Error (MAE) dan waktu

eksekusi yang dibutuhkan untuk menjalankan

query adjusted cosine similarity dan query weighted sum. Pengujian yang pertama

dilakukan adalah melakukan perhitungan MAE dengan membandingkan nilai rate prediksi dan nilai rate yang diberi oleh pengguna. Implementasinya pada query adalah sebagai berikut:

SELECT

SUM(ABS(p.prediction-r.rating))/COUNT(*) FROM prediction p, review r WHERE p.customer_id = r.customer_id

AND p.product_id =

r.product_id).

Berdasarkan perhitungan MAE, tingkat kesalahan hitung yang dihasilkan relatif kecil yaitu 0.145. Semakin kecil nilai MAE, semakin akurat rekomendasi yang dihasilkan. Keakuratan pemodelan metode

item-based collaborative filtering pada sistem ini

diukur dengan membandingkan perhitungan yang dilakukan secara manual dengan

perhitungan yang dilakukan pada sistem. Data yang digunakan adalah data pada Tabel 3 sampai Tabel 5. Nilai kemiripan dan prediksi yang dihasilkan pada perhitungan

manual dan perhitungan sistem menunjukkan

hasil yang relatif sama. Perbedaan hasil terdapat pada enam perhitungan yaitu I1 dengan I3, I1 dengan I7, I3 dengan I7, I4 dengan I5, I4 dengan I6, dan I5 dengan I7. Selisih rata-rata dari perbandingan perhitungan manual dan perhitungan sistem adalah 0.0005. Selisih antara perhitungan manual dan perhitungan sistem tidak terlalu jauh Perbandingan nilai kemiripan antara perhitungan manual dan perhitungan sistem dapat dilihat pada Tabel 6.

B Pengujian waktu eksekusi

Pengujian yang dilakukan selanjutnya adalah menghitung waktu eksekusi untuk menjalankan query persamaan (1) dan persamaan (2). Penghitungan waktu eksekusi menggunakan aplikasi tambahan yang terdapat pada web browser yaitu page load

time. Berdasarkan perhitungan page load time, waktu eksekusi rata-rata yang dibutuhkan adalah 60.7 detik. Tingginya waktu eksekusi ini disebabkan oleh proses pembuatan tabel yang cukup lama. Waktu eksekusi yang lama ini tidak mengganggu pengguna karena algoritme diletakkan pada bagian admin sistem.

Pada bagian pengguna, waktu eksekusi rata-rata dari 30 pengguna adalah 1.57 detik. Waktu eksekusi pada bagian pengguna digunakan untuk membandingkan kategori dari buku yang telah diberi rate dan kategori dari prediksi buku. Waktu rata-rata eksekusi dari tiap pengguna dapat dilihat pada Gambar 17. Menurut Miller (1968) respon pengguna terhadap waktu eksekusi halaman dibagi menjadi tiga yaitu: (i) 0.1 detik yaitu pengguna merasa sistem bekerja sangat cepat, (ii) 1 detik yaitu batas pengguna tidak merasakan adanya gangguan, dan (iii) 10 detik yaitu batas memungkinkan pengguna untuk tetap fokus dan tidak meninggalkan halaman website. Waktu eksekusi untuk menghasilkan rekomendasi pada penelitian ini berada pada bagian ketiga yang masih memungkinkan pengguna untuk tetap fokus dan tidak meninggalkan halaman website.

(22)

Tabel 6 Perbandingan nilai kemiripan perhitungan sistem dan perhitungan manual. Buku1 Buku2 Nilai kemiripan (sistem) Nilai kemiripan (manual) Selisih=

|sistem-manual| I1 I2 -0.6198 -0.6198 0.0000 I1 I3 -0.3116 -0.3123 0.0007 I1 I4 -0.6000 -0.6000 0.0000 I1 I5 0.6000 0.6000 0.0000 I1 I6 0.3511 0.3511 0.0000 I1 I7 0.0782 0.0775 0.0007 I2 I3 0.0735 0.0735 0.0000 I2 I4 -0.6000 -0.6000 0.0000 I2 I5 0.0000 0.0000 0.0000 I2 I6 -0.5384 -0.5384 0.0000 I2 I7 -0.3122 -0.3122 0.0000 I3 I4 -1.0000 -1.0000 0.0000 I3 I5 1.0000 1.0000 0.0000 I3 I6 1.0000 1.0000 0.0000 I3 I7 0.2598 0.2593 0.0005 I4 I5 -0.6974 -0.6976 0.0002 I4 I6 -0.9956 -0.9952 0.0004 I4 I7 0.0000 0.0000 0.0000 I5 I6 1.0000 1.0000 0.0000 I5 I7 -0.8049 -0.8058 0.0009 I6 I7 -1.0000 -1.0000 0.0000 Rata-rata selisih 0.0005

Gambar 17 Waktu rata-rata eksekusi dari 30 pengguna.

Pengujian waktu eksekusi juga dilakukan apabila semua nilai kemiripan antar buku disimpan dalam tabel similarity pada

database. Waktu eksekusi rata-rata yang

dibutuhkan adalah 71.5 detik dengan total 209 pasang buku yang dicari nilai kemiripannya. Rentang nilai kemiripan dari 209 pasang buku yaitu dari nilai -1 sampai nilai +1. Data nilai kemiripan ini dapat dilihat pada Lampiran 6. Waktu eksekusi rata-rata lebih lama 10 detik bila dibandingkan dengan nilai kemiripan yang lebih besar dari 0.5 saja yang disimpan dalam database. Jumlah pasangan buku yang dihasilkan juga lebih banyak apabila semua data kemiripan antar buku disimpan dalam

database. Oleh karena itu, data yang disimpan

dalam database hanya yang memiliki nilai kemiripan lebih besar dari 0.5.

SIMPULAN DAN SARAN

Simpulan

Metode item-based collaborative filtering telah berhasil diimplementasikan menggunakan CMS OpenCart. Pengguna yang belum login dan tidak memiliki rekomendasi akan diberikan rekomendasi berdasarkan buku best seller. Pengguna yang telah login dan memiliki rekomendasi diberikan rekomendasi berdasarkan masukan masukan rate. Dari 30 pengguna yang mencoba sistem, 17 pengguna memiliki rekomendasi.

Keakuratan metode item-based collaborative filtering dihitung menggunakan

persamaan mean absolute error (MAE). Tingkat kesalahan hitung metode item-based

collaborative filtering pada sistem ini relatif

kecil yaitu 0.15. Semakin kecil nilai MAE, semakin akurat rekomendasi yang dihasilkan.

Waktu eksekusi untuk menghasilkan prediksi membutuhkan waktu yang relatif lama yaitu 61.00 detik. Waktu eksekusi yang lama disebabkan oleh pembuatan beberapa tabel. Waktu eksekusi yang lama tidak mengganggu pengguna karena proses perhitungan diletakkan pada sistem bagian

admin. Waktu eksekusi untuk menampilkan

0 0.5 1 1.5 2 5 9 13 17 21 25 29 33 wak tu e kse ku si ( s) customer_id

(23)

rekomendasi pada pengguna relatif cepat dengan rata-rata 1.60 detik.

Saran

Terdapat beberapa hal yang dapat ditambahkan atau diperbaiki untuk penelitian selanjutnya, antara lain:

1 Waktu eksekusi yang sedikit lebih tinggi pada penelitian ini sehingga harus dicari algoritme lain agar waktu eksekusi lebih rendah.

2 Membandingkan keakuratan dari metode lainnya yang telah berkembang saat ini seperti content-based filtering atau hybrid

collaborative filtering.

3 Pengujian berupa kuesioner kepada responden tentang rekomendasi yang dihasilkan sistem.

DAFTAR PUSTAKA

Balabanovic M, Shoham Y. 1997. Fab: content-based collaborative recommendation. Communication of the

ACM 40(3):66-72.

Breese J S, Heckerman D, Kadie C. 1998. Empirical analysis of predictive algorithms for collaborative filtering. Proceedings of

the 14th Conference on Uncertainty in Artificial Intelligence; Madison 24-26 juli

1998. 43-52.

Burke R. 2002. Hybrid Recommender Systems: Survey and Experiments. User

Modelling and User-Adapted Interaction

12(4):331-370.

Candillier L, Meyer F, Boullé M. 2007. Comparing State-of-the-Art Collaborative Filtering Systems. Proceedings of 5th

International Conference on Machine Learning and Data Mining in Pattern Recognition; Leipzig 18-20 juli 2007.

548-562.

Chen A Y, McLeod D. 2006. Collaborative Filtering for Information Recommendation Systems. Encyclopedia of commerce, E-government, and Mobile Commerce. Pennsylvania: Idea Group Publishing pp 118-123.

[DS] DailySocial. 2011. DS Research: How Indonesia’s Youngsters Use E-Commerce.

http://en.dailysocial.net/post/ds-research- how-indonesia%E2%80%99s-youngsters-use-e-commerce-free-download [15 Sep 2012].

Goldberg K, Roeder T, Gupta D, Perkins C. 2001. Eigenstate: a constant time collaborative filtering algorithms.

Information Retrieval Journal 4:133-151.

Green D, DiCaterino A. 1998. A Survey of System Development Process Models. [Technical Report No. CTG.MFA – 003]. New York: State University New York. Karypis G. 2001. Evaluation of Item-Based

Top-N Recommendation. 10th Conference of Information and Knowledge Management (CIKM); BuckHead 5-10 November. 247-254.

Linden G, Smith B, York J. 2003. Amazon.com recommendations. IEEE Internet Computing 7(1):76-80.

Marmanis, H., Babenko, D. 2009. Algorithms

of the Intelligent Web. Greenwich:

Manning Publ. Sound View Court 3B, CT 06830.

Masalov K. 2007. Developing Country E-commerce portal. [Honours project report]. Cape Town: University of Cape Town.

McGinty L, Smyth B . 2006. Adaptive selection : analysis of critiquing and preference based feed back in conversational recommender systems.

International Journal of Electronic Commerce 2(2):35-57.

Miller RB. 1968. Response time in man-computer conversational transactions.

Proceedings of the AFIPS Fall Joint Computer Conference; New Jersey 9-11

Desember 1968. 267-277.

O’Brien JA. 2006. Introduction to Information

System. Ed ke 12. New York: McGraw

Hill.

Saidah HT. 2012. Kajian usability website

e-commerce indonesia berdasarkan perspektif tipe pengguna browser dan

evaluator [skripsi]. Bogor: Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor.

Sarwar B, Karypis G, Konstan J A, Riedl J. 2001. Item-based collaborative filtering recommendation algorithms. Proceedings

of the 10th International World Wide Web Conference, 285-295.

(24)
(25)

Lampiran 1 Pengguna pemberi review buku Id Buku Id Pengguna Pengguna Rate

520 5 ni kadek 3.00 554 5 ni kadek 4.00 548 5 ni kadek 3.00 504 5 ni kadek 3.00 296 5 ni kadek 4.00 493 6 Zola 4.00 497 6 Zola 3.00 486 6 Zola 4.00 492 6 Zola 4.00 442 6 Zola 4.00 493 7 Catur 1.00 490 7 Catur 2.00 475 7 Catur 1.00 533 7 Catur 2.00 413 7 Catur 3.00 451 8 rossy 4.00 328 8 rossy 5.00 335 8 rossy 3.00 533 8 rossy 5.00 489 8 rossy 2.00 349 9 Nindyta 5.00 562 9 Nindyta 4.00 320 9 Nindyta 5.00 394 9 Nindyta 2.00 399 9 Nindyta 4.00 378 10 nensi 5.00 460 10 nensi 5.00 384 10 nensi 5.00 533 10 nensi 5.00 392 10 nensi 5.00 536 11 ani 4.00 435 11 ani 3.00 332 11 ani 3.00 445 11 ani 3.00 456 11 ani 3.00 503 12 rizky 5.00 502 12 rizky 5.00 487 12 rizky 5.00 497 12 rizky 4.00 491 12 rizky 5.00 399 13 Yusuf 5.00 402 13 Yusuf 5.00 395 13 Yusuf 5.00 406 13 Yusuf 5.00 400 13 Yusuf 5.00 351 14 siska 3.00 369 14 siska 5.00 563 14 siska 4.00 425 14 siska 3.00 538 14 siska 3.00 321 15 praditya 5.00 332 15 praditya 5.00 532 15 praditya 4.00 495 15 praditya 3.00

Id Buku Id Pengguna Pengguna Rate

293 15 praditya 4.00 325 16 Cipta 3.00 402 16 Cipta 3.00 508 16 Cipta 2.00 444 16 Cipta 3.00 382 16 Cipta 2.00 331 17 stevan 4.00 472 17 stevan 5.00 283 17 stevan 4.00 453 17 stevan 5.00 445 17 stevan 4.00 553 18 ardini 4.00 532 18 ardini 5.00 391 18 ardini 5.00 392 18 ardini 3.00 531 18 ardini 5.00 388 18 ardini 5.00 408 19 Darina 5.00 340 19 Darina 5.00 462 19 Darina 5.00 538 19 Darina 5.00 518 19 Darina 5.00 380 20 Linda Dwi 5.00 387 20 Linda Dwi 5.00 388 20 Linda Dwi 5.00 396 20 Linda Dwi 5.00 476 20 Linda Dwi 5.00 488 21 Gamma 5.00 495 21 Gamma 4.00 432 21 Gamma 4.00 429 21 Gamma 5.00 555 21 Gamma 5.00 497 22 Rilan 5.00 389 22 Rilan 2.00 335 22 Rilan 4.00 293 22 Rilan 5.00 460 22 Rilan 5.00 538 23 Niken 4.00 461 23 Niken 5.00 438 23 Niken 3.00 445 23 Niken 5.00 439 23 Niken 4.00 380 24 Ariel 5.00 383 24 Ariel 4.00 532 24 Ariel 4.00 293 24 Ariel 2.00 386 24 Ariel 4.00 502 25 Dina 5.00 387 25 Dina 5.00 518 25 Dina 5.00 397 25 Dina 5.00 448 25 Dina 5.00 324 26 Nur 5.00 458 26 Nur 5.00

(26)

Lanjutan

Id Buku Id Pengguna Pengguna Rate

450 26 Nur 5.00 511 26 Nur 5.00 345 26 Nur 5.00 457 27 Dyah 4.00 476 27 Dyah 4.00 464 27 Dyah 3.00 443 27 Dyah 4.00 440 27 Dyah 3.00 338 28 hana 5.00 345 28 hana 5.00 415 28 hana 5.00 477 28 hana 5.00 383 28 hana 5.00 532 28 hana 5.00 320 29 kirana 4.00 428 29 kirana 4.00 278 29 kirana 5.00 283 29 kirana 2.00 517 29 kirana 1.00 331 30 wagiran 3.00 330 30 wagiran 3.00 350 30 wagiran 2.00 342 30 wagiran 3.00 324 30 wagiran 5.00 384 31 wikanti 4.00 385 31 wikanti 4.00 388 31 wikanti 5.00 386 31 wikanti 4.00 353 31 wikanti 3.00 445 32 sulistyo 2.00 444 32 sulistyo 3.00 447 32 sulistyo 2.00 446 32 sulistyo 3.00 455 32 sulistyo 5.00 543 33 mayanda 4.00 479 33 mayanda 2.00 541 33 mayanda 3.00 502 33 mayanda 3.00 509 33 mayanda 2.00 492 34 prasiantoro 4.00 493 34 prasiantoro 3.00 292 34 prasiantoro 5.00 522 34 prasiantoro 3.00 571 34 prasiantoro 2.00

(27)

Lampiran 2 Rata-rata rate pengguna Id Pengguna Rate rata-rata

5 3.40 6 3.80 7 1.80 8 3.80 9 4.00 10 5.00 11 3.20 12 4.80 13 5.00 14 3.60 15 4.20 16 2.60 17 4.40 18 4.50 19 5.00 20 5.00 21 4.60 22 4.20 23 4.20 24 3.80 25 5.00 26 5.00 27 3.60 28 5.00 29 3.20 30 3.20 31 4.00 32 3.00 33 2.80 34 3.40

(28)

Lampiran 3 Kemiripan antar buku dengan nilai similarity lebih besar dari 0.5 Id buku 1 Id buku 2 Similarity

278 320 1.00 278 428 1.00 283 331 1.00 283 445 1.00 283 517 1.00 292 492 1.00 293 460 1.00 293 495 1.00 293 497 1.00 296 554 1.00 320 278 1.00 320 349 1.00 320 428 1.00 321 332 1.00 325 402 1.00 325 444 1.00 328 451 1.00 328 533 1.00 330 331 1.00 330 342 1.00 330 350 1.00 331 283 1.00 331 330 1.00 331 342 1.00 331 350 1.00 331 445 1.00 332 321 1.00 332 435 1.00 332 445 1.00 332 456 1.00 335 389 1.00 335 489 1.00 342 330 1.00 342 331 1.00 342 350 1.00 349 320 1.00 350 330 1.00 350 331 1.00 350 342 1.00 351 425 1.00 351 538 1.00 369 563 1.00 380 383 1.00 380 386 1.00 380 532 1.00 382 508 1.00 383 380 1.00 383 386 1.00 383 532 1.00 386 380 1.00 386 383 1.00 386 532 1.00 388 391 1.00 388 531 1.00

Id buku 1 Id buku 2 Similarity

388 532 1.00 389 335 1.00 391 388 1.00 391 531 1.00 391 532 1.00 392 553 1.00 402 325 1.00 402 444 1.00 413 490 1.00 413 533 1.00 425 351 1.00 425 538 1.00 428 278 1.00 428 320 1.00 429 488 1.00 429 555 1.00 432 495 1.00 435 332 1.00 435 445 1.00 435 456 1.00 438 439 1.00 438 538 1.00 439 438 1.00 439 538 1.00 440 464 1.00 442 486 1.00 442 492 1.00 442 493 1.00 443 457 1.00 443 476 1.00 444 325 1.00 444 402 1.00 445 283 1.00 445 331 1.00 445 332 1.00 445 435 1.00 445 447 1.00 445 456 1.00 445 461 1.00 447 445 1.00 451 328 1.00 451 533 1.00 453 472 1.00 456 332 1.00 456 435 1.00 456 445 1.00 457 443 1.00 457 476 1.00 460 293 1.00 460 497 1.00 461 445 1.00 464 440 1.00 472 453 1.00 475 493 1.00

(29)

Lanjutan

Id buku 1 Id buku 2 Similarity

476 443 1.00 476 457 1.00 479 509 1.00 486 442 1.00 486 492 1.00 486 493 1.00 487 491 1.00 487 502 1.00 487 503 1.00 488 429 1.00 488 555 1.00 489 335 1.00 490 413 1.00 490 533 1.00 491 487 1.00 491 502 1.00 491 503 1.00 475 493 1.00 476 443 1.00 476 457 1.00 479 509 1.00 486 442 1.00 486 492 1.00 486 493 1.00 487 491 1.00 487 502 1.00 487 503 1.00 488 429 1.00 488 555 1.00 489 335 1.00 490 413 1.00 490 533 1.00 491 487 1.00 491 502 1.00 491 503 1.00 492 292 1.00 492 442 1.00 492 486 1.00 493 442 1.00 493 475 1.00 493 486 1.00 493 522 1.00 493 571 1.00 495 293 1.00 495 432 1.00 495 532 1.00 497 293 1.00 497 460 1.00 502 487 1.00 502 491 1.00 502 503 1.00 502 541 1.00 502 543 1.00 503 487 1.00

Id buku 1 Id buku 2 Similarity

503 491 1.00 503 502 1.00 504 520 1.00 504 548 1.00 508 382 1.00 509 479 1.00 517 283 1.00 520 504 1.00 520 548 1.00 522 493 1.00 522 571 1.00 531 388 1.00 531 391 1.00 531 532 1.00 532 380 1.00 532 383 1.00 532 386 1.00 532 388 1.00 532 391 1.00 532 495 1.00 532 531 1.00 533 328 1.00 533 413 1.00 533 451 1.00 533 490 1.00 538 351 1.00 538 425 1.00 538 438 1.00 538 439 1.00 541 502 1.00 541 543 1.00 543 502 1.00 543 541 1.00 548 504 1.00 548 520 1.00 553 392 1.00 554 296 1.00 555 429 1.00 555 488 1.00 563 369 1.00 571 493 1.00 571 522 1.00

(30)

Lampiran 4 Prediksi rate buku Id pengguna Id buku Prediksi rate

9 320 5 29 320 4 9 428 5 29 428 4 11 331 3 17 331 4 23 331 5 29 331 2 30 331 3 32 331 2 11 445 3 15 445 5 17 445 4 23 445 5 29 445 2 30 445 3 32 445 2 11 517 3 17 517 4 23 517 5 29 517 2 30 517 3 32 517 2 6 492 4 34 492 5 6 460 3 10 460 5 12 460 4 15 460 4 21 460 4 22 460 5 24 460 2 6 495 3 10 495 5 12 495 4 15 495 4 18 495 5 21 495 4 22 495 5 24 495 3 28 495 5 6 497 3 10 497 5 12 497 4 15 497 4 21 497 4 22 497 5 24 497 2 5 554 4 9 278 5 29 278 4 9 349 5 29 349 4 11 332 3

Id pengguna Id buku Prediksi rate

15 332 5 17 332 4 23 332 5 32 332 2 13 402 5 16 402 3 32 402 3 13 444 5 16 444 3 32 444 3 7 451 2 8 451 5 10 451 5 7 533 2 8 533 5 10 533 5 17 342 4 30 342 3 17 350 4 30 350 3 11 283 3 17 283 4 23 283 5 29 283 2 30 283 3 32 283 2 11 330 3 17 330 4 23 330 5 29 330 2 30 330 3 32 330 2 11 342 3 23 342 5 29 342 2 32 342 2 11 350 3 23 350 5 29 350 2 32 350 2 11 321 3 15 321 5 17 321 4 23 321 5 32 321 2 11 435 3 15 435 5 17 435 4 23 435 5 32 435 2 11 456 3 15 456 5 17 456 4 23 456 5

Gambar

Gambar 1  Proses collaborative filtering.
Gambar 3  Item-Based Collaborative.
Gambar 5  Metode penelitian waterfall (Green  dan DiCaterino 1998).
Tabel 1  Rekomendasi pada e-commerce buku  di Indonesia beserta traffic rank  e-commerce  buku  Rekomendasi  Indonesia  traffic rank  Kutukutubuku .com   Ada  (Kategori)  5596  Bukukita.com   Ada  (Penulis,
+5

Referensi

Dokumen terkait

Berdasarkan hasil pengukuran parameter kualitas air yang dilakukan pada delapan tambak Bandeng ( Chanos chanos Forsk) di Desa Pemuteran Kecamatan Gerokgak,

Sebagai akhir dari penulisan konsep ini berdasarkan kajian teoritis, hasil penelitian serta fakta yang ada disarankan khususnya bagi pengelola madrasah agar terus berupaya

Lokasi penelitian ditentukan secara sengaja, penentuan responden dilakukan dengan metode simple random sampling jumlah responden yang ditetapkan sebagai sampel dalam

Tahun 2014 tentang Desa dan Peraturan Pemerintah Republik Peraturan Pemerintah Republik Indonesia Nomor 60 tahun 2014 tentang Dana Desa yang Indonesia Nomor 60 tahun 2014

Berdasarkan hasil penelitian yang dilakukan dapat disimpulkan bahwa pemberian mineral berpengaruh tidak nyata terhadap jumlah bakteri E.coli dan Coliform pada sapi bali

Usulan perancangan sistem yang diusulkan tidak mengalami banyak perubahan dari sistem yang berjalan, hanya merubah sistem akademik yang belum terkomputerisasi menjadi

Dengan memanjatkan puji syukur kehadirat Allah SWT, yang telah melimpahkan Rahmat dan Karunianya kepada kita semua, sehingga kami dapat menyelesaikan Peta Penyakit tahun 2014