Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Natural Language Processing (NLP)

Presentasi serupa


Presentasi berjudul: "Natural Language Processing (NLP)"— Transcript presentasi:

1 Natural Language Processing (NLP)
Sumarni Adi, S.Kom., M.Cs S1 Teknik Informatika STMIK Amikom Yogyakarta 2016

2 Konsep Dasar Natural Language Processing (NLP) adalah cabang dari artificial intelligent (AI) dan komputasional linguistik yang mengfokuskan pada interaksi antara komputer dan bahasa alami manusia (Kao dan Poteet, 2007). Sebuah natural language system harus memperhatikan pengetahuan terhadap bahasa itu sendiri, baik dari segi kata yang digunakan, bagaimana kata-kata tersebut digabung untuk menghasilkan suatu kalimat dan sebagainya. Pengolahan Bahasa alami (NLP) adalah pembuatan program yang memiliki kemampuan untuk memahami bahasa manusia

3 Konsep Dasar (Lanjutan)
Menurut Rich dan Knight (2006) secara singkat, pengolahan bahasa alami mengenal beberapa tingkat pengolahan, yaitu : Fonetik dan fonologi, berhubungan dengan suara yang menghasilkan kata yang dapat dikenali. Bidang ini menjadi penting dalam proses aplikasi yang memaknai metode speech based system Morfologi, merupakan pengetahuan tentang kata dan bentuknya dimanfaatkan untuk membedakan satu kata dengan kata lainnya. Pada tingkat ini juga dapat dipisahkan antara kata dan elemen lain seperti tanda baca. Sintaksis, merupakan pemahaman tentang urutan kata dalam pembentukan kalimat dan hubungan antar kata tersebut dalam proses perubahan bentuk dari kalimat menjadi bentuk yang sistematis. Meliputi proses pengaturan tata letak suatu kata dalam kalimat akan membentuk kalimat yang dapat dikenali. Semantik, merupakan pemetaan bentuk struktur sintaks dengan memanfaatkan tiap kata ke dalam bentuk yang lebih mendasar dan tidak tergantung struktur kalimat. Semantik mempelajari arti suatu kata, dan bagaimana dari arti kata-arti kata tersebut membentuk suatu arti kalimat yang utuh. Dalam tingkatan ini belum tercakup konteks dari kalimat tersebut. Pragmatik, Pengetahuan pada tingkatan pragmatik berkaitan dengan masing-masing konteks yang berbeda tergantung pada situasi dan tujuan pembuatan sistem Discourge knowledge, melakukan pengenalan apakah suatu kalimat yang sudah dibaca dan dikenali sebelumnya dapat mempengaruhi arti dari kalimat selanjutnya Word knowledge, mencakup arti sebuah kata secara umum dan apakah ada arti khusus bagi suatu kata dalam suatu percakapan dalam konteks tertentu.

4 Konsep Dasar (Lanjutan)
Bidang-bidang utama pekerjaan NLP antara lain : Machine Translation name entity Recognition (NER) Optical Character Recognition part-of-speech Tagging (POS-Tag) sentiment Analysis speech recognition information retrieval

5 Langkah-langkah pengolahan teks (Preprocessing):
Penghapusan format dan markup dari dalam dokumen. Tahap ini menghapus semua tag markup dan format khusus dari dokumen, terutama pada dokumen yang mempunyai banyak tag dan format seperti dokumen (X)HTML. Jika isi dokumen telah berada di dalam database maka tahapan ini sering dilewatkan. Tokenizing/parsing, yaitu memisahkan deretan kata di dalam kalimat, paragraf atau halaman menjadi token atau potongan kata tunggal atau termmed word. Tahapan ini juga menghilangkan karakter-karakter tertentu seperti tanda baca dan mengubah semua token ke bentuk huruf kecil (lower case). Stopword Removal (Filtering), Yaitu Proses penghapusan kata-kata yang sering ditampilkan dalam dokumen seperti: kata hubung, kata depan dan sebagainya. Thesaurus, Yaitu menentukan persamaan kata (sinonim) Stemming, yaitu Proses proses konversi term ke bentuk dasarnya. Term Weighting, yaitu Proses pembobotan setiap term di dalam dokumen.

6 ilustrasi Preprocessing Teks (Mengabaikan Langkah 1 dan 4):

7 Term Weighting Banyak aplikasi menerapkan pembobotan kombinasi berupa perkalian bobot lokal term frequency dan global inverse document frequency, ditulis tf .idf. Adapun rumus untuk menghitung tf.idf dapat dilihat di Persamaan 1: Tf.idf (d, w) = tf (d, w) x log N/dfw (1) Dimana: tf(d,w) adalah frekuensi kemunculan term w pada dokumen d, n adalah jumlah keseluruhan dokumen dan dfw adalah jumlah dokumen yang mengandung term w.

8 Implementasi Algoritma Rabin karp
Adapun langkah-langkah algoritma Rabin Karp sebagi berikut : Parsing, yaitu term yang sudah melalui proses Preprocessing dipotong-potong per karakter huruf. Pemotongan per karakter menggunakan metode k-Grams. Cara kerja metode k-grams dengan mengambil potongan-potongan karakter huruf sejumlah k dari sebuah kata yang secara kontinyu dibaca dari teks sumber hingga akhir dari dokumen. contoh k-grams dengan k = 4: Teks : evenifnone Hasil 4-grams dari teks : even veni enif nifn ifno fnon none Hashing, yaitu mengkonversi potongan huruf sejumlah k kedalam nilai hash. Biasanya dikonversi ke ASCII

9 Implementasi Algoritma Rabin karp (lanjutan):
Rabin Karp. Pada bagian ini akan membandingkan nilai hash dari string masukan dan hash substring pada teks. Apabila sama, maka akan dilakukan perbandingan sekali lagi terhadap karakter- karakternya. Apabila tidak sama, maka substring akan bergeser ke kanan. Secara Matematis dapat dituliskan pada Persamaan 2:

10 Implementasi Algoritma Rabin karp (Lanjutan)
langkah-langkah algoritma Rabin Karp sampai langkah nomor 3. namun agar performa rabin karp meningkat maka diberikan solusi agar tidak membandingkan sisa hasil bagi (modulo) saja, tetapi membandingkan hasil baginya juga. Seperti yang ditunjukkan pada Persamaan 3 : Rem (n1/q) = rem (n2/q) And Quotient (n1/q) = Quotient (n2/q) (3)

11 Menghitung Similarity :
mencari relevansi antar query dengan teks dokumen dengan cara mengukur similarity (kemiripan) dan jarak antara dua entitas informasi. Karena parsing dilakukan dengan pendekatan k-gram maka untuk mengukur nilai similarity menggunakan Dice's Similarity Coefficient, rumus matematisnya ditunjukkan pada Persamaan 4: (4) Dimana S adalah nilai similarity, A dan B adalah jumlah dari kumpulan k-grams dalam teks 1 dan teks 2. C adalah jumlah dari k-grams yang sama dari teks yang dibandingkan

12 CONTOH : Dengan menggunakan algoritma Rabin Karp,tentukan persentase similarity 2 teks berikut : Teks dokumen 1 <Document doc=”Ajaran keagamaan membawa pada ketenangan dan kebahagiaan hidup”.get()>  Teks Dokumen 2 <Document doc=”Dengan hidup beragama akan memberikan rasa tenang dan bahagia.get()>

13 Tabel 1 Hasil Preprocessing
Penyelesaiannya: Lakukan preprocessing teks. Preprocessing meliputi hapus format dan markup, tokenizing, filtering, stemming dengan mengabaikan Thesaurus dan term Weighting. Hasil Preprocessingnya pada Tabel 1: Tabel 1 Hasil Preprocessing Lakukan Parsing. Parsing menggunakan k-gram dengan k = 4, pada setiap teks dokumen. Teks Dokumen 1 : ajaragamatenangbahagiahidup Teks Dokumen 2 : hidupagamaberirasatenangbahagia

14 Penyelesaiannya (Lanjutan):
Hasil Parsingnya, ditunjukkan pada Tabel 2: Tabel 2 Hasil Parsing

15 Penyelesaiannya (Lanjutan):
Lakukan Hasing, dengan mengkonversi string menjadi nilai ASCII. a-z = ) Lanjutkan dengan proses rabin karp menggunakan Persamaan 2. sehingga setelah di hasing dan proses rabin karp menjadi seperti berikut : Untuk meningkatkan performansi rabin karp, gunakan Persamaan 3. Hasilnya berikut ini :

16 Penyelesaiannya (Lanjutan):
Apabila proses perhitungan tersebut dilakukan untuk semua dokumen dan semua kata maka akan dihasilkan matrik perhitungan hasing modulo dan hasing remainder (div). Dimana term yang cocok ada 16 term.Hasilnya dapat dilihat pada Tabel 3: Tabel 3 matrik perhitungan hasing modulo dan hasing remainder (div)

17 Penyelesaiannya (Lanjutan):
menghitung similarity (kecocokan), dengan menggunakan Persamaan 4. Jadi similarity teks dokumen 1 dan 2 adalah : Similarity = ((2*16) / (28+28)) * 100% = (32/56) * 100% = * 100% = 57.14%


Download ppt "Natural Language Processing (NLP)"

Presentasi serupa


Iklan oleh Google