Embedding de cuvinte

Introducere în Prelucrarea Limbajului Natural în R

Kasey Jones

Research Data Scientist

Deficiența numărătorii cuvintelor

Două enunțuri:

  • Bob este cea mai inteligentă persoană pe care o cunosc.
  • Bob este cea mai strălucitoare persoană pe care o cunosc.

Fără cuvinte de umplere:

  • Bob inteligent persoană
  • Bob strălucitor persoană
Introducere în Prelucrarea Limbajului Natural în R

Semnificațiile cuvintelor

Date suplimentare:

  • Cele mai inteligente persoane ...
  • El a fost cel mai inteligent ...
  • Persoane strălucitoare ...
  • Era atât de strălucitor ...
Introducere în Prelucrarea Limbajului Natural în R

word2vec

  • reprezintă cuvintele ca un spațiu vectorial extins
  • surprinde multiple similarități între cuvinte
  • cuvintele cu sens similar sunt mai apropiate în spațiu

În reprezentarea word2vec, cuvintele similare sunt grupate mai aproape în spațiul vectorial multidimensional.

1 https://www.adityathakker.com/introduction-to-word2vec-how-it-works/
Introducere în Prelucrarea Limbajului Natural în R

Pregătirea datelor

library(h2o)
h2o.init()
h2o_object = as.h2o(animal_farm)

Tokenizare cu h2o:

words <- h2o.tokenize(h2o_object$text_column, "\\\\W+")
words <- h2o.tolower(words)
words = words[is.na(words) || (!words %in% stop_words$word),]
Introducere în Prelucrarea Limbajului Natural în R

Modelare word2vec

word2vec_model <-
    h2o.word2vec(words, min_word_freq = 5, epochs = 5)
  • min_word_freq: elimină cuvintele cu mai puțin de 5 apariții
  • epochs: numărul de iterații de antrenare
Introducere în Prelucrarea Limbajului Natural în R

Sinonime de cuvinte

h2o.findSynonyms(w2v.model, "animal")
    synonym     score
1     drink 0.8209088
2       age 0.7952490
3   alcohol 0.7867004
4       act 0.7710537
5      hero 0.7658424
h2o.findSynonyms(w2v.model, "jones")
      synonym     score
1      battle 0.7996588
2  discovered 0.7944554
3     cowshed 0.7823287
4     enemies 0.7766532
5       yards 0.7679787
Introducere în Prelucrarea Limbajului Natural în R

Utilizări suplimentare

  • modelare pentru clasificare
  • analiza sentimentelor
  • modelare tematică
Introducere în Prelucrarea Limbajului Natural în R

Aplicarea word2vec

Introducere în Prelucrarea Limbajului Natural în R

Preparing Video For Download...