Product Recommendation on Tampil.id

Fira Yusi Rukmana

Sosial Media


1 orang menyukai ini
Suka

Summary

Rekomendasi produk pada dasarnya ialah sebuah sistem penyaringan yang berusaha memprediksi dan menunjukkan item yang paling relevan kepada pengguna. Sistem rekomendasi sering diaplikasikan pada berbagai bidang seperti film, musik, berita, buku, artikel, dan sebagainya. Bahkan sebagian besar sistem ini digunakan pada situs e-commerce hingga saat ini. Adanya sistem rekomendasi memudahkan pengguna menemukan produk sejenis (sesuai keinginan pengguna), dan disaat bersamaan hal ini mampu meningkatkan pendapatan secara signifikan. Untuk melakukan hal tersebut hal yang dilakukan yaitu:

  1. Melakukan pre-processing data sebelum dianalisis seperti missing value, transformation data, dan lain-lain. Sehingga performa hasil analisis data baik
  2. Melakukan pembelajaran model menggunakan algoritma cosine similarity, algoritma ini berfungsi untuk membandingkan kemiripan antar dokumen. 

Data training berjumlah 2213 sekian dengan mengambil atribut judul event dan deskripsi event di tampil.id dan model akan memprediksi event serupa. Hasil rekomendasi judul event yang dihasilkan relevan dengan topik pembahasan yang serupa. 
 

Description

Sistem rekomendasi sebenarnya terbagi pada 3 jenis, yaitu penyaringan secara kolaboratif, penyaringan berbasis konten dan sistem rekomendasi hibriba. Pada sistem rekomendasi yang digunakan yaitu sistem rekomendasi berbasis konten yakni deskripsi event tampil.id. Metode ini didasarkan pada deskripsi item dan profil pilihan pengguna sebagai kata kunci untuk mendeksripsikan deskripsi item dalam hal ini yaitu judul event. Dari judul dan deskripsi event pada tampil.id nantinya akan dianalisis dan output yang dihasilkan yaitu mampu merekomendasikan judul event yang serupa (input). Hasil rekomendasi di halaman user tampil.id ketika pengguna mencari event.

 

Dataset

Dataset yang digunakan yaitu hasil dari scraping website tampil.id. Ditemukan sejumlah 2213 baris data dengan 16 kolom. Namun dalam proses analisis data, kolom yang digunakan yaitu hanya judul dan deskripsi event. Terdapat berbagai kolom lain seperti kategori event, status, harga, tipe event apakah gratis atau berbayar, pelaksanaan, jumlah yang mendaftar dan lain lain. 

https://drive.google.com/drive/folders/1vRLxkhzTsow387gZkadTfvz1Z1jYjWpl?usp=sharing

 

Pre-Processing

Walaupun kolom yang digunakan hanya judul dan deskripsi, kita bisa melakukan pembersihan data pada kolom lainnya, sehingga bisa digunakan untuk keperluan lain. Pada tahap ini hal yang dilakukan yaitu: 

  • Mengubah format tanggal dari object menjadi tipe data dd-mm-yyyy
  • Mengubah format waktu dimulai dan waktu selesai dari object menjadi hh:mm
  • Membersihkan kolom deskripsi yaitu seperti menghilangkan karakter yang dirasa tidak penting, kemudian menghapus punctuation (tanda baca dan simbol lainnya), membersihkan dari number dan menghapus kata unnescessary (kata hubung yang tidak perlu). Cleaning text ini diperlukan, agar model tidak perlu menganalisis hal yang dirasa tidak memiliki relevan terhadap sebuah label kelas, seperti simbol, kata hubung, angka dan sejenisnya. 
  • Pastikan tidak terdapat data kosong, jika ditemukan bisa dihapus saja data kosong tersebut. 

Hasil dataset yang diperoleh dari tahap ini yaitu, dataset yang dihasilkan lebih rapi, deskripsi judul event telah dibersihkan sehingga kata yang dianalisis hanya kata yang penting. 

 

Modelling

Conten-based filtering: memberikan rekomendasi berdasarkan kemiripan atribut dari item yang digemari pengguna.  

Gambar proses rekomendasi

Pendekatan yang digunakan pada metode ini yaitu mengambil informasi yang berguna dari item yang telah diekstraksi. Berdasarkan cara tersebut, pengguna berusaha membuat prediksi berdasarkan analisis item atau metadata yang saling terkait. Kualitas data yang digunakan untuk melakukan prediksi adalah faktor penentu dalam hualitas hasil yang dihasilkan oleh sistem rekomendasi. Metode rekomendasi berbasis konten biasanya didasarkan pada gagasan bahwa sistem harus merekomendasikan item baru tergantung pada kesamaan item atau ketidaksamaan mereka dengan preferensi pribadi pengguna. Konsep kesamaan adalah salah satu bagian mendasar dari algortima yang diperlukan untuk mengatur dan merekomendasikan produk. 

Dalam hal ini, algortima yang digunakan yaitu cosine similarity. Untuk detailnya bisa cek di link yang telah dilampirkan di sumber referensi. 

TF-IDF adalah suatu metode adalah suatu metode algortima yang berguna untuk menghitung bobot setiap kata yang umum digunakan. Secara sederhana, metode ini digunakan untuk mengetahui berapa sering suatu kata muncul didalam dokumen tersebut. Pada tahap ini, implementasi dilakukan menggunakan bahasa pemograman python. Library yang digunakan yaitu sklearn TfidVectorrizer

 

Product Recommendation

Dari hasil modelling, berikut hasil judul event yang diperoleh beserta akurasi. Ketika sistem meng-input kan judul event yaitu webinar deep learning 1, sistem rekomendasi menunjukkan hasil judul event sejenis seperti berikut:

Gambar hasil sistem rekomendasi

Walaupun akurasi yang diperoleh 30%-an, namun dilihat dari judul event yang direkomendasikan ternyata cukup baik dan serupa, event tersebut sama sama membahas perihal deep learning

 

Source Code

https://colab.research.google.com/drive/1lPZprQKpQEtxeNrYldE1KBo44jYXRspf?usp=sharing

 

Sumber Referensi

https://mti.binus.ac.id/2020/11/17/sistem-rekomendasi-content-based/

https://towardsdatascience.com/what-are-product-recommendation-engines-and-the-various-versions-of-them-9dcab4ee26d5

https://payahtidur.com/project/cosine-similarity

Informasi Course Terkait
  Kategori: Data Science / Big Data
  Course: Python Data Science untuk Pemula