Menandai Kalimat
Tagging Sentence dalam arti yang lebih luas mengacu pada penambahan label kata kerja, kata benda, dll dengan konteks kalimat. Identifikasi tag POS adalah proses yang rumit. Jadi penandaan umum POS secara manual tidak mungkin dilakukan karena beberapa kata mungkin memiliki arti yang berbeda (ambigu) sesuai dengan struktur kalimat. Konversi teks dalam bentuk daftar merupakan langkah penting sebelum pemberian tag karena setiap kata dalam daftar diulang dan dihitung untuk tag tertentu. Silakan lihat kode di bawah ini untuk memahaminya dengan lebih baik
import nltktext = "Hello Guru99, You have to build a very good site, and I love visiting your site."sentence = nltk.sent_tokenize(text)for sent in sentence:print(nltk.pos_tag(nltk.word_tokenize(sent)))
KELUARAN
[('Hello', 'NNP'), ('Guru99', 'NNP'), (',', ','), ('You', 'PRP'), ('have', 'VBP'), ('build', 'VBN'), ('a', 'DT'), ('very', 'RB'), ('good', 'JJ'), ('site', 'NN'), ('and', 'CC'), ('I', 'PRP'), ('love', 'VBP'), ('visiting', 'VBG'), ('your', 'PRP$'), ('site', 'NN'), ('.', '.')]
Penjelasan Kode
- Kode untuk mengimpor nltk (Perangkat bahasa alami yang berisi submodul seperti kalimat tokenisasi dan kata tokenisasi.)
- Teks yang tagnya akan dicetak.
- Tokenisasi Kalimat
- For loop diimplementasikan di mana kata-kata diberi token dari kalimat dan tag dari setiap kata dicetak sebagai output.
Di Corpus ada dua jenis pemberi tag POS:
- Berbasis Aturan
- Stochastic POS Taggers
1.Rule-Based POS Tagger: Untuk kata-kata yang memiliki makna ambigu digunakan pendekatan rule-based atas dasar informasi kontekstual. Itu dilakukan dengan memeriksa atau menganalisis arti dari kata sebelumnya atau kata berikutnya. Informasi dianalisis dari sekitar kata atau di dalam dirinya sendiri. Oleh karena itu, kata-kata ditandai oleh aturan tata bahasa dari bahasa tertentu seperti penggunaan huruf besar dan tanda baca. misalnya, pemberi tag Brill.
2. Stochastic POS Tagger: Pendekatan berbeda seperti frekuensi atau probabilitas diterapkan di bawah metode ini. Jika sebuah kata sebagian besar diberi tag dengan tag tertentu di set pelatihan, maka dalam kalimat percobaan diberikan tag tersebut. Tag kata tidak hanya bergantung pada tagnya sendiri tetapi juga pada tag sebelumnya. Cara ini tidak selalu akurat. Cara lain adalah menghitung probabilitas kemunculan tag tertentu dalam sebuah kalimat. Jadi, tag terakhir dihitung dengan memeriksa probabilitas tertinggi dari sebuah kata dengan tag tertentu.
Model Markov Tersembunyi:
Masalah Penandaan juga dapat dimodelkan menggunakan HMM. Ini memperlakukan token input sebagai urutan yang dapat diamati sementara tag dianggap sebagai status tersembunyi dan tujuannya adalah untuk menentukan urutan status tersembunyi. Misalnya x = x 1 , x 2 ,…, x n dimana x adalah barisan token sedangkan y = y 1 , y 2 , y 3 , y 4 … y n adalah barisan tersembunyi.
Bagaimana Model HMM Bekerja?
HMM menggunakan distribusi join yaitu P (x, y) dimana x adalah urutan input / urutan token dan y adalah urutan tag.
Urutan Tag untuk x akan menjadi argmax y1… .yn p (x1, x2,… .xn, y1, y2, y3,…). Kami telah mengkategorikan tag dari teks, tetapi statistik dari tag tersebut sangat penting. Jadi bagian selanjutnya adalah menghitung tag ini untuk studi statistik.