Voglio rompere prossimo string
in frasi:Come rilevare i limiti di frase con OpenNLP e stringi?
library(NLP) # NLP_0.1-7
string <- as.String("Mr. Brown comes. He says hello. i give him coffee.")
Voglio dimostrare due modi diversi. Uno viene dal pacchetto openNLP
:
library(openNLP) # openNLP_0.2-5
sentence_token_annotator <- Maxent_Sent_Token_Annotator(language = "en")
boundaries_sentences<-annotate(string, sentence_token_annotator)
string[boundaries_sentences]
[1] "Mr. Brown comes." "He says hello." "i give him coffee."
E in secondo luogo viene dal pacchetto stringi
:
library(stringi) # stringi_0.5-5
stri_split_boundaries(string , opts_brkiter=stri_opts_brkiter('sentence'))
[[1]]
[1] "Mr. " "Brown comes. "
[3] "He says hello. i give him coffee."
Dopo questo secondo modo in cui ho bisogno di preparare frasi per rimuovere gli spazi aggiuntivi o rompere una nuova stringa in frasi di nuovo. Posso regolare la funzione stringa per migliorare la qualità dei risultati?
Quando si tratta di dati di grandi dimensioni, openNLP
è (molto) più lento di stringi
.
C'è un modo per combinare stringi
(-> veloce) e openNLP
(-> qualità)?
se non si ottiene una risposta qui, potresti avere fortuna [linguistica del corpus con il forum R] (https://groups.google.com/forum/#!forum/corpling-with-r) – drammock
L'ho aperto come un problema anche nella pagina HitHub di ** stringi ** : https://github.com/Rexamine/stringi/issues/184 –
OpenNLP e stringi differiscono tra loro su come rilevare i limiti di frase. stringi sembra funzionare con un insieme di regole. E openNLP funziona con un modello da un processo di apprendimento. Ma continuo a non vedere dove si trova il collo della bottiglia ... – SRRussel