You are on page 1of 8

SISTEM REKOMENDASI KOMUNITAS PEMUDA DI KOTA

SEMARANG BERBASIS ITEM BASED COLLABORATIVE


FILTERING DENGAN METODE ADJUSTED COSINE
SIMILARITY

Rizki Dwi Kelimutu, Fakultas Ilmu Komputer, Universitas Dian Nuswantoro

Abstract - Youth is national asset that will continue our development relay. But in reality, many
of them spent their youth in vain to lapse drugs, or promiscuity. In the other side, youth
community is one platform where youth can actively participate with the others to solve social
problem. However, many of them still face difficulties to find contribution opportunity also
clueless about which youth community that match them the most. To overcome that problem,
we need a youth community recommendation system as an reference when they want to
contribute through youth community which accordance to their preference. In this research,
researcher will make a youth community recommendation system in Semarang so it can be
used as reference for the youth in Semarang who want to contribute through youth community.
Recommendation algorithm that will be used here is item-based collaborative filtering. These
algorithm will compute recommendation based on community similarity computing using
adjusted cosine similarity method. The similarity value will computed from the value of user
rating. From the recommendation test using 25 community data and 5 users, we can conclude
that collaborative filtering algorithm can provide youth community recommendation which
differ on each user in accordance to each rating given. High rated community does not
guarantee to be a recommendation if the community doesn't have any similarity with other
community.

Keywords - Recommendation system, youth community, collaborative filtering, adjusted cosine


similarity.

I. PENDAHULUAN yang akhirnya terjebak lingkungan pergaulan


Ketika mendengar istilah pemuda, orang yang kurang sehat sehingga berakibat buruk
akan dengan mudah membayangkan dan pada masa depan mereka.
mendefinisikannya. Ada yang beranggapan Banyak pemuda yang memilih
bahwa pemuda adalah komunitas penduduk menghabiskan waktu untuk kegiatan yang
yang berusia antara rentang 17 sampai 40 kurang bermanfaat sehingga masa mudanya
tahun. Namun ada juga yang beranggapan malah habis dengan sia-sia. Padahal, mereka
bahwa pemuda adalah komunitas penduduk bisa saja ikut berperan untuk memperbaiki
yang mempunyai pikiran-pikiran muda seperti berbagai lini kehidupan bangsa sesuai dengan
kreatif, inovatif dan desduktrif. bidang yang mereka sukai seperti seni,
Terlepas dari berbagai pengertian lingkungan maupun pendidikan. Akan sangat
tersebut, pemuda pada masa sekarang ini disayangkan, jika pemuda yang jumlahnya
menghadapi banyak tantangan selagi mereka menurut data yang disajikan Kementrian
beranjak dewasa. Mereka mulai berhadapan Pemuda dan Olahraga di tahun 2009
dengan berbagai lingkungan dan proses yang mencapai 62, 6 juta jiwa atau 27,4% dari total
akan membentuk kepribadiannya kelak di penduduk Indonesia malah melewatkan masa
masa depan. Sayangnya, tak jarang pemuda mudanya dengan sia-sia [1].
Semua pasti sepakat jika pemuda Rekomendasi tersebut berkaitan dengan
merupakan penerus estafet pembangunan. berbagai proses pengambilan keputusan
Menurut Wahyu Ishardino, pemuda seperti produk apa yang sebaiknya dibeli,
merupakan satu identitas yang potensial musik apa yang sebaiknya didengarkan, atau
dalam tatanan masyarakat sebagai penerus berita apa yang sebaiknya dibaca [4].
cita-cita perjuangan bangsa dan sumber insani Sampai saat ini, belum ada situs yang
bagi pembangunan bangsa [2]. Dalam bisa memberikan rekomendasi komunitas apa
tanggung jawab besar sebagai penerus tongkat yang cocok untuk seseorang. Sebagai contoh,
estafet pembangunan nasional, pemuda situs pamflet.or.id menyediakan direktori
harusnya mempersiapkan diri dengan baik komunitas yang di dalamnya berisi daftar
agar harapan besar bangsa ini mampu komunitas yang ada di seluruh Indonesia.
diemban dengan baik. Menghabiskan waktu Namun, situs tersebut hanya menyediakan
dalam lingkungan pergaulan yang tidak sehat daftar tanpa memberikan rekomendasi
bukanlah cara untuk mempersiapkan diri otomatis kepada pengguna, komunitas apa
dengan baik. Sebaliknya, berkomunitas bisa yang cocok bagi mereka. Selain itu, situs
menjadi salah satu kegiatan yang bermanfaat tersebut tidak memberikan penjelasan di kota
sehingga masa mudah mereka tidak berlalu mana sajakah komunitas tersebut aktif.
dengan sia-sia. Sehingga menyulitkan penggunanya yang
Menurut Wahyu Ishardino, salah satu mungkin berasal dari suatu daerah terpencil.
langkah pemuda untuk membawa bangsa ini Sama seperti contoh di atas, situs
ke arah yang lebih baik adalah dengan http://petamuda.org juga hanya menyediakan
partisipasi aktif pemuda Indonesia dalam direktori komunitas tanpa adanya fitur
upaya pembangunan masyarakat [2]. rekomendasi komunitas manakah yang cocok
Komunitas merupakan salah satu wadah untuk seseorang. Sehingga menyulitkan para
dimana pemuda bisa berpartisipasi secara pemuda yang baru akan memulai langkah
aktif bersama pemuda lainnya. Bahkan tidak kontribusi mereka.
hanya berpartisipasi, pemuda juga bisa Pada penelitian kali ini, penulis akan
mengembangkan potensi diri sekaligus membuat sistem rekomendasi komunitas
menumbuhkan kesadaran akan pentingnya pemuda di Kota Semarang berbasis web
kerjasama dari berbagai kalangan untuk menggunakan teknik collaborative filtering.
menyelesaikan berbagai masalah tentang Teknik collaborative filtering dipilih karena
sosial, lingkungan dan sebagainya. teknik tersebut memiliki beberapa kelebihan
Namun dalam praktiknya, masih banyak diantaranya adalah kemampuan untuk
pemuda yang kesulitan untuk menemukan mengeksplorasi asosiasi implisit yaitu asosiasi
peluang untuk berkontribusi melalui yang salah satunya bisa dihasilkan dari
komunitas. Banyak yang ingin ikut serta riwayat pilihan pengguna [5]. Kelebihan
namun tidak tahu harus pergi kemana. Untuk teknik collaborative filtering tersebut
mengatasi kebingungan tersebut, diperlukan nantinya akan meningkatkan ketepatan
suatu sistem sebagai acuan ketika para rekomendasi objek yang dihasilkan.
pemuda ingin ikut serta berkontribusi melalui Pengembangan sistem rekomendasi
komunitas yang sesuai dengan bidang tersebut didasarkan dari observasi sederhana
kesukaannya. Diperlukan adanya sebuah yaitu seseorang sering bergantung pada
sistem rekomendasi sebagai acuan langkah rekomendasi orang lain dalam kebiasaan atau
mereka sebelum bergabung ke suatu keputusan sehari-harinya. Contohnya,
komunitas tertentu. seseorang membeli sebuah buku karena
Sistem rekomendasi itu sendiri rekomendasi temannya, atau seseorang
merupakan model penyelesaian masalah yang menonton sebuah film setelah membaca
menerapkan teknik-teknik tertentu pada review di internet atau majalah.
pembuatan rekomendasi untuk pemilihan Teknik collaborative filtering sendiri
suatu informasi, produk dan jasa [3]. terbagi dalam 2 kategori, yaitu user-based
dan item-based [6]. Dalam penelitian kali ini, diberikan, atau bisa juga didapatkan secara
penulis memilih untuk menggunakan item- implisit dari riwayat pilihan, atau dari analisa
based collaborative filtering karena teknik ini timing logs, dan lain-lain. Ada pengguna yang
memiliki skalabilitas yang baik dibandingkan disebut active user , yang merupakan
teknik user-based collaborative filtering [6]. landasan bagi algoritma collaborative
Sehingga kelebihan tersebut akan filtering untuk mencari kesamaan item yang
memudahkan sistem untuk berkembang lebih bisa saja menjadi dua bentuk.
besar di kemudian hari. 1. Prediksi
Teknik collaborative filtering Prediksi merupakan nilai numerik,
memberikan rekomendasi berdasarkan , yang merepresentasikan
kesamaan diantara item-item yang prediksi kesukaan dari item i j I ua
sebelumnya telah diberi peringkat oleh
untuk active user . Nilai prediksi
pengguna lainnya. Dalam mencari kesamaan
tersebut ada beberapa metode yang bisa ini nilainya berupa skala yang sama
digunakan yaitu cosine based similarity, (contoh dari skala 1 sampai 5) sebagai
correlation based similarity dan adjusted nilai opini yang diperoleh dari .
cosine similarity [6]. Dalam penelitian ini 2. Rekomendasi
penulis akan membuat sebuah sistem Rekomendasi merupakan daftar dari
rekomendasi menggunakan metode adjusted item, I r I , yang paling disukai
cosine similarity berbasis item-based oleh pengguna aktif (active user).
collaborative filtering. Adjusted cosine Algoritma collaborative filtering
similarity dipilih karena teknik tersebut dibagi menjadi dua kategori utama, yaitu
memperbaiki kelemahan yang ada dalam user-based collaborative filtering, dan item-
teknik cosine based similarity murni yaitu based collaborative filtering.
dengan mempertimbangkan nilai rata-rata Algoritma user-based collaborative
rating dari setiap pengguna [6]. filtering menggunakan seluruh database dari
user-item untuk menghasilkan prediksi.
II. METODE YANG DIUSULKAN Sistem tersebut menggunakan teknik statistik
A. Collaborative Filtering untuk mencari sekumpulan pengguna, yang
Konsep dasar algoritma collaborative disebut sebagai neighbors, yang memiliki
filtering adalah untuk menyediakan riwayat pilihan yang mirip dengan target
rekomendasi berdasarkan pendapat pengguna pengguna (contohnya, mereka pernah
lain yang memiliki behaviour yang mirip. memilih produk yang sama). Teknik ini juga
Pendapat tersebut bisa didapatkan secara dikenal dengan sebutan nearest-neighbor.
eksplisit dari pengguna lain atau dengan Algoritma item-based collaborative
melakukan pengukuran secara implisit. filtering menyediakan rekomendasi item
Tujuan algoritma collaborative dengan lebih dulu membuat model dari rating
filtering adalah untuk menyarankan item baru pengguna. Algoritma pada kategori ini
atau untuk memprediksi item tertentu untuk menggunakan pendekatan probablitistik dan
seorang pengguna berdasarkan preferensi mengibaratkan proses collaborative filtering
pengguna sebelumnya dan opini dari sebagai proses menghitung nilai dugaan dari
pengguna lain yang mirip. Dalam skenario prediksi seorang pengguna.
collaborative filtering, ada sekumpulan
user/pengguna dan B. Item-based Collaborative Filtering
Pendekatan item-based menggunakan
sekumpulan item . Setiap
sekumpulan item yang telah diberi rating oleh
pengguna memiliki sekumpulan item , seorang pengguna dan menghitung
yang merupakan opini dari pengguna. Opini kemiripannya terhadap target item untuk
tersebut bisa didapatkan secara eksplisit dari kemudian dipilih item yang paling mirip
pengguna berdasarkan rating score yang . Pada waktu yang sama,
kemiripan mereka yang berkoresponden juga komunitas i dengan komunitas j
dihitung . Setelah item yang u U = Himpunan user yang
paling mirip telah ditemukan, prediksi lalu memberikan rating baik komunitas i
dihitung berdasarkan nilai weighted average maupun komunitas j
dari rating target pengguna pada item yang Ru, i = Rating user u pada komunitas i
mirip [6]. Ru, j = Rating user u pada komunitas j
Untuk menghitung kemiripan item, u = Nilai rating rata-rata user u
maka dilakukan perhitungan item similarity 4. Menghitung nilai prediksi P (a, j)
computation. Setelah mendapatkan kelompok terhadap komunitas j oleh user a yang
item yang memiliki kemiripan dari belum mendapatkan rating dengan
pengukuran item similarity computation, rumus Weighted Sum.
makan digunakanlah data rating dari
pengguna untuk menentukan prediksi.
C. Adjusted Cosine Similarity
Adjusted cosine similarity merupakan Keterangan :
salah satu teknik untuk menghitung item P(a, j) = Prediksi rating komunitas j
similarity computation. Perhitungan oleh user a
kemiripan pada teknik adjusted cosine i I = Himpunan komunitas yang
similarity merupakan modifikasi kemiripan mirip dengan komunitas j
berbasis vektor dimana dengan melihat fakta Ra, i = Rating user a pada
bahwa setiap item diberi nilai rating yang komunitas i
berbeda-beda. Terkadang seorang user S(i, j) = Nilai similarity antara
memberikan rating tinggi terhadap item a, komunitas i dan komunitas j
namun di sisi lain user tersebut memberikan 5. Menampilkan rekomendasi komunitas
rating yang sangat rendah pada item b. Maka dengan urutan dari nilai prediksi yang
dari itu, perhitungannya dikurangi dengan tertinggi.
rata-rata rating yang diberikan oleh user.
D. Proses Implementasi Collaborative III. HASIL & PEMBAHASAN
Filtering A. Implementasi sistem rekomendasi
Proses implementasi metode item- Hasil rekomendasi dilakukan untuk
based collaborative filtering dilakukan mengevaluasi daftar rekomendasi yang
dengan beberapa tahapan berikut : dihasilkan oleh sistem. Adapun data yang
digunakan menggunakan sample 25 data
1. Memberikan rating R(u, i) secara komunitas dan 5 data pengguna. Tabel berikut
eksplisit untuk masing-masing ini menunjukan jumlah rating yang diberikan
komunitas i oleh user u. tiap pengguna.
2. Menghitung rata-rata rating u oleh
user u terhadap komunitas yang telah Tabel 1 Tabel rating
diberikan rating olehnya. Nama Use Use Use Use Use
3. Menghitung nilai similarity S(i, j) Komunitas r1 r2 r3 r4 r5
antar komunitas i dan j yang telah
memiliki rating dengan menggunakan Mozilla 4
rumus Adjusted Cosine Similarity. Indonesia
Dinus Open 5
Source
Community
Nusantara Muda 4
Keterangan :
S(i, j)= Nilai kemiripan antara Internet Club 4
WPAP 5 5 filtering melakukan perhitungan tingkat
kemiripan tiap komunitas menggunakan
Orat-oret 5 5 metode adjusted cosine similarity. Input data
Jazzngisoringin 5 4 yang dibutuhkan dalam perhitungan ini adalah
data nilai rating komunitas yang akan
Semarang
dihitung kemiripannya, serta data nilai rata-
Akustik
rata rating dari pengguna yang memberikan
Akademi 5 rating tersebut. Output dari perhitungan
Berbagi tersebut berupa nilai kemiripan dari
Youth 3 komunitas pertama dan komunitas kedua yang
Empowering dibandingkan. Setelah itu dipilih hasil yang
memiliki nilai positif saja. Berikut ini hasil
Komunitas perhitungan tingkat kemiripannya :
Fotografer
FFI 5 Tabel 2 Tabel hasil perhitungan
tingkat kemiripan
Satoe Atap 4
Komunitas 1 Komunitas 2 Similarity
Coin A Chance 5
Orat-oret WPAP 1
Komunitas Semarang
Backpacker
Jazz Ngisor Orat-oret 1
Lopen 5 Ringin
Semarang
Youth Nusantara 1
Semarang EmPowering Muda
Berkebun SMG
Semarang 4 Akademi Dinus Open 1
Runner Berbagi SMG Source
Save Street 5 Community
Child Komunitas Komunitas 1
Care For 4 3 Satoe Atap Mozilla
Environment Indonesia
Organization Care Nusantara 1
Kelompok Environmental Muda
Mangrove Organization
(CEO)
SMG aksi
Care Jazz Ngisor 1
Kaskus Reg Environmental Ringin
Semarang Organization
Loenpia 4 (CEO)
Blogger Care Youth 1
Karamba Art 4 Environmental EmPowering
Organization SMG
Keterangan : (CEO)
1.5 = Rating yang diberikan pengguna Save Street Orat-oret 1
Child
Setelah dilakukan pemberian rating
Save Street Jazz Ngisor 1
terhadap komunitas, algoritma collaborative
Child Ringin
Komunitas Internet Club 1 User 4 Komunitas Mozilla 4
Blogger Indonesia
Loenpia User 3 Komunitas Mozilla 4
Lopen FFISemarang 1 Indonesia
Semarang User 5 Nusantara Muda 4
Karamba Art Internet Club 1 User 3 Nusantara Muda 4
Backpaker Komunitas 1 User 4 Internet Club 4
Indonesia Blogger
Chapter Loenpia User 4 Orat-oret 5
Semarang User 4 Jazz Ngisor Ringin 4
Coin A Chance WPAP 1 User 3 Youth EmPowering 3
Semarang Semarang SMG
User 4 Komunitas Blogger 4
Pada contoh data di atas, kemiripan Loenpia
komunitas Save Street Child dan komunitas
Orat-oret dihitung dari hasil rating dari user 1
yang telah memberikan rating bagi komunitas Perhitungan prediksi di atas di atas
pertama, yaitu Save Street Child, dan didapatkan dari data kemiripan yang sudah
komunitas kedua yaitu komunitas Orat-oret. lebih dulu dihitung pada langkah sebelumnya.
Nilai rating user 1 pada komunitas Save Street Sebagai contoh, perhitungan nilai prediksi
Child adalah 5, dan nilai rating user 1 pada User 1 pada komunitas Mozilla Indonesia
komunitas Orat-oret adalah 5. Nilai rata-rata didapat dari perhitungan sebagai berikut :
rating user 1 saat dilakukan perhitungan P (user 1, komunitas Mozilla Indonesia)
kemiripan adalah sebanyak 4,67. Sehingga = (4) (1) = 4 = 4
perhitungan nilai kemiripannya menjadi : |1| 1
Setelah perhitungan prediksi selesai,
S (Save street child, Orat-oret) maka daftar rekomendasi diberikan kepada
= (5-4,67) (5-4,67) = (0,67) (0,67) = 1 tiap pengguna berdasar tingkatan nilai
(5-4,33)2 (5-4,33)2 (0,67) (0,67) prediksi tertinggi pada tabel prediksi.

Setelah perhitungan kemiripan, Tabel 4 Tabel daftar rekomendasi


dilakukan juga perhitungan prediksi dengan User Rekomendasi
metode weighted sum. Input data yang User 1 - Mozilla Indonesia
diperlukan dalam perhitungan ini adalah data
nilai kemiripan komunitas, serta nilai rating User 3 - Mozilla Indonesia
dari komunitas dan pengguna yang - Nusantara Muda
bersangkutan. Output dari perhitungan - Youth Empowering
tersebut akan menghasilkan prediksi nilai User 4 - Mozilla Indonesia
rating dari seorang pengguna terhadap suatu - Internet Club
komunitas tertentu. Berikut ini hasil - Orat-oret
implementasi perhitungan nilai prediksinya : - Jazzngisoringin
- Komunitas Blogger Loenpia
Tabel 3 Tabel hasil perhitungan
User 5 - Nusantara Muda
prediksi
User Komunitas Prediksi
User 1 Komunitas Mozilla 4
Indonesia
IV. ANALISIS HASIL IMPLEMENTASI untuk mempersingkat waktu eksekusi agar
Pada tabel 4 di atas terlihat bahwa setiap tidak mengganggu pengguna.
pengguna mendapatkan rekomendasi
komunitas masing-masing berdasarkan rating
yang diberikannya. Hal tersebut sesuai V. PENUTUP
dengan metode collaborative filtering yang Teknik rekomendasi item-based
memberikan rekomendasi berdasarkan collaborative filtering dapat menghasilkan
perhitungan kemiripan rating tiap pengguna, rekomendasi komunitas pemuda di Semarang
sehingga tiap pengguna mendapatkan dengan baik. Setiap pengguna mendapatkan
rekomendasi yang berbeda-beda. Adapun rekomendasi masing-masing sesuai rating
User 2 belum mendapatkan rekomendasi yang diberikannya. Namun, karena pendapat
karena data rating yang dimilikinya belum yang digunakan masih sebatas dari data
cukup untuk mendapatkan rekomendasi. rating, pengguna yang belum pernah
Komunitas yang memiliki nilai rating melakukan rating tidak bisa mendapatkan
tinggi juga tidak menjamin untuk dijadikan rekomendasi. Sehingga dalam penelitian
rekomendasi karena rekomendasi yang selanjutnya perlu dipertimbangkan untuk
dihasilkan untuk masing-masing pengguna menambahkan asosiasi implisit seperti dari
dipengaruhi oleh rating yang diberikan serta riwayat pilihan sehingga lebih memudahkan
hubungan kemiripan antara komunitas satu pengguna dalam mendapatkan rekomendasi.
dengan yang lain. Jika suatu komunitas
memiliki rating tinggi, namun tidak memiliki REFERENCES
kemiripan dengan komunitas lain, maka [1] Kementrian Pemuda dan Olahraga
komunitas tersebut tidak akan mendapat (2009) 'Penyajian Data Informasi
rekomendasi. Kementrian Pemuda dan Olahraga
Tahun 2009'. [Online]. Availabe:
Selanjutnya, dilakukan pengujian http://www.kemenpora.go.id/pdf/PENY
waktu eksekusi yang dibutuhkan sistem dalam AJIAN%20DATA%20INFORMASI
proses pembuatan daftar rekomendasi. Yaitu %20KEMENTERIAN%20PEMUDA
proses saat menjalankan query untuk memilih %20DAN%20OLAHRAGA
daftar rekomendasi dari tabel ratepredict. %20TAHUN%202009.pdf. [Accessed 9
Penghitungan waktu eksekusi dilakukan November 2014].
dengan menggunakan pengaya tambahan [2] Satries, Wahyu Ishardino. "Peran Serta
yang terdapat pada peramban, yaitu page load Pemuda Dalam Pembangunan
time. Perlu dicatat pula bahwa pengujian Masyarakat." Jurnal Fisip: Madani 9.01
dilakukan pada lingkungan perangkat keras (2012). [Online]. Available:
Processor AMD Dual core C60-1.0Ghz, http://ejournal-
RAM berkapasitas 2048 MB, serta Hardisk unisma.net/ojs/index.php/madani/article/
kapasitas 320 GB. viewFile/264/253. [Accessed 9
November 2014].
Berdasarkan perhitungan page load
[3] Nuryunita, Kirana; Nurhadryani, Yani.
time, rata-rata waktu eksekusi yang
Pembuatan Modul Rekomendasi pada
diperlukan dari lima pengguna adalah 3608,4
OpenCart Menggunakan Metode Item-
ms atau 3,6084 detik. Waktu eksekusi ini
Based Collaborative Filtering. Jurnal
termasuk singkat karena query yang
Ilmu Komputer & Agri-Informatika,
dijalankan hanya 1, yaitu untuk memilih
2013.
komunitas yang mendapatkan nilai prediksi
[4] Ricci, Francesco, Lior Rokach, and
tinggi dari tabel ratepredict. Sedangkan query
Bracha Shapira. "Introduction to
untuk menghitung nilai kemiripan dan nilai
recommender systems handbook."
prediksi dilakukan pada saat seorang
Recommender systems handbook
pengguna memberikan rating terhadap suatu
(2011): 1-35.
komunitas. Pemisahan query ini dilakukan
[5] Yildirim, Hilmi; Krishnamoorthy, Utama.
Mukkai S. A random walk method for [8] Soenarno, 2002. Komunitas Sebagai
alleviating the sparsity problem in Pilar Pembangunan Nasional. Jakarta:
collaborative filtering. In: Proceedings CV.Rajawali.
of the 2008 ACM conference on [9] Wiranto, Wiranto., & Winarko Edi.
Recommender systems. ACM, 2008. p. Konsep Multicriteria Collaborative
131-138. Filtering untuk perbaikan rekomendasi.
[6] Sarwar, Badrul, et al. Item-based Telekomunikasi, 13 (2011).
collaborative filtering recommendation [10] Pratama, Yudhistira Adhitya, et al.
algorithms. In: Proceedings of the 10th Digital Cakery dengan Algoritma
international conference on World Wide Collaborative Filtering. JSM (Journal
Web. ACM, 2001. p. 285-295. SIFO Mikroskil) 14.1 (2013):79-88.
[7] Kertajaya, Hermawan. 2008. Arti
Komunitas. Jakarta:Gramedia Pustaka

You might also like