ITEM-BASED COLLABORATIVE FILTERING METHODE Smart Recommender System (e-Commerce)
Mencari Similarity Produk dengan Algoritma Adjusted Cosine & Memprediksi Rekomendasi dengan Algoritma Weighted Sum Metode Sistem Rekomendasi dengan menggunakan Metode Item-Based Collaborative Filtering
ryanfikri
[email protected]
1
Item-Based Collaborative Filtering Methode Nilai ditentukan berdasarkan kemiripan antar setiap barang, yang sudah dirating oleh user.
Smart Recommender System (e-Commerce)
[email protected]
2
Proses menentukan rekomendasi : 1. Mencari rata2 rating user terhadap keseluruhan barang (item) yang telah diberi rating. 2. Mencari rata2 rating per masing2 barang (item). 3. Menghitung nilai similarity antar objek (nilai kemiripan antara satu item dengan item2 lainnya). Algoritma yang digunakan adjusted cosine. 4. Menentukan batas minimum nilai kemiripan produk. Memfilter produk2 yang memiliki kemiripan . 5. Menghitung nilai prediksi dengan menggunakan algoritma weighted sum Tahapan ini dilakukan untuk memperkirakan rating yang akan diberikan oleh seorang user, pada suatu item yang belum pernah diberi rating oleh user itu. 6. Menentukan nilai minimum prediksi yang akan ditampilkan. Memfilter nilai prediksi per user berdasarkan nilai minimum yang ditentukan. 7. Menampilkan hasil rekomendasi. Dimana dari penggunaan 2 algoritma tersebut sistem bisa menampilkan 2 jenis rekomendasi, yaitu : a. Rekomendasi yang bersifat umum Rekomendasi umum, memanfaatkan nilai kemiripan yang sudah dihitung sebelumnya. Setiap user, siapapun itu, akan mendapatkan rekomendasi yang sama. b. Rekomendasi yang bersifat khusus Setiap user akan mendapatkan rekomendasi yang berbeda. Pembuatan rekomendasi memanfaatkan nilai prediksi yang telah dihitung dengan menggunakan rumus weighted sum. Persamaan Adjusted Cosine :
Keterangan :
Smart Recommender System (e-Commerce)
[email protected]
3
S (i,j) = Nilai kemiripan antara item i dengan item j u ϵ U = Himpunan user yang me-rating baik item i maupun item j Ru,i
= Rating user u pada item i
Ri
= Nilai rating rata-rata item i
Ru,j
= Rating user u pada item j
Rj
= Nilai rating rata-rata item j
Ru
= Nilai rating rata-rata user u
Hasil dari algoritma ini [ -1 s/d 1]. Jika
nilai similarity antara
kedua item
mendekati +1, maka kedua item akan semakin mirip satu sama lain. Sebaliknya, jika mendekati -1, kedua item itu akan semakin bertolak belakang. Jika 0, maka tidak mirip sama sekali.
Persamaan Weighted Sum:
Keterangan : P(a,j) = Prediksi rating item j oleh user a iϵI
= Himpunan item yang mirip dengan item j
Ra,i
= Rating user a pada item i
Si,j
= Nilai similarity antara item i dan item j
(
(
) (
) (
Smart Recommender System (e-Commerce)
[email protected]
)
)
4
Contoh penerapan algoritma adjusted cosine dan weighted sum pada tabel rating didalam database.
idRating
idMember
idBarang
nilaiRating
1
1
a
3
2
2
b
5
3
3
c
3
4
4
a
1
5
5
c
2
6
6
a
4
7
7
b
2
8
8
c
4
9
9
d
2
10
10
b
5
11
11
c
4
12
12
d
2
Logika dari tabel diatas adalah :
idMember / idBarang
a
b
c
d
rata2Member
1
3
5
3
-
3.67
2
1
-
2
-
1.5
3
4
2
4
2
3
4
-
5
4
2
3.67
rata2Barang
2.67
4
3.25
2
Smart Recommender System (e-Commerce)
[email protected]
5
Cara dan bentuk yang sebenarnya didalam database tersebut adalah sebagai berikut ; 1. Mencari rata2 rating member terhadap keseluruhan barang yang diberi rating. Setelah dimasukan query untuk mencari rata-rata rating member maka hasil dapat dilihat seperti tabel berikut : idMember
rata2RatingMember
1
3.6667
2
1.5000
3
3.000
4
3.6667
2. Mencari rata-rata rating keseluruhan barang. Setelah dimasukan query untuk mencari rata-rata rating barang, maka hasil dapat dilihat seperti tabel berikut : idBarang
rata2RatingBarang
a
2.6667
b
4.0000
c
3.2500
d
2.0000
3. Menghitung nilai similarity (kemiripan) antar barang dengan menggunakan algoritma adjusted cosine. Hasil yang didapat setelah rumus algoritma dituangkan ke dalam bentuk query adalah sebagai berikut.
Smart Recommender System (e-Commerce)
[email protected]
6
(
) ( )
√( (
)
(
)
(
)
(
)
(
)
)(
√(
)
( )
) (
)
(
)(
)
) √( (
(
)(
)
(
)
( )
( ) √(
)
idBarang 1
idBarang 2
nilaiKemiripan
a
b
-0.943002
a
c
0.704926
a
d
-1
b
c
-0.542645
b
d
-0.377294
c
d
-0.759231
√ √
(
) )
(
)
√ √
Hasil nilai kemiripan = [ -1 s/d +1 ]
4. Menentukan
nilai
minimum
ketika
suatu
barang
dikatakan
mirip
dan
direkomendasikan. Misalnya nilai kemiripan >= 0.7 Jadi nilai yang kecil dari nilai kemiripan tidak akan direkomendasikan.
5. Menghitung nilai prediksi dengan menggunakan algoritma weighted sum., dimana nilai yang diolah hanya lebih besar atau sama dengan nilai kemiripan yaitu 0.7. Smart Recommender System (e-Commerce)
[email protected]
7
Bentuk hasil nilai prediksi setelah dituangkan ke dalam query adalah sebagai berikut :
(
(
) (
)
) (
)
idMember
idBarang
nilaiPrediksi
1
d
-
2
b
-
3
d
-
4
a
4
6. Menentukan nilai prediksi yang akan direkomendasikan. Misalnya nilai prediksi >= 3. Maka yang direkomendasikan adalah yang memenuhi nilai_prediksi >= 3.
Smart Recommender System (e-Commerce)
[email protected]
8
7. Maka nilai rekomendasi yang ditampilkan adalah : a. Rekomendasi umum idBarang 1
idBarang 2
nilaiKemiripan
a
c
0.704926
Artinya : ketika pengunjung atau member melihat barang b, maka yang direkomendasikan adalah barang dengan id a, begitu juga sebalikya.
b. Rekomendasi khusus (per member) idMember
idBarang
nilaiprediksi
4
a
4
Artinya : user dengan idMember 4 direkomendasikan barang dengan idBarang a.
KESIMPULAN!
Dari hasil pencarian similarity . Filter nilai similarity >=0.7.
Cek data – data belanja user, bandingkan dengan data similarity, apabila terdapat barang yang dibeli oleh user yang memiliki nilai similarity dengan barang lain, tetapi barang lain tersebut belum pernah dibeli maka baru dilakukan perhitungan nilai prediksi untuk si user tersebut.
Apabila nilai prediksi melebihi 3 maka hasilnya akan di ditampilkan di halaman beranda si user.
Smart Recommender System (e-Commerce)
[email protected]