## Sistem Rekomendasi Wisata Kuliner Kota Palembang Menggunakan Metode Collaborative Filtering
Riyan Alfa Rizkie, Muhammad Fachrurrozi Fakultas Ilmu Komputer Universitas Sriwijaya Indralaya, Indonesia
Email : obetsobets@gmail.com
Abstrak—  Wisata  kuliner  memiliki  daya  tarik  tersendiri bagi para wisatawan yang mengunjungi suatu daerah, namun para wisatawan yang datang belum tentu  mengetahui  kuliner yang  terdapat  pada  daerah  tersebut,  sehingga  dibutuhkan sebuah  sistem  yang  dapat  memberikan  rekomendasi  kepada para wisatawan. Sistem rekomendasi merupakan sebuah sistem yang dapat memberikan saran kepada penggunanya mengenai suatu barang, saran yang diberikan digunakan dalam berbagai macam  proses  pengambilan  keputusan.  Metode  yang digunakan  adalah  Collaboratif  Filtering.  Permasalahannya bagaimana menerapkan metode Collaborative Filtering untuk merekomendasikan  makanan  dengan  banyak  faktor  yang mempengaruhi  sehingga  menghasilkan  sebuah  rekomendasi yang relevan. Proses rekomendasi dengan cara mengelompokkan  pengguna  kedalam  sebuah  kelompok tertentu  melalui  proses  clustering  dengan  metode  K-Mean, kemudian perangkat lunak melakukan perhitungan kesamaan antara  pengguna  dan  anggota  kelompoknya.  Perhitungan kesamaan  antara  pengguna  dan  anggota  kelompoknya menggunakan  persamaan  pearson  correlation  coefficient. Penentuan  hasil  rekomendasi  yang  diberikan  menggunakan sistem  perankingan  dengan  nilai  rekomendasi  terbesar.  Data yang digunakan sebanyak 18 data makanan, 100 data training dan  10  data  testing.  Hasil  pengujian  persentasi  kerelevanan mencapai 80%.
Kata  Kunci—  Sistem  Rekomendasi,  Collaborative  Filtering, K-Means, Pearson Correlation Coefficient.

## I. PE NDAHULUAN
Collaborative  filtering merupakan  sub-bagian  dari machine  learning yang  dipakai  untuk  membuat  algoritma yang  dapat  memprediksi  keinginan  pelanggan  berdasarkan kegiatan  yang  dilakukan  sekelompok  pelanggan  yaitu pembelian atau pemberian rating terhadap suatu barang atau item [1]. Collaborative  filtering akan  bekerja  dengan mengumpulkan tingkah laku user , perbedaan dan persamaan user dalam  suatu  domain  tertentu  dan  memberikan  hasil kepada user berupa rating dari item pada domain tersebut[2]
Dalam  beberapa  tahun  ini  penelitian  terkait  yang menggunakan  metode collaborative  filtering sudah  banyak dilakukan, penelitian yang dilakukan oleh  [3] menggunakan user  similarity combination  dalam  meningkatkan  efisiensi metode collaborative filtering untuk data user-rating .
Penelitian  lain  mengenai  metode collaborative  filtering yang  dilakukan  oleh  [4]  dimana  pada  penelitian  ini  metode collborative  filtering diimplementasikan  bersama  dengan k- nearest neighbor graph untuk meningkatkan kecepatan dalam
menghasilkan rekomendasi dan  mengurangi  waktu  eksekusi sistem.
Sistem  rekomendasi  sudah  banyak  diterapkan  pada berbagai  bidang,  contohnya  pada  bidang  pariwisata  yang diteliti  oleh  dimana  sistem  rekomendasi  diimplementasikan dalam memberikan saran atau rekomendasi mengenai tempat wisata  berdasarkan  pencocokan  visual  dan  inputan  yang diberikan  oleh user .  Pada  penelitian  ini  rekomendasi  yang akan  diberikan  berupa  berita  yang  didapatkan  berdasarkan pola atau tingkah laku user yang memakai sistem tersebut.
Berdasarkan  penelitian  sebelumnya  bahwa  metode collaborative filtering efektif dalam memberikan rekomendasi  tempat  wisata  dan  pemilihan  berita,  peneliti mencoba menggunakan metode collaborative filtering untuk kasus berupa
rekomendasi makanan. Dalam merekomendasikan makanan banyak faktor yang mempengaruhi, yaitu selera masing-masing individu, perilaku individu dan budaya yang berbeda-beda. Dengan banyaknya faktor yang mempengaruhi tersebut, peneliti ingin mengetahui apakah metode collaborative filtering bisa digunakan dalam merekomendasikan makanan.
Penelitin ini bertujuan untuk mengetahui tingkat relevansi hasil rekomendasi dengan menggunakan metode collaborative  filtering pada  Sistem  Rekomendasi  Wisata Kuliner Kota  Palembang  dan  mencari  algoritma  yang  dapat merekomendasikan makanan.

## II. T INJAUAN P USTAKA
A. Collaborative Filtering Collaborative  filtering merupakan  sub-bagian  dari machine  learning  yang  dipakai  untuk  membuat  algoritma yang  dapat  memprediksi  keinginan  pelanggan  berdasarkan kegiatan  yang  dilakukan  sekelompok  pelanggan  yaitu pembelian atau pemberian rating terhadap suatu barang atau item [1]
Collaborative  filtering merupakan  pendekatan  sistem rekomendasi  yang  telah  banyak  diterapkan  pada  berbagai aplikasi  [2] Collaborative  filtering akan  mengasumsikan bahwa  user  yang  memiliki  kemiripan  akan  memiliki kemiripan  pilihan,  sehingga collaboratif  filtering bekerja dengan  mengumpulkan  tingkah  laku  user,  perbedaan  dan persamaan user dalam suatu domain tertentu dan memberikan hasil kepada user berupa rating dari item pada domain tersebut [2]
Collaborative  filtering akan  mencoba  menangkap interaksi antara user dan item dan menghasilkan nilai rating yang  berbeda.  Namun,  banyak  nilai  –  nilai  yang  diamati terlepas  dari  interaksi  antara user dan item [5]  Metode collaborative  filtering dibedakan  menjadi  dua,  yaitu  user  – user  collaborative  filtering  atau  user-based  collaborative filtering  dan  item  –  item  collaborative  filtering  atau  item- based collaborative filtering [5]
B. K-Means
K-mean clustering adalah metode pembagi yang berfungsi membagi data set dari N item kedalam k disjoint dari subset Sj  yang  mengandung  Nj  item  sehingga  mereka  akan  dekat menurut  ukuran  jarak  tertentu.  Masing-masing cluster ditentukan oleh Nj anggota dan centeroid λj. Centeroid dari masing-masing cluster adalah titik minimum dari jumlah jarak semua item [5]
Algoritma  k-means  bekerja  dengan  memilih  k  centeroid secara acak, jumlah centeroid akan mengindikasikan jumlah cluster .  Selanjutnya  semua  item  dari  subset  Sj  akan dimasukkan  kedalam cluster yang  memiliki  jarak  centeroid terdekat.  Centeroid  dari  masing-masing cluster akan  di- update berdasarkan item yang terdapat pada cluster tersebut. Operasi ini akan terus dilakukan sampai nilai centeriod tidak ada mengalami perubahan [6]
Menurut  [5],  algoritma  k-means  sangat  simpel  dan efisien, tetapi juga memiliki beberapa kekurangan, antara lain:
1. Mengasumsikan  pengetahuan  sebelumnya  untuk memilih k yang sesuai.
2. Cluster akhir  sangat  sensitif  dengan  pemilihan centeroid awal.
3. Dapat memproduksi cluster kosong.
Menurut  [6]  k-means  memiliki  beberapa  keuntungan dibandingankan dengan metode clustering lain, antara lain:
1. Sangat sederhana dan kuat.
2. Memiliki efisiensi yang tinggi.
3. Dapat digunakan untuk berbagai macam jenis data.

## C. Recall dan Precision
Perhitungan recall dan precision berdasarkan  kepada rekomendasi yang diberikan oleh perangkat lunak baik yang ditampilkan  maupun  yang  tidak  ditampilkan  sesuai  dengan jumlah  data  makan.  Rekomendasi  yang  diberikan  oleh perangkat  lunak  diseleksi  kembali  oleh  pengguna  untuk memastikan apakah rekomendasi yang diberikan sudah sesuai dengan keinginan pengguna.
Rumus  perhitungan recall adalah  jumlah  rekomandasi yang ditampilkan dan diterima oleh pengguna dibagi dengan jumlah rekomendasi yang ditampilkan dan tidak ditampilkan. Sedangkan rumus precision adalah jumlah rekomendasi yang ditampilkan  dan  diterima  oleh  pengguna  dibagi  dengan jumlah  rekomendasi  yang  ditampilkan.  Seperti  ditunjukkan pada Tabel 2 dibawah ini
Tabel 1.  Rumus Recall dan Precision Rekomendasi Terima Tidak diterima Total Tampil a b c a = b + c Tidak tampil d e f
d = e + f
Berdasarkan  penjabaran  dan  Tabel  diatas,  dapat disimpulkan bahwa recall = 𝑏 𝑎+𝑑 , sedangkan precision = 𝑏 𝑎

## III. A NALISIS D AN P ERANCANGAN

## A. Analisis Proses Recommendation
Proses  recomendation  merupakan  proses  terakhir  dalam sistem rekomendasi. Proses ini berfungsi untuk menampilkan rekomendasi makan yang telah didapat dari hasil perhitungan persamaan  antar user .  Rekomendasi  makanan  ditampilkan berdasarkan nilai rekomendasi terbesar.

## B. Analisis Kebutuhan Perangkat Lunak
Analisa  kebutuhan  perangkat  lunak  pada  penelitian  ini terdiri dari tiga poin yaitu deskripsi umum perangkat lunak, spsifikasi kebutuhan perangkat lunak, dan model use case.

## a) Deskripsi Umum Perangkat lunak
Perangkat  lunak  yang  dikembangkan  adalah  sebuah perangkat  lunak  yang  dapat  memberikan  rekomendasi makanan  dan  tempat  makan.  Rekomendasi  yang  diberikan berdasarkan data yang diperoleh dari kuisioner maupun hasil obesrvasi  peneliti.  Perangkat  lunak  tersebut  memiliki  fitur sebagai berikut:
 Dapat  menerima  masukan  berupa  rating  makanan yang berikan oleh user.
 Dapat  menghasilkan  keluaran  berupa  rekomendasi makanan yang diururtkan berdasarkan rating tertinggi
 Dapat mencari makanan berdasarkan nama makanan yang dimasukkan.

## b) Spesifikasi Kebutuhan Perangkat Lunak
Perangkat lunak yang dikembangkan pada penelitian ini diharapkan  dapat  memenuhi  kebutuhan  fungsional  pada Tabel 2 dan kebutuhan non-fungsional pada Tabel 3.
Tabel 2. Kebutuhan Fungsional Perangkat Lunak
No Kebutuhan 1 Perangkat lunak dapat mengizinkan user untuk login
2 Perangkat lunak dapat mengizinkan user untuk login
3 Perangkat  lunak  dapat  memberikan  rekomendasi makanan
4
Perangkat  lunak  dapat  mengizinkan user untuk
memberikan rating makanan
5 Perangkat  lunak  dapat  mengizinkan user untuk mencari makanan berdasarkan nama makanan
6 Perangkat  lunak  dapat  melakukan  pengelompokkan user menggunakan metode K-Means Clustering
7 Perangkat  lunak  dapat  menggunakan  hasil K-Means Clustering untuk  perhitungan rating Metode Collaborative Filtering

## Tabel 3. Kebutuhan Non-Fungsional Perangkat Lunak
No Kebutuhan
1 Perangkat lunak memiliki tampilan antarmuka yang sederhana dan mudah digunakan oleh pengguna

## IV. I MPLEMENTASI DAN P ENGUJIAN

## A. Implementasi Antar Muka
Gambar dibawah ini merupakan implementasi antarmuka berdasarkan perancangan pada bab sebelumnya.

## Gambar 1. Antarmuka Pengguna

## B. Hasil Pengujian Perangkat Lunak
Berdasarkan  hasil  pengujian black  box pada  tahap sebelumnya,  dapat  disimpulkan  bahwa  performa  sistem rekomendasi wisata kuliner kota Palembang telah sesuai dan bekerja  dengan  baik.  Hal  ini  dapat  dilihat  dari  kesimpulan skenario  kasus  uji  yang  menghasilkan  hasil  “diterima”  atau sesuai dengan hasil yang diharapkan untuk seluruh kasus uji. Selanjutnya,  penjelasan  dengan  menjabarkan  hasil,  analisis dan eksperimen metode terhadap data set.
Gambar 2. Hasil pengujian

## V. K ESIMPULAN
Pada penelitian ini dihasilkan sebuah Sistem Rekomendasi Wisata  Kuliner  Kota  Palembang  Menggunakan  Metode Collaborative Filtering . Hasil pengujian recall dan precision terhadap sistem  masing-masing  sebesar  15,556% dan 70%. Nilai  relevansi  sebesar  80%  berdasarkan  penilaian  yang diberikan  pengguna.  Hasil  pengujian  menggunakan Mean Absolute Error pada metode Collaborative Filtering adalah 0,723948146.

## D AFTAR P USTAKA
[1] N.  Ampazis,  “Collaborative  filtering  via  concept  decomposition  on the netflix dataset,” in ECAI , 2008, vol. 8, pp. 26–30.
[2] Y. Li, J. Hu, C. Zhai, and Y. Chen, “Improving one-class collaborative filtering by incorporating rich user information,” in Proceedings of the 19th  ACM  international  conference  on  Information  and  knowledge management , 2010, pp. 959–968.
[3] K. Zhao and P. Lu, “Improved collaborative filtering approach based on user similarity combination,” in 2014 International Conference on Management  Science  &  Engineering  21th  Annual  Conference Proceedings , 2014, pp. 238–243.
[4] Y. Park, S. Park, S. Lee, and W. Jung, “Fast collaborative filtering with a k-nearest neighbor graph,” in 2014 International Conference on Big Data and Smart Computing (BIGCOMP) , 2014, pp. 92–95.
[5] N. Tintarev and J. Masthoff, “Designing and evaluating explanations for  recommender  systems,”  in Recommender  systems  handbook , Springer, 2011, pp. 479–510.
[6] X. Wu and J. Zhou, “A novel possibilistic fuzzy c-means clustering,” Acta Electron. Sin. , vol. 10, pp. 1996–2000, 2008.