perancangan dan pembangunan modul rekomendasi section...

69
PERANCANGAN DAN PEMBANGUNAN MODUL REKOMENDASI SECTION PADA OPEN JOURNAL SYSTEM (OJS) (Kata kunci: Jurnal, K-Nearest Neighbor, Karya Ilmiah, Klasifikasi PRESENTASI TUGAS AKHIR – KI091391 Penyusun Tugas Akhir : Achmad Zarman Syahran (NRP: 5108.100.191) Dosen Pembimbing : Daniel Oranova S., S.Kom., M.Sc., P.D.Eng. Ahmad Saikhu, S.Si., M.T. Juli 2013 Tugas Akhir - KI091391 1

Upload: doanthuy

Post on 24-May-2018

227 views

Category:

Documents


2 download

TRANSCRIPT

PERANCANGAN DAN PEMBANGUNAN MODUL REKOMENDASI SECTION

PADA OPEN JOURNAL SYSTEM (OJS)

(Kata kunci: Jurnal, K-Nearest Neighbor, Karya Ilmiah, Klasifikasi

PRESENTASI TUGAS AKHIR – KI091391

Penyusun Tugas Akhir :

Achmad Zarman Syahran

(NRP: 5108.100.191)

Dosen Pembimbing :

Daniel Oranova S., S.Kom., M.Sc., P.D.Eng.

Ahmad Saikhu, S.Si., M.T.

Juli 2013 Tugas Akhir - KI091391 1

Juli 2013 Tugas Akhir - KI091391 2

KERANGKA PRESENTASI

Pendahuluan

Tinjauan Pustaka

Analisis dan Desain

Implementasi

Implementasi

Tinjauan Pustaka

Juli 2013 Tugas Akhir - KI091391 3

KERANGKA PRESENTASI

Pendahuluan

Analisis dan Desain

LATAR BELAKANG(1)

“Untuk lulus program Sarjana harusmenghasilkan makalah yang terbit pada jurnalilmiah”.(Surat Edaran Dirjen DIKTI No 152/E/T/2012 Tanggal 27 Januari 2012).

4Juli 2013 Tugas Akhir - KI091391

LATAR BELAKANG(2)

5Juli 2013 Tugas Akhir - KI091391

ITS memfasilitasi mahasiswanya untukmempublikasikan sebuah karya ilmiahdengan membuat situs POMITS

Open Journal Systemsebuah sistem manajemen konten berbasis web yang khusus dibuat untukmenangani keseluruhan proses manajemen publikasi ilmiah dari proses call for paper, peer review, hingga penerbitan dalam bentuk daring.

OPEN JOURNAL SYSTEM

610 Juli 2013 Tugas Akhir - KI091391

MASALAH(1)

710 Juli 2013 Tugas Akhir - KI091391

Paper Tugas Akhir

subm

it

membuat

MASALAH(2)

810 Juli 2013 Tugas Akhir - KI091391

MASALAH(2)

9Juli 2013 Tugas Akhir - KI091391

Jurnal

section A

section B

section C

section D

SOLUSI

10Juli 2013 Tugas Akhir - KI091391

Open Journal System

1. Judul2. Abstraksi3. Kata Kunci

Recommended Section

OJS Plugins Generic Plugins

Juli 2013 Tugas Akhir - KI091391 11

KERANGKA PRESENTASI

Pendahuluan

Tinjauan Pustaka

Analisis dan Desain

Implementasi

POMITS

Open Journal System

PHP

Data Access Object

PHP

Data Access Object

POMITS

Juli 2013 Tugas Akhir - KI091391 12

KERANGKA PRESENTASI

Tinjauan Pustaka

Open Journal System

KERANGKA PRESENTASI

Tinjauan Pustaka

Sistem Temu Kembali Informasi:

1. Prapemrosesan• Tokenisasi• Stopwords

• Stemming (Tala)

2. Model Ruang Vektor

3. Teknik Pembobotan Tf-Idf

4. Cosine Similarity

K-Nearest Neighbor

STKI

Penghitungan Performa

Juli 2013 Tugas Akhir - KI091391 13

K-Nearest Neighbor

Juli 2013 Tugas Akhir - KI091391 14

1. Tujuan dari algoritma adalah menentukan kelas kelas atau kategoridari suatu objek berdasarkan pola dari k objek terdekatnya.

2. Dibutuhkan tiga parameter yaitu himpunan data, jarak antar data dan nilai k.

Penghitungan Performa

Juli 2013 Tugas Akhir - KI091391 15

• Akurasi adalah jumlah semua rekomendasi yang benar dibagi jumlahpercobaan.

• Presisi merupakan penghitungan akurasi dari kelas tertentu yang telah diprediksi sebelumnya.

• Recall merupakan penghitungan kemampuan dari sebuah metodeprediksi untuk menentukan kelas dari sebuah himpunan data dengantepat.

• 𝐹1Measure: Menggabungkan presisi dan recall dengan menggunakan

beban yang sama

Juli 2013 Tugas Akhir - KI091391 16

KERANGKA PRESENTASI

Pendahuluan

Tinjauan Pustaka

Analisis dan Desain

Implementasi

Cara Kerja Umum Sistem

Arsitektur Perangkat Lunak

Spesifikasi Kebutuhan

Diagram Kasus Penggunaan

Cara Kerja Umum Sistem

1710 Juli 2013 Tugas Akhir - KI091391

Arsitektur Perangkat Lunak

1810 Juli 2013 Tugas Akhir - KI091391

Pengguna(Journal Manager)

Pengguna (Author)

OJS Server

Akses situs jurnal

Plugin (Modul Rekomendasi Section)

Pengaturan modul rekomendasi

OJS DAO

Register

Prapemrosesan

Pembobotan Tf-Idf

Hasil disimpan ke dalam database

PLUGIN DAO

Menentukan k dokumen terdekat

Rekomendasi Kategori

Menampilkan rekomendasi

Dokumen Baru dihitung nilai

kesamaan cosine dengan dokumen

training

Meminta rekomendasiMetadata Artikel

System

Spesifikasi Kebutuhan

1910 Juli 2013 Tugas Akhir - KI091391

1. Pembobotan per kata dari artikel yang telah dipublikasikan oleh situsPOMITS (pembuatan model klasifikasi).

2. Penyimpanan hasil pembobotan kata ke dalam basis data.3. Pembaruan hasil pembobotan terakhir.4. Penentuan kategori yang nilai kesamaannya merupakan nilai tertinggi dari

kategori-kategori yang ada.

Diagram Kasus Penggunaan

2010 Juli 2013 Tugas Akhir - KI091391

System

Journal Manager

Author

memperbaharui model klasifikasi

mempersiapkan modul

membuat model klasifikasi

melakukan penyerahan artikel

meminta rekomendasi kategori

<<include>>

<<extend>>

<<extend>>

Cara Kerja Umum Sistem

Juli 2013 Tugas Akhir - KI091391 21

KERANGKA PRESENTASI

PendahuluanAnalisis dan Desain

Arsitektur Perangkat Lunak

Spesifikasi Kebutuhan

Diagram Kasus Penggunaan

Rangkaian Proses

Diagram Kelas

Rangkaian Proses(1)

2210 Juli 2013 Tugas Akhir - KI091391

Proses Membuat Model Klasifikasi

• Proses ini bertujuan untuk mendapatkanmetadata dari semua artikel yang telahdipublikasikan pada sebuah jurnal.Metadata yang diambil adalah judul,abstrak dan kata kunci yang berupa tipedata string/teks.

masukan: 1. jurnal

keluaran:2. judul, abstrak dan keyword dari banyak

artikel

metadata dokumen/artikelyang telah dipublikasi

STKI

Tf-Idf

1

Rangkaian Proses(2)

2310 Juli 2013 Tugas Akhir - KI091391

Proses Membuat Model Klasifikasi

• Proses ini terdiri dari beberapa proses, yaitu:1. Tokenisasi, berguna untuk memecah

sebuah teks menjadi token-tokendengan menghilangkan tanda baca, spasidan simbol.

2. Stop word, berguna untukmenghilangkan kata umum yang seringmuncul sehingga kata tersebut bernilaikecil.

3. Stemming, berguna untuk mendapatkankata dasar dari kata yang berimbuhan.

4. Vector Space Model (VSM), untukmerepresentasikan token besertafrekuensinya pada sebuah dokumen

metadata dokumen/artikelyang telah dipublikasi

STKI

Tf-Idf

2

Rangkaian Proses(3)

2410 Juli 2013 Tugas Akhir - KI091391

Proses Membuat Model Klasifikasi

• Proses ini akan memberikan bobot nilai padakata-kata dengan rumus sebagai berikut: metadata dokumen/artikel

yang telah dipublikasi

STKI

Tf-Idf3

𝑡𝑓𝑖𝑑𝑓𝑡,𝑑 = log 1 + 𝑡𝑓𝑡,𝑑 × 𝑖𝑑𝑓𝑡

dengan

𝑖𝑑𝑓𝑡 = log𝑁

𝑑𝑓𝑡

Diagram Kelas

2510 Juli 2013 Tugas Akhir - KI091391

Diagram Kelas Membuat Model Klasifikasi

Kata<<entity>>

Artikel<<entity>> 1 1..*

PengelolaanPluginFrom<<boundary>>

pluginHandler<<control>>

Plugin<<entity>>

InstalasiHandler<<control>>

InstalasiPluginForm<<boundary>>

Journal Manager<<entity>>

1

1

1..*

1

1

1

1

1

1

1

1

1

1..* 1

Rangkaian Proses(1)

2610 Juli 2013 Tugas Akhir - KI091391

Proses Meminta Rekomendasi Kategori

• Proses yang sama sampai mendapatkannilai tf-idf per kata

metadata dokumen/artikelpermintaan

STKI

Tf-Idf

1

Cosine Similarity

K-Nearest Neighbor

Rangkaian Proses(2)

2710 Juli 2013 Tugas Akhir - KI091391

Proses Meminta Rekomendasi Kategori

• Proses ini bertujuan untuk menghitungjarak antara dokumen permintaan(query) dengan dokumen latih denganmembandingkan masing-masing vektortf-idf-nya.

metadata dokumen/artikelpermintaan

STKI

Tf-Idf

Cosine Similarity

K-Nearest Neighbor

2

Rangkaian Proses(3)

2810 Juli 2013 Tugas Akhir - KI091391

Proses Meminta Rekomendasi Kategori

• Setelah mendapatkan masing-masingjarak dari dokumen permintaan dengansemua dokumen latih, maka denganmengambil dokumen yang memilikijarak terdekat (cosine similarityterbesar) sejumlah k, kemudiandidapatkanlah section dengan jumlahcosine similarity terbesar untuk dijadikansebuah rekomendasi.

metadata dokumen/artikelpermintaan

STKI

Tf-Idf

Cosine Similarity

K-Nearest Neighbor3

Diagram Kelas

2910 Juli 2013 Tugas Akhir - KI091391

Author<<entiry>>

AuthorHandler<<control>>

11

AuthorForm<<boundary>>

1

1

RecommendationForm<<boundary>>

RecommendationHandler<<control>> 1 1

1

1

Kata<<entity>>

Artikel<<entity>>

1

10..*

1

0..* 1

1

1..*1

0..*

Diagram Kelas Meminta Rekomendasi Kategori

Juli 2013 Tugas Akhir - KI091391 30

KERANGKA PRESENTASI

Pendahuluan

Tinjauan Pustaka

Analisis dan Desain

Implementasi

Implementasi Data

Implementasi Antarmuka

Implementasi Data

3110 Juli 2013 Tugas Akhir - KI091391

Tabel word_articles

Tabel word_articles_temp

Implementasi Antarmuka

3210 Juli 2013 Tugas Akhir - KI091391

Modul rekomendasi kategori terdapat pada daftar Generic Plugins

Implementasi Antarmuka

3310 Juli 2013 Tugas Akhir - KI091391

Antarmuka meminta rekomendasi kategori

Juli 2013 Tugas Akhir - KI091391 34

KERANGKA PRESENTASI

Uji Coba

Kesimpulan

Saran

Juli 2013 Tugas Akhir - KI091391 35

KERANGKA PRESENTASI

Uji Coba

Kesimpulan

Saran

Uji Coba

3610 Juli 2013 Tugas Akhir - KI091391

• Fungsionalitaso Tabel basis data modul belum terinstal atau tersedia.

Uji Coba

3710 Juli 2013 Tugas Akhir - KI091391

• Fungsionalitaso Tabel basis data modul telah terinstal atau tersedia.

Uji Coba(2)

3810 Juli 2013 Tugas Akhir - KI091391

• Fungsionalitaso Instalasi Modul Rekomendasi

Uji Coba

3910 Juli 2013 Tugas Akhir - KI091391

• Fungsionalitaso Tautan rekomendasi pada halaman Author.

Uji Coba(3)

4010 Juli 2013 Tugas Akhir - KI091391

• Fungsionalitaso Uji coba meminta rekomendasi kategori

Uji Coba(4)

4110 Juli 2013 Tugas Akhir - KI091391

Performa klasifikasi K-Nearest Neighbor• Skenario Uji Coba:

1. Pengujian menggunakan data dari 2 issue dari Jurnal Teknis ITS (Vol. 1, No. 1, 2012 dan Vol. 2, No.1, 2013)

2. Untuk mendapatkan data latih dan data uji, dilakukan k-fold cross validation pada dataset yang digunakan

3. Uji coba dilakukan dengan mengubah nilai k dengan batasan jumlah term pada dokumen query adalah 10 term dengan nilai tf-idf terbesar

Uji Coba(5)

4210 Juli 2013 Tugas Akhir - KI091391

Performa klasifikasi K-Nearest Neighbor• Hasil Uji Coba:

k Akurasi Presisi Recall 𝑭𝟏

5 68.98 63.28 66.66 62.16

10 71.84 65.97 70.38 65.38

15 71.35 65.45 70.78 64.01

20 71.44 64.71 71.48 65.01

Uji Coba(6)

4310 Juli 2013 Tugas Akhir - KI091391

Performa klasifikasi K-Nearest Neighbor• Analisa Hasil Uji Coba

50.00

55.00

60.00

65.00

70.00

75.00

80.00

5 10 15 20

Nila

i (%

)

k

Akurasi Presisi Recall F-Measure

Dari hasil uji coba dapat disimpulkan bahwa KNN mendapatkan nilai optimal dengan nilai k = 10 dengan nilai akurasi sebesar 71,84%

Juli 2013 Tugas Akhir - KI091391 44

KERANGKA PRESENTASI

Uji Coba

Kesimpulan

Saran

Juli 2013 Tugas Akhir - KI091391 45

KERANGKA PRESENTASI

Uji Coba

Kesimpulan

Saran

Kesimpulan

4610 Juli 2013 Tugas Akhir - KI091391

1. OJS merupakan suatu sistem yang tersusun secara rapi sehinggauntuk melakukan sebuah pengembangan sangat terbantu.

2. Pada uji coba yang dilakukan, modul rekomendasi kategorimenghasilkan performa terbaik dengan parameter sebagai berikut, nilai k = 10 dan batasan jumlah term pada dokumen permintaanadalah 10 term dengan nilai tf-idf terbesar. Performa yang dihasilkanadalah akurasi sebesar 71.84%, presisi sebesar 65.97%, recall sebesar 70.38% dan 𝐹1 sebesar 65.38.

3. Tingkat presisi, recall dan 𝐹1 yang dicapai pada modul rekomendasi

kategori berbeda kurang lebih 10% dengan tingkat presisi.

Saran

4710 Juli 2013 Tugas Akhir - KI091391

1. Rekomendasi kategori tidak hanya mengacu terhadap metadata dariartikel-artikel yang dipublikasi. Pengembang dapat menambahkanAuthor sebagai acuan untuk merekomendasi sebuah artikel.

2. Penambahan sebuah fitur penyerahan artikel ketika Authormemperoleh rekomendasi kategori dari artikel yang diminta. Authortidak harus memasukkan data artikel dari awal melainkanmenggunakan data yang sudah dimasukkan ketika memintarekomendasi kategori.

3. Penambahan pilihan bahasa sehingga rekomendasi kategori tidakterbatas pada bahasa tertentu saja.

10 Juli 2013 Tugas Akhir - KI091391 48

Implementasi

Tinjauan PustakaLatar Belakang

Juli 2013 Tugas Akhir - KI091391 49

KERANGKA PRESENTASI

Pendahuluan

Analisis dan DesainRumusan Masalah

Batasan Masalah

Tujuan

LATAR BELAKANG

50Juli 2013 Tugas Akhir - KI091391

1. Kewajiban publikasi ilmiah bagi mahasiswa sebagai syarat kelulusan.

2. Salah satu cara publikasi ilmiah adalah melalui situs e-jurnal.

3. POMITS merupakan salah situs e-jurnal yang dikhususkan untukmahasiswa ITS.

4. Pada POMITS, penulis dapat memilih section untuk artikel yang hendak didaftarkan ke POMITS tetapi pilihan ini seringkali tidaksesuai dengan deskripsi dari section terkait.

SOLUSI

51Juli 2013 Tugas Akhir - KI091391

Dibuatlah sebuah modul OJS untuk merekomendasi sebuah kategoriapa yang sesuai dengan artikel yang hendak didaftarkan penulis.

RUMUSAN MASALAH

5210 Juli 2013 Tugas Akhir - KI091391

1. Bagaimana membuat sebuah modul rekomendasi kategori padaOpen Journal System (OJS) berdasarkan metadata dari artikelilmiah?

2. Bagaimana proses modul pada OJS merekomendasikan kategori darisebuah artikel ilmiah?

BATASAN MASALAH

5310 Juli 2013 Tugas Akhir - KI091391

Situs jurnal yang digunakan adalah situs POMITS yang menerapkan OJS sebagai sistemnya.

TUJUAN

5410 Juli 2013 Tugas Akhir - KI091391

Modul rekomendasi kategori pada OJS ini diharapkan akan mempermudah penulis dalam menentukan kategori untuk sebuah artikel ilmiah yang hendak didaftarkan ke dalam situs POMITS.

Juli 2013 Tugas Akhir - KI091391 55

KERANGKA PRESENTASI

Pendahuluan

Tinjauan Pustaka

Analisis dan Desain

Implementasi

Open Journal System

POMITS

STKI

K-Nearest Neighbor

OPEN JOURNAL SYSTEM

5610 Juli 2013 Tugas Akhir - KI091391

Open Journal Systems atau OJS adalah sebuah sistem manajemenkonten berbasis web yang khusus dibuat untuk menangani keseluruhanproses manajemen publikasi ilmiah dari proses call for paper, peer review, hingga penerbitan dalam bentuk daring.

POMITS

5710 Juli 2013 Tugas Akhir - KI091391

Publikasi Online Mahasiswa Institut Teknologi Sepuluh Nopember(POMITS) merupakan media publikasi daring yang disediakan InstitutTeknologi Sepuluh Nopember (ITS) Surabaya yang diperuntukan untukpublikasi karya ilmiah yang diharapan mendorong kebudayaan ilmiahyang baik di kalangan civitas akademika.

POMITS

5810 Juli 2013 Tugas Akhir - KI091391

Halaman situs: ejurnal.its.ac.id

STKI

5910 Juli 2013 Tugas Akhir - KI091391

Sistem Temu Kembali Informasi:

1. Prapemrosesan• Tokenisasi• Stopwords

• Stemming (Tala)

2. Model Ruang Vektor

3. Teknik Pembobotan Tf-Idf

4. Cosine Similarity

K-NEAREST NEIGHBOR

6010 Juli 2013 Tugas Akhir - KI091391

1. Tujuan dari algoritma adalah menentukan kelas kelas atau kategoridari suatu objek berdasarkan pola dari k objek terdekatnya.

2. Dibutuhkan tiga parameter yaitu himpunan data, jarak antar data dan nilai k.

Open Journal System

Juli 2013 Tugas Akhir - KI091391 61

KERANGKA PRESENTASI

Pendahuluan

POMITS

STKI

K-Nearest Neighbor

Open Journal System

Penghitungan Performa

6210 Juli 2013 Tugas Akhir - KI091391

Akurasi = Jumlah semua rekomendasi yang benar dibagi jumlahpercobaan

rekomendasi

A B C

ha

sil

A 𝑡𝑝𝐴 𝑒𝐴𝐵 𝑒𝐴𝐶

B 𝑒𝐵𝐴 𝑡𝑝𝐵 𝑒𝐵𝐶

C 𝑒𝐶𝐴 𝑒𝐶𝐵 𝑡𝑝𝐶

Akurasi =𝑡𝑝𝐴 + 𝑡𝑝𝐵 + 𝑡𝑝𝐶

𝑡𝑝𝐴 + 𝑒𝐴𝐵 + 𝑒𝐴𝐶 + 𝑡𝑝𝐵 + 𝑒𝐵𝐴 + 𝑒𝐵𝐶 + 𝑡𝑝𝐶 + 𝑒𝐶𝐴 + 𝑒𝐶𝐵

Penghitungan Performa

6310 Juli 2013 Tugas Akhir - KI091391

Presisi merupakan penghitungan akurasi dari kelas tertentu yang telahdiprediksi sebelumnya.

Presisi didefinisikan sebagai persamaan berikut:

rekomendasi

A B C

ha

sil

A 𝑡𝑝𝐴 𝑒𝐴𝐵 𝑒𝐴𝐶

B 𝑒𝐵𝐴 𝑡𝑝𝐵 𝑒𝐵𝐶

C 𝑒𝐶𝐴 𝑒𝐶𝐵 𝑡𝑝𝐶

Presisi A =𝑡𝑝𝐴

𝑡𝑝𝐴 + 𝑒𝐵𝐴 + 𝑒𝐶𝐴

Presisi = 𝑡𝑝

𝑡𝑝 + 𝑓𝑝

Dimana:• 𝑡𝑝 merupakan prediksi true positive dari kelas tertentu• 𝑓𝑝 merupakan prediksi false positive dari kelas tertentu

Penghitungan Performa

6410 Juli 2013 Tugas Akhir - KI091391

Recall merupakan penghitungan kemampuan dari sebuah metodeprediksi untuk menentukan kelas dari sebuah himpunan data dengan tepat.

Recall didefinisikan sebagai persamaan berikut:

rekomendasi

A B C

ha

sil

A 𝑡𝑝𝐴 𝑒𝐴𝐵 𝑒𝐴𝐶

B 𝑒𝐵𝐴 𝑡𝑝𝐵 𝑒𝐵𝐶

C 𝑒𝐶𝐴 𝑒𝐶𝐵 𝑡𝑝𝐶

Recall A =𝑡𝑝𝐴

𝑡𝑝𝐴 + 𝑒𝐴𝐵 + 𝑒𝐴𝐶

Recall = 𝑡𝑝

𝑡𝑝 + 𝑓𝑛Dimana:• 𝑡𝑝 merupakan prediksi true positive dari kelas tertentu• 𝑓𝑛 merupakan prediksi false negative dari kelas tertentu• 𝑡𝑝 + 𝑓𝑛 merupakan jumlah percobaan yang dilakukan pada kelas tertentu

Prapemrosesan STKI

Rangkaian Proses

Juli 2013 Tugas Akhir - KI091391 65

KERANGKA PRESENTASI

Model Ruang Vektor

Penghitungan bobot Tf-Idf

Tokenisasi

Stopword

Stemming

1

2

3

K-Nearest Neighbor

1. Tokenisasi

6610 Juli 2013 Tugas Akhir - KI091391

1. Masukan berupa teks dari abstrak, judul sertakata kunci dari sebuah artikel

2. Tokenisasi berguna untuk memecah sebuah teksmenjadi token-token yang nantinya akan diproseskembali untuk mendapatkan token-token yang mempunyai nilai tinggi (kata-kata yang bermakna)

Tokenisasi

Stopword

Stemming

1

2. Stopword

6710 Juli 2013 Tugas Akhir - KI091391

• Bertujuan untuk menghilangkan kata umum darisebuah teks

• Dengan cara membandingkan sebuah kata (hasildari proses Tokenisasi) dengan daftar kata umumBahasa Indonesia

Tokenisasi

Stopword

Stemming

2

3. Stemming

6810 Juli 2013 Tugas Akhir - KI091391

• Bertujuan untuk mendapatkan kata dasar darisebuah teks

• Menggunakan stemmer Tala

Tokenisasi

Stopword

Stemming3

Prapemrosesan STKI

Rangkaian Proses

Juli 2013 Tugas Akhir - KI091391 69

KERANGKA PRESENTASI

Model Ruang Vektor

Penghitungan bobot Tf-Idf

K-Nearest Neighbor