Bagaimana Cara Mengekstrak Kata Kunci dari Teks di R?

Gambar yang mengilustrasikan antarmuka R dengan cuplikan kode yang disorot yang digunakan untuk ekstraksi kata kunci dari teks.
Gambar yang mengilustrasikan antarmuka R dengan cuplikan kode yang disorot yang digunakan untuk ekstraksi kata kunci dari teks.

Eskritor 2023-07-06

Apa yang dimaksud dengan Ekstraksi Kata Kunci?

Ekstraksi kata kunci secara otomatis mengekstrak kata dan ekspresi yang paling sering digunakan dan paling penting dari sebuah teks, dengan menggunakan teknik analisis teks. Ini membantu meringkas konten teks dan mengenali topik utama yang dibahas, yang berguna untuk riset pasar , analisis sentimen, dan jenis analisis data lainnya. Teknik ini memanfaatkan penyematan kalimat dan dapat menganalisis kumpulan data yang besar secara real-time.

Kecerdasan buatan (AI) dengan pemrosesan bahasa alami (NLP) (sebuah bidang ilmu komputer) memecah bahasa manusia sehingga mesin dapat memahami dan menganalisisnya. Ekstraksi kata kunci mengotomatiskan alur kerja seperti menandai respons survei yang masuk atau menanggapi pertanyaan pelanggan yang mendesak. Teknik ini menggunakan informasi linguistik dan semantik tentang teks dan kata-kata yang dikandungnya. Ada berbagai algoritme dan teknik pembelajaran mesin untuk mengekstrak kata kunci yang paling relevan dalam sebuah teks.

Mengapa Ekstraksi Kata Kunci Penting?

Ekstraksi kata kunci dan ekstraksi keyphrase penting untuk beberapa alasan:

  1. Pengoptimalan Mesin Pencari (SEO ): Ekstraksi kata kunci membantu mengidentifikasi kata dan frasa paling penting dalam dokumen, yang dapat digunakan untuk mengoptimalkan konten situs web untuk mesin pencari.
  2. Peringkasan teks: Ekstraksi kata kunci dapat digunakan untuk meringkas dokumen dengan mengidentifikasi kata dan frasa terpenting yang mewakili tema utama teks.
  3. Klasifikasi teks: Ekstraksi kata kunci dapat digunakan untuk mengklasifikasikan dokumen teks ke dalam berbagai kategori berdasarkan kata kunci yang dikandungnya. Hal ini berguna dalam aplikasi seperti analisis sentimen.
  4. Pencarian informasi: Ekstraksi kata kunci dapat digunakan untuk meningkatkan akurasi sistem pencarian informasi dengan mengidentifikasi kata kunci yang relevan yang sesuai dengan permintaan pencarian pengguna.

Bagaimana Cara Membuat Ekstraksi Kata Kunci di R?

Berikut adalah beberapa teknik ekstraksi kata kunci dan kasus penggunaannya:

  • Temukan kata kunci dengan melakukan penandaan Parts of Speech untuk mengidentifikasi kata benda
  • Temukan kata kunci berdasarkan Kolokasi dan Kemunculan Bersama
  • Temukan kata kunci berdasarkan algoritme Textrank
  • Temukan kata kunci berdasarkan RAKE (ekstraksi kata kunci otomatis yang cepat)
  • Menemukan kata kunci berdasarkan hasil penguraian ketergantungan (mendapatkan subjek teks)
mengekstrak kata kunci dari teks

Mengekstrak Kata Benda

Cara mudah untuk menemukan kata kunci adalah dengan melihat kata benda. Karena setiap istilah memiliki tag Parts of Speech jika Anda membuat anotasi teks menggunakan paket udpipe:

Kode:

stats <- subset(x, upos %in% "NOUN") 
stats <- txt_freq(x = stats$lemma) 
library(lattice) 
stats$key <- factor(stats$key, levels = rev(stats$key)) 
barchart(key ~ freq, data = head(stats, 30), col = "cadetblue", main = "Most occurring nouns", xlab = "Freq")

Kolokasi & kejadian bersama

Dapatkan ekspresi multi-kata dengan melihat kolokasi (kata-kata yang mengikuti satu sama lain), kemunculan bersama kata-kata dalam setiap kalimat, atau kemunculan bersama kata-kata yang berdekatan satu sama lain.

Kode:

Collocation (words following one another)

stats <- keywords_collocation(x = x,
term = "token", group = c("doc_id", "paragraph_id", "sentence_id"),
ngram_max = 4)

Co-occurrences: How frequent do words occur in the same sentence, in this case only nouns or adjectives

stats <- cooccurrence(x = subset(x, upos %in% c("NOUN", "ADJ")),
term = "lemma", group = c("doc_id", "paragraph_id", "sentence_id"))

## Co-occurrences: How frequent do words follow one another

stats <- cooccurrence(x = x$lemma,
relevant = x$upos %in% c("NOUN", "ADJ"))

## Co-occurrences: How frequent do words follow one another even if we would skip 2 words in between

stats <- cooccurrence(x = x$lemma,
relevant = x$upos %in% c("NOUN", "ADJ"), skipgram = 2)

Textrank (jaringan kata yang diurutkan oleh Google Pagerank)

Textrank adalah metode ekstraksi lain untuk kata kunci. Paket textrank R mengimplementasikan algoritma Textrank. Algoritma Textrank memungkinkan untuk meringkas teks dan ekstraksi kata kunci. Untuk membangun jaringan kata, algoritme memeriksa apakah kata-kata tersebut saling mengikuti satu sama lain. Algoritme ‘Google Pagerank’ mengekstrak kata-kata yang relevan. Kata-kata yang relevan yang mengikuti satu sama lain digabungkan untuk mendapatkan kata kunci. TextRank tidak berasal dari teks asli, karena ini adalah pendekatan berbasis grafik.

Kode:

stats <- textrank_keywords(x$lemma, relevant = x$upos %in% c("NOUN", "ADJ"), ngram_max = 8, sep = " ") 
stats <- subset(stats$keywords, ngram > 1 & freq >= 5) library(wordcloud) wordcloud(words = stats$keyword, freq = stats$freq)

Ekstraksi Kata Kunci Otomatis yang Cepat: RAKE

RAKE adalah algoritme dasar berikutnya yang merupakan singkatan dari Rapid Automatic Keyword Extraction. RAKE adalah algoritma ekstraksi kata kunci yang tidak bergantung pada domain dalam Pemrosesan Bahasa Alami.

  1. Menghitung skor untuk setiap kata yang merupakan bagian dari kata kunci kandidat, dilakukan dengan
    • di antara kata-kata dari kandidat kata kunci, algoritme melihat berapa kali setiap kata muncul dan berapa kali kata tersebut muncul bersama dengan kata lain
    • setiap kata mendapat skor yang merupakan rasio dari tingkat kata (berapa kali kata tersebut muncul bersama dengan kata lain) dengan frekuensi kata tersebut
  2. Skor RAKE untuk kata kunci kandidat lengkap dihitung dengan menjumlahkan skor masing-masing kata yang mendefinisikan kata kunci kandidat

Kode:

stats <- keywords_rake(x = x, term = "token", group = c("doc_id", "paragraph_id", "sentence_id"), relevant = x$upos %in% c("NOUN", "ADJ"), ngram_max = 4) 
head(subset(stats, freq > 3)) 

Gunakan output penguraian dependensi untuk mendapatkan subjek nominal dan kata sifatnya

Ketika Anda mengeksekusi anotasi menggunakan udpipe, bidang dep_rel mengindikasikan bagaimana kata-kata terkait satu sama lain. Sebuah token dihubungkan dengan induk menggunakan token_id dan head_token_id . Bidang dep_rel menunjukkan bagaimana kata-kata terhubung satu sama lain. Jenis hubungan ada di http://universaldependencies.org/u/dep/index.html.

Kode:

stats <- merge(x, x, by.x = c("doc_id", "paragraph_id", "sentence_id", "head_token_id"), by.y = c("doc_id", "paragraph_id", "sentence_id", "token_id"), all.x = TRUE, all.y = FALSE, suffixes = c("", "_parent"), sort = FALSE) 
stats <- subset(stats, dep_rel %in% "nsubj" & upos %in% c("NOUN") & upos_parent %in% c("ADJ")) 
stats$term <- paste(stats$lemma_parent, stats$lemma, sep = " ") 
stats <- txt_freq(stats$term) 
library(wordcloud) 
wordcloud(words = stats$key, freq = stats$freq, min.freq = 3, max.words = 100, random.order = FALSE, colors = brewer.pal(6, "Dark2"))

Apa yang dimaksud dengan Text-Mining?

Penambangan teks dalam R mengacu pada proses menganalisis dan mengekstraksi wawasan dari data teks menggunakan bahasa pemrograman R dan pustaka serta paket terkait. Penambangan teks melibatkan beberapa langkah, termasuk pembersihan dan prapemrosesan data, ekstraksi fitur, pemodelan statistik, dan visualisasi.
Paket tm menyediakan fungsi untuk membaca data teks, membersihkan dan melakukan prapemrosesan data, dan membuat matriks istilah dokumen, yang biasanya digunakan untuk menganalisis data teks. Paket tidytext menyediakan alat untuk mengubah data teks menjadi bingkai data yang rapi.
Beberapa tugas umum dalam penggalian teks meliputi analisis sentimen, pemodelan topik, pengelompokan dokumen, dan klasifikasi teks. Tugas-tugas ini melibatkan penerapan teknik statistik dan machine-learning untuk mengidentifikasi pola dan hubungan dalam data teks.

API ekstraksi kata kunci adalah antarmuka perangkat lunak yang memungkinkan pengembang mengekstrak kata kunci dan frasa kunci dari teks menggunakan algoritme yang telah dibuat sebelumnya dan model pembelajaran mesin. API ini memberikan solusi yang mudah digunakan dan terukur untuk mengotomatiskan proses ekstraksi kata kunci, tanpa perlu pengembang membangun dan melatih model mereka sendiri.

R adalah bahasa pemrograman sumber terbuka dan lingkungan perangkat lunak untuk komputasi statistik, analisis data, dan grafik. Banyak orang menggunakan R di bidang akademis, penelitian, dan industri untuk tugas-tugas seperti pemodelan statistik, visualisasi data, pembelajaran mesin, dan penggalian data. Ini memiliki antarmuka dengan bahasa pemrograman lain seperti Python dan C++ . Temukan informasi lebih rinci dengan tutorial online di GitHub.

Bagikan Postingan

AI Penulis

img

Eskritor

Membuat konten AI dihasilkan