• Tidak ada hasil yang ditemukan

BAB III ANALISIS DAN PERANCANGAN SISTEM

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB III ANALISIS DAN PERANCANGAN SISTEM"

Copied!
10
0
0

Teks penuh

(1)

18

BAB III

ANALISIS DAN PERANCANGAN SISTEM

3.1 Deskripsi Umum Sistem

Pada penelitian ini akan melakukan sebuah eksperimen dengan menggunakan sebuah algoritma Collaborative Filtering pada sebuah sistem rekomendasi yang dijalankan menggunakan libraries Apache Mahout dengan menggunakan bahasa pemrogramman java, namun yang beda dalam penelitian ini adalah dilakukanya programming dalam pembuatan sistem rekomendasi ini sehingga akan memungkinkan mempercepat waktu pemrosesan data pada sistem rekomendasi ini. Collaborative Filtering sendiri merupakan metode yang paling umum digunakan pada sebuah sistem rekomendasi [3], dan dalam pengimplementasianya akan digunakan libraries Apache Mahout. Sistem rekomendasi ini akan menggunakan dataset yang diambil di website movielens yang didalamnya terdapat beberapa data film dari seluruh dunia. Sistem rekomendasi ini akan diuji dengan kecepatan pemrosesan datanya menggunakan beberapa thread yang berbeda dan juga ukuran dataset yang berbeda serta dilakukan pengujian menggunakan sistem monitoring yang bertujuan untuk mengetahui resource yang dipakai dalam masing – masing pengujian yang dilakukan.

3.2 Alur Sistem

Alur sistem merupakan penjelasan tentang pengerjaan penelitian ini yang berhubungan dengan apa saja yang digunakan dalam sistem ini dan juga komponen - komponen apa saja yang akan digunanakan. Dalam alur sistem akan dijelaskan beberapa langkah – langkah sistem ini bekerja dan juga akan dijelaskankan tentang metode dan algoritma yang akan digunakan.

3.2.1 Item Based Collaborative Filtering

Item Based Collaborative Filtering merupakan metode rekomendasi yang di dasari atas adanya kesamaan antara pemberian rating terhadap suatu produk dengan produk yang dibeli. Dari tingkat kesamaan produk, kemudian dibagi

(2)

19

dengan parameter kebutuhan pelanggan untuk memperoleh nilai kegunaan produk. Produk yang memiliki nilai kegunaan tertinggilah yang kemudian dijadikan rekomendasi [8]. Gambaran umum pada Item Based Collaborative Filtering akan dijelaskan pada contoh dibawah.

Tabel 3. 1 Contoh Item Matrik

User / Item Item A Item B Item C

User A * *

User B * * *

User C * Recommend

[12] Gambar 3. 1 Konsep Item Based Recommendation

Tabel 3.1 dan Gambar 3.1 menjelaskan bagaimana sistem rekomendasi Item Based Collaborative Filtering berkerja, disana Tabel 3.1 terdapat beberapa kumpulan user yang telah memilih beberapa item diantara item A sampai dengan Item C, disana dijelaskan setiap user memilih item dengan fariasi yang berbeda – beda, User A memilih item A dan item C, dan User B memilih item A, item B dan item C, dan kemudian User C , hanya memilih item A. Dari beberapa uraian tersebut maka rekomendasi yang diberikan untuk user C yang memilih Item A saja adalah item C, karena item C memiliki dengan item A, tingkat kesamaanya itu dihitung dengan setiap User yang memilih Item A user tersebut juga memilih item C. Untuk memperjelas lagi alur bagaimana Item Based Collaborative Filtering itu berkerja akan dijelaskan dengan Gambar 3.2.

(3)

20

Gambar 3. 2 Flowchart Item Based Collaborative Filtering

Informasi dari user sebelumnya akan dicari rating yang diberikan user sebelumnya dan kemudian rating tersebut akan memberikan nilai pada item, setelah mencari informasi dari user sebelumnya, item akan dicari kesamaanya mengunakan algoritma similiraties dan kemudian dimasukan kedalam item matrik. Dan kemudian sistem akan memilih item dengan tingkat kesamaan paling tinggi untuk dijadikan rekomendasi [6].

(4)

21

3.2.2 Item Based Collaborative Filtering di Mahout

Gambar 3. 3 Arsitektur CF Menggunaan Mahout

Penerapan metode Collanorative Filtering menggunakan Apache Mahout dalam sistem ini dijelaskan pada Gambar 3.3, dalam arsitektur tersebut dijelaskan bahwa pembuatan rekomendasinya hanya memanfaatkan data model dan item similarity yaitu dengan mengukur tinggkat kesamaan dari setiap item untuk dijadikan rekomendasi. Dalam Apache Mahout algoritma similarity yang akan digunakan untuk mencari tingkat kesamaan item menggunakan algoritma Tanimoto Coefficient Similarity, algoritma tersebut merupakan salah satu alagoritma similarity yang berada di Apache Mahout.

(5)

22

Gambar 3. 4 Flowchart CF Menggunaan Mahout

Gambar 3.4 menjelaskan bagaimana alur pembuatan sistem rekomendasi menggunakan Apache Mahout yang didalamnya menggunakan pendekatan Item Based Collaborative Filtering yang menggunakan algoritma Tanimoto Coefficient Similarity untuk mencari tingkat kesamaan item didalamnya. Pada tahapan awal yaitu dengan memasukan dataset kemudian dari dataset tersebut akan dibuat modelnya dan kemudian dari model dataset tersebut akan dicari tingkat kesamaan itemnya dengan item yang lain menggunkan algoritma Tanimoto Coefficient Similarity , dan setelah mendapatkan hasil dari nilai kesamaan setiap item tersebut, nilai - nilai tersebut akan dikalkulasi untuk mencari tingkat kesamaan yang paling besar untuk dijadikan sistem rekomendasi.

Tanimoto Coefficient similarity merupakan teknik similarity yang mengandal perpotongan dalam setiap item, didalamnya terdapat penggabungan

(6)

23

pada item yang mempunyai persamaan, maka nilai akan sama dengan nol jika item tidak kesamaanya dan satu jika item memiliki persamaan [10]. Berikut merupan contoh perhitungan algoritma Tonimoto Coefificient Similarity.

Tabel 3. 2 Contoh Item Matrik Perhitungan Tanimoto Similarity Item / User User 4014 User 4015 User 4016 User 4017 User 4018

Item 675 * * *

Item 676 * * * *

Item 677 * * *

T (675,676)

Na ( User yang memilih item 675 ) = 1 , 1 , 0 , 1 , 0 Nb ( User yang memilih item 676) = 1 , 0 , 1 , 1 , 1 Nc ( User yang memilih keduanya ) = 1 , 0 , 0 , 1 , 0

675,676 = Nc Na + Nb − Nc 675,676 = 2 3 + 4 − 2 675,676 =2 5 675,676 = 0,4 T (675,677)

Na ( User yang memilih item 675 ) = 1 , 1 , 0 , 1 , 0 Nb ( User yang memilih item 677) = 0 , 1 , 1 , 0 , 1 Nc ( User yang memilih keduanya ) = 0 , 1 , 0 , 0 , 0

675,677 = Nc Na + Nb − Nc 675,677 = 1 3 + 3 − 1 675,677 =1 5 675,677 = 0,2 T (676,677)

(7)

24

Nb ( User yang memilih item 677) = 0 , 1 , 1 , 0 , 1 Nc ( User yang memilih keduanya ) = 0 , 0 , 1 , 0 , 1

676,677 = Nc Na + Nb − Nc 676,677 = 2 4 + 3 − 2 675,676 =2 5 675,676 = 0,4

Dari perhitungan yang diatas didapatkan hasil sebagai berikut : Tingkat kesamaan pada item 675

Item 676 = 0,4 Item 677 = 0,2

Tingkat kesamaan pada item 676 Item 675 = 0,4

Item 677 = 0,4

Tingkat kesamaan pada item 677 Item 675 = 0,2

Item 676 = 0,4

Dari hasil yang telah dijabarkan diatas akan diambil nilai persamaan yang paling besar untuk dijadikan rekomendasi. Yaitu untuk item 675 akan mendapatkan rekomendasi item 676, kemudian untuk item 676 akan mendapatkan rekomendasi item 675 atau item 677 dikarenakan memiliki nilai yang sama, kemudian untuk item 677 akan mendapatkan rekomendasi item 677.

3.2.3 Pemecahan Dataset

Pembagian atau bisa disebut dengan pemecahan dataset adalah tahap awal yang sangat penting dalam penelitian ini karena dalam penelitian ini membuat sebuah konsep Multithreading Programming. Dalam Multithreading Programming terdapat perintah yang dilakukan secara bersamaan dalam satu waktu maka dari itu pemecahan dataset ini dilakukan dengan bertujuan agar masing – masing thread bisa mendapatkan dataset masing – masing untuk

(8)

25

dilakukan pemrosesan data dalam sistem rekomendasi pada masing – masing thread yang berbeda. Proses pemecahan ini dilakukan dengan menggunakan program yang menggunakan bahasa pemrogramman java.

Gambar 3. 5 Alur pemecahan data

Gambar 3.5 menjelaskan tentang bagaimana pemecahan dataset itu dilakukan, pertama – tama sistem akan membaca semua dataset yang bertujuan ingin mengetahui jumlah data yang akan digunakan oleh sistem, setelah sistem mengatahui jumlah datanya, maka data tersebut akan dibagi rata dengan banyaknya jumlah thread yang akan digunakan untuk memproses sistem rekomendasi.

3.2.4 Penerapan Apache Mahout Dengan Multithreading

Pada tahapan kali ini adalah tahapan inti dari penelitian ini, disini proses penggabungan antara Apache Mahout dan Multithreading Programming akan

(9)

26

dilakukan. Dalam tahapan ini dataset yang telah dipecah akan diproses untuk membuat sebuah sistem rekomendasi yang menggunakan metode Collaborative Filtering yang akan dijalankan dengan libraries Apache Mahout yang pada pemrosesan datanya akan menggunakan Multithreading Programming.

Gambar 3. 6 Multithreading satu level

Desain alur sistem yang digunakan untuk penilitian ini seperti yang ada pada Gambar 3.6 yang menjalas alur sistem ini akan berjalan, ada beberapa tahapan dalam sistem ini, berikut merupakan tahapan – tahapanya :

a) tahapan awal ialah memasukan libraries Apache Mahout dan dataset yang akan digunakan sebagai data rekomendasi kedalam Java IDE.

(10)

27

b) Tahapan selanjutnya ialah upload data kedalam main thread, setelah mainthread menerima datasetnya kemudian dataset tersebut akan dipecah menjadi beberapa bagian untuk dibagikan kepada beberapa thread lainya yang dalam penelitian ini disebut child thread.

c) Setelah child thread menerima dataset masing – masing dari main thread, setiap child thread akan memproses dataset tersebut untuk dijadikan sebuah rekomendasi.

d) Tahapan dalam pembuatan rekomendasi ini akan mengunakan libraries mahout sebagai engine rekomendasinya.

e) Sistem akan mencari tingkat kesamaan item dengan menggunakan libraries mahout.

f) Setelah sistem memperoleh perhitungan kesamaan antara beberapa item. Sistem akan menkalkulasi hasil perhitungan tersebut dan memil tingkat kesamaan item yang paling tinggi untuk digunakan sebagai rekomendasi.

g) Setelah setiap child thread memiliki rekomendasi masing – masing dari setiap dataset yang dibagikan oleh main thread sebelumnya, child thread akan mengirimkan hasil rekomendasi tersebut kepada main thread.

h) Main thread menggabung semua rekomendasi yang telah dikirim oleh child thread untuk dijadikan rekomendasi.

Gambar

Tabel 3. 1 Contoh Item Matrik
Gambar 3. 2 Flowchart Item Based Collaborative Filtering
Gambar 3. 3 Arsitektur CF Menggunaan Mahout
Gambar 3. 4 Flowchart CF Menggunaan Mahout
+3

Referensi

Dokumen terkait

Sebagai akhir dari penulisan konsep ini berdasarkan kajian teoritis, hasil penelitian serta fakta yang ada disarankan khususnya bagi pengelola madrasah agar terus berupaya

Lokasi penelitian ditentukan secara sengaja, penentuan responden dilakukan dengan metode simple random sampling jumlah responden yang ditetapkan sebagai sampel dalam

Proses yang sama sekali tidak langsung, dimana gambar diolah kemudian dicetak pada plat hardboard yang kemudian dicukil dan dicetak secara manual adalah simbolisasi

Sebelum melakukan tindakan siklus I, peneliti terlebih dahulu mengawali kegiatannya dengan memberikan tes awal kepada siswa. Tes ini dilaksanakan pada hari

Analisis data yang digunakan dalam penelitian ini adalah secara deskriptif, yaitu dengan cara mendeskripsikan data yang telah dikumpulkan untuk melihat

Pelaksanaan Kegiatan berupa perawatan lingkungan berdasarkan atas landasan ajaran Tri Hitha Karana merupakan bentuk harmonisasi yang dibina sejak dini pada diri peserta didik

Dengan kata lain, terjadi tambahan biaya umum akibat kemacetan yang terjadi sebesar Rp 638,82 per kendaraan (SMP) per km perjalanan. Dengan kata lain, terjadi tambahan