pembuatan sistem rekomendasi jawaban dan …si.its.ac.id/data/sisfo_data/files/5_vol2no2.pdf ·...

9
SISFO-Jurnal Sistem Informasi PEMBUATAN SISTEM REKOMENDASI JAWABAN DAN ONTOLOGY DRIVEN KNOWLEDGE BASE UNTUK FORUM TANYA JAWAB DI MOODLE E-LEARNING Riska Asriana Sutrisnowati 1) , Wiwik Anggraeni 2) , Ahmad Mukhlason 3) Jurusan Sistem Informasi Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Surabaya 1) [email protected], 2) [email protected], 3) [email protected] Abstract This paper will make a system capable of providing recommendations answers to questions by doing text similarity algorithm implementation and managing knowledge questions and answers by using Ontology driven knowledge base. Text Similarity algorithm used to classify a new question with a question that already exists in the FAQ database. If there are questions on the FAQ Database has a probability value above a predetermined threshold would also assume the answer to this question is the answer new questions. Text Similarity, on the application will be divided into three types of programs to compare their performance, namely Pure Text Similarity, Text Similarity with Porter stemming and Text Similarity in WordNet. From the results of the system that has been made, the performance of algorithms with WordNet Text Similarity better than two other programs. Ontology that was built is still a recommendation system initialization response. Keywords : e-learning, text similarity algorithm, knowledge base, ontology, moodle Abstrak Dalam makalah ini akan dibuat suatu sistem yang mampu memberikan rekomendasi jawaban-jawaban atas pertanyaan yang ada dengan melakukan implementasi algoritma text similarity dan mengelola knowledge pertanyaan dan jawaban dengan menggunakan ontology driven knowledge base. Algoritma Text Similarity digunakan untuk mengklasifikasikan pertanyaan baru dengan pertanyaan yang sudah ada di FAQ database. Jika terdapat pertanyaan pada FAQ Database mempunyai nilai probabilitas diatas threshold yang telah ditentukan maka diasumsikan jawaban dari pertanyaan ini merupakan jawaban dari pertanyaan baru. Pada penerapan Text Similarity akan dibagi menjadi tiga jenis program untuk membandingkan performanya, yakni Pure Text Similarity, Text Similarity dengan Porter Stemming dan Text Similarity dengan WordNet. Dari hasil sistem yang telah dibuat, performa algoritma Text Similarity dengan WordNet lebih baik daripada dua program lainnya. Ontology yang dibangun masih merupakan sebuah inisialisasi sistem rekomendasi jawaban. Kata Kunci : e-learning, algoritma text similarity, knowledge base, ontology, moodle 1. PENDAHULUAN E-learning singkatan dari electronic-learning, merupakan media pendidikan jarak jauh elektronik yang lazim digunakan saat ini. Teknologi ini membantu para pendidik dan peserta didik untuk melakukan proses belajar mengajar. Banyak fasilitas dalam sebuah e- learning, diantaranya terdapat forum untuk tanya jawab antara pendidik dan peserta didik. Selama ini, pertanyaan-pertanyaan yang ada dalam forum tanya jawab tersebut dijawab satu persatu oleh pendidik. Dalam forum tanya jawab ini seringkali pertanyaan yang sama disampaikan peserta didik sehingga pendidik harus menjawab pertanyaan yang sama berulang kali. Hal ini tentunya merupakan pekerjaan yang menyita waktu bagi pendidik. Seharusnya pertanyaan yang sudah pernah ditanyakan tak perlu dijawab lagi. Oleh karena itu diperlukan suatu sistem yang mampu memberikan rekomendasi jawaban berdasarkan informasi yang sudah ada. Diharapkan dengan adanya sistem rekomendasi jawaban ini dapat membantu pengelolaan informasi dan memulai langkah pengembangan e-learning cerdas. Sistem rekomendasi jawaban yang akan dibuat akan menggunakan algoritma Text Similarity dan ontology knowledge base. Algoritma Text Similarity digunakan untuk mengklasifikasikan kemiripan antara pertanyaan baru dengan pertanyaan yang ada di database sedangkan ontology knowledge base pada makalah ini hanya bersifat usulan tekstual yang belum terintegrasi secara langsung dengan sistem.

Upload: nguyenthuan

Post on 25-Feb-2018

226 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: PEMBUATAN SISTEM REKOMENDASI JAWABAN DAN …si.its.ac.id/data/sisfo_data/files/5_vol2no2.pdf · untuk mengklasifikasikan kemiripan antara pertanyaan baru dengan pertanyaan yang ada

SISFO-Jurnal Sistem Informasi

PEMBUATAN SISTEM REKOMENDASI JAWABAN DAN ONTOLOGY DRIVEN KNOWLEDGE BASE UNTUK FORUM TANYA JAWAB DI

MOODLE E-LEARNING

Riska Asriana Sutrisnowati1), Wiwik Anggraeni2), Ahmad Mukhlason3)

Jurusan Sistem Informasi Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Surabaya

1)[email protected], 2)[email protected], 3)[email protected]

Abstract This paper will make a system capable of providing recommendations answers to questions by doing text

similarity algorithm implementation and managing knowledge questions and answers by using Ontology driven knowledge base.

Text Similarity algorithm used to classify a new question with a question that already exists in the FAQ database. If there are questions on the FAQ Database has a probability value above a predetermined threshold would also assume the answer to this question is the answer new questions. Text Similarity, on the application will be divided into three types of programs to compare their performance, namely Pure Text Similarity, Text Similarity with Porter stemming and Text Similarity in WordNet.

From the results of the system that has been made, the performance of algorithms with WordNet Text Similarity better than two other programs. Ontology that was built is still a recommendation system initialization response. Keywords : e-learning, text similarity algorithm, knowledge base, ontology, moodle

Abstrak Dalam makalah ini akan dibuat suatu sistem yang mampu memberikan rekomendasi jawaban-jawaban atas

pertanyaan yang ada dengan melakukan implementasi algoritma text similarity dan mengelola knowledge pertanyaan dan jawaban dengan menggunakan ontology driven knowledge base.

Algoritma Text Similarity digunakan untuk mengklasifikasikan pertanyaan baru dengan pertanyaan yang sudah ada di FAQ database. Jika terdapat pertanyaan pada FAQ Database mempunyai nilai probabilitas diatas threshold yang telah ditentukan maka diasumsikan jawaban dari pertanyaan ini merupakan jawaban dari pertanyaan baru. Pada penerapan Text Similarity akan dibagi menjadi tiga jenis program untuk membandingkan performanya, yakni Pure Text Similarity, Text Similarity dengan Porter Stemming dan Text Similarity dengan WordNet.

Dari hasil sistem yang telah dibuat, performa algoritma Text Similarity dengan WordNet lebih baik daripada dua program lainnya. Ontology yang dibangun masih merupakan sebuah inisialisasi sistem rekomendasi jawaban. Kata Kunci : e-learning, algoritma text similarity, knowledge base, ontology, moodle

1. PENDAHULUAN E-learning singkatan dari electronic-learning, merupakan media pendidikan jarak jauh elektronik yang lazim digunakan saat ini. Teknologi ini membantu para pendidik dan peserta didik untuk melakukan proses belajar mengajar. Banyak fasilitas dalam sebuah e-learning, diantaranya terdapat forum untuk tanya jawab antara pendidik dan peserta didik. Selama ini, pertanyaan-pertanyaan yang ada dalam forum tanya jawab tersebut dijawab satu persatu oleh pendidik. Dalam forum tanya jawab ini seringkali pertanyaan yang sama disampaikan peserta didik sehingga pendidik harus menjawab pertanyaan yang sama berulang kali. Hal ini tentunya merupakan pekerjaan yang menyita waktu bagi pendidik. Seharusnya pertanyaan yang sudah pernah ditanyakan tak perlu dijawab lagi. Oleh karena itu

diperlukan suatu sistem yang mampu memberikan rekomendasi jawaban berdasarkan informasi yang sudah ada. Diharapkan dengan adanya sistem rekomendasi jawaban ini dapat membantu pengelolaan informasi dan memulai langkah pengembangan e-learning cerdas. Sistem rekomendasi jawaban yang akan dibuat akan menggunakan algoritma Text Similarity dan ontology knowledge base. Algoritma Text Similarity digunakan untuk mengklasifikasikan kemiripan antara pertanyaan baru dengan pertanyaan yang ada di database sedangkan ontology knowledge base pada makalah ini hanya bersifat usulan tekstual yang belum terintegrasi secara langsung dengan sistem.

Page 2: PEMBUATAN SISTEM REKOMENDASI JAWABAN DAN …si.its.ac.id/data/sisfo_data/files/5_vol2no2.pdf · untuk mengklasifikasikan kemiripan antara pertanyaan baru dengan pertanyaan yang ada

SISFO-Jurnal Sistem Informasi Dibawah ini akan dijelaskan mengenai studi pustaka, rancangan dan implementasi serta ujicoba sistem rekomendasi jawaban. 2. TINJAUAN PUSTAKA 2.1. Knowledge Base Management Langkah-langkah pembuatan inisialisasi ontology sebagai berikut : 1. Menentukan domain dan batasan ontology.

Bagian ini menjelaskan ruang lingkup domain ontology yang akan dibuat, meliputi siapa user, kebutuhan seperti apa yang dapat dipenuhi ontology, pertanyaan seperti apa yang dapat dijawab ontology.

2. Mendefinisikan Class dan Class Hierarchy. Bagian ini menjelaskan mengenai nama kelas dan susunan hierarkinya.

3. Mendefinisikan Property Property dalam ontology terbagi menjadi, yakni Object Property dan Data Property. Object Property menjelaskan mengenai pendefinisian property atau relasi antar class maupun antar individu. Sedangkan Data Property menjelaskan mengenai metadata dari suatu individu.

4. Mendefinisikan domain dan range Tiap-tiap Property yang sudah didefinisikan kemudian ditentukan domain dan property-nya.

5. Menentukan batasan-batasan Batasan (restriction) ini dibagi menjadi 3, yakni batasan kardinalitas (minimum / maximum /exactly), batasan universal (only) dan batasan eksistensial (some).

6. Menentukan instance atau individu pada bagian ini dapat ditentukan individu yang merupakan anggota class yang sudah didefinisikan sebelumnya.

2.2. Algoritma Text Similarity Berikut adalah deskripsi komputasi algoritma Text Similarity: Input : Dokumen S, himpunan case data T, nilai k. Output : hasil klasifikasi dari dokumen S. 1. Jika WordNet Model belum di-load, maka load

terlebih dahulu WordNet Model. 2. Hitung apakah T telah

ditransformasikan dalam model vector, jika belum lakukan pemisahan kata yang tidak penting dan komputasikan TF-IDF untuk tiap training dokumen. Berikut perhitungan TF-IDF untuk training data :

dimana : tfij : jumlah term j yg terdapat pada metadata koleksi i, tfij =0 jika term j tidak terdapat pada metadata koleksi i; dfj : jumlah metadata yang mengandung term j; D : jumlah total koleksi;

Selanjutnya perlu dihitung nilai absolut dari tiap dokumen :

3. Lakukan proses pemisahan kata yang

tidak penting dengan menggunakan Stemming algoritma dengan Algoritma Porter Stemming dan komputasikan TF-IDF untuk dokumen S sehingga didapatkan hasil Q.

tfQj   : jumlah term j yg terdapat pada metadata koleksi Q,

4. Untuk setiap training dokumen t ∈   T,

lakukan langkah nomor 5 dan 6. 5. Hitung kesamaan Sim(Q,Di) antara Di

dan Q, berdasarkan pada algoritma pada penghitungan kesamaan dokumen berikut ini :

jika maka :

6. Biarkan dokumen k dari T yang sama

dengan Q 7. Klasifikasi bobot terbesar dari perhitungan pada

nomor 7 merupakan hasil klasifikasi dokumen S.

2.3. Moodle E-learning Modul baru yang akan digunakan penulis adalah modul sojunit dari Moodle (http://moodle.org/mod/data/ view.php?d=13&rid=3613&filter=1) yang akan dimodifikasi. Sehingga, tahap awal pembuatan modul ini sebenarnya adalah tahap pengaplikasian modul sojunit dari Moodle yang kemudian akan dimodifikasi. 3. DESAIN SISTEM Rancangan untuk sistem rekomendasi jawaban ini ditunjukkan oleh Gambar 1.

Page 3: PEMBUATAN SISTEM REKOMENDASI JAWABAN DAN …si.its.ac.id/data/sisfo_data/files/5_vol2no2.pdf · untuk mengklasifikasikan kemiripan antara pertanyaan baru dengan pertanyaan yang ada

SISFO-Jurnal Sistem Informasi

Gambar 1. Skema Pengerjaan Sistem Rekomendasi Jawaban

Seperti ditunjukkan oleh Gambar 1, sistem secara garis besar dapat dijelaskan sebagai berikut : 1. No. 1 - Proses input pertanyaan oleh mahasiswa 2. No. 2 - Proses load database FAQ yang akan

diproses bersama dengan pertanyaan mahasiswa dengan mengimplementasikan algoritma Text Similarity

3. No 3 – Hasil proses algoritma Text Similarity. Jika hasilnya mendekati threshold yang sudah ditentukan maka akan dilanjutkan ke langkah no. 4.1. dan 4.2., yakni menyajikan jawaban kepada mahasiswa. Jika hasil perhitungan Text Similarity kurang dari threshold yang ditentukan maka akan dilanjutkan ke langkah no. 5 dan 6, yakni sistem akan memberikan pesan bahwa pertanyaan tersebut belum pernah diajukan sebelumnya.

4. No.7. – Pembuatan inisialisasi ontology yang nantinya diperuntukkan sebagai basis sistem rekomendasi jawaban. Namun, untuk saat ini hanya berhenti pada tahap inisialisasi saja.

5. Q&A database merupakan FAQ Database yang berisikan 702 pertanyaan dan jawaban.

6. Asumsi threshold yang digunakan adalah 0.5 4. IMPLEMENTASI 4.1. Ontology Knowledge Base Langkah-langkah dalam pembuatan inisialisasi ontology adalah sebagai berikut : 1. Menentukan domain dan batasan ontology

Domain dan batasan ontology dilakukan dengan menjawab pertanyaan-pertanyaan : • Ontology yang akan dibuat meliputi domain apa

? domain ontology yang akan dibuat meliputi mata kuliah Pengantar Sistem Informasi Jurusan Sistem Informasi ITS tahun 2009-2010

• Untuk kebutuhan apa ontology akan dibuat ? Ontology dibuat sebagai dasar knowledge untuk pembuatan sistem rekomendasi jawaban

• Informasi dalam ontology berguna untuk menjawab pertanyaan seperti apa ? Pertanyaan yang akan dijawab oleh ontology terdapat pada Tabel 1.

Tabel 1. Contoh Pertanyaan why until now the artificial intelligence can not be made perfect ? if human has been replaced by computer, will it happened to become chaotic by the intelligence of the computer itself? we study about artificial intelligent, my question is can we apply this technology in our live? specially in our study in Information System department how far can AI be developed?

describe the examples of Business Information System!! • Siapa yang akan menggunakan dan memelihara

ontology? pengguna ontology adalah mahasiswa dan dosen mata kuliah Pengantar Sistem Informasi

2. Mendefinisikan Class dan Class Hierarchy Susunan Class Hierarchy ditunjukkan oleh Gambar 2.

Gambar 2. Class Hierarchy

Gambar 3. Class Gambar Hierarchy pada OntoGraf

a. Topic : satu subyek pokok bahasan mata

kuliah Pengantar Sistem Informasi b. SubTopic: materi dalam suatu topik tertentu c. Resources: buku, website sumber dari jawaban d. Question: pertanyaan yg ditanyakan oleh

mahasiswa e. Answer : jawaban atas pertanyaan mahasiswa f. Human : dosen

3. Mendefinisikan Property

Definisi Property yang akan digunakan pada ontology ditunjukkan pada Gambar 2 sedangkan Inverse Property untuk Object Property terdapat pada Gambar 3.

Page 4: PEMBUATAN SISTEM REKOMENDASI JAWABAN DAN …si.its.ac.id/data/sisfo_data/files/5_vol2no2.pdf · untuk mengklasifikasikan kemiripan antara pertanyaan baru dengan pertanyaan yang ada

SISFO-Jurnal Sistem Informasi

Tabel 2. Definisi Property

Tabel 3. Inverse Property

Gambar 4. Seluruh Object Property dan Inverse Property-

nya Berikut adalah definisi Object Property : a. hasSubTopic menghubungkan individu pada

class topik dengan individu pada class subtopik. b. hasAsked menghubungkan individu pada class

subtopik dengan individu pada class pertanyaan. c. hasAnswer menghubungkan individu pada class

pertanyaan dengan individu pada class jawaban. d. hasResources menghubungkan individu pada

class jawaban dengan individu pada class sumber.

e. hasAnswered menghubungkan individu pada class sumber dengan individu pada class penjawab.

4. Mendefinisikan domain dan range Domain dan range dari property yang telah didefisikan sebelumnya ditunjukkan pada Tabel 4.

Tabel 4. Domain dan Range Property

Gambar 5. Class Property pada OntoGraf

Berikut adalah penjelasan dari Gambar 5. : a. domain dari properti hasSubTopic adalah class

Topic dan range-nya adalah class SubTopic. b. domain dari properti hasQuestion adalah class

SubTopic dan range-nya adalah class Question. c. domain dari properti hasAnswer adalah class

Question dan range-nya adalah class Answer. d. domain dari properti hasResources adalah class

Answer dan range-nya adalah class Resources. e. domain dari properti hasAnswered adalah class

Resources dan range-nya adalah class Human.

5. Menentukan batasan-batasan Definisi batasan yang digunakan pada ontology ditunjukkan pada Tabel 5 dibawah ini :

Tabel 5. Batasan existential

Berikut adalah penjelasan dari Tabel 5 :

Page 5: PEMBUATAN SISTEM REKOMENDASI JAWABAN DAN …si.its.ac.id/data/sisfo_data/files/5_vol2no2.pdf · untuk mengklasifikasikan kemiripan antara pertanyaan baru dengan pertanyaan yang ada

SISFO-Jurnal Sistem Informasi

a. hasSubTopic mempunyai batasan existential dari individu pada class Topic ke individu pada class SubTopic.

b. hasQuestion mempunyai batasan existential dari individu pada class SubTopic ke individu pada class Question.

c. hasAnswer mempunyai batasan existential dari individu pada class Question ke individu pada class Answer.

d. hasResources mempunyai batasan existential dari individu pada class Answer ke individu pada class Resources.

e. hasAnswered mempunyai batasan existential dari individu pada class Resources ke individu pada class Human.

6. Menentukan instance atau individu Gambar 6. memberikan beberapa contoh individu untuk masing-masing class pada ontology.

Gambar 6. Ilustrasi Individu dalam Class pada OntoGraf.

Berikut adalah hasil akhir dari ontology yang telah dibuat:

Gambar 7. Inisialisasi Ontology pada OntoGraf

4.2. Algoritma Text Similarity Gambar alur Program Text similarity ditunjukkan pada gambar 8.

Gambar 8. Alur Program

Algoritma Text Similarity diimplementasikan dalam tiga program yang berbeda, Text Similarity Murni, Text Similarity dengan Porter Stemming dan Text Similarity dengan WordNet Database. Tiga implementasi tersebut digunakan untuk membandingkan performa penggunaan Algoritma Porter Stemming dan WordNet Database yang fungsinya hampir sama. Perbedaan ketiga program tersebut terletak pada tahap preprocessing kata. Untuk program Text Similarity dengan Porter Stemming dilakukan langkah untuk mencari kata dasar tiap kata pada training data maupun test data. Sedangkan untuk program Text Similarity dengan WordNet Database, pada tahap preprocessing dilakukan langkah untuk mencari sinonim dan turunan kata dengan memperhatikan makna tiap kata yang ada pada test data dan training data. Dan untuk program Text Similarity Murni tidak dilakukan pencarian kata dasar dan pencarian sinonim. Ujicoba program dilakukan dengan tiga skenario : 1. Memberikan test data berupa 10 data yang sangat

tidak mirip dengan FAQ Database (F1-F10). Tabel 6. Daftar Pertanyaan untuk Uji Coba

2. Memberikan test data berupa 10 data yang sangat mirip dengan FAQ Database (N1-N10).

Page 6: PEMBUATAN SISTEM REKOMENDASI JAWABAN DAN …si.its.ac.id/data/sisfo_data/files/5_vol2no2.pdf · untuk mengklasifikasikan kemiripan antara pertanyaan baru dengan pertanyaan yang ada

SISFO-Jurnal Sistem Informasi

Tabel 7. Daftar Pertanyaan untuk Uji Coba

3. Memberikan test data berupa 10 data acak yang ada

diantara F1-F10 dan N1-N10. 4.3. Integrasi Program Text Similarity Dengan

Moodle E-Learning Berikut adalah langkah-langkah integrasi program Text Similarity dengan modul sojunit pada Moodle E-Learning : 1. Modifikasi edit_sojunit_form.php

Editing pembuatan quiz baru dengan menonaktifkan baris 155-217 dan baris 227 sehingga form load test file .java tidak perlu tampil pada saat pembuatan quiz baru.

2. Modifikasi questiontype.php Replace function grade_responses(&$question, &$state, $cmoptions) dengan kode dibawah ini:

function grade_responses(&$question, &$state, $cmoptions) { global $CFG; global $COURSE; $state->raw_grade = 0; //set location of .jar file $temp_file = "D:/MINE/Kul/TA/Judul 3- KM-Ontology-/WordNet Java API/TextSimilarityWNet/dist/TextSimilarityWNet.jar"; // Get the student's code from TextArea. // Deal with special case: no responses at all. if (empty($state->responses)) { //Tim Hunt: changed the next 10 lines $state->responses == array(); } // Prepare the students response. if (!empty($state->responses[''])) { $studentscode = stripslashes($state->responses['']); } else { $studentscode = $question->options->givencode; } $executionoutput = $this->execute($temp_file, $temp_folder, $pre, $studentscode); //set $state with the result of executionoutput $state->responses['_executionoutput'] = $executionoutput;

return true;} 3. Replace function execute($temp_file, $temp_folder,

$pre) dengan kode dibawah ini : function execute($temp_file, $temp_folder, $pre, $student_respons){ //setting log for output execution result file $executionoutputfile = $temp_folder . '/' . $pre . 'executionoutput.log'; //setting path to execute //e.g. c:/>java –jar "D:/MINE/Kul/TA/Judul 3- KM-Ontology-/WordNet Java API/TextSimilarityWNet/dist/TextSimilarityWNet.jar" “test data” $command = PATH_TO_JAVA . ' -jar "' . $temp_file . '" "'.$student_respons.'"' . ' > ' . $executionoutputfile . ' 2>&1'; // Execute it. exec($command); // get the content of the execution output. $executionoutput = file_get_contents($executionoutputfile); return $executionoutput; } 4. Untuk menampilkan Text Area untuk input

pertanyaan mahasiswa dan menampilkan output program Text Similarity pada modul sojunit, replace function print_question_formulation_and_controls (&$question, &$state, $cmoptions, $options) dengan syntax dibawah ini:

function print_question_formulation_and_controls(&$question, &$state, $cmoptions, $options) { global $CFG, $COURSE; // Print the questiontext $questiontext = $this->format_text($question->questiontext, $question->questiontextformat, $cmoptions); $image = get_question_image($question, $cmoptions->course); // Prepare the students response. if (!empty($state->responses[''])) { $studentscode = stripslashes_safe($state->responses['']); } else { $studentscode = $question->options->givencode; } $inputname = $question->name_prefix; $course_files_directory_backslashes = make_upload_directory("$COURSE->id"); // path for course files $course_files_directory = str_replace("\\","/",$course_files_directory_backslashes); //replace \\ with / $testcode = file_get_contents($course_files_directory . '/' . $question->options->testclassname);

Page 7: PEMBUATAN SISTEM REKOMENDASI JAWABAN DAN …si.its.ac.id/data/sisfo_data/files/5_vol2no2.pdf · untuk mengklasifikasikan kemiripan antara pertanyaan baru dengan pertanyaan yang ada

SISFO-Jurnal Sistem Informasi // Question text, image and given code. echo '<div class="qtext">', $questiontext, '</div>'; if ($image) { echo '<img class="qimage" src="', $image, '" alt="" />'; } // Start of students response, execution output etc. echo '<div class="ablock clearfix" spellcheck="false">'; // Response of student – input student if (empty($options->readonly)) { //if not readonly - editable $answer = print_textarea(false, 10, 100, 630, 400, $inputname, $studentscode, $cmoptions->course, true); echo $answer; } else { //if readonly - not editable echo '<div class="studentscode">', $this->format_code($studentscode, $cmoptions) . '</div>'; } // Display any feedback - that is any compiler output or execution output. if (!empty($state->responses['_executionoutput'])) { echo '<div class="feedback">'; echo '<p>', get_string('executionoutput','qtype_sojunit'), '</p>'; echo '<pre class="executionoutput">', s($state->responses['_executionoutput'], true), '</pre>'; echo '</div>'; } $this->print_question_submit_buttons($question, $state, $cmoptions, $options); echo '</div>'; } 5. Dari quiz yang sudah dibuat tadi, kemudian akan di-

preview untuk mengecek apakah modul sojunit sudah terkoneksi dengan program Text Similarity.

Gambar 9. Tampilan preview quiz yang telah dibuat

6. Kemudian masukkan contoh pertanyaan pada TextArea dan tekan tombol Submit.

Gambar 10. Contoh input Pertanyaan

Gambar 11.Hasil eksekusi modul dengan program Text

Similarity 7. Hasilnya sudah muncul diatas TextArea, hasil ini

menandakan modul sojunit sudah terkoneksi dengan program Text Similarity. Hasil yang ditampilkan adalah hasil perhitungan Text Similarity dengan probabilitas diatas 0.5.

5. PEMBAHASAN Berikut adalah grafik hasil rata-rata nilai dari Algoritma Text Similarity: 1. Grafik rata-rata dari seluruh nilai pada pertanyaan

yang sangat tidak mirip dengan FAQ Database (pertanyaan F1-F10) :

Tabel 8. Rata-rata hasil ujicoba F1-F10

Page 8: PEMBUATAN SISTEM REKOMENDASI JAWABAN DAN …si.its.ac.id/data/sisfo_data/files/5_vol2no2.pdf · untuk mengklasifikasikan kemiripan antara pertanyaan baru dengan pertanyaan yang ada

SISFO-Jurnal Sistem Informasi

Gambar 12. Rata-rata hasil ujicoba F1-F10

Hasilnya didapatkan bahwa algoritma Text Similarity dengan WordNet mempunyai rata-rata paling tinggi dengan nilai 0.029527 daripada Algoritma Pure Text Similarity (0.020854) dan Algoritma Text Similarity dengan Porter Stemming (0.025642) untuk pertanyaan yang sangat tidak mirip dengan FAQ Database.

2. Grafik rata-rata dari seluruh nilai pada pertanyaan

yang sangat mirip dengan FAQ Database (pertanyaan N1-N10) :

. Tabel 9. Rata-rata hasil ujicoba N1-N10

Hasilnya didapatkan bahwa algoritma Text Similarity dengan WordNet mempunyai rata-rata paling tinggi dengan nilai 0.04212 daripada Algoritma Pure Text Similarity (0.024758) dan Algoritma Text Similarity dengan Porter Stemming (0.028756) untuk pertanyaan yang sangat mirip dengan FAQ Database.

Gambar 13. Rata-rata hasil ujicoba N1-N10

3. Grafik rata-rata dari seluruh nilai pada pertanyaan

yang diambil secara acak dari F1-F10 dan N1-N10 :

Tabel 10. Rata-rata hasil ujicoba acak

Hasilnya didapatkan bahwa algoritma Text Similarity dengan WordNet mempunyai rata-rata paling tinggi dengan nilai 0.029914 daripada Algoritma Pure Text Similarity (0.019096) dan Algoritma Text Similarity dengan Porter Stemming (0.02355) untuk pertanyaan yang sangat mirip dengan FAQ Database.

Gambar 14.Rata-rata hasil ujicoba acak

4. Berikut Grafik rata-rata ketiga algoritma untuk

ketiga percobaan yang sudah dilakukan :

Page 9: PEMBUATAN SISTEM REKOMENDASI JAWABAN DAN …si.its.ac.id/data/sisfo_data/files/5_vol2no2.pdf · untuk mengklasifikasikan kemiripan antara pertanyaan baru dengan pertanyaan yang ada

SISFO-Jurnal Sistem Informasi

Tabel 11. Rata-rata ketiga algoritma

Gambar 15. Rata-rata ketiga algoritma

Dari ketiga ujicoba yang telah dilakukan dapat dilihat bahwa performa Algoritma Text Similarity dengan WordNet lebih baik daripada Pure Text Similarity maupun Text Similarity dengan Porter Stemming. Hal ini dikarenakan fungsi dari WordNet yang dapat menghubungkan antar kata sesuai dengan makna semantic-nya. Selain itu, WordNet dapat menentukan sinonim kata dan turunan kata tersebut sehingga jumlah kata yang yang dibandingkan menjadi lebih banyak dan mengakibatkan probabilitasnya menjadi naik setiap kali ada kata sinonim yang sama dengan kata yang ada pada FAQ database. Untuk sementara ini penggunakan ontology knowledge base hanya terbatas pada tahap inisialisasi saja dan belum terhubung sepenuhnya dengan sistem rekomendasi jawaban. Penggunaan ontology pada pengembangan rancangan sistem rekomendasi jawaban selanjutnya diharapkan dapat mencari hubungan antar class atau individu yang lebih luas melalui object property dan inverse property. 6. KESIMPULAN Simpulan yang dapat diambil adalah sebagai berikut: 1. Sistem rekomendasi jawaban yang telah dibuat

menggunakan Algoritma Text Similarity untuk mengklasifikasikan pertanyaan mahasiswa dengan

pertanyaan pada FAQ Database. Kemudian hasil klasifikasi tersebut akan ditampilkan dalam integrasi program Text Similarity dengan modifikasi modul sojunit pada Moodle. Dengan hasil integrasi ini didapatkan sistem rekomendasi yang dapat memberikan rekomendasi jawaban sesuai dengan FAQ Database.

2. Pembuatan inisialisasi ontology dengan Protégé 4.1.Beta dengan studi kasus rekomendasi jawaban sebagai inisialisasi pengembangan sistem rekomendasi jawaban dimasa mendatang. Ontology ini dibuat dengan mendefinisikan obyek-obyek yang terkait dengan sistem rekomendasi jawaban, kemudian mendefinisikan relasi antar obyek

7. REFERENSI [1] Bryan Bergeron, Essentials of Knowledge

Management, 2003. [2] John Davies, Dieter Fensel, Frank van Harmelen,

Towards the Semantic Web Ontology-driven Knowledge Management, 2003.

[3] Irawan Arifin, http://digilib.petra.ac.id/jiunkpe/s1/info/2008/jiunkpe-ns-s1-2008-26404135-11185-indomarc-chapter2.pdf, diakses Maret 2010.

[4] Matthew Horridge, Simon Jupp, Georgina Moulton, Alan Rector, Robert Stevens, Chris Wroe. A Practical Guide To Building OWL Ontologies Using Protégé 4 and CO-ODE Tools Edition 1.2, 2009.

[5] Natalya F. Noy and Deborah L. McGuinness. Stanford University, Stanford, CA, 94305.Ontology Development 101: A Guide to Creating Your First Ontology

[6] Ronald J. Brachman, Hector J. Leverque. Knowledge Representation and Reasoning, 2004.

[7] Ronald Maier, Knowledge Management Systems – Information and Communication Technologies for Knowledge Management, 2007.