Πώς να εξαγάγετε λέξεις-κλειδιά από κείμενο στην R;

Μια εικόνα που απεικονίζει τη διεπαφή R με ένα επισημασμένο απόσπασμα κώδικα που χρησιμοποιείται για την εξαγωγή λέξεων-κλειδιών από κείμενο.
Μια εικόνα που απεικονίζει τη διεπαφή R με ένα επισημασμένο απόσπασμα κώδικα που χρησιμοποιείται για την εξαγωγή λέξεων-κλειδιών από κείμενο.

Eskritor 2023-07-06

Τι είναι η εξαγωγή λέξεων-κλειδιών;

Η εξαγωγή λέξεων-κλειδιών εξάγει αυτόματα τις πιο χρησιμοποιούμενες και πιο σημαντικές λέξεις και εκφράσεις από ένα κείμενο, χρησιμοποιώντας μια τεχνική ανάλυσης κειμένου. Βοηθάει στη σύνοψη του περιεχομένου των κειμένων και στην αναγνώριση των κύριων θεμάτων που συζητούνται, γεγονός που είναι χρήσιμο για την έρευνα αγοράς , την ανάλυση συναισθήματος και άλλους τύπους ανάλυσης δεδομένων. Αυτή η τεχνική αξιοποιεί την ενσωμάτωση προτάσεων και μπορεί να αναλύσει μεγάλα σύνολα δεδομένων σε πραγματικό χρόνο.

Η μηχανική μάθηση τεχνητής νοημοσύνης (AI) με την επεξεργασία φυσικής γλώσσας (NLP) (τομέας της επιστήμης των υπολογιστών) αναλύει την ανθρώπινη γλώσσα, ώστε οι μηχανές να μπορούν να την κατανοήσουν και να την αναλύσουν. Η εξαγωγή λέξεων-κλειδιών αυτοματοποιεί ροές εργασίας, όπως η επισήμανση εισερχόμενων απαντήσεων σε έρευνες ή η απάντηση σε επείγοντα ερωτήματα πελατών. Η τεχνική χρησιμοποιεί γλωσσικές και σημασιολογικές πληροφορίες για τα κείμενα και τις λέξεις που περιέχουν. Υπάρχουν διάφοροι αλγόριθμοι και τεχνικές μηχανικής μάθησης για την εξαγωγή των πιο σχετικών λέξεων-κλειδιών σε ένα κείμενο.

Γιατί είναι σημαντική η εξαγωγή λέξεων-κλειδιών;

Η εξαγωγή λέξεων-κλειδιών και φράσεων-κλειδιών είναι σημαντική για διάφορους λόγους:

  1. Βελτιστοποίηση μηχανών αναζήτησης (SEO) : Η εξαγωγή λέξεων-κλειδιών βοηθά στον εντοπισμό των πιο σημαντικών λέξεων και φράσεων σε ένα έγγραφο, οι οποίες μπορούν να χρησιμοποιηθούν για τη βελτιστοποίηση του περιεχομένου του ιστότοπου για τις μηχανές αναζήτησης.
  2. Περίληψη κειμένου: Η εξαγωγή λέξεων-κλειδιών μπορεί να χρησιμοποιηθεί για την περίληψη ενός εγγράφου με τον εντοπισμό των πιο σημαντικών λέξεων και φράσεων που αντιπροσωπεύουν το κύριο θέμα του κειμένου.
  3. Ταξινόμηση κειμένου: Εξαγωγή λέξεων-κλειδιών: Η εξαγωγή λέξεων-κλειδιών μπορεί να χρησιμοποιηθεί για την ταξινόμηση εγγράφων κειμένου σε διάφορες κατηγορίες με βάση τις λέξεις-κλειδιά που περιέχουν. Αυτό είναι χρήσιμο σε εφαρμογές όπως η ανάλυση συναισθήματος.
  4. Ανάκτηση πληροφοριών: Η εξαγωγή λέξεων-κλειδιών μπορεί να χρησιμοποιηθεί για τη βελτίωση της ακρίβειας των συστημάτων ανάκτησης πληροφοριών με τον εντοπισμό σχετικών λέξεων-κλειδιών που ταιριάζουν με το ερώτημα αναζήτησης ενός χρήστη.

Πώς να κάνετε εξαγωγή λέξεων-κλειδιών στην R;

Ακολουθούν ορισμένες τεχνικές εξαγωγής λέξεων-κλειδιών και οι περιπτώσεις χρήσης τους:

  • Εύρεση λέξεων-κλειδιών κάνοντας tagging των μερών του λόγου για τον εντοπισμό των ουσιαστικών
  • Εύρεση λέξεων-κλειδιών με βάση τις Συναρτήσεις και τις Συναντήσεις
  • Εύρεση λέξεων-κλειδιών με βάση τον αλγόριθμο Textrank
  • Εύρεση λέξεων-κλειδιών με βάση το RAKE (ταχεία αυτόματη εξαγωγή λέξεων-κλειδιών)
  • Εύρεση λέξεων-κλειδιών με βάση τα αποτελέσματα της ανάλυσης εξαρτήσεων (λήψη του θέματος του κειμένου)
εξαγωγή λέξεων-κλειδιών από κείμενο

Εξαγωγή ουσιαστικών

Ένας εύκολος τρόπος για να βρείτε λέξεις-κλειδιά είναι να εξετάσετε τα ουσιαστικά. Καθώς κάθε όρος έχει μια ετικέτα Μέρη του λόγου, αν έχετε σχολιάσει κείμενο χρησιμοποιώντας το πακέτο udpipe:

Κωδ:

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

Συνδυασμός & συνύπαρξη

Πάρτε την πολυλεκτική έκφραση εξετάζοντας είτε τις κολλοποιήσεις (λέξεις που ακολουθούν η μία την άλλη), είτε τη συνύπαρξη λέξεων μέσα σε κάθε πρόταση, είτε τη συνύπαρξη λέξεων που βρίσκονται κοντά η μία στη γειτονιά της άλλης.

Κωδ:

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 (δίκτυο λέξεων ταξινομημένο με βάση το Google Pagerank)

Το Textrank είναι μια άλλη μέθοδος εξαγωγής λέξεων-κλειδιών. Το πακέτο textrank R υλοποιεί τον αλγόριθμο Textrank. Ο αλγόριθμος Textrank επιτρέπει τη σύνοψη κειμένου και την εξαγωγή λέξεων-κλειδιών. Για την κατασκευή ενός δικτύου λέξεων, ο αλγόριθμος ελέγχει αν οι λέξεις ακολουθούν η μία την άλλη. Ο αλγόριθμος ‘Google Pagerank’ εξάγει σχετικές λέξεις. Οι σχετικές λέξεις που ακολουθούν η μία την άλλη συνδυάζονται μεταξύ τους για να προκύψουν λέξεις-κλειδιά. Το TextRank δεν προέρχεται από το αρχικό κείμενο, καθώς είναι μια προσέγγιση βασισμένη σε γραφήματα.

Κωδ:

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)

Ταχεία αυτόματη εξαγωγή λέξεων-κλειδιών: RAKE

Ο RAKE είναι ο επόμενος βασικός αλγόριθμος που αποτελεί ακρωνύμιο των λέξεων Rapid Automatic Keyword Extraction (Ταχεία αυτόματη εξαγωγή λέξεων-κλειδιών). Ο RAKE είναι ένας αλγόριθμος εξαγωγής λέξεων-κλειδιών που εξαρτάται από τον τομέα στην επεξεργασία φυσικής γλώσσας.

  1. Ο υπολογισμός μιας βαθμολογίας για κάθε λέξη που αποτελεί μέρος οποιασδήποτε υποψήφιας λέξης-κλειδί, γίνεται με τον εξής τρόπο
    • μεταξύ των λέξεων των υποψήφιων λέξεων-κλειδιών, ο αλγόριθμος εξετάζει πόσες φορές εμφανίζεται κάθε λέξη και πόσες φορές συνυπάρχει με άλλες λέξεις.
    • κάθε λέξη λαμβάνει μια βαθμολογία που είναι ο λόγος του βαθμού της λέξης (πόσες φορές συνυπάρχει με άλλες λέξεις) προς τη συχνότητα της λέξης
  2. Η βαθμολογία RAKE για την πλήρη υποψήφια λέξη-κλειδί υπολογίζεται αθροίζοντας τις βαθμολογίες κάθε μίας από τις λέξεις που ορίζουν την υποψήφια λέξη-κλειδί.

Κωδ:

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

Χρησιμοποιήστε την έξοδο ανάλυσης εξάρτησης για να πάρετε το ονοματικό υποκείμενο και το επίθετο του

Όταν εκτελείτε τον σχολιασμό χρησιμοποιώντας το udpipe, το πεδίο dep_rel υποδεικνύει πώς οι λέξεις σχετίζονται μεταξύ τους. Ένα token σχετίζεται με το γονέα χρησιμοποιώντας τα token_id και head_token_id . Το πεδίο dep_rel υποδεικνύει τον τρόπο με τον οποίο οι λέξεις συνδέονται μεταξύ τους. Το είδος των σχέσεων βρίσκεται στη διεύθυνση http://universaldependencies.org/u/dep/index.html.

Κωδ:

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

Τι είναι το Text-Mining;

Η εξόρυξη κειμένου στην R αναφέρεται στη διαδικασία ανάλυσης και εξαγωγής συμπερασμάτων από δεδομένα κειμένου χρησιμοποιώντας τη γλώσσα προγραμματισμού R και τις σχετικές βιβλιοθήκες και πακέτα. Η εξόρυξη κειμένου περιλαμβάνει διάφορα στάδια, συμπεριλαμβανομένου του καθαρισμού και της προεπεξεργασίας δεδομένων, της εξαγωγής χαρακτηριστικών, της στατιστικής μοντελοποίησης και της οπτικοποίησης.
Το πακέτο tm παρέχει συναρτήσεις για την ανάγνωση δεδομένων κειμένου, τον καθαρισμό και την προεπεξεργασία των δεδομένων και τη δημιουργία πινάκων εγγράφων – όρων, οι οποίοι χρησιμοποιούνται συνήθως για την ανάλυση δεδομένων κειμένου. Το πακέτο tidytext παρέχει εργαλεία για τη μετατροπή δεδομένων κειμένου σε τακτοποιημένα πλαίσια δεδομένων.
Ορισμένες κοινές εργασίες στην εξόρυξη κειμένου περιλαμβάνουν την ανάλυση συναισθήματος, τη μοντελοποίηση θεμάτων, την ομαδοποίηση εγγράφων και την ταξινόμηση κειμένου. Οι εργασίες αυτές περιλαμβάνουν την εφαρμογή τεχνικών στατιστικής και μηχανικής μάθησης για τον εντοπισμό μοτίβων και σχέσεων μέσα σε δεδομένα κειμένου.

Τα APIs εξαγωγής λέξεων-κλειδιών είναι διεπαφές λογισμικού που επιτρέπουν στους προγραμματιστές να εξάγουν λέξεις-κλειδιά και φράσεις-κλειδιά από κείμενο χρησιμοποιώντας προκατασκευασμένους αλγορίθμους και μοντέλα μηχανικής μάθησης. Αυτά τα API παρέχουν μια εύχρηστη και επεκτάσιμη λύση για την αυτοματοποίηση της διαδικασίας εξαγωγής λέξεων-κλειδιών, χωρίς να χρειάζεται οι προγραμματιστές να κατασκευάσουν και να εκπαιδεύσουν τα δικά τους μοντέλα.

Η R είναι μια γλώσσα προγραμματισμού ανοικτού κώδικα και ένα περιβάλλον λογισμικού για στατιστικούς υπολογισμούς, ανάλυση δεδομένων και γραφικά. Οι άνθρωποι χρησιμοποιούν ευρέως την R σε ακαδημαϊκούς, ερευνητικούς και βιομηχανικούς χώρους για εργασίες όπως η στατιστική μοντελοποίηση, η οπτικοποίηση δεδομένων, η μηχανική μάθηση και η εξόρυξη δεδομένων. Διαθέτει διεπαφές με άλλες γλώσσες προγραμματισμού όπως η Python και η C++ . Βρείτε περισσότερες λεπτομερείς πληροφορίες με online μαθήματα στο GitHub.

Κοινοποίηση δημοσίευσης

AI Συγγραφέας

img

Eskritor

Δημιουργία περιεχομένου που δημιουργείται AI