BAB 4 ANALISIS DAN IMPLEMENTASI
4.2. Tahap Desain Workshop
4.2.1. Perancangan Proses
Sistem rekomendasi yang dibangun menggunakan metode collaborative filtering dengan item-based. Metode ini memberikan hasil rekomendasi berdasarkan kemiripan antara item yang diperoleh berdasarkan rating yang diberikan user terhadap item yang ada.
Skala pemberian rating menggunakan skala likert dengan rentang nilai 1 sampai dengan 5. Pemberian rating dengan nilai 1 berarti pengguna sangat tidak suka dengan rumah makan tersebut, sedangkan nilai 5 artinya pengguna sangat suka dengan rumah makan tersebut. Pemberian rating dilakukan secara sadar oleh pengguna yang diinput kedalam sistem. Pemberian rating juga berdasarkan pertimbangan dari parameter harga, rasa, tempat dan service yang akan dinilai oleh pengguna.
Sebagai contoh proses perhitungan, diberikan tabel skenario user dan rating rumah makan di kawasan UIN Syarif Hidayatullah Jakarta. Tabel skenario terdiri dari 4 user, yaitu Zakira, Isma, Isna , dan Annisa. 5 rumah makan, yaitu Oishi, MCD, Boedjangan, Hosen, dan Basecamp. Dari tabel skenario tersebut, dicari nilai
similarity antara rumah makan (item). Nilai similarity antara rumah makan akan digunakan untuk proses rekomendasi.
Pada tabel 4.1 dapat diketahui, terdapat 4 pengguna yang telah memberikan rating terhadap rumah makan yang telah dikunjungi. Pengguna Zakira telah merating Oishi dengan nilai 3, MCD dengan nilai 2, Hosen dengan nilai 4 dan Basecamp dengan nilai 5. Pengguna Isma telah merating Oishi dengan nilai 3, MCD dengan nilai 3, Hosen dengan nilai 2. Pengguna Isna telah merating Oishi dengan nilai 3, MCD dengan nilai 4, Boedjangan dengan nilai 4, Hosen dengan nilai 4 dan Basecamp dengan nilai 2. Pengguna Annisa merating Oishi dengan nilai 3 dan MCD dengan nilai 4. Dari tabel 4.1 dapat dilihat ada beberapa rumah makan yang masih belum dirating oleh pengguna. Seperti pengguna Zakira belum memberikan rating pada Boedjangan. Isma belum memberikan rating pada Beodjangan dan Basecamp. Terakhir Annisa belum memberikan rating pada Boedjangan, Hosen dan Basecamp.
Tabel 4. 1 Skenario Rating Pengguna
Nama Oishi MCD Beodjangan Hosen Basecamp
Zakira 3 2 - 4 5
Isma 3 3 - 2 -
Isna 3 4 4 4 2
Annisa 3 4 - - -
Pada sistem rekomendasi rumah makan ini, sistem akan memberikan rekomendasi rumah makan kepada pengguna. Rumah makan yang akan direkomendasikan adalah rumah makan yang belum pernah dirating oleh pengguna.
Terdapat 2 proses untuk menentukan hasil rekomendasi, yaitu proses similarity dan prediksi.
Gambar 4. 1 Alur Proses Sistem
Pada gambar 4.1 terdapat alur proses sistem, dari awal pengguna memberikan rating sampai dengan bagaimana rekomendasi berhasil dihasilkan. Proses sistem rekomendasi ini dapat dibagi menjadi 2 tahapan yang selanjutnya akan dibahas satu persatu.
1. Proses Similarity
Similarity adalah proses menghitung nilai kemiripan antara item. Dasar perhitungan similarity pada item-based adalah mencari user mana saja yang memberikan rating pada 2 item yang akan dicari similarity nya. Rating yang digunakan bersifat eksplisit, maksudnya user memberikan rating secara sadar pada sistem. Pada sistem rekomendasi rumah makan, similarity menghitung nilai kemiripan antara satu rumah makan dengan rumah makan yang lain, biasanya disebut dengan nilai smilarity antar objek. Adapun alur proses similarity dapat dilihat pada gambar 4.2
Gambar 4. 2 Alur Proses Similarity
Sebelum menghitung nilai similarity, langkah pertama yang dilakukan adalah, menghitung nilai rata-rata rating item yang telah diberikan user. Rata-rata rating user dapat dilihat pada tabel 4.2 Setelah menemukan rata-rata rating tiap user, nilai similaritiy dapat mulai dihitung.
Tabel 4. 2 Tabel Skenario Rata-rata Rating
Nama Oishi MCD Beodjangan Hosen Basecamp Rata- rata Rating
Zakira 3 2 - 4 5 3,5
Isma 3 3 - 2 - 2,67
Isna 3 4 4 4 2 3,4
Annisa 3 4 - - - 3,5
Setelah nilai rata-rata rating pengguna didapatkan, nilai similarity dapat dihitung dengan persamaan adjusted cosine similarity (persamaan 2.2). Dalam contoh simulasi perhitungan, peneliti mencoba menemukan nilai similarity antara Oishi dengan MCD.
𝑆𝑖𝑚 (𝑖, 𝑗) = ∑𝑢 ∈𝑈 (𝑅𝑢,𝑖−𝑅 ̅𝑢)(𝑅𝑢,𝑗−𝑅 ̅𝑢)
√∑ 𝑢 ∈𝑈 (𝑅𝑢,𝑖−𝑅 ̅𝑢)2 √∑ 𝑢 ∈𝑈 (𝑅𝑢,𝑗−𝑅 ̅𝑢)2 Sim (O,M) =
(3−3,5)(2−3,5) + (3−2,67) (3−2,67)+(3−3,4)(4−3,4)+(3−3,5)(4−3,5)
√(3−3,5)2+(3−2,67)2+(3−3,4)2+(3−3,5)2 √(2−3,5)2+(3−2,67)2+(4−3,4)2+(4−3,5)2
= (−0,5)(−1,5) + (0,33) (0,33)+(−0,4)(0,6)+(−0.5)(0,5)
√(−0,5)2+(0,33)2+(−0,4)2+(−0,5)2 √(−1,5)2+(0,33)2+(0,6)2+(0,5)2
= 0,75 + 0,1089+(−0,24)+(−0,25)
√(0,25)+(0,1089)+(0,16)+(0,25) √(2,25)+(0,1089)+(0,36)+(0,25)
= 0,3689
√0,7689 √2,9689
= 0,3689
(0,87)(1,72) = 0,3689
1,4964 = 0,24
Pada tabel 4.3 terdapat nilai similarity antara tiap tiap item. Rentang nilai similarity adjusted cosine similarity adalah +1 sampai dengan -1. Artinya jika nilai similarity mendekati angka 1 maka ke dua item tersebut dianggap saling berkolerasi. Jika nilai similarity mendekati -1 maka dianggap tidak berkolerasi
Tabel 4. 3 Tabel Similarity Antara Item
Item A Item B Similarity
Oishi MCD 0,24
Oishi Boedjangan -1
Oishi Hosen -0,968
Oishi Basecamp -0,145
MCD Boedjangan 1
MCD Hosen -0,365
MCD Basecamp -0,93
Boedjangan Hosen 1
Boedjangan Basecamp -1
Hosen Basecamp -0,056
2. Proses Rating Prediction
Rating prediction adalah proses menentukan prediksi item yang akan direkomendasikan kepada user. Adapun alur proses rating prediction dapat digambarkan sebagai berikut.
Gambar 4. 3 Alur Proses Rating Prediction
Setelah mendapatkan nilai similarity antara item, selanjutnya ditentukan prediksi item yang akan direkomendasikan. Nilai prediksi dihitung dengan menggunakan algoritma weighted sum (persaman 2.3). Pada tahap prediksi, ada beberapa syarat yang harus dipenuhi untuk dapat menentukan prediksi rating yang diberikan kepada user, yaitu:
1. Yang menjadi neighbor adalah rumah makan yang telah dirating oleh user.
2. Nilai similarity antara item harus besar dari 0.
Pada skenario rating tabel 4.1, terdapat 3 pengguna yang masih memiliki item yang belum dirating sehingga akan diberikan rekomendasi. Yaitu Zakira belum memberikan rating pada Boedjangan , Isma belum memberikan rating pada Boedjangan, Basecamp dan Annisa belum memberikan rating pada Beodjangan, Hosen, Basecamp. Dari ke-3 pengguna diatas, Bakso Beodjangan memenuhi ke-2 syarat yang harus dipenuhi untuk pengguna Zakira, Isma dan Annisa. Berikut perhitungan prediksi untuk ke-3 pengguna
Prediksi Boedjangan untuk pengguna Zakira
P(Zakira, Boedjangan) = ∑ 𝑖∈𝑗 (𝑅𝑢,𝑖 ∗𝑆𝑖,𝑗)
∑ 𝑖∈𝑗 |𝑆𝑖,𝑗|
= (1∗2)+(1∗4) 1+1
= 3 Prediksi Boedjangan untuk pengguna Isma
P(Isma, Boedjangan) = ∑ 𝑖∈𝑗 (𝑅𝑢,𝑖 ∗𝑆𝑖,𝑗)
∑ 𝑖∈𝑗 |𝑆𝑖,𝑗|
= (1∗3)+(1∗2) 1+1
= 5
2
= 2,5 Prediksi Boedjangan untuk pengguna Annisa
P(Annisa, Boedjangan) = ∑ 𝑖∈𝑗 (𝑅𝑢,𝑖 ∗𝑆𝑖,𝑗)
∑ 𝑖∈𝑗 |𝑆𝑖,𝑗|
= (1∗4)
1
= 4
Tabel 4. 4 Tabel Prediksi Rating
User Rumah Makan Rating
Zakira Boedjangan 3
Isma Boedjangan 2,5
Annisa Boedjangan 4
Setelah dilakukan perhitungan prediksi dengan persamaan weighted sum, dihasilkan 3 rekomendasi untuk 3 user. Rekomendasi terdapat pada tabel 4.4 dengan hasil user Zakira direkomendasikan Bakso Beodjangan dengan prediksi rating 3. Isma direkomendasikan Boedjangan dengan prediksi rating 2,5. Annisa direkomendasikan Boedjangan dengan prediksi rating 4.