Anda di halaman 1dari 5

REVIEW ARTIKEL

Research on Text Similarity Computing Based on Word


Vector Model of Neural Networks
Yuan Sun *", Weikang Li*", Peilei Dong*"

Untuk memenuhi Tugas Akhir Mata Kuliah Stokastik


yang di bimbing oleh
Dr. Eng. Panca Mudjirahardjo, S.T., M.T.

Disusun oleh:
Syahroni Wahyu Iriananda (156060300111006)

PROGRAM PASCA SARJANA TEKNIK ELEKTRO


KONSENTRASI SISTEM KOMUNIKASI DAN INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS BRAWIJAYA MALANG
2016
A. RINGKASAN
Penilaian Kemiripan Teks (Text Similarity) memainkan peranan yang sangat penting dalam bidang NLP (Natural
Language Processing). Dalam artikel ini, dibangun Model Vektor Kata (Word Vector Model) berbasis JST dan melatih
corpus Bahasa Cina dari Sohu News, World News, dan lain sebagainya. Artikel ini mengusulkan metode untuk
menghitung nilai kemiripan teks semantik menggunakan Word Vector Model, selanjutnya metode yang ditawarkan
akan dibandingan dengan metode tradisional seperti TF-IDF, dan hasilnya percobaan membuktikan bahwa metode
yang ditawarkan cukup efektif. Menghitung kemiripan teks merupakan metrik dalam membandingkan dua atau lebih
artikel. Pada umumnya hal ini dapat dipisahkan yaitu:
Menghitung kemiripan semantic
Menghitung ketidak-miripan non-semantik
Penelitian ini memiliki aplikasi yang sangat luas pada bidang Information Retrieval, Automatic Question
Answering, dan Machine Learning[1-2]. Saat ini telah banyak sekali penelitian yang matang tentang metode-metode
penghitungan kemiripan teks non-semantik, namun demikian masih banyak hal yang dapat dilakukan untuk teks
semantik.
Pan Qianhong mengusulkan cara untuk menghitung kemiripan teks yang berdasarkan Auttribute Theory [3], dan
membangun model Properties Gravity Splitting pada suatu teks, yang menghitung korelasi antara kata kunci dengan
bantuan jarak antar titik koordinat.
Zhang Huanjiong mengusulkan metode untuk menghitung kemiripan teks berbasis Hamming Distance dan juga
menggunakan Hamming Concept [4]. Metode ini menggunakan cara baru untuk menghitung dengan kenyamanan
yang sangat baik dan akurasi yang tinggi. Metode ini merepresentasikan informasi teks dengan menggunakan kode
kata (codeword), yang memungkinkan untuk mendeskripsikan informasi teks dalam simpul/gabungan. Sementara itu
hal ini berbeda dengan menggunakan konsep spasi (vektor space) secara tradisional.
Huo Hua mengusulkan cara untuk menghitung kemiripan teks berdasarkan Compressed Sparse Vector
Multiplying, yang secara efektif mengurangi persyaratan biaya (cost of computing) dan penyimpanan (harddisk).
Hanya elemen non-zero yang disimpan dan direpresentasikan pada metode ini.
Yu Gang mengusulkan metode untuk menghitung kemiripan teks berbasis semantik leksikal [7] dengan
Algoritma Maximum Matching. Metode ini menghitung korelasi dari kedua basis vektor artikel pada semantik leksikal
dari How-Net dan mendapatkan kemiripan dari kedua artikel tersebut.

B. METODE WORD VECTOR MODEL DAN NEURAL NETWORK


1. Metode Word Vector Model
Pada artikel ini yang pertama, dibangun model Word Vector Training berbasis Jaringan Syaraf untuk untuk
meningkatkan efisiensi sistem. Kemudian yang kedua, menggunakan model tersebut untuk melatih kata dari korpus
bahasa Cina yang besar untuk menghitung jarak semantiknya. Berikutnya yang ketiga mengusulkan metode untuk
menghitung kemiripan teks berbasis Jaringan Syaraf. Dan yang terakhir adalah membandingan metode ini dengan
metode tradisional TF-IDF pada kemiripan teks dan menganalisa hasilnya.
2. Pembahasan Jaringan Saraf Tiruan
Vektor kata dalam artikel ini digunakan dengan cara Distributed Representation, yang tergantung pada model
bahasa statistik. Kami menganggap kalimat yang terdiri dari kata-kata w1,w2,w3.wt dengan probabilitas yang dapat
dihitung dengan menggunakan rumus (1). Lapisan masukan terdiri dari 2c vektor kata seperti yang digambarkan pada
rumus (2), kata dilambangkan dengan m
Vektor kata 2x adalah diakumulasikan dalam penjumlahan di lapisan proyeksi pada rumus (3) Dengan Setiap
kategori node diwakili dengan menggunakan rumus (4). Dalam makalah ini, kami mengasumsikan fungsi sigmoid
sebagai fungsi eksitasi struktur jaringan [10]. Probabilitas yang menyatakan sebuah node diklasifikasikan ke dalam
kelas yang positif adalah pada rumus (5). Probabilitas yang menyatakan sebuah node diklasifikasikan ke dalam kelas
yang negatif adalah sebagai rumus (6). Fungsi Obyektif dari Neural Network [11] dinyatakan dalam rumus (7)

C. PEMBAHASAN
1. Optimasi Parameter Model
Pada artikel ini menggunakan metode Stochastic Gradient Ascent [12] sebagai fungsi untuk mengoptimasi.
Seandainya G(w,j) mewakili konten yang dilingkari oleh dua tanda penjumlahan ganda dalam fungsi obyektif.
Sehingga perhitungan Xw disederhanakan menjadi rumus (8). Lw adalah node pada jalur di pohon Huffman. Sejauh ini,
kami telah mendapat pendekatan dilatih untuk menghasilkan pendekatan vektor proses kata (Word Vector Process).
2. Membangun Word Vector Model
Langkah-langkah dari pembangunan model vektor kata dalam makalah ini adalah sebagai berikut:
1) Dapatkan kata-kata membentuk teks latihan.
2) Dapatkan frekuensi kata, paraf vektor kata dan kemudian menempatkan mereka ke dalam tabel hash
3) Membangun pohon Huffman, dapatkan Huffman jalan pohon setiap kata.
4) Hapus kata frekuensi tinggi, mendapatkan vektor kata dan mengoptimalkan fungsi tujuan.
5) Hitung jumlah kata-kata yang terlatih dan memperbarui tingkat pembelajaran saat learning rate saat itu
adalah lebih besar dari 1000.
6) Simpan vektor kata
Untuk mengoptimalkan vektor kata [13], kita perlu menghitung . Untuk pengoperasian yang mudah,
kami menggunakan perhitungan perkiraan metode dalam tulisan ini. Selama proses pelatihan, ukuran tingkat belajar
memiliki dampak yang besar pada hasil tingkat konvergensi jaringan dan pelatihan. Jika nilainya terlalu kecil, tingkat
pelatihan rendah. Jika tinggi, dapat menyebabkan osilasi atau divergen [14]. Nilai learning rate ditetapkan 0.025 di
awal. Dalam rangka mengoptimalkan tingkat belajar, kami menyesuaikan tingkat belajar setelah pelatihan 1000
dengan rumus yang telah disesuaikan pada rumus (9). Formula untuk menghapus kata dengan frekuensi tinggi terdapat
pada rumus (10)
3. Menghitung Jarak Semantik
Kata jarak semantik adalah tingkat kata sesuai [15]. Dalam tulisan ini, jika jarak panjang, tingkat kata kesesuaian
tinggi; jika pendek, tingkat kata kesesuaian rendah. Langkah-langkah menghitung kata jarak semantik adalah sebagai
berikut:
1) Jalankan model dan dapatkan vektor kata dilatih.
2) Hitung jarak semantik. pertama kami dapatkan kata pusat dan vektor kata-kata mereka. Kemudian, kita
menghitung jarak antara kata pusat dan kata lain di perpustakaan kata melalui aturan Cosine.
Untuk meningkatkan kenyamanan menghitung jarak semantik, kita membuat vektor dibagi dengan panjang
vektor mereka, seperti yang ditunjukkan pada rumus (11) Kata Vektor direpresentasikan sebagai Va1, Va2, Va3, ...,
Van dan vektor kata B direpresentasikan sebagai (Vb1, Vb2, Vb3, ..., Vbn). Jadi rumus menghitung dari semantik
antara kata A dan kata B tertera pada rumus (12).
4. Perhitungan Nilai Kemiripan Teks Semantik
Makalah ini membahas perhitungan kemiripan teks semantik melalui vektor kata, kita menggunakan vektor kata
yang disebutkan di atas untuk menghitung kemiripan teks semantik. Pikiran utama menghitung kemiripan teks untuk
membandingkan kemiripan teks dengan menghitung kemiripan semantik kata fitur. Langkah-langkah dari algoritma
adalah sebagai berikut:
1) Dapatkan kosakata teks.
2) Statistik frekuensi kata dan tidak termasuk kata-kata frekuensi rendah.
3) Menghasilkan kata-kata fitur dipersiapkan untuk menghitung kemiripan.
Dan Setelah mendapatkan kata-kata fitur teks, kita menggunakan vektor kata untuk menghitung jarak antara
mereka. Dengan asumsi ambang (threshold) k, mendapatkan jumlah kata-kata yang lebih besar dari k. Pada akhirnya,
kita menggunakan rumus (13) untuk mendapatkan kemiripan teks. Langkah-langkah dari algoritma adalah sebagai
berikut:
1) Muat model vektor biner.
2) Dapatkan kata-kata fitur teks LA dan LB.
3) Gunakan rumus untuk menghitung kemiripan teks.
No Rumus Keterangan
(1) Model Jaringan Syaraf terdiri dari satu lapisan masukan,
lapisan proyeksi dan lapisan output. Untuk berbagai kata
di dalam korpus, didapatkan kata c ganda sebelum dan
sesudah kata w untuk membentuk konteks dari w,
Context(w) [9].
(2)
(3)
Lapisan output adalah Huffman Tree, yang terdiri dari bobot setiap kata di corpus. Leaf Node (Simpul Daun) sesuai
dengan kata kata dalam kamus. Jumlah simpul daun adalah sama dengan ukuran kamus. Cabang Pohon sebelah kiri
dicatat sebagai kategori negatif "1", dan Cabang Pohon sebelah kanan disebut kelas positif "0". Penulis berasumsi
setiap node memiliki coding "d", sehingga nilai "d" dapat menjadi "0" atau "1".
(4)
(5) Probabilitas yang menyatakan sebuah node
diklasifikasikan ke dalam kelas yang positif

(6) Probabilitas yang menyatakan sebuah node


diklasifikasikan ke dalam kelas yang negatif
(7) Objective Function dari struktur jaringan saraf [11]:

(8) Konten yang dilingkari oleh dua tanda penjumlahan


ganda dalam Objective Function. Jadi perhitungan
tentang Xw disederhanakan.

(9) Selama proses pelatihan, ukuran tingkat belajar memiliki


dampak yang besar pada hasil tingkat konvergensi
jaringan dan pelatihan. Jika nilainya terlalu kecil, tingkat
pelatihan rendah.
(10) Dimana wordCountActual adalah jumlah kata yang
terlatih. trainWordCount adalah jumlah semua kata.

(11) Untuk meningkatkan kenyamanan menghitung jarak


semantik, kita membuat vektor dibagi dengan panjang
vektornya

(12) Kata Vektor direpresentasikan sebagai Va1, Va2, Va3, ...,


Van dan vektor kata B direpresentasikan sebagai (Vb1,
Vb2, Vb3, ..., Vbn). Jadi rumus menghitung dari semantik
antara kata A dan kata B adalah sebagai berikut:

(13) Setelah mendapatkan kata-kata fitur teks, kita


menggunakan vektor kata untuk menghitung jarak antara
mereka. Dengan asumsi ambang (threshold) k,
mendapatkan jumlah kata-kata yang lebih besar dari k.
Pada akhirnya, kita menggunakan rumus untuk
mendapatkan kemiripan teks.

D. HASIL DAN KESIMPULAN


1. Pelatihan Vektor Kata & Jarak Semantik
Dalam tulisan ini, kita menggunakan web crawler untuk mendapatkan corpus untuk analisis kami dari banyak
website seperti Sohu News 136 Juta Corpus, World News 64 Juta Corpus, Netease News 145 Juta Corpus, Car Home
News 55 Juta Corpus dan sebagainya. Kemudian, dipilih sekitar 1.000.000 kalimat Cina sebagai corpus pelatihan
vektor kata dan mendapatkan file vektor sekitar 400 Juta kata. Hasil hitung jarak semantik adalah sebagai berikut:
Dari tabel hasil di atas, kita dapat mengamati bahwa
jarak dari kata-kata yang dekat dengan kata-kata sentral
lebih besar daripada yang lain. Ini berarti bahwa semakin
dekat, jarak antara mereka lebih besar. jarak bagian kata
'tidak begitu besar intuitif, tetapi hasil di sini berubah
menjadi lebih besar. Misalnya, kata (Xiaomi) dekat
dengan (Apple). Situasi ini dapat terjadi ketika terdapat
asosiasi kata di corpus. Jadi korpus yang dipilih juga
memiliki pengaruh penting pada hasil pelatihan vektor
kata.

Tabel 1. Hasil dari kata Liu Xiang


2. Analisis dan Hasil Perhitungan Nilai Kemiripan Teks
Pertama, kita menganalisis kesamaan teks teks biasa dengan
menggunakan TF-IDF dan Word Vector. Teks-teks pengujian
didapatkan crawler web dari situs Sohu News. Ada 4900 SMS grup
untuk dibandingkan. Hasilnya pada gambar 1
Pada saat yang sama, kami juga menganalisis kesamaan teks-teks
semantik dalam dua cara yang berbeda. Misalnya, teks semantik adalah
sebagai berikut:
Kalimat 1: (Xiao Ming suka bermain basket. Dan dia adalah anggota
dari basket sekolah.)
Gambar 1. Hasil Perhitungan Kemiripan
Teks Polos Kalimat 2: (Kobe adalah semua-bintang di NBA. Dia sangat mencintai
basket dan melihatnya hidupnya.). Berdasarkan kalimat tersebut, nilai
kemiripan teks dihitung dengan TF-IDF adalah 0,435. Namun, nilai
kesamaan teks dihitung dengan metode kami berdasarkan jaringan
saraf adalah 0,867.
Pada gambar 2 kita dapat mengamati fitur ini. Adapun teks polos,
ketika kesamaan teks lebih tinggi atau lebih rendah, hasil yang
dihasilkan oleh dua cara ini hampir sama. Ketika teks yang sebagian
mirip, ada perbedaan sedikit antara dua cara tersebut. Alasannya
adalah bahwa cara tradisional hanya menghitung hubungan kata-kata
kunci yang sama, namun, cara Firman Vector akan menghitung semua
kata-kata dalam teks ini. Adapun pada teks semantik, cara Word
Gambar 2. Hasil Perhitungan Nilai Kemiripan Vector lebih baik dari cara-cara tradisional. Setelah analisis, kita
Teks Semantik
menemukan bahwa cara tradisional hanya menghitung kata-kata kunci
yang sama. Ketika kata-kata ini tombol yang sama yang sedikit atau
paling, hasilnya bisa buruk. Word Vector cara dapat langsung menghitung jarak.
3. Kesimpulan
Makalah ini telah dirancang dan mencapai metode penghitungan kesamaan teks berdasarkan jaringan saraf.
Dengan membandingkan cara tradisional menghitung kesamaan teks menggunakan TF-IDF dan Hukum Cosine,
metode ini tidak hanya menjamin keakuratan kesamaan teks antara teks non-semantik, tapi ketika menghitung
kesamaan antara teks-teks yang terkait secara semantik memiliki keunggulan yang jelas. Metode ini dapat diterapkan
di daerah tertentu seperti pencarian informasi, data mining, dan sebagainya.
4. Kelemahan
Kelemahan utama pada artikel ini adalah tidak menggunakan Bahasa Indonesia sebagai obyek penelitian, masih
menggunakan Algoritma Neural Network murni sedangkan saat ini telah banyak perkembangannya antara lain seperti
Fuzzy ANN, GANN, Backpropagation, RBF Filter, dsb
5. Kelebihan
Menggunakan metode Machine Learning daripada metode tradisional seperti TF-IDF sehingga hasil dapat lebih
baik.
6. Saran
Dapat menggunakan Algoritma Machine Learning yang lain seperti SVM, Evolutionary Algorithm dan lain
sebagainya
E. APLIKASI
Penggunaan kemiripan teks dapat dilihat pada berbagai sistem yang beredar, mulai dari search engine,deteksi
kemiripan dokumen, deteksi plagiasi artikel atau karya ilmiah, klasifikasi teks, kategorisasi teks, pengelolaan
pengaduan masyarakat dan lain sebagainya

Anda mungkin juga menyukai