Kako izvleči ključne besede iz besedila v programu R?

Slika, ki prikazuje vmesnik R s poudarjenim delom kode, ki se uporablja za ekstrakcijo ključnih besed iz besedila.

Kaj je ekstrakcija ključnih besed?

Izvleček ključnih besed s tehniko analize besedila samodejno izlušči najpogosteje uporabljene in najpomembnejše besede in izraze iz besedila. Pomaga povzeti vsebino besedil in prepoznati glavne obravnavane teme, kar je koristno za tržne raziskave, analizo čustev in druge vrste analize podatkov. Ta tehnika izkorišča vdelane stavke in lahko analizira velike sklope podatkov v realnem času.

Strojno učenje umetne inteligence (UI) z obdelavo naravnega jezika (NLP) (področje računalništva) razčlenjuje človeški jezik, tako da ga stroji lahko razumejo in analizirajo. Pridobivanje ključnih besed avtomatizira delovne postopke, kot je označevanje prejetih odgovorov na ankete ali odgovarjanje na nujne poizvedbe strank. Tehnika uporablja jezikovne in semantične informacije o besedilih in besedah, ki jih vsebujejo. Obstajajo različni algoritmi in tehnike strojnega učenja, s katerimi lahko iz besedila izluščimo najpomembnejše ključne besede.

Zakaj je pridobivanje ključnih besed pomembno?

Pridobivanje ključnih besed in ključnih fraz je pomembno iz več razlogov:

  1. Optimizacija za iskalnike (SEO): Pridobivanje ključnih besed pomaga prepoznati najpomembnejše besede in besedne zveze v dokumentu, ki se lahko uporabijo za optimizacijo vsebine spletnega mesta za iskalnike.
  2. Povzemanje besedila: Izvleček ključnih besed se lahko uporabi za povzemanje dokumenta s prepoznavanjem najpomembnejših besed in besednih zvez, ki predstavljajo glavno temo besedila.
  3. Razvrstitev besedila: Izvleček ključnih besed se lahko uporabi za razvrščanje besedilnih dokumentov v različne kategorije na podlagi ključnih besed, ki jih vsebujejo. To je uporabno pri aplikacijah, kot je analiza čustev.
  4. Iskanje informacij: Pridobivanje ključnih besed se lahko uporablja za izboljšanje natančnosti sistemov za iskanje informacij z ugotavljanjem ustreznih ključnih besed, ki ustrezajo uporabnikovi iskalni poizvedbi.

Kako izpisati ključne besede v programu R?

Tukaj je nekaj tehnik pridobivanja ključnih besed in primerov njihove uporabe:

  • iskanje ključnih besed z označevanjem delov govora za prepoznavanje samostalnikov
  • Iskanje ključnih besed na podlagi kolokacij in sočasnih pojavitev
  • iskanje ključnih besed na podlagi algoritma Textrank
  • Iskanje ključnih besed na podlagi RAKE (hitro samodejno ekstrakcijo ključnih besed)
  • iskanje ključnih besed na podlagi rezultatov razčlenjevanja odvisnosti (pridobivanje predmeta besedila).
pridobivanje ključnih besed iz besedila

Izločanje samostalnikov

Enostaven način iskanja ključnih besed je iskanje samostalnikov. Vsak izraz ima oznako delov govora, če ste besedilo komentirali s paketom udpipe:

Koda:

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")

Kolokacije in sopostavitve

Večbesedni izraz pridobite tako, da si ogledate kolokacije (besede, ki si sledijo ena za drugo), sočasna pojavljanja besed v vsakem stavku ali sočasna pojavljanja besed, ki so si blizu.

Koda:

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 (besedno omrežje, razvrščeno po Googlovem Pageranku)

Textrank je še ena metoda pridobivanja ključnih besed. Paket textrank R izvaja algoritem Textrank. Algoritem Textrank omogoča povzemanje besedila in izločanje ključnih besed. Algoritem za oblikovanje besedne mreže preveri, ali si besede sledijo druga za drugo. Algoritem “Google Pagerank” izlušči ustrezne besede. Ustrezne besede, ki si sledijo, se združijo v ključne besede. TextRank ne izhaja iz izvirnega besedila, saj gre za pristop, ki temelji na grafih.

Koda:

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)

Hitro samodejno pridobivanje ključnih besed: RAKE

RAKE je naslednji osnovni algoritem, ki je kratica za Rapid Automatic Keyword Extraction (Hitro samodejno izločanje ključnih besed). RAKE je domensko neodvisen algoritem za ekstrakcijo ključnih besed pri obdelavi naravnega jezika.

  1. Izračun ocene za vsako besedo, ki je del katere koli kandidatne ključne besede, poteka tako, da
    • med besedami kandidatnih ključnih besed algoritem pogleda, kolikokrat se posamezna beseda pojavi in kolikokrat se pojavi skupaj z drugimi besedami.
    • vsaka beseda dobi oceno, ki je razmerje med stopnjo besede (kolikokrat se pojavi skupaj z drugimi besedami) in pogostostjo besede
  2. Ocena RAKE za celotno kandidatno ključno besedo se izračuna tako, da se seštejejo ocene vseh besed, ki opredeljujejo kandidatno ključno besedo.

Koda:

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)) 

Uporabite rezultat razčlenjevanja odvisnosti, da dobite nominalni predmet in njegov pridevnik

Ko ste anotacijo izvedli z uporabo programa udpipe, polje dep_rel označuje, kako so besede med seboj povezane. Žeton je povezan z nadrejenim z uporabo token_id in head_token_id. Polje dep_rel označuje, kako se besede med seboj povezujejo. Vrsta odnosov je navedena na spletni strani http://universaldependencies.org/u/dep/index.html.

Koda:

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"))

Kaj je tekstovno rudarjenje?

Besedilno rudarjenje v R se nanaša na postopek analize in pridobivanja vpogledov iz besedilnih podatkov z uporabo programskega jezika R ter pripadajočih knjižnic in paketov. Rudarjenje besedil vključuje več korakov, vključno s čiščenjem in predobdelavo podatkov, ekstrakcijo značilnosti, statističnim modeliranjem in vizualizacijo.
Paket tm vsebuje funkcije za branje besedilnih podatkov, čiščenje in predobdelavo podatkov ter ustvarjanje matrik dokumentov in terminov, ki se pogosto uporabljajo za analizo besedilnih podatkov. Paket tidytext ponuja orodja za pretvorbo besedilnih podatkov v urejene podatkovne okvire.
Nekatere pogoste naloge pri rudarjenju besedil vključujejo analizo čustev, modeliranje tem, grozdenje dokumentov in razvrščanje besedil. Te naloge vključujejo uporabo statističnih tehnik in tehnik strojnega učenja za prepoznavanje vzorcev in povezav v besedilnih podatkih.

Kaj so API-ji za ekstrakcijo ključnih besed?

API za ekstrakcijo ključnih besed so programski vmesniki, ki razvijalcem omogočajo ekstrakcijo ključnih besed in besednih zvez iz besedila z uporabo vnaprej pripravljenih algoritmov in modelov strojnega učenja. Ti vmesniki API zagotavljajo enostavno uporabno in razširljivo rešitev za avtomatizacijo postopka pridobivanja ključnih besed, pri čemer razvijalcem ni treba graditi in usposabljati lastnih modelov.

Kaj je R?

R je odprtokodni programski jezik in programsko okolje za statistično računanje, analizo podatkov in grafiko. Program R se pogosto uporablja v akademskem, raziskovalnem in industrijskem okolju za naloge, kot so statistično modeliranje, vizualizacija podatkov, strojno učenje in podatkovno rudarjenje. Ima vmesnike z drugimi programskimi jeziki, kot sta Python in C++. Podrobnejše informacije najdete v spletnih vadnicah v GitHubu.

Pogosto zastavljena vprašanja

Kaj je CSV?

CSV pomeni “vrednosti, ločene z vejico”. To je datotečni format, ki shranjuje in izmenjuje podatke v obliki navadnega besedila, kjer vsaka vrstica predstavlja zapis, vsak stolpec pa polje ali atribut zapisa. V prvi vrstici datoteke CSV so običajno shranjeni naslovi stolpcev, ki vsebujejo oznako za vsako polje v naboru podatkov.

Kaj je TF-IDF?

TF-IDF je kratica za “pogostost terminov in obratno pogostost dokumentov”. Gre za številčno statistiko, ki odraža pomembnost izraza v korpusu dokumentov. TF-IDF je pogosto uporaben pri rudarjenju besedil, iskanju informacij in obdelavi naravnega jezika.

Kaj so stopice?

Stopbesede so pogoste besede, ki jih naloge obdelave naravnega jezika (NLP) izključujejo, ker imajo pri analizi besedila majhen pomen ali pomembnost. Primeri zapornih besed so “the”, “and”, “of”, “to”, “in”, “a”, “an”, “is” in “for”.

Delite objavo:

Najsodobnejša tehnologija A.I.

Začnite z Eskritorjem zdaj!

Sorodni članki

Slika računalniškega zaslona, ki prikazuje pogovor z GPT-3, prekrita z diagrami, ki ponazarjajo korake obdelave jezika umetne inteligence.
Eskritor

Kako deluje GPT-3?

V spodnjih korakih je pojasnjeno, kako GPT-3 deluje pri ustvarjanju odzivov: Zakaj je GPT-3 koristen? Tukaj je seznam razlogov, zakaj je GPT-3 koristen: Kakšna je zgodovina GPT-3? Razvoj sistema GPT-3

Vizualni graf, ki prikazuje podatke o vplivu umetne inteligence na trg dela za pisce vsebin
Eskritor

Bo umetna inteligenca nadomestila pisce vsebin?

Da, pisci z umetno inteligenco lahko nadomestijo nekatere pisce, vendar nikoli ne morejo nadomestiti dobrih piscev. Nadomestil bo nekatere vrste pisanja. Generatorji vsebin z umetno inteligenco lahko ustvarijo osnovno vsebino,

Vizualni prikaz arhitekture ChatGPT z modelom transformatorja, ki omogoča razumevanje jezika in generiranje.
Eskritor

Kako deluje ChatGPT?

Na visoki ravni je ChatGPT model globokega učenja, ki z nevronsko mrežo ustvarja človeku podobno besedilo. Posebna različica modela, ChatGPT-3, temelji na tehniki, imenovani transformatorska arhitektura. Ta vrsta arhitekture omogoča