1. Pendahuluan
Evaluasi hasil belajar menjadi komponen yang sangat penting dalam proses pembelajaran, karena hasil evaluasi merupakan indikator dari pemahaman siswa
terhadap materi ajar yang diberikan. Soal esai merupakan salah satu bentuk dari soal ujian atau evaluasi dimana tidak adanya pilihan jawaban yang disediakan
sehingga jawaban dapat bervariasi sesuai dengan pemikiran-pemikiran setiap peserta ujian[1].
Esai dianggap sebagai metode yang paling tepat untuk menilai hasil kegiatan belajar yang kompleks. Namun ternyata esai menimbulkan masalah baru
yaitu pemeriksaan esai yang membutuhkan waktu lama serta sifat subjektif dari penilai. Karena itu pengajar membutuhkan sistem yang dapat memeriksa esai
secara otomatis.
Tes
online
adalah sebuah tes yang berbasis komputer. Yang dimaksudkan adalah komputer digunakan sebagai sarana untuk mengadakan tes. Tes
online
dapat memudahkan pengajar dalam mengoreksi tes karena komputer akan secara otomatis mengoreksinya. Tes
online
juga dapat menghemat pemakaian kertas karena tidak memerlukan kertas untuk soal dan lembar jawab siswa.
Latent Semantic Analysis
LSA adalah merupakan sebuah metode statistik yang dapat digunakan untuk menentukan dan merepresentasikan kesamaan
makna dari kata-kata dan teks dengan cara melakukan analisis terhadap teks dalam jumlah yang besar. Dengan metode LSA, semantik dari teks dapat
ditentukan melalui proses perhitungan semantik similaritas yang merupakan proses keterlibatan beberapa ilmu seperti bahasa, komputer, logika matematika
dan domain yang bersangkutan.
Dengan adanya teknologi dan algoritma LSA ini akan diteliti bagaimana membuat sistem tes esai secara
online
dengan memanfaatkan algoritma LSA. Manfaat yang ingin dicapai didalam penelitian ini adalah agar pengajar dapat
dipermudah dalam memeriksa soal berbentuk esai dan mendapatkan patokan bobot nilai yang jelas.
2. Kajian Pustaka
Penelitian terdahulu tentang metode LSA adalah tentang penggunan metode LSA untuk menilai tes esai. Tahap-tahap metode LSA yang dilakukan pada
penelitian ini adalah
parsing test
, pembobotan
term
dengan TF-IDF, dekomposisi dan reduksi dengan SVD dan perhitungan
similarity
. Hasil dari penelitian tersebut adalah nilai
similarity
jawaban kunci dengan jawaban yang lainnya. [2]. Penelitian lain membahas tentang metode LSA dalam pembuatan ringkasan
teks dengan menggunakan peringkat dan intisari kalimat dari dokumen asli. Dalam penelitian ini LSA digunakan untuk mengidentifikasi semantik kalimat-
kalimat penting dalam pembuatan ringkasan. Sehingga menghasilkan kalimat yang mempunyai peringkat tertinggi dan berbeda dari yang lain. Hasil dari
penelitian ini dapat membuat ringkasan dokumen dengan cangkupan isi dokumen yang luas dan meminimalisir redundansi [3].
Penelitian yang lain membahas tentang sistem penilaian otomatis jawaban esai menggunakan ontologi pada moodle. Penelitian ini mengemukakan suatu
teknik gabungan yang disebut algoritma
hybrid
pada penilaian esai di sistem
e-
1
leraning
. Proses yang dilakukan pada penelitian ini antara lain pencarian sinonim berdasarkan pengukuran similaritas semantik berbasis
WordNet
dan pemberian skor pada kemiripan objek pada data ontologi. Hasil dari penelitian ini sudah
dapat dilakukan perhitungan kemiripan suatu kalimat berdasarkan kedekatan masing-masing katanya dalam struktur
database WordNet
. Selain itu jawaban akan dilihat hubungannya lagi berdasarkan pada struktur ontologi yang ada pada
jawaban di ontologi yang dimasukkan oleh
user
[4]. Dalam penelitian ini metode LSA juga dimanfaatkan untuk penilaian tes
esai dengan penambahan fungsi sinonim kata sehingga kata-kata yang digunakan dalam pembobotan kata lebih spesifik.
Stemming
Algoritma Nazief dan Adriani
Stemming
merupakan suatu proses yang terdapat dalam sistem
Information Retrieval
IR yang mentransformasi kata-kata yang terdapat dalam suatu dokumen ke kata-kata akarnya
root word
dengan menggunakan aturan-aturan tertentu. Sebagai contoh, kata bersama, kebersamaan, menyamai, akan distem ke
root word
nya yaitu “sama”. Proses
stemming
pada teks berbahasa Indonesia berbeda dengan
stemming
pada teks berbahasa Inggris. Pada teks berbahasa Inggris, proses yang diperlukan hanya proses menghilangkan sufiks. Sedangkan
pada teks berbahasa Indonesia, selain sufiks, prefiks, dan konfiks juga dihilangkan [5].
Algoritma yang dibuat oleh Bobby Nazief dan Mirna Adriani ini memiliki tahap-tahap sebagai berikut:
1. Cari kata yang akan distem dalam kamus. Jika ditemukan maka diasumsikan
bahwa kata tesebut adalah
root word
. Maka algoritma berhenti. 2.
Inflection Suffixes
“-lah”, “-kah”, “-ku”, “-mu”, atau “-nya” dibuang. Jika berupa
particles
“-lah”, “-kah”, “-tah” atau “-pun” maka langkah ini diulangi lagi untuk menghapus
Possesive Pronouns
“-ku”, “-mu”, atau “-nya”, jika ada.
3. Hapus
Derivation Suffixes
“-i”, “-an” atau “-kan”. Jika kata ditemukan di kamus, maka algoritma berhenti. Jika tidak maka ke langkah 3a
a. Jika “-an” telah dihapus dan huruf terakhir dari kata tersebut adalah “-
k”, maka “-k” juga ikut dihapus. Jika kata tersebut ditemukan dalam kamus maka algoritma berhenti. Jika tidak ditemukan maka lakukan
langkah 3b.
b. Akhiran yang dihapus “-i”, “-an” atau “-kan” dikembalikan, lanjut ke
langkah 4. 4.
Hapus
Derivation Prefix
. Jika pada langkah 3 ada
sufiks
yang dihapus maka pergi ke langkah 4a, jika tidak pergi ke langkah 4b.
a. Periksa tabel kombinasi awalan-akhiran yang tidak diijinkan. Jika
ditemukan maka algoritma berhenti jika tidak pergi ke langkah 4b. b.
For i = 1 to 3, tentukan tipe awalan kemudian hapus awalan. Jika
root word
belum juga ditemukan lakukan langkah 5, jika sudah maka algoritma berhenti. Catatan: jika awalan kedua sama dengan awalan
pertama algoritma berhenti. 5.
Melakukan
Recoding
.
2
6. Jika semua langkah telah selesai tetapi tidak juga berhasil maka kata awal
diasumsikan sebagai
root word
. Proses selesai. Tipe awalan ditentukan melalui langkah-langkah berikut:
1. Jika awalannya adalah: “di-”, “ke-”, atau “se-” maka tipe awalannya secara
berturut- turut adalah “di-”, “ke-”, atau “se”.
2. Jika awalannya adalah “te-”, “me-”, “be-”, atau “pe-” maka dibutuhkan sebuah
proses tambahan untuk menentukan tipe awalannya. 3.
Jika dua karakter pertama bukan “di-”, “ke-”, “se-”, “te-”, “be-”, “me-”, atau “pe-” maka berhenti.
4. Jika tipe awalan adalah “none” maka berhenti. Jika tipe awalan adalah bukan
“none” maka awalan dapat dilihat pada Tabel 2. Hapus awalan jika ditemukan.
Tabel 1. Kombinasi awalan dan akhiran yang tidak diijinkan
Tabel 2. Cara Menentukan Tipe Awalan Kata Yang Diawali Dengan “te-”
Tabel 3. Jenis Awalan Berdasarkan Tipe Awalannya
Untuk mengatasi keterbatasan pada algoritma di atas, maka ditambahkan aturan-aturan dibawah ini:
1. Aturan untuk reduplikasi.
a. Jika kedua kata yang dihubungkan oleh kata penghubung adalah kata yang
sama maka
root word
adalah bentuk tunggalnya, contoh : “buku-buku”
root word-
nya adalah “buku”. b.
Kata lain, misalnya “bolak-balik”, “berbalas-balasan, dan ”seolah-olah”. Untuk mendapatkan
root word
-nya, kedua kata diartikan secara terpisah. Jika keduanya memiliki
root word
yang sama maka diubah menjadi bentuk tunggal, contoh: kata “berbalas-balasan”, “berbalas” dan “balasan”
memiliki
root word
yang sama yaitu “balas”, maka
root word
“berbalas- balasan” adalah “balas”. Sebaliknya, pada kata “bolak-balik”, “bolak” dan
“balik” memiliki
root word
yang berbeda, maka
root word
-nya adalah “bolak-balik”
2. Tambahan bentuk awalan dan akhiran serta aturannya.
3
a. Untuk tipe awalan “mem-“, kata yang diawali dengan awalan “memp-”
memiliki tipe awalan “mem-”. b.
Tipe awalan “meng-“, kata yang diawali dengan awalan “mengk-” memiliki tipe awalan “meng-”.
Term Frequency-Inverse Document Frequency
TF-IDF
Metode
Term Frequency-Inverse Document Frequency
TF-IDF adalah cara pemberian bobot hubungan suatu kata term terhadap dokumen. Untuk
dokumen tunggal tiap kalimat dianggap sebagai dokumen. Metode ini menggabungkan dua konsep untuk perhitungan bobot, yaitu
Term frequency
TF merupakan frekuensi kemunculan kata t pada kalimat d.
Document frequency
DF adalah banyaknya kalimat dimana suatu kata t muncul [6]. Frekuensi kemunculan kata di dalam dokumen yang diberikan menunjukkan
seberapa penting kata itu di dalam dokumen tersebut. Frekuensi dokumen yang mengandung kata tersebut menunjukkan seberapa umum kata tersebut. Bobot kata
semakin besar jika sering muncul dalam suatu dokumen dan semakin kecil jika muncul dalam banyak dokumen.
Adapun rumus umum TF-IDF adalah sebagai berikut:
Dimana: W
ij
: bobot kata
term
ke-j dan dokumen ke-i Tf
ij
: jumlah kemuculan kata
term
ke-j dalam dokumen ke-i N
: jumlah semua dokumen yang ada dalam basis data n
: jumlah dokumen yang mengandung
term
ke-j
Algoritma
Latent Semantic Analysis
Latent Semantic Analysis
LSA adalah suatu teori atau algoritma untuk mengekstrak
dan merepresentasikan
kesamaan makna
dari kata-kata
menggunakan perhitungan statistika yang diterapkan pada keseluruhan teks [7]. LSA menggunakan metode aljabar linear yaitu singular value decomposition
SVD. LSA akan membentuk matriks yang merepresentasikan asosiasi antara term-dokumen yang merupakan
semantic space
, yakni kata –kata dan
dokumen-dokumen yang berasosiasi dekat akan ditempatkan dekat satu sama lain.
Tahapan LSA meliputi 3 tahap utama yaitu: 1.
Parsing Text
dan Pembobotan dengan TF IDF
Parsing
adalah sebuah proses yang dilakukan seseorang untuk menjadikan sebuah kalimat menjadi lebih bermakna atau berarti dengan cara memecah
kalimat tersebut menjadi kata-kata atau frase-frase [8].
Parsing
di dalam pembuatan aplikasi dokumen yang semula berupa kalimat-kalimat berisi kata-kata
dan tanda pemisah antar kata seperti titik ., koma,, spasi dan tanda pemisah lainnya menjadi kata-kata saja baik itu berupa kata-kata penting maupun tidak
penting.
Parsing text
dibagi menjadi tiga bagian seperti:
4
a. Tokenizing
Tokenizing
merupakan proses mengidentifikasi unit terkecil
token
dari suatu struktur kalimat. Tujuan dilakukannya
tokenizing
ini adalah untuk mendapatkan
term-term
yang nantinya akan diindeks. Pengklasifikasian
token
dilakukan untuk teks yang dipisahkan dengan spasi atau enter adalah suatu dokumen.
b. Filtering
Filtering
merupakan proses dimana
token-token
yang didapat dari proses
tokenizing
akan diseleksi dari
token-token
yang dianggap tidak penting
stoplist
.
Stoplist
merupakan kata yang sering muncul dan bisa diabaikan pada proses
filtering
.
c. Stemming
Stemming
adalah suatu proses yang bertujuan untuk mengambil kata dasar dari kata yang berimbuhan atau kata tunggal dari kata bentukan. Hal itu
mengurangi jumlah
term
yang berbeda dalam koleksi. Setelah proses
parsing text
dilakukan langkah selanjutnya adalah melakukan pembobotan hasil
parsing text
dengan menggunakan algoritma TF-IDF.
2. Singular Value Decomposition
SVD
Singular Value Decomposition
SVD adalah satu metode untuk memecahkan masalah-masalah matematik linier. Pada SVD, matriks akan
didekomposisi menjadi tiga komponen matriks. Komponen matriks pertama mendeskripsikan entitas baris sebagai vektor orthogonal matriks. Komponen
matriks kedua mendeskripsikan matriks diagonal yang berisi nilai skalar dan yang ketiga adalah matriks entitas kolom sebagai vektor orthogonal matriks.
Metode SVD berdasarkan pada teori aljabar linier yang menyatakan bahwa suatu matriks A yang berukuran m
x
n, mempunyai nilai singular yang merupakan akar pangkat dua
eigenvalue
A
T
A. Adapun rumus yang digunakan, yaitu:
Dimana: A : matriks yang didekomposisi
U : matriks ortogonal U matriks vektor singular kiri S : matriks diagonal S matriks nilai singular
V : transpose matriks ortogonal Vmatriks vektor singular kanan m : jumlah baris matriks
n : jumlah kolom matriks
Setelah memperoleh 3 matriks dari proses SVD, proses berikutnya yang perlu dilakukan adalah mereduksi dimensi dari matriks dengan cara mengurangi
dimensi dari matriks kedua yang berupa matriks diagonal. Pengurangan dimensi matriks diagonal ini dilakukan dengan cara mengeset semua nilai diagonal matriks
ke dua menjadi nol kecuali diagonal dimensi yang dipilih. Dan jika ketiga komponen matriks tersebut dikalikan maka menghasilkan matriks rekonstruksi
yang lain dengan tujuan untuk nilai korelasi yang diinginkan.
5
Jika nilai-nilai singulir dari matriks S diurutkan berdasarkan nilainya, maka
k
nilai terbesar dapat tetap disimpan dalam matriks tersebut, dan nilai-nilai lain yang lebih kecil dapat diset menjadi nol. Jika baris dan kolom yang berkaitan pada
matriks U dan V juga diset menjadi nol, maka hasil kali dari ketiga matrik ini akan membentuk matriks baru yang merupakan matriks
least square approximation
. Dengan menghapus elemen yang tidak menunjukkan arti, berarti menghapus
noise
yang berada pada vektor pada matriks. Sehingga vektor menjadi lebih pendek dan mengandung elemen yang sangat signifikan dengan data awal saja.
Karena tujuan dari LSA bukanlah mendeskripsikan vektor secara verbal tetapi mampu untuk merepresentasikan
term
, dokumen dan menghasilkan
query
yang tidak ambigu dan beredundansi dengan sesama
term
, dimensi nilai k untuk mereduksi matrik bisa menggunakan dua atau tiga vektor saja [9].
3. Pengukuran kemiripan
similarity
Salah satu pengukuran kemiripan
similarity
adalah dengan menghitung sudut antara dua vector yang bersangkutan, disini antara vector dari permintaan
query
dengan vector dokumen yang akan dinilai
document
. Adapun rumus yang digunakan yaitu rumus
cosine similarity
:
Dimana: A
: vektor A B
: vektor B ||A||
: panjang vektor A ||B||
: panjang vektor B Antara vektor A d
an B membentuk sudut α dimana cosinus dari sudut tersebut menunjukkan kemiripan
similarity
dari kedua sudut tersebut, bukan menunjukkan jarak
distance
antara vektor yang satu dengan yang lainnya.
3. Metode dan Perancangan